Zweiter dialog botton macht nicht das was er soll!?

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Abend, in meinem Shop dialogen gibt es ein problem, ich habe die waffen in verschiedene kategorien eingeteilt, die erste geht auch ohne probleme mit den zurück botton...


    doch meine zwei anderen kategorien gehen beim zurück botton zu der ersten kategorie :( In meinem Script ist eig. alles richtig. Hatte einer so ein ähnliches probelm?


    if(dialogid==DIALOG_SHOP3)
    {
    if(response==1)
    {
    switch(listitem)
    {
    case 0 :
    {
    if GetPlayerMoney(playerid) > 1000
    *then
    {
    new Float:life;
    GetPlayerHealth(playerid, life);
    new Float:live = (life + 50.0);
    SetPlayerHealth(playerid, live);
    SendClientMessage(playerid,COLOR_GREEN,"You bought Heal 50% for 1000$");
    GivePlayerMoney(playerid, -1000);
    ShowPlayerDialog(playerid,DIALOG_SHOP3,DIALOG_STYLE_LIST,"Other","Heal 50% 1000$\nHeal 100% 1600$\nArmour 50% 1800$ \nArmour 100% 2500$","Kaufen","Back");
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED, "You haven`t got enough money!");
    TogglePlayerControllable(playerid, 1);
    ShowPlayerDialog(playerid,DIALOG_SHOP3,DIALOG_STYLE_LIST,"Other","Heal 50% 1000$\nHeal 100% 1600$\nArmour 50% 1800$ \nArmour 100% 2500$","Kaufen","Back");
    return 1;
    }
    }

    case 1 :
    {
    if GetPlayerMoney(playerid) > 1600
    *then
    {
    new Float:life;
    GetPlayerHealth(playerid, life);
    new Float:live = (life + 100.0);
    SetPlayerHealth(playerid, live);
    SendClientMessage(playerid,COLOR_GREEN,"You bought Heal 100% for 1600$");
    GivePlayerMoney(playerid, -1600);
    ShowPlayerDialog(playerid,DIALOG_SHOP3,DIALOG_STYLE_LIST,"Other","Heal 50% 1000$\nHeal 100% 1600$\nArmour 50% 1800$ \nArmour 100% 2500$","Kaufen","Back");
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED, "You haven`t got enough money!");
    TogglePlayerControllable(playerid, 1);
    ShowPlayerDialog(playerid,DIALOG_SHOP3,DIALOG_STYLE_LIST,"Other","Heal 50% 1000$\nHeal 100% 1600$\nArmour 50% 1800$ \nArmour 100% 2500$","Kaufen","Back");
    return 1;
    }
    }

    case 2 :
    {
    if GetPlayerMoney(playerid) > 1800
    *then
    {
    SetPlayerArmour(playerid, 50.0);
    SendClientMessage(playerid,COLOR_GREEN,"You bought Armour 50% for 1800$");
    GivePlayerMoney(playerid, -1800);
    ShowPlayerDialog(playerid,DIALOG_SHOP3,DIALOG_STYLE_LIST,"Other","Heal 50% 1000$\nHeal 100% 1600$\nArmour 50% 1800$ \nArmour 100% 2500$","Kaufen","Back");
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED, "You haven`t got enough money!");
    TogglePlayerControllable(playerid, 1);
    ShowPlayerDialog(playerid,DIALOG_SHOP3,DIALOG_STYLE_LIST,"Other","Heal 50% 1000$\nHeal 100% 1600$\nArmour 50% 1800$ \nArmour 100% 2500$","Kaufen","Back");
    return 1;
    }
    }

    case 3 :
    {
    if GetPlayerMoney(playerid) > 2500
    *then
    {
    SetPlayerArmour(playerid, 100.0);
    SendClientMessage(playerid,COLOR_GREEN,"You bought Armour 100% for 2500$");
    GivePlayerMoney(playerid, -2500);
    ShowPlayerDialog(playerid,DIALOG_SHOP3,DIALOG_STYLE_LIST,"Other","Heal 50% 1000$\nHeal 100% 1600$\nArmour 50% 1800$ \nArmour 100% 2500$","Kaufen","Back");
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED, "You haven`t got enough money!");
    TogglePlayerControllable(playerid, 1);
    ShowPlayerDialog(playerid,DIALOG_SHOP3,DIALOG_STYLE_LIST,"Other","Heal 50% 1000$\nHeal 100% 1600$\nArmour 50% 1800$ \nArmour 100% 2500$","Kaufen","Back");
    return 1;
    }
    }
    }
    }
    }
    else if(!response)
    {
    ShowPlayerDialog(playerid,DIALOG_SHOP,DIALOG_STYLE_LIST,"Shop","Weaponts\nEquipment\nOther","More","Close"); //Hier ist alles richtig, er geht aber wo ganz anderst hin :(
    return 1;
    }