[DIALOG]Register

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
  • Guten Abend liebe Community,
    Ich habe heute angefangen zu scripten, mit einem Scriptlehrer. Mein erstes Registersystem steht schon, aber ich hab ein Problem. Wenn ich mich registriere in der ersten Dialogbox, dann steht dort "Du hast dich erfolgreich registrieren können!", aber man spawnt nicht, wie ich es im Script angegeben habe mit dem entsprechenden Skin. Man spawnt mit dem Skin, wenn man, ohne etwas in die Box einzugeben, "Registrieren" drückt und die Registration fehlschlägt und sie danach richtig eingibt, also mit einem Passwort.


    Hier der Code:
    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    switch(dialogid) //Wenn:
    {
    case DIALOG_REGISTER: //Dann/Sonst passiert das:
    {
    if(response) //Zeigt ob der linke Button betätigt wurde.
    {
    if(inputtext[0]) //Wenn er betätigt wurde, dann passiert das:
    {
    SendClientMessage(playerid,0x00B200FF,"SERVER: Sie haben sich erfolgreich registriert!"); //Schickt diese Nachricht, wenn der User sich erfolgreich registriert hat. (Und die Farbe des Textes)
    SpawnPlayer(playerid); //Bringt den Player, direkt nach dem registrieren dazu, sofort zu spawnen.
    SetPlayerSkin(playerid,23); //Wählt den Skin mit welchen der Charakter spawnen soll.
    return 1;
    }
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_PASSWORD,"Registration ist fehlgeschlagen","SERVER: Sie haben nichts ausgewählt!\nBitte registrieren Sie sich, um fortzufahren.\nWählen Sie Verlassen, wenn sie den Server verlassen möchten.","Registrieren","Verlassen");
    }
    else //Wenn er nicht betätigt wurde (Der linke Button), dann wird der User gekickt.
    {
    SendClientMessage(playerid,0xFF0000FF,"SERVER: Sie haben den Server verlassen, Sie werden jetzt gekickt!"); //Die Nachricht, bevor der User gekickt wird.
    Kick(playerid); //Der Kickbefehl.
    return 1;
    }
    }
    }
    return 1;
    }


    Liebe Grüße, ShookOneZ

  • naja du musst die parameter angeben ...


    SetSpawnInfo(playierid, team, skin, X, Y, Z, Angel, waffe1, waffe1munition, we/*(kp was das istxD)*/);


    (e) und das genau über SpawnPlayer... oder direkt unter OnDialogResponse ...
    (ee)kommentar makiert

  • Cloudy und warum sollte man das tun?
    Das problem ist nicht das er nicht spawnt, sondern das er auch spawnt wenn man NICHTS eingibt.


    Probier das mal so:


    if(!inputtext[0]) //wenn er nichts eingibt -> kommt nur ein dialog und lässt ihn nicht spawnen
    {
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_PASSWORD,"Registration ist fehlgeschlagen","SERVER: Sie haben nichts ausgewählt!\nBitte registrieren Sie sich, um fortzufahren.\nWählen Sie Verlassen, wenn sie den Server verlassen möchten.","Registrieren","Verlassen");
    return 1;
    }
    SendClientMessage(playerid,0x00B200FF,"SERVER: Sie haben sich erfolgreich registriert!"); //Schickt diese Nachricht, wenn der User sich erfolgreich registriert hat. (Und die Farbe des Textes)
    SpawnPlayer(playerid); //Bringt den Player, direkt nach dem registrieren dazu, sofort zu spawnen.
    SetPlayerSkin(playerid,23); //Wählt den Skin mit welchen der Charakter spawnen soll.
    return 1;

    "Bevor ich mir Informationen aus der "Bild" hole,
    werde ich anfangen, Wahlergebnisse danach vorauszusagen,
    neben welchen Busch unsere Katze gepinkelt hat."

    Margarete Stokowski

  • Wenn ich das dann so im Code angebe ist alles gut, der Compiler beschwert sich auch nicht. Aber im Spiel, wenn ich jetzt etwas eingebe als Passwort, zeigt er diese Nachricht an: "Registration ist fehlgeschlagen","SERVER: Sie haben nichts ausgewählt!\nBitte registrieren Sie sich, um fortzufahren.\nWählen Sie Verlassen, wenn sie den Server verlassen möchten.","Registrieren","Verlassen");E: Und loggt bzw. registriert sich nicht und spawnt auch nicht!

  • Das kann eigentlich nicht sein.

    if(strlen(inputtext)==0) //wenn er nichts eingibt -> kommt nur ein dialog und lässt ihn nicht spawnen
    {
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_PASSWORD,"Registration ist fehlgeschlagen","SERVER: Sie haben nichts ausgewählt!\nBitte registrieren Sie sich, um fortzufahren.\nWählen Sie Verlassen, wenn sie den Server verlassen möchten.","Registrieren","Verlassen");
    return 1;
    }dann probiers mal so

    "Bevor ich mir Informationen aus der "Bild" hole,
    werde ich anfangen, Wahlergebnisse danach vorauszusagen,
    neben welchen Busch unsere Katze gepinkelt hat."

    Margarete Stokowski

  • Ich weiß einfach nicht was ihr immer mit MrMonat habt, der typ hat einfach nur kaum Ahnung, von dem was er da macht.


    YAY benutzen wir das 5 mal obwohl wir das gar nicht brauchen, grandiose Idee <3.


    Ich versteh einfach nicht warum es nicht geht.
    Bei mir funktioniert das einwandfrei.

    "Bevor ich mir Informationen aus der "Bild" hole,
    werde ich anfangen, Wahlergebnisse danach vorauszusagen,
    neben welchen Busch unsere Katze gepinkelt hat."

    Margarete Stokowski