Hallo Breadfish!
Ich habe mir mal zwei Befehle erstellt, eins /makeleader basierend auf ocmd und eins /makeadmin basierend auf dcmd.
Wenn ich jetz z.B. eingebe /makeadmin [playerid] [adminlevel] dann wird die Variable "adminlevel" immer wieder auf 0 gesetzt.
Auch beim /makeleader befehl ist das so.
Und ich wollte euch fragen, ob ihr mir helfen könntet...
MFG
Moha
meine Befehle: (makeleader habe ich nicht mehr sry..)
dcmd_makeadmin(playerid, params[])
{
new pid, rang;
if(sscanf(params,"ud",pid, rang))
{
SendClientMessage(playerid, COLOR_DARKRED,"Verwendung: /makeadmin [playerid] [adminlevel]");
return 1;
}
if(IsPlayerAnAdmin(playerid,2010))
{
if(pid == INVALID_PLAYER_ID)
{
return SendClientMessage(playerid, COLOR_DARKRED,"Ungültiger Spieler.");
}
new string[128];
sFiles[pid][pAdmin] = rang;
format(string,sizeof(string),"Administrator %s hat dich zum Admin %d befördert.",GetSpielerName(playerid),sFiles[pid][pAdmin]);
SendClientMessage(pid,COLOR_LIGHTBLUE,string);
format(string,sizeof(string),"Admin %s hat %s zum Admin %d befördert.",GetSpielerName(playerid),GetSpielerName(pid),sFiles[pid][pAdmin]);
printf(string);
for(new i=0; i<GetMaxPlayers(); i++)
{
if(IsPlayerConnected(i))
{
if(IsPlayerAnAdmin(i,1))
{
SendClientMessage(i, COLOR_LIGHTBLUE, string);
return 1;
}
}
}
}
return 1;
}