#include <a_samp>
new Float:PlayerPos[MAX_PLAYERS][4];
public OnFilterScriptInit()
{
print("\n--------------------------------------");
print(" Save and Load filterscript by dchidell");
print("--------------------------------------\n");
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
if(!strcmp("/savepos", cmdtext, true, 9))
{
if(IsPlayerInAnyVehicle(playerid))
{
GetVehiclePos(GetPlayerVehicleID(playerid),PlayerPos[playerid][0],PlayerPos[playerid][1],PlayerPos[playerid][2]);
GetVehicleZAngle(GetPlayerVehicleID(playerid),PlayerPos[playerid][3]);
SendClientMessage(playerid,0xFFFFFFFF,"Your position has been saved, type /gotopos to teleport there in future");
return 1;
}
else
{
GetPlayerPos(playerid,PlayerPos[playerid][0],PlayerPos[playerid][1],PlayerPos[playerid][2]);
GetPlayerFacingAngle(playerid,PlayerPos[playerid][3]);
SendClientMessage(playerid,0xFFFFFFFF,"Your position has been saved, type /gotopos to teleport there in future");
return 1;
}
}
if(!strcmp("/gotopos", cmdtext, true, 8))
{
if(PlayerPos[playerid][0] == 0 && PlayerPos[playerid][1] == 0 && PlayerPos[playerid][2] == 0 && PlayerPos[playerid][3] == 0)
{
SendClientMessage(playerid,0xFFFFFFFF,"You havnt saved a position yet!");
return 1;
}
new string[100];
if(IsPlayerInAnyVehicle(playerid))
{
SetVehiclePos(GetPlayerVehicleID(playerid),PlayerPos[playerid][0],PlayerPos[playerid][1],PlayerPos[playerid][2]);
SetVehicleZAngle(GetPlayerVehicleID(playerid),PlayerPos[playerid][3]);
SetCameraBehindPlayer(playerid);
format(string,sizeof(string),"You have been teleported to your saved position (x=%f,y=%f,z=%f,a=%f)",PlayerPos[playerid][0],PlayerPos[playerid][1],PlayerPos[playerid][2],PlayerPos[playerid][3]);
SendClientMessage(playerid,0xFFFFFFFF,string);
return 1;
}
else
{
SetPlayerPos(playerid,PlayerPos[playerid][0],PlayerPos[playerid][1],PlayerPos[playerid][2]);
SetPlayerFacingAngle(playerid,PlayerPos[playerid][3]);
SetCameraBehindPlayer(playerid);
format(string,sizeof(string),"You have been teleported to your saved position (x=%f,y=%f,z=%f,a=%f)",PlayerPos[playerid][0],PlayerPos[playerid][1],PlayerPos[playerid][2],PlayerPos[playerid][3]);
SendClientMessage(playerid,0xFFFFFFFF,string);
return 1;
}
}
return 0;
}