20.06.2014, 23:00
(
Последний раз редактировалось Zmith; 06.07.2014 в 11:34.
)
Well, basically /kick and /ban are not working the way I'd like them too. If I kicked or banned a player, they won't know why. Basically SetTimerEx isn't working and I have no idea why.
Код:
//------------------------------------[Kick]------------------------------------
if(strcmp(cmd, "/kick", true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GREY, "USAGE: /kick (player name/id) [reason]");
return 1;
}
giveplayerid = ReturnUser(tmp);
if (PlayerInfo[playerid][pAdmin] >= 2)
{
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
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_GREY, "USAGE: /kick (player name/id) [reason]");
return 1;
}
format(string, sizeof(string), "[KICK] {E5E5E5}%s was kicked by %s. {31AA31}Reason{E5E5E5}: %s", giveplayer, sendername, (result));
SendClientMessageToAll(COLOR_ADMIN, string);
SendClientMessage(playerid, COLOR_GREY, " ");
SendClientMessage(playerid, COLOR_GREY, " ");
SendClientMessage(playerid, COLOR_GREY, " ");
SendClientMessage(playerid, COLOR_GREY, " ");
SendClientMessage(playerid, COLOR_GREY, " ");
SendClientMessage(playerid, COLOR_GREY, " ");
SendClientMessage(playerid, COLOR_GREY, " ");
SendClientMessage(playerid, COLOR_GREY, " ");
SendClientMessage(playerid, COLOR_GREY, " ");
SendClientMessage(playerid, COLOR_GREY, " ");
SendClientMessage(playerid, COLOR_GREY, " ");
SendClientMessage(playerid, COLOR_GREY, " ");
SendClientMessage(playerid, COLOR_GREY, " ");
SendClientMessage(playerid, COLOR_GREY, " ");
SendClientMessage(playerid, COLOR_GREY, " ");
format(string, sizeof(string), "[KICK] {E5E5E5}You have been kicked by %s. {31AA31}Reason{E5E5E5}: %s", sendername, (result));
SendClientMessage(playerid, COLOR_ADMIN, string);
SetTimerEx("KickTimer", 1000, false, "i", giveplayerid);
return 1;
}
}
}
else
{
format(string, sizeof(string), "{DB2E2E}Error: {F7BEBF}Player not found!", giveplayerid);
SendClientMessage(playerid, COLOR_GREY, string);
}
}
return 1;
Код:
//------------------------------------[Ban]------------------------------------
}
if(strcmp(cmd, "/ban", true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GREY, "USAGE: /ban (player name/id) [reason]");
return 1;
}
giveplayerid = ReturnUser(tmp);
if (PlayerInfo[playerid][pAdmin] >= 2)
{
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
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_GREY, "USAGE: /ban (player id) (reason)");
return 1;
}
format(string, sizeof(string), "[BANNED] {E5E5E5}%s was banned by %s. {31AA31}Reason{E5E5E5}: %s", giveplayer, sendername, (result));
SendClientMessageToAll(COLOR_ADMIN, string);
SendClientMessage(playerid, COLOR_GREY, " ");
SendClientMessage(playerid, COLOR_WHITE, "> BANNED FROM {A10000}BLOODS {FFFFFF} VS {000096}CRIPS");
SendClientMessage(playerid, COLOR_GREY, "``````````````````````````````````````````````````````````````````");
format(string, sizeof(string), " > {31AA31}Name{E5E5E5}: %s", giveplayer);
SendClientMessage(playerid, COLOR_GREEN, string);
format(string, sizeof(string), " > {31AA31}Banned By{E5E5E5}: %s", sendername);
SendClientMessage(playerid, COLOR_GREEN, string);
format(string, sizeof(string), " > {31AA31}Reason{E5E5E5}: %s", (result));
SendClientMessage(playerid, COLOR_GREEN, string);
SendClientMessage(playerid, COLOR_GREY, " ");
SendClientMessage(playerid, COLOR_WHITE, "You {F7CE00}must {FFFFFF}take a screen-shot {F7CE00}(F8) {FFFFFF}for your ban appeal");
SendClientMessage(playerid, COLOR_GREY, "``````````````````````````````````````````````````````````````````");
SendClientMessage(playerid, COLOR_GREY, " ");
GameTextForPlayer(giveplayerid,"~r~Banned",9000,0);
SetTimerEx("DelayedBan", 1500, 0, "i", giveplayerid);
return 1;
}
}//not connected
}
else
{
format(string, sizeof(string), "{DB2E2E}Error: {F7BEBF}Player not found!", giveplayerid);
SendClientMessage(playerid, COLOR_GREY, string);
}
}
return 1;
}

