Hey Com!
Ich hab ein Problem und zwar, wenn ich z.B. /kick 64 Spam eingebe, wird der Spieler gekickt, aber es steht im Chat nur: "Spam" in rot.
Hier meine Zeilen:
dcmd_kick(playerid,params[])
{
new pID, str[64];
if(sscanf(params, "uz",pID,str))return SendClientMessage(playerid,0xC8C8C8FF,"/kick [ID/Name] [Grund]");
if (pID == INVALID_PLAYER_ID)return SendClientMessage(playerid,0xC8C8C8FF,"Dieser Spieler ist nicht online!");
if (pID == playerid)return SendClientMessage(playerid,0xC8C8C8FF,"Du kannst dich nicht selber kicken!");
if(pInfo[playerid][AdminLevel] > 0)
{
new ThePlayer[MAX_PLAYER_NAME], str2[128];
GetPlayerName(pID,ThePlayer,sizeof(ThePlayer));
format(str2,sizeof(str2),"%s wurde vom Server gekickt! [Grund: %s]",ThePlayer,str[0] ? str : "Kein Grund");
SendClientMessageToAll(0xFF000073,str);
Kick(pID);
}
else return SendClientMessage(playerid, 0xC8C8C8FF, "Dein Adminrank reicht nicht aus!");
return 1;
}
Und dann habe ich noch ein Befehl gescriptet, der Spieler tötet bzw. die HP auf 0 setzt.
Also z.B. /kill 64 Stör mich nicht!
Mein Problem ist jetzt aber, dass die Leerzeichen irgendwie nicht erkannt werden, weswegen dort steht: "Du wurdest von Walker getötet! [Grund: Stör]
Hier meine Zeilen:
dcmd_kill(playerid,params[])
{
new pID, grund[128];
if(sscanf(params, "usz",pID, grund))return SendClientMessage(playerid,0xC8C8C8FF,"/kill [ID/Name] [Grund]");
if(pID == INVALID_PLAYER_ID)return SendClientMessage(playerid,0xC8C8C8FF,"Dieser Spieler ist nicht online!");
if(pInfo[playerid][AdminLevel] > 0)
{
new str[128], pname[20];
GetPlayerName(playerid, pname, sizeof(pname));
format(str,sizeof(str),"%s hat dich getötet! [Grund: %s]",pname,grund[0] ? grund : "Kein Grund");
SendClientMessage(pID, 0xFF000073, str);
SetPlayerHealth(pID,0);
}
else return SendClientMessage(playerid, 0xC8C8C8FF, "Dein Adminrank reicht nicht aus!");
return 1;
}
Wie kann ich diese Fehler beheben?
Bitte helft mir!
mfG