Sziasztok!
Olyan problémával fordulnék hozzátok, hogy adott egy 0-ról íródó gamemode.
Írtam már bele egy-két parancsot, főleg admin parancsokat amik működnek is, viszont van egy kis bökkenő, amit nem értek miért.
A lényeg, hogy pl.: adott egy admin rang adó parancs, felmegyek a szerverre, szépen és jól működik, viszont 5 rang lenne össz vissz és írtam egy korlátozást a parancsba süllyesztve, de így is lehet adni akár 12-es admin rangot is. Ugyan ez a skin váltó parancsnál... stb stb.
CMD:adminszint(playerid, params[])
{
if(IsPlayerConnected(playerid) == 1 && Belepve[playerid] == 1)
{
if(IsPlayerAdmin(playerid) == 1 || PlayerInfo[playerid][AdminSzint] >= 4)
{
new id, szint;
if(sscanf(params, "ui", id, szint)) return SendClientMessage(playerid, NARANCS, "Használat: /adminszint [ID] [Szint(0-4)]");
if(szint < 0 && szint > 4) return SendClientMessage(playerid, NARANCS, "A szintnek 0 és 4 között kell lennie!");
{
if(PlayerInfo[id][AdminSzint] >= 4) return SendClientMessage(playerid, NARANCS, "NA-NA!");
{
PlayerInfo[id][AdminSzint] = szint;
new neve[MAX_PLAYER_NAME];
GetPlayerName(playerid, JatekosNev, sizeof(JatekosNev));
GetPlayerName(id, neve, sizeof(neve));
new string[128];
format(string, sizeof(string), "%s kinevezett %d szintű adminnak!", JatekosNev, szint);
SendClientMessage(id, KEK, string);
SendClientMessage(id, PIROS, "A parancsokért írd be: /ah");
format(string, sizeof(string), "Kinevezted %s-t %d szintű adminnak!", neve, szint);
SendClientMessage(playerid, KEK, string);
}
}
}
else
{
SendClientMessage(playerid, PIROS, "Nincs jogosultságod ehhez a parancshoz!");
}
}
return 1;
}