Moin Breadfish, ich habe ein kleines Problem und zwar, egal welchen Adminbefehl ich benutze, immer wird nur ID 0 vom Server gekickt oder sonstiges, ich kann keine Spieler wie zB. ID 4 kicken o.Ä.. Ich benutze zcmd, hätte jemand einen Vorschlag da, wie ich das verhindern könnte?
MfG
Azure
//EDIT
Vergessen Codes einzufügen, wie gesagt es ist bei allen so, hier 2 Beispiele von Kick & Makeadmin:
COMMAND:kick(playerid,params[])
{
new pID,reason[128],kstring[128];
if(sscanf(params,"us",pID,reason))return SendClientMessage(playerid,ROT,"Verwendung: /kick [Spielerid] [Grund]");
if(SpielerInfo[playerid][Adminlevel] < 1)return SendClientMessage(playerid,ROT,"Sie dürfen diesen Befehl nicht verwenden");
{
if(IsPlayerConnected(pID))
{
format(kstring,sizeof(kstring),"%s wurde von %s vom Server gekickt. (Grund: %s)",GetName(pID),GetName(playerid),reason);
SendClientMessageToAll(ROT,kstring);
Kick(pID);
}
else
{
SendClientMessage(playerid,ROT,"Dieser Spieler ist nicht online!");
}
}
return 1;
}
/makeadmin
COMMAND:makeadmin(playerid,params[])
{
new pID,newAdmin;
if(SpielerInfo[playerid][Adminlevel] < 6)return SendClientMessage(playerid, ROT, "Du hast nicht das benötigte Adminlevel.");
{
if(aLogin[playerid]==1)
{
if(sscanf(params, "ui",pID,newAdmin))return SendClientMessage(playerid,ROT,"Verwendung: /makeadmin [playerid] [Adminlevel]");
if(!IsPlayerConnected(pID))return SendClientMessage(playerid,ROT,"Kein Spieler mit angegebener ID Online");
if(newAdmin>6) return SendClientMessage(playerid,ROT,"Das Adminlevel darf nicht höher als 6 sein");
if(newAdmin<0) return SendClientMessage(playerid,ROT,"Das Adminlevel darf nicht niedriger als 0 sein");
else
{
new string[128],name[20],playername[20];
GetPlayerName(pID,name,sizeof(name));
GetPlayerName(playerid,playername,sizeof(playername));
format(string,sizeof(string),"%s hat das Adminlevel von %s (ID %i) auf %i geändert.",playername,name,pID,newAdmin);
for(new i; i<MAX_PLAYERS;i++)
{
if(SpielerInfo[i][Adminlevel]>=1)
{
SendClientMessage(i,GRAU,string);
}
}
format(string,sizeof(string),"Sie haben das Adminlevel von %s (ID %i) auf %i geändert.",name,pID,newAdmin);
SendClientMessage(playerid,GRAU,string);
SpielerInfo[pID][Adminlevel] = newAdmin;
format(string,sizeof(string),"Admin %s hat dein Adminlevel auf %i gesetzt.",playername,newAdmin);
SendClientMessage(pID,GRAU,string);
format(string,sizeof(string),"%s hat das Adminlevel von %s (ID %i) auf %i geändert.",playername,name,pID,newAdmin);
Adminlog(string);
}
}
else return SendClientMessage(playerid,ROT,"Sie sind nicht als Admin eingeloggt");
}
return 1;
}
//EDIT²
Wenn ich es in [pwn] mache ist alles in einer Zeile, deshalb hab ichs so da stehen.