Last Pose speichern und laden

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
  • ich versuche seit längerem die letzte position also wenn man sich ausloggt das die gepeichert wird und
    wenn man sich einloggt das die geladen wird
    aber immer gehts net ich benutze das gf register sys
    hoffe ihr könnt mir helfen


  • enum pPos
    {
    Float:posX,
    Float:poxY,
    Float:posZ,
    };


    new PlayerPos[MAX_PLAYERS][pPos];
    new bool: FirstSpawn[MAX_PLAYERS];


    public OnPlayerConnect
    {
    new name[MAX_PLAYER_NAME], filename[50];
    GetPlayerName(playerid,name,sizeof(name));
    format(filename,sizeof(filename),"%s.ini",name);


    if(dini_Exists(filename))
    {
    PlayerPos[playerid][posX] = dini_Float(filename,"X");
    PlayerPos[playerid][posY] = dini_Float(filename,"Y");
    PlayerPos[playerid][posZ] = dini_Float(filename,"Z");
    FirstSpawn[playerid] = true;
    }
    else
    {
    dini_Create(filename);
    FirstSpawn[playerid] = false;
    }
    return 1;
    }


    public OnPlayerDisconnect
    {
    new name[MAX_PLAYER_NAME], filename[50];
    GetPlayerName(playerid,name,sizeof(name));
    format(filename,sizeof(filename),"%s.ini",name);


    GetPlayerPos(playerid, PlayerPos[playerid][posX], PlayerPos[playerid][posY], PlayerPos[playerid][posZ];
    if(IsPlayerConnected(playerid))
    {
    dini_FloatSet(filename, "X", PlayerPos[playerid][posX]);
    dini_FloatSet(filename, "Y", PlayerPos[playerid][posY]);
    dini_FloatSet(filename,"Z", PlayerPos[playerid][posZ]);
    FirstSpawn[playerid] = false;
    }
    return 1;
    }


    public OnPlayerSpawn
    {
    if(FirstSpawn[playerid])
    {
    SetPlayerPos(playerid,PlayerPos[playerid][posX],PlayerPos[playerid][posY],PlayerPos[playerid][posZ]);
    FirstSpawn[playerid] = false;
    }
    return 1;
    }


    sollte so funktionieren, kann auch sein dass einige Tippfeher drinne sind :P

    2 Mal editiert, zuletzt von gompfy ()