Position beim Offline gehen 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
  • Hallo zusammen, ich hab eine Frage.
    Und zwar geht es darum ob man wenn man Offline geht die Position gespeichert werden soll und man beim nächsten Online kommen dort spawnt, oder lieber in der Base/Zivispawn usw..


    Das ganze würde natürlich den "Reallife" Faktor steigern...


    Was meint ihr?:)

  • Mit DINI würde es so hier gehen.


    Dann schreibst Du bei 'OnPlayerDisconnect' das hier rein.



    new file[128], pname[MAX_PLAYER_NAME]; // Die Define's für die Datei und den Spielernamen
    new Float:x, Float:y, Float:z; // Hier werden dann die Koordinaten gespeichert
    GetPlayerName(playerid, pname, sizeof(pname)); // Hier wird der Spielername ausgegeben deswegen steht oben 'pname'
    format(file, sizeof(file), "\\SavePos\\%s.ini", pname); // Hier wird angegeben wie die Datei heißen soll und wo sie sich befindet
    if(!dini_Exists(file)) // Wenn die Datei nicht besteht
    dini_Create(file); // Dann wird eine neue erstellt
    GetPlayerPos(playerid, x, y, z); // Hier werden die Koordinaten des Spieler's ausgelesen und dann in die Datei geschrieben.
    dini_FloatSet(file, "posX", x);
    dini_FloatSet(file, "posY", y);
    dini_FloatSet(file, "posZ", z);


    Und bei OnPlayerSpawn schreibst Du das hier rein.


    new file[128], pname[MAX_PLAYER_NAME]; // Hier das selbe wie oben, die Datei & der Name
    new Float:x, Float:y, Float:z; // Die Koordinaten zum Spawnen
    GetPlayerName(playerid, pname, sizeof(pname)); // Der Spielername wird ausgegeben
    format(file, sizeof(file), "\\SavePos\\%s.ini", pname); // Wo sich die Datei befindet
    x = dini_Float(file, "posX"); // Die gespeicherten Koordinaten
    y = dini_Float(file, "posY");
    z = dini_Float(file, "posZ");
    SetPlayerPos(playerid, x, y, z); // Der Spieler wird an die gespeicherten Koordinaten gesetzt.


    Viel Spaß damit! :)

  • Gehört das nicht eher in Off-Topic?



    Meine Meinung:
    Wenn Fahrzeuge (Privat sowie Fakfahrzeuge) auch dort spawnen bzw dort stehen bleiben finde ich es Super.

    Du brauchst Hilfe bei der Erstellung eines Woltlab Burning Board 3 oder Lite Forum?
    -Dann schick mir eine Nachricht, ich helfe dir gerne!

  • Wenn man sowas macht sollte man das auf freiwilliger Basis machen.
    Beispielsweise das man bei seiner /spawnchange das selbst konfigurieren kann.
    Das einziegst dumme an der Geschichte ist und bleibt das man dann an seiner letzten Position keine Fahrzeuge etc. hat ^^


  • & wie mit MySQL? :D