Habe ein Problem mit meinem /kick und /ban befehl.
Hier schonmal der Code:
dcmd(kick,4,cmdtext);
dcmd(ban,3,cmdtext);
dcmd_kick(playerid,params[])
{
new zielid;
new grund[256];
if(sscanf(params, "us",zielid,grund))
{
return SendClientMessage(playerid,weiß,"Benutzung: /kick [ID] [Grund]");
}
if(IsInAdmin[playerid] >= 1)
{
if(IsPlayerConnected(playerid) && !IsPlayerConnected(zielid))
{
SendClientMessage(playerid,rot,"Es existiert kein Spieler mit dieser ID");
return 1;
}
else
{
if(zielid == playerid)
{
SendClientMessage(playerid,rot,"Du solltest dich besser nicht selber kicken");
return 1;
}
else
{
new admin[MAX_PLAYER_NAME];
new string[256];
GetPlayerName(playerid,admin,sizeof(admin));
format(string,sizeof(string),"Du wurdest von Admin %s gekickt. [Grund: %s ]",admin,grund);
SendClientMessage(zielid,rot,string);
Kick(zielid);
new string2[256];
new gekickt[MAX_PLAYER_NAME];
GetPlayerName(zielid,gekickt,sizeof(gekickt));
format(string2,sizeof(string),"Admin %s hat %s gekickt. [Grund: %s ]",admin,gekickt,grund);
SendClientMessageToAll(gelb,string2);
print("-----");
print(string2);
return 1;
}
}
}
else
{
SendClientMessage(playerid,rot,"Du besitzt nicht die nötige Einstufung zur Ausführung dieses Befehls");
return 1;
}
}
dcmd_ban(playerid,params[])
{
new zielid = strval(params);
new grund[256];
if(sscanf(params, "us",zielid,grund))
{
return SendClientMessage(playerid,weiß,"Benutzung: /ban [ID] [Grund]");
}
if(IsInAdmin[playerid] == 2)
{
if(IsPlayerConnected(playerid) && !IsPlayerConnected(zielid))
{
SendClientMessage(playerid,rot,"Es existiert kein Spieler mit dieser ID");
return 1;
}
else
{
if(zielid == INVALID_PLAYER_ID)
{
SendClientMessage(playerid,rot,"Es existiert kein Spieler mit dieser ID");
return 1;
}
else
{
if(zielid == playerid)
{
SendClientMessage(playerid,rot,"Du solltest dich besser nicht selber bannen");
return 1;
}
else
{
new admin[MAX_PLAYER_NAME];
new string[256];
GetPlayerName(playerid,admin,sizeof(admin));
format(string,sizeof(string),"Du wurdest von Admin %s gebannt. [Grund: %s ]",admin);
SendClientMessage(zielid,rot,string);
PlayerInfo[playerid][pBan] = 1;
Ban(zielid);
new string2[256];
new gekickt[MAX_PLAYER_NAME];
GetPlayerName(zielid,gekickt,sizeof(gekickt));
format(string2,sizeof(string),"Admin %s hat %s gebannt. [Grund: %s ]",admin,gekickt);
SendClientMessageToAll(gelb,string2);
print("-----");
print(string2);
return 1;
}
}
}
}
else
{
SendClientMessage(playerid,rot,"Du besitzt nicht die nötige Einstufung zur Ausführung dieses Befehls");
return 1;
}
}
Es kommt aber nur ingame der Standarttext /kick - you are not an admin!
und außerdem muss man sich dafür in rcon einloggen bei allen anderen dcmd befehlen aber nicht...
bitte helfen!