Hallo,
ich erstelle momentan eine Liste bei OnPlayerClickPlayer wenn ein Teamitglied ein Spieler anklickt kriegt er ein Dialog indem er den Spieler bestrafen kann etc. Wenn man das Adminlevel 4 hat kriegt man die Auswahlmöglichkeit "Räng ändern" hinzu, diese funktioniert aber nicht, weil die in der Textbox eingegebene Zahl als 0 ausgegeben wird egal was man reinschreibt.
OnPlayerClickPlayer:
if(Player[playerid][Level] == 4)
{
ShowPlayerDialog(playerid, 1337, DIALOG_STYLE_LIST, "{FFFF00}Admin Menü", "{FFFF00}Spieler kicken\n{15ff00}Spieler muten\n{FF0000}Spieler bannen\n{ff7400}Spieler IP bannen\n{FFCC00}Rang ändern", "Auswählen", "Abbrechen");
ClickedPlayer[playerid] = clickedplayerid;
}
OnDialogResponse:
if(dialogid == 1337)
{
if(!response) return SendClientMessage(playerid, 0xFF0C29FF,"Auswahl abgebrochen.");
else
{
if(listitem == 0) return ShowPlayerDialog(playerid, 1338, DIALOG_STYLE_INPUT, "Spieler kicken", "Gib den Kickgrund ein", "Kicken", "Abbrechen");
if(listitem == 1) return ShowPlayerDialog(playerid, 1339, DIALOG_STYLE_INPUT, "Spieler muten", "Gib den Mutegrund ein", "Muten", "Abbrechen");
if(listitem == 2) return ShowPlayerDialog(playerid, 1340, DIALOG_STYLE_INPUT, "Spieler bannen", "Gib den Banngrund ein", "Bannen", "Abbrechen");
if(listitem == 3) return ShowPlayerDialog(playerid, 1341, DIALOG_STYLE_INPUT, "Spieler IP bannen", "Gib den IP Banngrund ein", "IP bannen", "Abbrechen");
if(listitem == 4) return ShowPlayerDialog(playerid, 1342, DIALOG_STYLE_INPUT, "Rang ändern", "Gib den gewünschten Rang ein", "Rang setzen", "Abbrechen");
}
}
if(dialogid == 1342)
{
new string[128], target, level;
ClickedPlayer[playerid] = target;
inputtext[playerid] = level;
if(!response) return SendClientMessage(playerid, 0xff0c29ff,"Auswahl abgebrochen.");
if(isnull(inputtext) || !IsNumeric(inputtext) || level > 4) return ShowPlayerDialog(playerid, 1342, DIALOG_STYLE_INPUT, "Rang ändern", "Gib den gewünschten Rang ein", "Rang setzen", "Abbrechen");
else
{
Player[target][Level] = level;
SavePlayer(target);
format(string,sizeof(string),"%s hat %s's Rang geändert zu: %s",GetName(playerid),GetName(target),GetRang(target));
SendAdminMessage(1,string);
printf("[warning] %s ändert das Adminlevel von %s auf %s(%d)",GetName(playerid),GetName(target),GetRang(target),level);
return 1;
}
}
Wo ist der Fehler?