@Music4You:
Das würde zu Fehlern kommen, wenn der Spieler im Dialog ist und gleichzeitig wer anders im Dialog ist und dann würde der andere die ID vom anderen übernehmen ![]()
Deshalb muss man das nochmal Spielerspezifisch machen, sprich so:
new nameid[MAX_PLAYERS char];//oben im script.
ocmd:kick(playerid,params[])
{
new pID, reason[128], string[128];
if(sscanf(params,"us",pID,reason))return SendClientMessage(playerid,Red,"Eingabe: /kick [ID] [Grund]");
format(string,sizeof(string),"%s hat %s gekickt! Grund: %s",SpielerName(playerid),SpielerName(pID),reason);
SendClientMessageToAll(Red,string);
ShowPlayerDialog(playerid,DIALOG_KICK,DIALOG_STYLE_MSGBOX,"Kick","Möchtest du den Spieler wirklich kicken?","Ja","Nein");
nameid{playerid}=pID;
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == DIALOG_KICK) {
if(!response) return SendClientMessage(playerid,Red,"Du hast den Vorgang abgebrochen!"),nameid{playerid}=0;
return Kick(nameid{playerid});
}
return 1;
}
mfg. ![]()