14.03.2014, 21:36
Bom Coloquei esse Sistema de Ban Temporбrio No Meu Gm mas Ele desliga a Host apуs eu Usa-lу Pode ser Erro no Cmd?
Comando /Bantemp
Comando /Bantemp
Код:
if(strcmp(cmd, "/bantemp", true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "USE: /bantemp [id] [dias] [motivo]");
return true;
}
giveplayerid = ReturnUser(tmp);
if (PlayerInfo[playerid][pAdmin] >= 1)
{
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
if(PlayerInfo[giveplayerid][pAdmin] >= 1342)
{
SendClientMessage(playerid, COLOR_GRAD1, "Vocк nгo pode banir este admin!");
return true;
}
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "USE: /bantemp [id] [dias] [motivo]");
return true;
}
new diasban = strval(tmp);
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[64];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_GRAD2, "USE: /bantemp [id] [dias] [motivo]");
return true;
}
getdate(year, month, day);
if(diasban > 9999)
{
SendClientMessage(playerid, COLOR_GRAD1, "[ERRO] Vocк definiu muitos dias!");
return 1;
}
format(string, sizeof(string), "AdmCmd: %s foi banido temporariamente (%d dias) por %s, Motivo: %s (%d-%d-%d)", giveplayer, diasban, sendername, (result),day,month,year);
BanLog(string);
format(string, sizeof(string), "AdmCmd: %s foi banido temporariamente (%d dias) por %s, Motivo: %s", giveplayer, diasban, sendername, (result));
SendClientMessageToAll(COLOR_LIGHTRED, string);
PlayerInfo[giveplayerid][pDiaBanTemp] = day+diasban;
PlayerInfo[giveplayerid][pMesBanTemp] = month;
PlayerInfo[giveplayerid][pAnoBanTemp] = year;
for(new dias = 1; dias < diasban; dias++)
{
if(PlayerInfo[giveplayerid][pMesBanTemp] == 1 && PlayerInfo[giveplayerid][pDiaBanTemp] > 31)
{
PlayerInfo[giveplayerid][pDiaBanTemp] -= 31;
PlayerInfo[giveplayerid][pMesBanTemp]++;
}
if(PlayerInfo[giveplayerid][pMesBanTemp] == 2 && PlayerInfo[giveplayerid][pDiaBanTemp] > 28)
{
PlayerInfo[giveplayerid][pDiaBanTemp] -= 28;
PlayerInfo[giveplayerid][pMesBanTemp]++;
}
if(PlayerInfo[giveplayerid][pMesBanTemp] == 3 && PlayerInfo[giveplayerid][pDiaBanTemp] > 31)
{
PlayerInfo[giveplayerid][pDiaBanTemp] -= 31;
PlayerInfo[giveplayerid][pMesBanTemp]++;
}
if(PlayerInfo[giveplayerid][pMesBanTemp] == 4 && PlayerInfo[giveplayerid][pDiaBanTemp] > 30)
{
PlayerInfo[giveplayerid][pDiaBanTemp] -= 30;
PlayerInfo[giveplayerid][pMesBanTemp]++;
}
if(PlayerInfo[giveplayerid][pMesBanTemp] == 5 && PlayerInfo[giveplayerid][pDiaBanTemp] > 31)
{
PlayerInfo[giveplayerid][pDiaBanTemp] -= 31;
PlayerInfo[giveplayerid][pMesBanTemp]++;
}
if(PlayerInfo[giveplayerid][pMesBanTemp] == 6 && PlayerInfo[giveplayerid][pDiaBanTemp] > 30)
{
PlayerInfo[giveplayerid][pDiaBanTemp] -= 30;
PlayerInfo[giveplayerid][pMesBanTemp]++;
}
if(PlayerInfo[giveplayerid][pMesBanTemp] == 7 && PlayerInfo[giveplayerid][pDiaBanTemp] > 31)
{
PlayerInfo[giveplayerid][pDiaBanTemp] -= 31;
PlayerInfo[giveplayerid][pMesBanTemp]++;
}
if(PlayerInfo[giveplayerid][pMesBanTemp] == 8 && PlayerInfo[giveplayerid][pDiaBanTemp] > 31)
{
PlayerInfo[giveplayerid][pDiaBanTemp] -= 31;
PlayerInfo[giveplayerid][pMesBanTemp]++;
}
if(PlayerInfo[giveplayerid][pMesBanTemp] == 9 && PlayerInfo[giveplayerid][pDiaBanTemp] > 30)
{
PlayerInfo[giveplayerid][pDiaBanTemp] -= 30;
PlayerInfo[giveplayerid][pMesBanTemp]++;
}
if(PlayerInfo[giveplayerid][pMesBanTemp] == 10 && PlayerInfo[giveplayerid][pDiaBanTemp] > 31)
{
PlayerInfo[giveplayerid][pDiaBanTemp] -= 31;
PlayerInfo[giveplayerid][pMesBanTemp]++;
}
if(PlayerInfo[giveplayerid][pMesBanTemp] == 11 && PlayerInfo[giveplayerid][pDiaBanTemp] > 30)
{
PlayerInfo[giveplayerid][pDiaBanTemp] -= 30;
PlayerInfo[giveplayerid][pMesBanTemp]++;
}
if(PlayerInfo[giveplayerid][pMesBanTemp] == 12 && PlayerInfo[giveplayerid][pDiaBanTemp] > 31)
{
PlayerInfo[giveplayerid][pDiaBanTemp] -= 31;
PlayerInfo[giveplayerid][pMesBanTemp]++;
}
if(PlayerInfo[giveplayerid][pMesBanTemp] > 12)
{
PlayerInfo[giveplayerid][pMesBanTemp] -= 12;
PlayerInfo[giveplayerid][pAnoBanTemp]++;
}
}
OnPlayerSave(giveplayerid);
TextDrawShowForPlayer(giveplayerid, TextBan[giveplayerid]);
BanTemp(giveplayerid, result, PlayerName(playerid));
return true;
}
}//not connected
}
else
{
QQIssoNovinha;
}
}
return true;
}


