Platz speichern

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
  • Wer könnte mir die ganzen Befehle zusammen schreiben?
    Den irgendwie klappt das bei mir Ingame nicht.
    Könnte mal einer bitte die ganze Befehle aufschreiben und noch dazu schreiben wohin die gehören.
    Mir ist halt wichtig das nach dem Ausslogen die Position gespeichert wird.
    Und nach dem Einloggen man bei der Position ist.

  • Wer könnte mir die ganzen Befehle zusammen schreiben?
    Den irgendwie klappt das bei mir Ingame nicht.
    Könnte mal einer bitte die ganze Befehle aufschreiben und noch dazu schreiben wohin die gehören.


    Welche Befehle?

    Mir ist halt wichtig das nach dem Ausslogen die Position gespeichert wird.
    Und nach dem Einloggen man bei der Position ist.


    Man soll dir ein Login-System basteln?

  • http://pastebin.com/NbCy70eY


    Das speichert die Position, wenn jemand Disconnectet, und spawnt den Spieler dann, wenn er sich wieder einloggt. Du musst dort allerdings noch die X,Y,Z Koordianten in Zeile 61-63 bearbeiten. Sowie die Zeilen 48,49,50, da das der erste Spawn ist.


    Hoffe das hilft dir.


    Es ist aber ungetestet! :)


    // Du benötigst DINI und in den Scriptfiles einen Ordner namen "posi".
    Die Dateien heißen dann "UserName.ini".


    Gruß,
    Neo. :)

  • Also du musst bei OnPlayerDisconnect per GetPlayerPos die spieler pos auslesen:




    new float:Pos[3];
    GetPlayerPos(playerid,Pos[0],Pos[1],Pos[2]


    Dann abspeichern so würde das mit SII gehen:
    Natürlich auch noch den Interior speichern:



    INI_Open(Spielername); //Ich denke wie man an den Spielernamen kommt, müsstest du selbst wissen ;)
    INI_WriteFloat("PosX",Pos[0]);
    INI_WriteFloat("PosY",Pos[1]);
    INI_WriteFloat("PosZ",Pos[2]);
    INI_WriteInt("Interior",GetPlayerInterior(playerid));
    INI_Save();
    INI_Close();


    Die Blickrichtung ist eigentlich unrelevant.
    Beim SpielerSpawn musst du halt seine Position setzen:



    new Pos[3];
    INI_Open(Spielername);
    INI_ReadFloat("PosX",Pos[0]);
    INI_ReadFloat("PosY",Pos[1]);
    INI_ReadFloat("PosZ",Pos[2]);
    SetPlayerPos(playerid,Pos[0],Pos[1],Pos[2]);
    SetPlayerInterior(playerid,INI_ReadInt("Interior"));


    So in etwas müsste das funktionieren.