Hallo, ich habe ein kleines problem.
in meinem Selfmade hab ich ein Tutorialsystem überschrieben, das so aussieht:
public OnPlayerSpawn(playerid)
{
if(SpielerInfo[playerid][Neu] == 0)
{
tutorialsetup[playerid] = 1;
SetToTutorial(playerid);
}//tutorial
mein SetToTutorial:
public SetToTutorial(playerid)
{
if(tutorialsetup[playerid] == 1)
{
ShowPlayerDialog(playerid,DIALOG_TUTORIAL,DIALOG_STYLE_MSGBOX,TUTORIALTITEL,TUTORIALSTRING1,"OK","");
tutorialsetup[playerid] = 0;
}
if(tutorialsetup[playerid] == 0)
{
if(SpielerInfo[playerid][Alter] == 0)
{
TogglePlayerControllable(playerid,0);
ShowPlayerDialog(playerid,DIALOG_ALTER,DIALOG_STYLE_INPUT,"Tutorial:{00ff00}Alter","{ffffff}Bitte Tipp dein Alter ein. {00ff00}(Beispiel: 16)","Ok","");
}
else if(SpielerInfo[playerid][Alter] != 0)
{
TogglePlayerControllable(playerid,0);
ShowPlayerDialog(playerid,DIALOG_GESCHLECHT,DIALOG_STYLE_LIST,"Tutorial:{00ff00}Geschlecht","{00ff00}Du bist:\n{ffffff}Männlich\n{ffffff}Weiblich","OK","");
}
if(SpielerInfo[playerid][Geschlecht] != 0)
{
ShowPlayerDialog(playerid,DIALOG_TUTORIAL2,DIALOG_STYLE_MSGBOX,"{00ff00}[Colex]Tutorial","{ffffff}Vielen Dank für die Informationen. Sie wurden soeben in der Datenbank aufgenommen.\n{ffffff}Du kannst dir nun das Tutorial anschauen, wenn du möchtest.","Anschauen","Ablehnen");
TogglePlayerControllable(playerid,0);
}
}
}
doch beim Spawnen springt er gleich zu dem Alter.
was ist falsch?
hier noch meine Dialogabfragen:
case DIALOG_ALTER:
{
new alter = strval(inputtext);
if(alter < 10) return ShowPlayerDialog(playerid,DIALOG_ALTER,DIALOG_STYLE_INPUT,"{ffffff}Fehler","{ffffff}Bitte Tippe dein richtiges Alter ein. (Nicht unter 10)","OK","");
SpielerInfo[playerid][Alter] = alter;
Speichern(playerid);
SetToTutorial(playerid);
}
case DIALOG_GESCHLECHT:
{
switch(listitem)
{
case 0:
{
ShowPlayerDialog(playerid,DIALOG_GESCHLECHT,DIALOG_STYLE_LIST,"Tutorial:{00ff00}Geschlecht","{00ff00}Du bist:\n{ffffff}Männlich\n{ffffff}Weiblich","OK","");
}
case 1:
{
SpielerInfo[playerid][Geschlecht] = 1;//männlich
SetToTutorial(playerid);
Speichern(playerid);
}
case 2:
{
SpielerInfo[playerid][Geschlecht] = 2;//weiblich
SetToTutorial(playerid);
Speichern(playerid);
}
}
}
case DIALOG_TUTORIAL:
{
if(response)
{
SetToTutorial(playerid);
}
if(!response)
{
SetToTutorial(playerid);
}
}
case DIALOG_TUTORIAL2:
{
if(response)
{
imtutorial[playerid] = 1;
tutorialtimer = SetTimerEx("tutorial",5000,1,"if",playerid);
tutorialzeit[playerid] = 1;
MSG(playerid,COLOR_GREEN,"Du wirst zum Tutorial weitergeleitet.");
}
if(!response)
{
ShowPlayerDialog(playerid,DIALOG_ADMINHOLEN,DIALOG_STYLE_MSGBOX,"{00ff00}[Colex]Hilfe","{ffffff}Du hast entschieden, dir das Tutorial nicht anzuschauen.\n{ffffff}Möchtest du lieber ein Admin holen?","Ja","Nein");
}
}
case DIALOG_ADMINHOLEN:
{
if(response)
{
new string[256];
format(string,sizeof(string),"ToAdmins: %s ruft nach einem Admin, weil er das Tutorial absolviert hat.",PlayerName(playerid));
SendToAdmins(COLOR_LIGHTRED,string);
MSG(playerid,COLOR_LIGHTBLUE,"Ein Admin wird sich um dich kümmern.");
}
if(!response)
{
MSG(playerid,COLOR_GREEN,"Dann wünscht das Adminteam dir viel spaß auf Colex-RL!");
}
}
mfg