Advertisement
MGT

safezone.sqf

MGT
Jan 16th, 2017
146
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SQF 1.11 KB | None | 0 0
  1. if (isNil "inSafezone") then {
  2.     inSafezone = false;
  3. };
  4. _vehiclesAddedEventhandlerFired = [];
  5. while {true} do {
  6.     waitUntil { inSafeZone };
  7.     _vehicle = vehicle player;         
  8.     if (_vehicle != player) then {
  9.             _vehiclesAddedEventhandlerFired = _vehiclesAddedEventhandlerFired + [_vehicle];
  10.             _vehicle addEventHandler ["Fired", {_this call player_fired;}];        
  11.             _vehicle removeAllEventHandlers "HandleDamage";
  12.             _vehicle removeAllEventHandlers "Killed";
  13.             _vehicle addeventhandler ["HandleDamage",{ false } ];
  14.             _vehicle addeventhandler ["Killed",{ false } ];
  15.         }; 
  16.     player allowDamage false;
  17.     player removeAllEventHandlers "HandleDamage";
  18.     waitUntil { !inSafeZone }; 
  19.         {
  20.             _x removeAllEventHandlers "Fired";
  21.             _x removeAllEventHandlers "HandleDamage";
  22.             _x removeAllEventHandlers "Killed";
  23.             _x addeventhandler ["HandleDamage",{ _this call vehicle_handleDamage } ];
  24.             _x addeventhandler ["Killed",{ _this call vehicle_handleKilled } ];
  25.         } forEach _vehiclesAddedEventhandlerFired;
  26.         _vehiclesAddedEventhandlerFired = [];  
  27.     player addEventHandler ["handleDamage", {true}];
  28.     player allowDamage true;
  29. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement