Onplayerdialogreponse fehler ?

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
  • Wenn ich im Dialog etwas anklicke passiert nichts...
    Kann ja nur von OnPlayerDialogResponse der Fehler kommen oder ?



    #define Waffenmenu 14


    ShowPlayerDialog(playerid,Waffenmenu, DIALOG_STYLE_LIST, "Waffen", "Pack1\nPack2", "Auswählen", "Abbrechen");
    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    switch(dialogid)
    {
    case DIALOG_REGISTER:
    {
    if(response)
    {
    if(strlen(inputtext) == 0)
    {



    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_PASSWORD,"Register","Das
    angegebene Passwort war zu Kurtz...\nBitte Registrier dich jetzt mit
    einem Passwort:","Register","Abbrechen");
    return 1;
    }
    else
    {
    CreateAccount(playerid, inputtext);
    SetPVarInt(playerid,"Eingeloggt",1);
    SpawnPlayer(playerid);
    return 1;
    }
    }
    else
    {
    Kick(playerid);
    }
    }
    case DIALOG_LOGIN:
    {
    if(response)
    {
    if(strlen(inputtext) == 0)
    {



    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login","Das
    Angegebene Passwort war Falsch.\nBitte log dich jetzt mit dem richtigen
    Passwort ein:","Login","Abbrechen");
    return 1;
    }
    else
    {
    new SpielerName[MAX_PLAYER_NAME];
    GetPlayerName(playerid, SpielerName, MAX_PLAYER_NAME);
    if(!strcmp(inputtext, mysql_ReturnPasswort(SpielerName), true))
    {
    SetPVarInt(playerid,"Eingeloggt",1);
    LoadPlayer(playerid);
    SpawnPlayer(playerid);
    return 1;
    }
    else
    {



    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Das
    war das Falsche Passwort.\nBitte log dich jetzt mit dem richtigen
    Passwort ein:","Login","Abbrechen");
    return 1;
    }
    }
    }
    else
    {
    Kick(playerid);
    }
    if(dialogid == Waffenmenu)
    {
    if(response)
    {
    if(listitem == 0)
    {
    GivePlayerWeapon(playerid,22,100);


    }
    if(listitem == 1)
    {
    GivePlayerWeapon(playerid,24,75);


    }
    }
    }


    }
    }
    return 1;
    }


  • Einfach deins ausschneiden und meins einfügen:


    #define Waffenmenu 14


    ShowPlayerDialog(playerid,Waffenmenu, DIALOG_STYLE_LIST, "Waffen", "Pack1\nPack2", "Auswählen", "Abbrechen");
    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    if(dialogid == DIALOG_REGISTER)
    {
    if(response)
    {
    if(strlen(inputtext) == 0)
    {
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_PASSWORD,"Register","Das angegebene Passwort war zu Kurtz...\nBitte Registrier dich jetzt mit einem Passwort:","Register","Abbrechen");
    return 1;
    }
    else
    {
    CreateAccount(playerid, inputtext);
    SetPVarInt(playerid,"Eingeloggt",1);
    SpawnPlayer(playerid);
    return 1;
    }
    }
    else
    {
    Kick(playerid);
    }
    }
    if(dialogid == DIALOG_LOGIN)
    {
    if(response == 1)
    {
    if(strlen(inputtext) == 0)
    {
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login","Das Angegebene Passwort war Falsch.\nBitte log dich jetzt mit dem richtigen Passwort ein:","Login","Abbrechen");
    return 1;
    }
    else
    {
    new SpielerName[MAX_PLAYER_NAME];
    GetPlayerName(playerid, SpielerName, MAX_PLAYER_NAME);
    if(!strcmp(inputtext, mysql_ReturnPasswort(SpielerName), true))
    {
    SetPVarInt(playerid,"Eingeloggt",1);
    LoadPlayer(playerid);
    SpawnPlayer(playerid);
    return 1;
    }
    else
    {
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Das war das Falsche Passwort.\nBitte log dich jetzt mit dem richtigen Passwort ein:","Login","Abbrechen");
    return 1;
    }
    }
    }
    else
    {
    Kick(playerid);
    return 1;
    }
    }
    if(dialogid == Waffenmenu)
    {
    if(response == 1)
    {
    switch (listitem)
    {
    if(listitem == 0)
    {
    GivePlayerWeapon(playerid,22,100);
    }
    if(listitem == 1)
    {
    GivePlayerWeapon(playerid,24,75);
    }
    }
    }
    }
    return 1;
    }


    mfg. :thumbup:


    //Edit: Eingerückt

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • C:\Users\Plyer\Desktop\mysql\gamemodes\ren2.pwn(2354) : warning 219: local variable "SpielerName" shadows a variable at a preceding level
    C:\Users\Plyer\Desktop\mysql\gamemodes\ren2.pwn(2382) : error 002: only a single statement (or expression) can follow each "case"
    C:\Users\Plyer\Desktop\mysql\gamemodes\ren2.pwn(2382 -- 2383) : error 029: invalid expression, assumed zero
    C:\Users\Plyer\Desktop\mysql\gamemodes\ren2.pwn(2392) : warning 209: function "OnDialogResponse" should return a value
    C:\Users\Plyer\Desktop\mysql\gamemodes\ren2.pwn(2393) : error 010: invalid function or declaration
    C:\Users\Plyer\Desktop\mysql\gamemodes\ren2.pwn(3301) : warning 203: symbol is never used: "GameMinutes"
    C:\Users\Plyer\Desktop\mysql\gamemodes\ren2.pwn(3301) : warning 203: symbol is never used: "GameSeconds"
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    3 Errors.