Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- saveMonitor = [] spawn
- {
- //spawn a loop that runs every 120 seconds
- while {true} do
- {
- diag_log format["Processing %1 saves for players...",count players];
- //run this for every player on the server alive or dead
- {
- _x call dbSavePlayerPrep;
- //for every living player on the server
- if (alive _x) then {
- _result = dbServerSaveCharacter _x;
- //get last saved player position
- _pos = _x getVariable ["p1",[0,0,0]];
- //if last save is 1000m away from current position
- if (_pos distance _x > 1000) then
- {
- //set position back to last save
- _x setPosATL _pos;
- //disable all controls and force game restart
- [owner _x] spawnForClient {disableUserInput true};
- };
- };
- //save current position
- _x setVariable ["p1",getPosATL _x];
- } forEach players; //every player on the server alive or dead
- sleep 120; //wait 120seconds
- };
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement