GTA Közösség - A magyar GTA fórum

San Andreas Multiplayer (SA-MP) => SA-MP: Szerverfejlesztés => Szkript kérések => A témát indította: Ted_Flender - 2013. november 01. - 22:42:11

Cím: Idõre szoló ban
Írta: Ted_Flender - 2013. november 01. - 22:42:11
Sziasztok!
Valaki csinálna nekem egy idõre szóló ban szkriptet?
Meg köszönném ha DINIS-lenne nem MySQL-es :D
Elõre is köszönöm!
Cím: Idõre szoló ban
Írta: anorennia - 2013. november 02. - 08:33:58
Tessék kicsit gány munka, feladatod: a file formatnál értelmesen, ahogy neked szerepelnek a fájlnevek írd át
Szólj ha gond van, mert nem teszteltem 5-6 perces munka
 
#include a_samp
#include zcmd
#include sscanf2
#include dini
 
enum pinfo
{
meddig_y,
meddig_m,
meddig_d,
meddig_h,
meddig_min
}
new pInfo[MAX_PLAYERS][pinfo];
new file[64];
CMD:bann(playerid, params[])
{
new selected;
sscanf(params, \"iiiiii\", selected, pInfo[playerid][meddig_y], pInfo[playerid][meddig_m],   pInfo[playerid][meddig_d],pInfo[playerid][meddig_h], pInfo[playerid][meddig_min]);
if(!strlen(params)) return SendClientMessage(playerid, -1, \"Használat: /bann ÉV HÓNAP NAP ÓRA PERC\");
if(IsPlayerConnected(selected))
{
    SendClientMessage(playerid, -1, \"Bannolva lett\");
    Kick(selected);
    dini_IntSet(file, \"meddig_y\", pInfo[playerid][meddig_y]);
dini_IntSet(file, \"meddig_m\", pInfo[playerid][meddig_m]);
dini_IntSet(file, \"meddig_d\", pInfo[playerid][meddig_d]);
dini_IntSet(file, \"meddig_h\", pInfo[playerid][meddig_h]);
dini_IntSet(file, \"meddig_min\", pInfo[playerid][meddig_min]);
}
else SendClientMessage(playerid, -1, \"A játékos offline\");
return 1;
}
 
public OnPlayerConnect(playerid)
{
new name[32];
GetPlayerName(playerid, name, 32);
format(file, 64, \"%s.txt\", name);
pInfo[playerid][meddig_y] = dini_Int(file, \"meddig_y\");
pInfo[playerid][meddig_m] = dini_Int(file, \"meddig_m\");
pInfo[playerid][meddig_d] = dini_Int(file, \"meddig_d\");
pInfo[playerid][meddig_h] = dini_Int(file, \"meddig_h\");
pInfo[playerid][meddig_min] = dini_Int(file, \"meddig_min\");
new year, month, day, hour, minute, sec;
getdate(year, month, day);
gettime(hour, minute, sec);
if(year >= pInfo[playerid][meddig_y] && month >= pInfo[playerid][meddig_m] && day >= pInfo[playerid][meddig_d] && hour >= pInfo[playerid][meddig_h] && minute > pInfo[playerid][meddig_min])
{
    //lejárt a bann és beléphet
}
else
{
    //még nem járt le a bann
}
return 1;
}
Cím: Idõre szoló ban
Írta: ZyZu. - 2013. november 09. - 02:00:17
[mod]Megkérnék minden kedves témanyitót, ha kérdésére/kérésére választ kapott, akkor legyen szíves használni, a \"Téma megoldva\" funkciót![/mod]