Hallo leute, wie der Titel schon sagt, habe ich ein Kleines Problem.
Es geht um mein Adminmenü:
#define ADMINSTRING "{FFFF00}Autos Respawnen\n{FFFF00}Zeit Setzen\n{FFFF00}Wetter Setzen\n{FFFF00}Zu Spieler Teleportieren\n{FFFF00}Spieler Herteleportieren\n{FFFF00}Zu Punkt Teleportieren\n{FFFF00}Spieler Kicken\n{FFFF00}Spieler Bannen\n{FFFF00}Leader machen\n{FFFF00}Rank geben"
#define ADMINTITEL "[Colex] Adminmenü"
Hauptsächlich um die Abteilung "Spieler Kicken,Bannen, Leader machen und Rank" geben.
Hier sind vorerst meine DIALOG_IDS
#define DIALOG_ADMINMENUE 16
#define DIALOG_ARESPAWNEN 17
#define DIALOG_AZEITSETZEN 18
#define DIALOG_AWETTERSETZEN 19
#define DIALOG_AZUSPIELERPORTEN 20
#define DIALOG_ASPIELERHERPORTEN 21
#define DIALOG_ARESPAWNAUSWAHL 22
#define DIALOG_HILFEAUSWAHL 23
#define DIALOG_REPORT 24
#define DIALOG_AKICKENGRUND 25
#define DIALOG_AKICKENID 26
#define DIALOG_ABANNENGRUND 27
#define DIALOG_ABANNENID 28
#define DIALOG_ALEADERMACHEN 29
#define DIALOG_ALEADERMACHENID 30
#define DIALOG_ARANKGEBEN 31
#define DIALOG_ARANKGEBENID 32
hier ist mein Adminmenü:
case DIALOG_ADMINMENUE:
{
if(!response)
{
return 1;
}
switch(listitem)
{
case 0: // Respawnen
{
ShowPlayerDialog(playerid,DIALOG_ARESPAWNAUSWAHL,DIALOG_STYLE_LIST,"[Colex] AutoRespawn","{FF7D00}SAPD Cars\n{FF7D00}FBI Cars\n{FF7D00}Army Cars\n{FF7D00}Terror Cars\n{FF7D00}Noobroller\n{FF7D00}Grove Cars","Auswählen","Zurück");
}
case 1: //Zeit Setzen
{
ShowPlayerDialog(playerid,DIALOG_AZEITSETZEN,DIALOG_STYLE_INPUT,"[Colex] Zeit Setzen","{FFFFFF}Tippe die Stunde unten ein, um die Zeit zu ändern.","Setzen","Zurück");
}
case 2: // Wetter Setzen
{
ShowPlayerDialog(playerid,DIALOG_AWETTERSETZEN,DIALOG_STYLE_INPUT,"[Colex] Wetter Setzen","{FFFFFF}Tippe die WetterID unten ein, um das Wetter zu ändern.","Setzen","Zurück");
}
case 3: // zu Spieler TPN
{
ShowPlayerDialog(playerid,DIALOG_AZUSPIELERPORTEN,DIALOG_STYLE_INPUT,"[Colex] Zu Spieler Porten","{FFFFFF}Tippe die ID ein, zu der du dich Porten willst:","Porten","Zurück");
}
case 4: // Spieler Herporten
{
ShowPlayerDialog(playerid,DIALOG_ASPIELERHERPORTEN,DIALOG_STYLE_INPUT,"[Colex] Spieler Herporten","{FFFFFF}Tippe die ID ein, die du Porten willst:","Porten","Zurück");
}
case 5: // zu Punkt Porten
{
ShowPlayerDialog(playerid,DIALOG_TELEPORTS,DIALOG_STYLE_LIST,"[Colex]Adminteleport","{00A8FF}Noobspawn\n{00A8FF}SAPD\n{00A8FF}BSN\n{00A8FF}Terrorbase\n{00A8FF}Armybase\n{00A8FF}Adminbase\n{00A8FF}Bank\n{00A8FF}FBI Base\n{00A8FF}Grove Street","Teleporten!","Zurück");
}
case 6: // Spieler Kickn
{
ShowPlayerDialog(playerid,DIALOG_AKICKENGRUND,DIALOG_STYLE_INPUT,"[Colex]Kicken","{ffffff}Tipp den Grund ein, weswegen du den Spieler Kicken willst!","Nächste","Zurück");
}
case 7: // Spieler Bannen
{
ShowPlayerDialog(playerid,DIALOG_ABANNENGRUND,DIALOG_STYLE_INPUT,"[Colex]Bannen","{ffffff}Tipp den Grund ein, weswegen du den Spieler Bannen willst!","Nächste","Zurück");
}
case 8: // Leader machen
{
ShowPlayerDialog(playerid,DIALOG_ALEADERMACHEN,DIALOG_STYLE_INPUT,"[Colex]Leader","{ffffff}Tipp die FraktionsID ein, die der User bekommen soll:\n1 = SAPD | 2 = FBI | 3 = ARMY | 4 = GROVE | 7 = TERRORS","Nächste","Zurück");
}
case 9: // Rank geben
{
ShowPlayerDialog(playerid,DIALOG_ARANKGEBEN,DIALOG_STYLE_LIST,"[Colex]Rank","{ffffff}Tipp den Rank ein, die der User bekommen soll:\n Rank 1 - 6","Nächste","Zurück");
}
}
}
Halt, wenn man in der Liste oben drauf klickt,
Die taten:
case DIALOG_AKICKENGRUND:
{
if(!response) return ShowPlayerDialog(playerid,DIALOG_ADMINMENUE,DIALOG_STYLE_LIST,ADMINTITEL,ADMINSTRING,"Auswählen","Abbrechen");
if(SpielerInfo[playerid][Adminlevel] <= 1) return MSG(playerid,COLOR_RED,"Du bist nicht befugt, diesen Command zu benutzen!");
if(strlen(inputtext) < 0) return MSG(playerid,COLOR_RED,"Die Eingabe ist zu kurz.");
format(grundstring,sizeof(grundstring),"%s",inputtext);
ShowPlayerDialog(playerid,DIALOG_AKICKENID,DIALOG_STYLE_INPUT,"[Colex]Kicken","{ffffff}Tipp nun die ID ein, die der Spieler besitzt.\n(Nachzusehen unter TAB)","Kicken","Abbrechen");
}
case DIALOG_AKICKENID:
{
if(!response) return ShowPlayerDialog(playerid,DIALOG_ADMINMENUE,DIALOG_STYLE_LIST,ADMINTITEL,ADMINSTRING,"Auswählen","Abbrechen");
if(strlen(inputtext) < 0) return MSG(playerid,COLOR_RED,"Die Eingabe ist zu kurz.");
new idx, ID = strval(strtok(inputtext,idx));
new yostring[256];
format(yostring,sizeof(yostring),"Admin %s hat %s gekickt. Grund: %s",PlayerName(playerid),PlayerName(ID),grundstring);
MSGToAll(COLOR_MULTIRED,yostring);
Kick(ID);
MSG(playerid,COLOR_GREEN,"Spieler Gekickt!");
}
Doch beim Kicken, Leader Machen, Bannen, und Rank geben kommt das:
"Admin (Name) hat (name) Gekickt. Grund: "
Es wird kein Grund gespeichert.
und beim Leader ist das so, dass die LeaderID immer 0 beträgt.
Script ist ein Selfmade.
bitte um Hilfe.
mfg
//edit: den grundstring hab ich unter OnDialogResponse eingefügt. String 256.