Spawn funktioniert nicht

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
  • Guten Abend,
    Ich möchte, das wenn man sich einloggt an der gleichen Position wieder spawnt an der man sich ausgeloggt hat.
    Mein Code:


    public OnPlayerDisconnect(playerid, reason)
    {
    new Spielerdatei[128];
    new Float:X, Float:Y, Float:Z;
    GetPlayerPos(playerid, X, Y, Z);
    dini_FloatSet(Spielerdatei, "SpawnX", X);
    dini_FloatSet(Spielerdatei, "SpawnY", Y);
    dini_FloatSet(Spielerdatei, "SpawnZ", Z);
    return 1;
    }


    public OnPlayerSpawn(playerid)
    {
    new Spielerdatei[128];
    new
    Float:X = dini_Float(Spielerdatei, "SpawnX"),
    Float:Y = dini_Float(Spielerdatei, "SpawnY"),
    Float:Z = dini_Float(Spielerdatei, "SpawnZ");
    SetPlayerPos(playerid, X, Y, Z);
    return 1;
    }


    Allerdings wenn ich spawnen möchte, spawne ich im nirgendwo iwo in Blueberry oder so.
    Ich hoffe jemand kann mir helfen
    MFG
    Lukas

  • Wird die Datei in der du das abspeicherst auch erstellt?
    bzw. erkläre uns mal was Spielerdatei ist, wo du deine sachen abspeicherst.
    Denn es sieht so aus als würdest du die daten nehmen und sie in der Variable Spieler datei zwischenspeichern.


    Probiere mal das:


    public OnPlayerDisconnect(playerid, reason)
    {
    new Float:X, Float:Y, Float:Z;
    GetPlayerPos(playerid, X, Y, Z);
    dini_FloatSet(PlayerPos.ini, "SpawnX", X);
    dini_FloatSet(PlayerPos.ini, "SpawnY", Y);
    dini_FloatSet(PlayerPos.ini, "SpawnZ", Z);
    print("Float:X= %d", X);
    print("Float:Y= %d", Y);
    print("Float:Z= %d", Z);
    return 1;
    }


    public OnPlayerSpawn(playerid)
    {
    new Float:X, Float:Y, FloatZ;
    X = dini_Float(PlayerPos.ini, "SpawnX"),
    Y = dini_Float(PlayerPos.ini, "SpawnY"),
    Z = dini_Float(PlayerPos.ini, "SpawnZ");
    SetPlayerPos(playerid, X, Y, Z);
    print("Float:X= %d", X);
    print("Float:Y= %d", Y);
    print("Float:Z= %d", Z);
    return 1;
    }


    Und das bei OnGameModeInit
    if!(dini_Exists("PlayerPos.ini"))
    {
    dini_Create("PlayerPos.ini");
    print("PlayerPos.ini wurde erstellt.");
    }