07.11.2015, 20:43
Quiero que al momento de banear, no puedes a administradores de niveles superior al que lo intenta de banear.
Код:
if(strcmp(cmd, "/ban", true) == 0) //Banear { if(PlayerInfo[playerid][pAdmin] < 2){SendClientMessage(playerid,Rojo,"* Nivel de admin insuficiente."); return 1;} tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, Naranja, "* /Ban [ID] [Razуn]"); return 1; } playerid2 = ReturnUser(tmp); if(IsPlayerConnected(playerid2)) { if(playerid2 != INVALID_PLAYER_ID) { format(Nombre2, sizeof(Nombre2),"%s", GetPlayerNameRP(playerid2)); format(Nombre, sizeof(Nombre),"%s", GetPlayerNameRP(playerid)); new length = strlen(cmdtext); while ((idx < length) && (cmdtext[idx] <= ' ')) { idx++; } new offset = idx; new result[80]; while ((idx < length) && ((idx - offset) < (sizeof(result) - 1))) { result[idx - offset] = cmdtext[idx]; idx++; } result[idx - offset] = EOS; if(!strlen(result)) { SendClientMessage(playerid, Naranja, "* /Ban [ID] [Razуn]"); return 1; } new ano, mes, dia; getdate(ano, mes, dia); format(string, sizeof(string), "%s fue baneado del servidor. Motivo: %s (%d/%d/%d)", Nombre2, (result), dia, mes, ano); SendClientMessageToAll(Rojo, string); printf(string); format(string, sizeof(string), "Has sido baneado por '%s'.", Nombre); SendClientMessage(playerid2, Amarillo, string); SendClientMessage(playerid2, Amarillo, "Si crees que ha sido un error, toma foto con F8 y pide tu desbбn en el foro."); TogglePlayerControllable(playerid2,0); BanL(playerid2); return 1; } } else { SendClientMessage(playerid, Rojo, "* ID invбlida."); } return 1; }