Spieler Position wird nicht geladen

Aus gegebenem Anlass: Sichert eure Backupcodes wenn ihr die Zwei-Faktor-Authentifizierung aktiviert habt!

Infos dazu findet ihr nochmal hier

  • Guten Tag,

    komischerweise Speichern die Positionen nicht (?).


    Code
    1. mysql_format(dbhandle,query,sizeof(query),"UPDATE `user` SET `skin` = '%d', `alter` = '%d', `geschlecht` = '%d', `neuling` = '%d', `leben` = '%.0f', `russi` = '%.0f', `Posx` = '%.0f', `Posy` = '%.0f', `Posz` = '%.0f', `Posa` = '%.0f', `Interior` = '%d', `Virtualworld` = '%d', WHERE `ID` = '%i'",GetPlayerSkin(playerid),
    2. pInfo[playerid][palter],pInfo[playerid][pgeschlecht],pInfo[playerid][pneuling],pInfo[playerid][pleben],pInfo[playerid][prussi],x,y,z,a,GetPlayerInterior(playerid),GetPlayerVirtualWorld(playerid),pInfo[playerid][pid]);


    Code
    1. //Spieler-Position-Laden [ ! ]
    2. pInfo[playerid][px]=cache_get_field_content_float(0,"Posx",dbhandle);
    3. pInfo[playerid][py]=cache_get_field_content_float(0,"Posy",dbhandle);
    4. pInfo[playerid][pz]=cache_get_field_content_float(0,"Posz",dbhandle);
    5. pInfo[playerid][pa]=cache_get_field_content_float(0,"Posa",dbhandle);
    6. pInfo[playerid][pint]=cache_get_field_content_int(0,"Interior",dbhandle);
    7. pInfo[playerid][pvit]=cache_get_field_content_int(0,"Virtualworld",dbhandle);
    8. //Spieler-Position-Laden [ ! ]


    Wenn ich das ganze printe kommt das beim Server.exe:


    SQL
    1. INSERT INTO user (username, password) VALUES ('Reste',MD5('test'))
    2. UPDATE `user` SET `skin` = '247', `alter` = '23', `geschlecht` = '1', `neuling` = '0', `leben` = '0', `russi` = '0', `Posx` = '0', `Posy` = '0', `Posz` = '0', `Posa` = '0', `Interior` = '0', `Virtualworld` = '0', WHERE `ID` = '63'



    /e MySQL Log


  • Code
    1. mysql_format(dbhandle,query,sizeof(query),"UPDATE `user` SET `skin` = '%d', `alter` = '%d', `geschlecht` = '%d', `neuling` = '%d', `leben` = '%.0f', `russi` = '%.0f', `Posx` = '%f', `Posy` = '%f', `Posz` = '%f', `Posa` = '%f', `Interior` = '%d', `Virtualworld` = '%d', WHERE `ID` = '%i'",GetPlayerSkin(playerid),
    2. pInfo[playerid][palter],pInfo[playerid][pgeschlecht],pInfo[playerid][pneuling],pInfo[playerid][pleben],pInfo[playerid][prussi],x,y,z,a,GetPlayerInterior(playerid),GetPlayerVirtualWorld(playerid),pInfo[playerid][pid]);


    fehler du hattest 0.f bei den cordinaten aber es muss zu %f


    weste un leben, kannst du auch normal %f nehmen

  • Code
    1. mysql_format(dbhandle,query,sizeof(query),"UPDATE `user` SET `skin` = '%d', `alter` = '%d', `geschlecht` = '%d', `neuling` = '%d', `leben` = '%.0f', `russi` = '%.0f', `Posx` = '%f', `Posy` = '%f', `Posz` = '%f', `Posa` = '%f', `Interior` = '%d', `Virtualworld` = '%d', WHERE `ID` = '%i'",GetPlayerSkin(playerid),
    2. pInfo[playerid][palter],pInfo[playerid][pgeschlecht],pInfo[playerid][pneuling],pInfo[playerid][pleben],pInfo[playerid][prussi],x,y,z,a,GetPlayerInterior(playerid),GetPlayerVirtualWorld(playerid),pInfo[playerid][pid]);


    fehler du hattest 0.f bei den cordinaten aber es muss zu %f


    weste un leben, kannst du auch normal %f nehmen

    Leider ohne erfolg!



  • hast du auch


    Code
    1. GetPlayerPos(playerid, PInfo[playerid][Posx], PInfo[playerid][Posy], PInfo[playerid][posa]);

    drin und wenn ja wo ? btw posa wird nicht gehen da getplayerpos nur bis z ist

    und was sagt deine mysql log aus da bis alter auch anscheind nix geladen wird bzw gespiechert wird sende an besten dazu mal den stock bzw public wo du alles spiechern lässt

    Einmal editiert, zuletzt von Xegrima ()

  • Die Select Query bitte auch Mal Posten. Du hast definitiv ein Syntaxfehler.


    Ich empfehle dir %.2f ...zwei Stellen nach dem Komma ist ein guter Wert.


    Wie Xegrima bereits sagte, Rotation wird nicht mit GetPlayerPos sondern mit GetPlayerFacingAngle ausgelesen. Und gesetzt mit SetPlayerFacingAngle

    Wer PALWAL-Sternchen vergibt, bekommt aus Prinzip ein Like 😏


    palwal Donald Trump ist einer der besten Präsidenten welche die USA je hatte, meine Meinung.

    • Hilfreich

    Moin,

    speichern sollte er gar nichts, da du einen Fehler in deiner Query hast. Du darfst vor WHERE kein Komma setzten, richtig wäre also so:


    SQL
    1. UPDATE `user` SET `skin` = '%d', `alter` = '%d', `geschlecht` = '%d', `neuling` = '%d', `leben` = '%.0f', `russi` = '%.0f', `Posx` = '%.0f', `Posy` = '%.0f', `Posz` = '%.0f', `Posa` = '%.0f', `Interior` = '%d', `Virtualworld` = '%d' WHERE `ID` = '%i'
  • Die Select Query bitte auch Mal Posten. Du hast definitiv ein Syntaxfehler.


    Ich empfehle dir %.2f ...zwei Stellen nach dem Komma ist ein guter Wert.


    Wie Xegrima bereits sagte, Rotation wird nicht mit GetPlayerPos sondern mit GetPlayerFacingAngle ausgelesen. Und gesetzt mit SetPlayerFacingAngle

    sieh hübscher aus ja ^^ aber mit nur %f wird es auch gehen und geladen

    und ja er hat ein syntax fehler drin wie ich grade gesehen habe


    Code
    1. [19:35:26] [ERROR] CMySQLQuery::Execute[] - (error #1064) You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'WHERE `ID` = '63'' at line 1
  • Moin,

    speichern sollte er gar nichts, da du einen Fehler in deiner Query hast. Du darfst vor WHERE kein Komma setzten, richtig wäre also so:


    SQL
    1. UPDATE `user` SET `skin` = '%d', `alter` = '%d', `geschlecht` = '%d', `neuling` = '%d', `leben` = '%.0f', `russi` = '%.0f', `Posx` = '%.0f', `Posy` = '%.0f', `Posz` = '%.0f', `Posa` = '%.0f', `Interior` = '%d', `Virtualworld` = '%d' WHERE `ID` = '%i'

    Danke hat geklappt.