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; }