21.05.2018, 16:50
Quote:
CMDetadmin(playerid, params[])
{ new giveplayerid, moneys1, giveplayer[25], playername[25], string[256]; if (adlvl[playerid] < 6 && !IsPlayerAdmin(playerid)) return 0; if (sscanf(params, "ud", giveplayerid, moneys1)) return SendClientMessage2(playerid, COLOR_WHITE, "Usage: /setadmin [playerid] [level 1-6]"); if (!IsPlayerConnected2(giveplayerid)) return SendClientMessage2(playerid, COLOR_RED, "Error: Inactive player id!"); if (moneys1 < 0 || moneys1 > 6) return SendClientMessage2(playerid, COLOR_RED, "Error: Invalid admin level."); if (Logged[giveplayerid] == 0) return SendClientMessage2(playerid, COLOR_WHITE, "Error: Player isn't logged in."); GetPlayerName(giveplayerid, giveplayer, MAX_PLAYER_NAME); if (adlvl[giveplayerid] >= adlvl[playerid] && adlvl[playerid] != 6 && !IsPlayerAdmin(playerid)) return SendPlayerFormattedText(playerid, COLOR_RED, "Error: You cannot Make admin %s", giveplayer, ""); GetPlayerName(giveplayerid, giveplayer, MAX_PLAYER_NAME); if (moneys1 == adlvl[giveplayerid]) { format(string, 64, "%s is already admin level %d.", giveplayer, moneys1); SendClientMessage2(playerid, COLOR_WHITE, string); return 1; } GetPlayerName(playerid, playername, MAX_PLAYER_NAME); if (moneys1 != 0) { dini_IntSet(AddDirFile(dir_userfiles, giveplayer), "adminlevel", moneys1); dini_IntSet(AddDirFile(dir_datafiles, FILE_ADMINS), giveplayer, moneys1); } else { dini_Unset(AddDirFile(dir_userfiles, giveplayer), "adminlevel"); dini_Unset(AddDirFile(dir_datafiles, FILE_ADMINS), giveplayer); } adlvl[giveplayerid] = moneys1; format(string, 64, "You have been set as admin level %d.", moneys1); SendClientMessage2(giveplayerid, COLOR_YELLOW, string); format(string, 64, "You have set %s as admin level %d.", giveplayer, moneys1); SendClientMessage2(playerid, COLOR_YELLOW, string); return 1; } |