[SAMMELTHREAD] Kleine Scripting Fragen

Dein Problem konnte durch einen User gelöst werden? Bedank dich bei ihm indem du seinen Beitrag als Hilfreich markierst sowie einen Daumen oben dalässt
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
  • Mit welchem Query rufst du AccountLogin auf?

    Nur hier wird AccountLogin aufgerufen. Oder wie meinst du das?

    • Offizieller Beitrag

    Moin, es funktioniert leider trotzdem nicht.

    Also noch einmal zum Verständnis.

    - In der Datenbank gibt es "Register" und dieser Wert wird auch mit dem richtigem Datum gefüllt.

    - Der Wert aktualisiert sich nicht mehr.

    - Der Wert wird nur nicht richtig angezeigt.


    Wenn das so richtig ist, schau mal in deine mysql.log Datei Gibt es dort irgendwelche Errors/Warnings?

    Kann es vielleicht auch sein das Stats nicht funktioniert, weil der Wert beim anderen Spieler (targetid) gar nicht gesetzt ist?

  • Edit: Nur wenn ich bei AccountLogin format(AccountInfo[playerid][account_Register], 50, "%02d.%02d.%d | %02d:%02d:%02d ",tag,monat,jahr,stunde,minuten,sekunde); stehn hab kommendie Nullen ansonsten kommt garnichts.

  • Code
    [14:15:27 - 15.03.2020] Register: 15.03.2020 | 14:01:13 Account Register
    [14:15:27 - 15.03.2020] Login: 15.03.2020 | 14:10:35 Account Login
    [14:15:28 - 15.03.2020] Register1: 00.00.0000 | 00:00:00 Char Register
    [14:15:28 - 15.03.2020] Login1: 15.03.2020 | 14:10:37 Char Login

    Bei Account Register wird bei jedem das selbe (Datum und Zeit) angezeigt.

    Es wäre toll, wenn irgendjemand via Teamviewer da bitte mal drübergucken könnte.

  • Poste bitte den Code zu den 4 Prints, da du das ja offensichtlich abgewandelt hast.

    Register Dialog

    Hier sind die Account Register Login Werte

    AccountLogin

    LoadCharacter

    ShowStats

    AccountRegister

    SaveCharacter

    CheckPassword

    Edit: Fehler bei Werten im Dialog ausgebessert

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Entferne

    cache_get_value_name(0, "Register", CharacterInfo[playerid][character_Register],50);

    cache_get_value_name(0, "LastLogin", CharacterInfo[playerid][character_LastLogin],50);

    aus LoadCharacter.

    Danke, aber es funktioniert immer noch nicht.

    Beim Registrieren wird der Acc Register Wert angezeigt bei /stats aber der Acc Login nicht ebenso wird der Char Loginwert gefüllt aber der Registerwert nicht.

    Beim Login wird der Acc Register Wert nicht angezeigt bei /stats aber der Acc Login schon ebenso wird der Char Loginwert gefüllt aber der Registerwert nicht.

    In der DB stehn bei Acc Registrierung das richtige aber bei login 00... und bei Char Registrierung das richtige aber bei login 00..., bei Acc Registrierung 00... aber bei login das richtige, bei Char Registrierung 00... aber bei login das richtige.

  • Dann überschreibst du den Wert noch woanders wieder.

    Prüfe, wo du überall in die Variable schreibst und entferne alle nicht notwendigen Stellen.


    Beim Laden aus der Datenbank kommt der Wert korrekt in die Variable, im /stats ist es falsch, das bedeutet, dass es irgendwo dazwischen überschrieben wird.

    Wo das ist kann ich dir nicht sagen, das kann von überall im Code kommen. Du weißt ja wo du die Variable überall nutzt (STRG+F). Zur Not kommentiere alle Nutzungen aus und prüfe Schrittweise, ab wann es geht bzw. nicht mehr geht.

  • Dann überschreibst du den Wert noch woanders wieder.

    Prüfe, wo du überall in die Variable schreibst und entferne alle nicht notwendigen Stellen.


    Beim Laden aus der Datenbank kommt der Wert korrekt in die Variable, im /stats ist es falsch, das bedeutet, dass es irgendwo dazwischen überschrieben wird.

    Wo das ist kann ich dir nicht sagen, das kann von überall im Code kommen. Du weißt ja wo du die Variable überall nutzt (STRG+F). Zur Not kommentiere alle Nutzungen aus und prüfe Schrittweise, ab wann es geht bzw. nicht mehr geht.

    Danke, ich guck mir alles nochmal an.

    Was ich sehr eigenartig finde, ist das ich für den Account nicht mal irgendwas mit Standard 00.00... stehn habe.

  • Hey,

    was ist eure beste Lösung um direkt nach dem TogglePlayerSpectating die Camerapos zu setzten?


    Ich mache es immer so, aber das sieht immer so blöd aus, weil die 500ms im Timer zu lang sind und er ja schon im Spectate Modus ist.


    Hat jemand eine bessere Idee?


    TogglePlayerSpectating(playerid, 1);

    SetTimerEx("SetCamera", 500, false, "d", playerid);


    //im Timer

    SetPlayerCameraPos(playerid, X,Y,Z);

    SetPlayerCameraLookAt(playerid, X,Y,Z);

    wm2c6p1.png
    Ich weiß, dass ich weiß, dass ich nichts weiß.

  • Nun, du kannst auch die Kamera ohne TogglePlayerSpectating setzen, dann ist halt aber das HUD etc sichtbar.


    Oder du setzt den Timer einfach mal auf 250 oder so :)

    ast2ufdyxkb1.png


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

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen