Hallo,
ich versuche grad über OnPlayerClickPlayer ein Admin Menü für Admins zu machen, aber bei meinem Versuch damit jemanden ins CP Prison zu stecken scheitert es.
Wenn ich im Admin Menü "Spieler ins CP Prison stecken" gewählt habe erscheint das richtige Textfenster in dem nach den CPs gefragt wird, aber nachdem ich dort egal was eingebe schließt sich der Dialog und nichts passiert. In der Serverlog steht nichts.
Admin Menü:
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, 1444, DIALOG_STYLE_INPUT, "Spieler ins CP Prison stecken", "Gib die gewünschten Checkpoints ein", "CPs setzen", "Abbrechen");
if(listitem == 3) return ShowPlayerDialog(playerid, 1343, DIALOG_STYLE_INPUT, "Nachricht versenden", "Gib deine Nachricht ein", "Versenden", "Abbrechen");
if(listitem == 4) return ShowPlayerDialog(playerid, 1340, DIALOG_STYLE_INPUT, "Spieler bannen", "Gib den Banngrund ein", "Bannen", "Abbrechen");
if(listitem == 5) return ShowPlayerDialog(playerid, 1341, DIALOG_STYLE_INPUT, "Spieler IP bannen", "Gib den IP Banngrund ein", "IP bannen", "Abbrechen");
if(listitem == 6) return ShowPlayerDialog(playerid, 1342, DIALOG_STYLE_INPUT, "Rang ändern", "Gib den gewünschten Rang ein", "Rang setzen", "Abbrechen");
}
}
Dialog 1344 (CP Prison):
if(dialogid == 1344)
{
SavedText[playerid] = inputtext[playerid];
if(SavedText[playerid] > 99 || SavedText[playerid] < 5) return ShowPlayerDialog(playerid, 1444, DIALOG_STYLE_INPUT, "Spieler ins CP Prison stecken", "Gib die gewünschten Checkpoints ein", "CPs setzen", "Abbrechen");
if(!response) return SendClientMessage(playerid, 0xff0c29ff, "Auswahl abgebrochen.");
else
{
ShowPlayerDialog(playerid, -1, 0, "", "", "","");
ShowPlayerDialog(playerid, 1345, DIALOG_STYLE_INPUT, "Spieler ins CP Prison stecken", "Gib den gewünschten Grund ein", "Grund angeben", "Abbrechen");
return 1;
}
}
Dialog 1345(Grund):
if(dialogid == 1345)
{
new target,str[140], reason[64], cps;
target = ClickedPlayer[playerid];
reason[playerid] = inputtext[playerid];
cps = SavedText[playerid];
if(!response) return SendClientMessage(playerid, 0xff0c29ff, "Auswahl abgebrochen.");
else
{
if(pJailed[target] == true)
{
return SendErrorMessage(playerid, "Der Spieler befindet sich bereits im CP Prison.");
}
MaxCheckPoints[target] = cps;
//Save Old Data
SaveOldData(target);
//Let's Jail
ResetPlayerWeapons(target);
ShowCPTextDraws(target);
format(str, sizeof(str), "PRISON: {FFFFFF}%s {FFFF00}hat {FFFFFF}%s {FFFF00}mit CP Jail(%d CPs) bestraft. [Grund: {FFFFFF}%s{FFFF00}]", GetName(playerid), GetName(target), cps,reason);
SendClientMessageToAll(COLOR_YELLOW, str);
SetPlayerPos(target, -1398.103515,937.631164,1036.479125);
SetPlayerInterior(target, 15);
SetPlayerVirtualWorld(target, 77);
pJailed[target] = true;
RandomCheckPointCreate(target);
printf("[warning] %s hat %s für %d CP's ins CP Prison gesteckt.",GetName(playerid),GetName(target),cps);
return 1;
}
}