[HILFE] Beim Dialog passiert nix

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
  • Heii Leute,


    könnt Ihr mir vielleicht sagen wo hier der Fehler ist, ich glaube es ist zu 100% ein return falsch da ich das mit dem return manchmal gar net chekck


    Hier der Befehl
    ocmd:prestige(playerid,params[])
    {
    if(!isPlayerAnAdmin(playerid,0))return SendClientMessage(playerid,HELLROT,"[Error] Du besitzt keine Rechte, um diesen Befehl zu benutzen!");
       for(new i=0; i<MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
       SpielerSpeichern(i);
    }
    }
    ShowPlayerDialog(playerid,DIALOG_PRESTIGE,DIALOG_STYLE_LIST,"{FAFAFA}Prestige","Prestige kaufen\nPrestige ansehen","Wählen","Abbrechen");
    return 1;
    }


    Hier das was passieren sollte xD
    if(dialogid == DIALOG_PRESTIGE)
    {
    if(response == 1)
    {
    if(listitem == 0)
    {
    if(GetPlayerScore(playerid) < 80)return SendClientMessage(playerid,HELLROT,"[Error] Du kannst dir dein Prestige erst ab Level 80 kaufen.");
    {
    new string[128];
    format(string,sizeof(string),"{FFFF48}%s hat sich ein Prestige gekauft!",SpielerName(playerid));
    SendClientMessageToAll(LEUCHTBLAU,string);
    SendClientMessage(playerid,GRUEN,"Herzlichen Glückwunsch, Du bist nun ein Prestige höher.");
    SetPlayerScore(playerid, GetPlayerScore(playerid) -80);
    PayPlayerMoney(playerid,100000);
    SetPVarInt(playerid,"Prestige",GetPVarInt(playerid,"Prestige") + 1);
    return 1;
    }
    }
    if(listitem == 1)
    {
    new name[MAX_PLAYER_NAME],pretext[512];
    GetPlayerName(playerid,name,sizeof(name));
    format(pretext,sizeof(pretext),"{FFFF00}%s,{FFFFFF}\ndein aktuelles Prestige-Level ist: {FFFF00}%i",SpielerName(playerid),GetPVarInt(playerid,"Prestige"));
    ShowPlayerDialog(playerid,DIALOG_PRESTIGE2,DIALOG_STYLE_MSGBOX,"{FAFAFA}Prestige",pretext,"Zurück","Abbrechen");
    return 1;
    }
    }
    }


    Ich bin mir sicher Ihr könnt mir helfen


    MfG
    Pablo



  • Kannst beide return 1; löschen...


    Engelsflügel am Astonkühler, als Schutz vor dem Teufel!

  • Dialog auch oben richtig Definiert und Nummeriert?

  • Ja und warum sollte man beim Befehl alle Spieler auf dem Server speichern lassen?
    Dann könnte man als normaler User einfach den Server zum Crashen bringen indem man einfach /prestige spammt.

  • Habe da die Klammern weggemacht, weil die unnötig waren, probiers mal so :D
    if(dialogid == DIALOG_PRESTIGE)
    {
    if(response == 1)
    {
    if(listitem == 0)
    {
    if(GetPlayerScore(playerid) < 80)return SendClientMessage(playerid,HELLROT,"[Error] Du kannst dir dein Prestige erst ab Level 80 kaufen.");
    new string[128];
    format(string,sizeof(string),"{FFFF48}%s hat sich ein Prestige gekauft!",SpielerName(playerid));
    SendClientMessageToAll(LEUCHTBLAU,string);
    SendClientMessage(playerid,GRUEN,"Herzlichen Glückwunsch, Du bist nun ein Prestige höher.");
    SetPlayerScore(playerid, GetPlayerScore(playerid) -80);
    PayPlayerMoney(playerid,100000);
    SetPVarInt(playerid,"Prestige",GetPVarInt(playerid,"Prestige") + 1);
    return 1;
    }
    if(listitem == 1)
    {
    new name[MAX_PLAYER_NAME],pretext[512];
    GetPlayerName(playerid,name,sizeof(name));
    format(pretext,sizeof(pretext),"{FFFF00}%s,{FFFFFF}\ndein aktuelles Prestige-Level ist: {FFFF00}%i",SpielerName(playerid),GetPVarInt(playerid,"Prestige"));
    ShowPlayerDialog(playerid,DIALOG_PRESTIGE2,DIALOG_STYLE_MSGBOX,"{FAFAFA}Prestige",pretext,"Zurück","Abbrechen");
    return 1;
    }
    }
    }

    Mit freundlichen Grüßen
    Zeuto

  • sorry @CroXx: passiert immer noch nix ;( Es muss doch gehen 8|


    Hier noch mal ALLLES


    #define DIALOG_PRESTIGE 53 // ist richtig nach der reihen folge bennant


    if(dialogid == DIALOG_PRESTIGE)
    {
    if(response == 1)
    {
    if(listitem == 0)
    {
    if(GetPlayerScore(playerid) < 80)return SendClientMessage(playerid,HELLROT,"[Error] Du kannst dir dein Prestige erst ab Level 80 kaufen.");
    new string[128];
    format(string,sizeof(string),"{FFFF48}%s hat sich ein Prestige gekauft!",SpielerName(playerid));
    SendClientMessageToAll(LEUCHTBLAU,string);
    SendClientMessage(playerid,GRUEN,"Herzlichen Glückwunsch, Du bist nun ein Prestige höher.");
    SetPlayerScore(playerid, GetPlayerScore(playerid) -80);
    PayPlayerMoney(playerid,100000);
    SetPVarInt(playerid,"Prestige",GetPVarInt(playerid,"Prestige") + 1);
    return 1;
    }
    if(listitem == 1)
    {
    new name[MAX_PLAYER_NAME],pretext[512];
    GetPlayerName(playerid,name,sizeof(name));
    format(pretext,sizeof(pretext),"{FFFF00}%s,{FFFFFF}\ndein aktuelles Prestige-Level ist: {FFFF00}%i",SpielerName(playerid),GetPVarInt(playerid,"Prestige"));
    ShowPlayerDialog(playerid,DIALOG_PRESTIGE2,DIALOG_STYLE_MSGBOX,"{FAFAFA}Prestige",pretext,"Zurück","Abbrechen");
    return 1;
    }
    }
    if(response==0) // Hab da jetzt mal so gemacht aber geht auch nicht
    {


    }
    }


    ocmd:prestige(playerid,params[]) // Und hier der Befehl
    {
    if(!isPlayerAnAdmin(playerid,0))return SendClientMessage(playerid,HELLROT,"[Error] Du besitzt keine Rechte, um diesen Befehl zu benutzen!");
    ShowPlayerDialog(playerid,DIALOG_PRESTIGE,DIALOG_STYLE_LIST,"{FAFAFA}Prestige","Prestige kaufen\nPrestige ansehen","Wählen","Abbrechen");
    return 1;
    }


    Wenn jemand Bock hat kann er sich das auch mal im TV ankucken