#define FILTERSCRIPT #include <a_samp> #include <Dini> #include <dudb> new Floatositionx; new Floatositiony; new Floatositionz; #if defined FILTERSCRIPT public OnFilterScriptInit() { print("\n--------------------------------------"); print(" Position saver by Jueix"); print("--------------------------------------\n"); return 1; } public OnPlayerConnect(playerid) { LoadStats(playerid); return 1; } public OnPlayerDisconnect(playerid, reason) { new Float; new Float:y; new Float:z; GetPlayerPos(playerid,x,y,z); positionx = x; positiony = y; positionz = z; if (!dini_Exists(Pos(playerid))) { dini_Create(Pos(playerid)); } SaveStats(playerid); return 1; } public OnPlayerSpawn(playerid) { if(positionx[playerid] != 0 && positiony[playerid] !=0 && positionz[playerid] != 0); { SetPlayerPos(playerid, 1676.8462, 1447.7908, 10.7833); } else { SetPlayerPos(playerid,positionx,positiony,position z); } return 1; } Player(playerid) { new player[MAX_PLAYER_NAME]; GetPlayerName(playerid, player, sizeof(player)); return player; } Pos(playerid) { new a[256]; format(a, sizeof(a), "%s.ini",udb_encode(Player(playerid))); return a; } SaveStats(playerid) { dini_IntSet(Pos(playerid), "PositionX", floatround(positionx)); dini_IntSet(Pos(playerid), "PositionY", floatround(positiony)); dini_IntSet(Pos(playerid), "PositionZ", floatround(positionz)); } LoadStats(playerid) { positionx = dini_Int(Pos(playerid), "PositionX"); positiony = dini_Int(Pos(playerid), "PositionY"); positionz = dini_Int(Pos(playerid), "PositionZ"); } public OnFilterScriptExit() { return 1; } #else main() { print("\n----------------------------------"); print(" Blank Gamemode by Jueix"); print("----------------------------------\n"); } #endif |
You want to save automatic the players position when a player disconnect?
|
if(positionx[playerid] != 0 && positiony[playerid] !=0 && positionz[playerid] != 0); {
SetPlayerPos(playerid, 1676.8462, 1447.7908, 10.7833);
}
else {
SetPlayerPos(playerid,positionx,positiony,position z);
}
positionx = dini_Int(Pos(playerid), "PositionX");
positiony = dini_Int(Pos(playerid), "PositionY");
positionz = dini_Int(Pos(playerid), "PositionZ");
public OnPlayerSpawn(playerid)
{
positionx = dini_Int(Pos(playerid), "PositionX");
positiony = dini_Int(Pos(playerid), "PositionY");
positionz = dini_Int(Pos(playerid), "PositionZ");
if(positionx[playerid] != 0 && positiony[playerid] !=0 && positionz[playerid] != 0);
{
SetPlayerPos(playerid,positionx,positiony,position z);
}
else
{
SetPlayerPos(playerid, 1676.8462, 1447.7908, 10.7833);
}
return 1;
}
pawn Code:
you check if its not 0 then you spawn him at your default spawn. AND you have to add pawn Code:
so result : pawn Code:
|