Андрюша (Andrey_Denisov)
Новичок
Привет, хочу сделать так, чтобы админку можно было выдавать по ID и по нику, у меня работает только по ID, а как дополнительно по нику сделать? Вот команда:
CMD:arang(playerid, params[])
{
if(GetPlayerAdminEx(playerid) < 6) return 1;
extract params -> new to_player, lvl; else return SendClientMessage(playerid, 0xCECECEFF, "Используйте: /arang [id игрока / name] [уровень]");
if(!IsPlayerConnected(to_player) || !IsPlayerLogged(to_player))
return SendClientMessage(playerid, 0x999999FF, "Такого игрока нет");
if(!(0 <= lvl <= 7)) return SendClientMessage(playerid, 0xCECECEFF, "Уровень от 0 до 7");
if(lvl >= GetPlayerAdminEx(playerid)) return SendClientMessage(playerid, 0xCECECEFF, "Нельзя выдать уровень администратора равный или больше вашего");
if(GetPlayerAdminEx(to_player) >= GetPlayerAdminEx(playerid)) return SendClientMessage(playerid, 0xCECECEFF, "Нельзя изменить уровень администрирования человека выше или равному вашему статусу.");
SetPlayerData(to_player, P_ADMIN, lvl);
UpdatePlayerDatabaseInt(to_player, "admin", lvl);
new fmt_text[128];
if(lvl > 0)
{
format(fmt_text, sizeof fmt_text, "[A] %s[%d] выдал полномочия администратора %d уровня игроку %s[%d]",
GetPlayerNameEx(playerid), playerid, lvl, GetPlayerNameEx(to_player), to_player);
SendMessageToAdmins(fmt_text, 0x999999FF);
format(fmt_text, sizeof fmt_text, "Поставил %s[acc:%d] на пост администратора %d уровня", GetPlayerNameEx(to_player), GetPlayerAccountID(to_player), lvl);
SendLog(playerid, LOG_TYPE_SUPERADMIN_ACTION, fmt_text);
}
else
{
format(fmt_text, sizeof fmt_text, "[A] %s[%d] выдал полномочия администратора 0 уровня игроку %s[%d]",
GetPlayerNameEx(playerid), playerid, GetPlayerNameEx(to_player), to_player);
SendMessageToAdmins(fmt_text, 0x999999FF);
format(fmt_text, sizeof fmt_text, "Снял %s[acc:%d] с поста администратора", GetPlayerNameEx(to_player), GetPlayerAccountID(to_player));
SendLog(playerid, LOG_TYPE_SUPERADMIN_ACTION, fmt_text);
}
return 1;
}
