Beiträge von Allrounder18

    Was nutzt eigentlich das LIMIT im SELECT?

    AccountLogin wilil irgendiwe nicht ganz, das s sagt das inputtext bei bcrypt_check passt nicht.

    Wie mache ich am besten den Reister Dialog mit bcrypt fertig? Die Zeile wie im Tutorial hab ich schon.

    Hab das mal gemacht, Login genauso ähnlich?


    C
    public OnPasswordChecked(playerid)
    {
        new bool:match = bcrypt_is_equal(),query[256];
        mysql_format(handle, query, sizeof(query), "SELECT * FROM accounts WHERE Name = '%e' AND Password = '%e'", AccountInfo[playerid][account_Name], hash);
        mysql_pquery(handle, query, "AccountLogin", "d", playerid);
        return 1;
    }


    Soweit ist es mir auch noch klar, aber wie mache ich den Dialog am besten?

    C
    public OnPasswordHashed(playerid)
    {
        new hash[BCRYPT_HASH_LENGTH];
        bcrypt_get_hash(hash);
        new query[256];
        mysql_format(handle, query, sizeof(query), "INSERT INTO users (name, password) VALUES ('%e', '%e')", PlayerInfo[playerid][pName], inputtext);
        mysql_pquery(handle, query, "OnUserRegister", "d", playerid);
        printf("Password hashed for player %d: %s", playerid, hash);
        return 1;
    }

    Ungefähr so, oder wie genau?

    Ich habs jett mal so gemacht, jeodch komen jetzt mehr Fehler.


    Ich hab hier mal den logindailog in ein stock und die restlichen dialoge in ein stock gemacht.

    C
    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
        logindialog(playerid, dialogid, response, listitem, inputtext);
        restdialog(playerid, dialogid, response, listitem, inputtext);
    }

    So sieht nun OnDialogResponse aus.


    Nun kommen aber folgende Errors:


    C:\Users\Alex\Desktop\RP Selfmade\pawno\include\../include/systeme/anmeldesystem.inc(20) : error 017: undefined symbol "DIALOG_LOGIN"

    C:\Users\Alex\Desktop\RP Selfmade\pawno\include\../include/systeme/anmeldesystem.inc(26) : error 017: undefined symbol "DIALOG_LOGIN"

    C:\Users\Alex\Desktop\RP Selfmade\pawno\include\../include/systeme/anmeldesystem.inc(35) : warning 209: function "logindialog" should return a value

    C:\Users\Alex\Desktop\RP Selfmade\pawno\include\../include/systeme/anmeldesystem.inc(16) : warning 203: symbol is never used: "response"

    C:\Users\Alex\Desktop\RP Selfmade\pawno\include\../include/systeme/anmeldesystem.inc(41) : error 017: undefined symbol "DIALOG_CHARACTER"

    C:\Users\Alex\Desktop\RP Selfmade\pawno\include\../include/systeme/anmeldesystem.inc(57) : error 017: undefined symbol "DIALOG_CREATE_CHARACTER_NAME"

    C:\Users\Alex\Desktop\RP Selfmade\pawno\include\../include/systeme/anmeldesystem.inc(72) : error 017: undefined symbol "DIALOG_CREATE_CHARACTER_NAME"

    C:\Users\Alex\Desktop\RP Selfmade\pawno\include\../include/systeme/anmeldesystem.inc(87) : error 017: undefined symbol "DIALOG_CREATE_CHARACTER_NAME"

    C:\Users\Alex\Desktop\RP Selfmade\pawno\include\../include/systeme/anmeldesystem.inc(94) : error 017: undefined symbol "DIALOG_CREATE_CHARACTER_NAME"

    C:\Users\Alex\Desktop\RP Selfmade\pawno\include\../include/systeme/anmeldesystem.inc(111) : error 017: undefined symbol "DIALOG_CREATE_CHARACTER_NAME"

    C:\Users\Alex\Desktop\RP Selfmade\pawno\include\../include/systeme/anmeldesystem.inc(115) : error 017: undefined symbol "DIALOG_CREATE_CHARACTER_MALE"

    C:\Users\Alex\Desktop\RP Selfmade\pawno\include\../include/systeme/anmeldesystem.inc(117) : error 017: undefined symbol "DIALOG_CREATE_CHARACTER_NAME"

    C:\Users\Alex\Desktop\RP Selfmade\pawno\include\../include/systeme/anmeldesystem.inc(136) : error 017: undefined symbol "DIALOG_CREATE_CHARACTER_MALE"

    C:\Users\Alex\Desktop\RP Selfmade\pawno\include\../include/systeme/anmeldesystem.inc(139) : error 017: undefined symbol "DIALOG_CREATE"

    C:\Users\Alex\Desktop\RP Selfmade\pawno\include\../include/systeme/anmeldesystem.inc(144) : error 017: undefined symbol "DIALOG_CREATE_TELEPORT"

    C:\Users\Alex\Desktop\RP Selfmade\pawno\include\../include/systeme/anmeldesystem.inc(145) : error 017: undefined symbol "DIALOG_CREATE_BUILDING"

    C:\Users\Alex\Desktop\RP Selfmade\pawno\include\../include/systeme/anmeldesystem.inc(149) : error 017: undefined symbol "DIALOG_CREATE_TELEPORT"

    C:\Users\Alex\Desktop\RP Selfmade\pawno\include\../include/systeme/anmeldesystem.inc(151) : error 017: undefined symbol "DIALOG_CREATE"

    C:\Users\Alex\Desktop\RP Selfmade\pawno\include\../include/systeme/anmeldesystem.inc(155) : error 017: undefined symbol "DIALOG_TELEPORT"

    C:\Users\Alex\Desktop\RP Selfmade\pawno\include\../include/systeme/anmeldesystem.inc(159) : error 017: undefined symbol "TeleportInfo"

    C:\Users\Alex\Desktop\RP Selfmade\pawno\include\../include/systeme/anmeldesystem.inc(159) : error 029: invalid expression, assumed zero

    C:\Users\Alex\Desktop\RP Selfmade\pawno\include\../include/systeme/anmeldesystem.inc(159) : warning

    215: expression has no effect

    C:\Users\Alex\Desktop\RP Selfmade\pawno\include\../include/systeme/anmeldesystem.inc(159) : error 001: expected token: ";", but found "]"

    C:\Users\Alex\Desktop\RP Selfmade\pawno\include\../include/systeme/anmeldesystem.inc(159) : fatal error 107: too many error messages on one line


    Die Dialoge und TeleportInfo sind im Hauptsrcipt in Enums definiert. Wo liegt hier der Fehler?

    Ja genau dasmeine ich.



    Das ist der stock


    C
    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
        new string[512];
        switch(dialogid)
        {
            {
                stock logindialog(playerid, response, listitem, inputtext[]);
            }    

    So sieht das public aus.


    Beim Compilen kommen keine Errors aber das Script geht nicht an mit folgendem Fehler:


    [16:33:26] Script[gamemodes/selfmade1.amx]: Run time error 17: "Invalid/unsupported P-code file format"

    [16:33:26] Failed to load 'gamemodes/selfmade1.amx' script.

    Hallo!


    Ich bin dabei meinscript modular zu gestalten. Ist es irgendwie möglich, die Dialoge in Includes aufzuteilen?


    Beispiel:

    Accountsystem: Dort alle Dialoge für die Accounterstellung = stock accdialoge.

    Fraktionssystem: Dort alle Dialoge für das Fraktionssystem = stock frakdialoge.

    OnDialogRespose = alle stocks mit Dialogen.


    MfG

    Aber der Pin ist doch mit keiner Karte, sondern mit einem Bankkonto verknüpft.


    Ergo wenn Spieler A ein Konto hat, muss er ja erstmal n Pin sich ausdenken, damit er auf sein Konto zugreifen kann.
    Dieser Pin wird ja in der Tabelle von dem Spieler gespeichert ganz normal.


    Erlangt jetzt Spieler B die Karte von Spieler A, dann gilt die Pin logischerweise von Spieler A noch.
    Ergo kannst du die einfach durch die SQLid von Spieler A aus der Datenbank ermitteln.

    Oh, mir fällt grade auf, das der Pin doch mit der Karte verknüpft ist, weil im Reallife gehst du ja auch zur Bank und musst den Pin eingeben damit du mit der Karte die mit dem Konto verknüpft ist Geld abheben kannst.

    Aber der Pin ist doch mit keiner Karte, sondern mit einem Bankkonto verknüpft.


    Ergo wenn Spieler A ein Konto hat, muss er ja erstmal n Pin sich ausdenken, damit er auf sein Konto zugreifen kann.
    Dieser Pin wird ja in der Tabelle von dem Spieler gespeichert ganz normal.


    Erlangt jetzt Spieler B die Karte von Spieler A, dann gilt die Pin logischerweise von Spieler A noch.
    Ergo kannst du die einfach durch die SQLid von Spieler A aus der Datenbank ermitteln.

    Oh Denkfehler. Dankesehr!

    Jede Karte soll einen Pin haben. Damit Spieler A Geld abheben kan braucht er diesen, sollte Spielr B die Kare klauen braucht er diesen Pin logischerweise auch. Wenn Spieler A "blöd" genug ist ud seinen Pin auf nem Zettel aufgeschrieben hat (Zettel = Inventaritem) oder Spieler B den Pin anderweitig bekommt kann er ja ds Geld abheben.

    Ok!


    Es sollte halt so sein, das man /inv machen muss, dabei soll sich n Dialog öffnen wo steht Benutzen, Weitergeben oder Wegwerfen.


    Benutzen: Du kanst zb das Haus mit dem Schlüssel aufschließen.
    Weitergeben: Du kannst d en Schlüssel an einen anderen Spieler weitergeben
    Wegwerfen: Du kasnt den Schlüssel auf den Boden werden, wo er dann wieer aufgehoben oder gelöscht werden kann.


    Was meinst du mit trivial?