Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //-------------------------------
- #include <a_samp>
- #include <YSI\y_ini>
- //-------------------------------
- #define PATH "/savepos/%s.ini"
- //-------------------------------
- new
- Float:logPos[4];
- //-------------------------------
- forward LoadUser_data(playerid, name[], value[]);
- //-------------------------------
- stock GetName(playerid)
- {
- new
- pname[MAX_PLAYER_NAME];
- GetPlayerName(playerid, pname, sizeof(pname));
- return pname;
- }
- stock UserPath(playerid)
- {
- new
- ppath[70];
- format(ppath, sizeof(ppath), PATH, GetName(playerid));
- return ppath;
- }
- //-------------------------------
- public LoadUser_data(playerid, name[], value[])
- {
- INI_Float("posX", logPos[0]);
- INI_Float("posY", logPos[1]);
- INI_Float("posZ", logPos[2]);
- INI_Float("posA", logPos[3]);
- return 1;
- }
- //-------------------------------
- public OnFilterScriptInit()
- {
- print("savepos loaded.\n");
- return 1;
- }
- public OnPlayerCommandText(playerid, cmdtext[])
- {
- if (!strcmp(cmdtext, "/loadpos", true))
- {
- SetPlayerPos(playerid, logPos[0], logPos[1], logPos[2]);
- SetPlayerFacingAngle(playerid, logPos[3]);
- SendClientMessage(playerid, -1, "Disconnection position has been successfully loaded!");
- return 1;
- }
- return 0;
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- new
- Float:pos[4],
- INI:File = INI_Open(UserPath(playerid));
- GetPlayerPos(playerid, pos[0], pos[1], pos[2]);
- GetPlayerFacingAngle(playerid, pos[3]);
- INI_SetTag(File, "data");
- INI_WriteFloat(File, "posX", pos[0]);
- INI_WriteFloat(File, "posY", pos[1]);
- INI_WriteFloat(File, "posZ", pos[2]);
- INI_WriteFloat(File, "posA", pos[3]);
- INI_Close(File);
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement