Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ; No Kill Zone - v1.16
- ; (c)2016 By SuperChicken Productions - Atlanta GA., USA
- ; Edits by LeventHAN - leventhan.info
- NoKillZone.Sqs Note that this is a SQS file not a SQF file
- ; usage = [MARKER,DISTANCE,TEXT-IN,TEXT-OUT,PROTECTION] exec "NoKillZone.Sqs"; - MARKER = a marker that is the CENTER of the zone - DISTANCE = how from out from the MARKER to 'protect' - TEXT-IN = text to show via HINT if inside zone - TEXT-OUT = text to show via HINT if outside zone - PROTECTION = if players vehicle is also protected
- ; example: ["CentralSZ",500,"You Have Entered The Central Safe Zone!","You Have Left The Central Safe Zone!",0] exec "NoKillZone.Sqs"; - this would protect any player and not his vehicle within 500m of the marker called 'CentralSZ'
- ; run for every marker you have set
- ; example, for epoch you have 3:
- ; ["CentralSZ",500] exec "NoKillZone.Sqs";
- ; ["WesternSZ",500] exec "NoKillZone.Sqs";
- ; ["EasternSZ",500] exec "NoKillZone.Sqs";
- ; Also could be:
- ; #1 - ["CentralSZ",500,"You Have Entered The Central Safe Zone","You Have Left The Central Safe Zone"] exec "NoKillZone.Sqs";
- ; #2 - ["CentralSZ",500,"You Have Entered The Central Safe Zone",""] exec "NoKillZone.Sqs";
- ; #3 - ["CentralSZ",500,"","You Have Left The Central Safe Zone"] exec "NoKillZone.Sqs";
- ; #4 - ["CentralSZ",500,"","You Have Left The Central Safe Zone"] exec "NoKillZone.Sqs"; - this would disable vechicle protection
- ; #5 - ["CentralSZ",500,"","You Have Left The Central Safe Zone",0] exec "NoKillZone.Sqs"; - this would disable vechicle protection
- ; #6 - ["CentralSZ",500,"","You Have Left The Central Safe Zone",1] exec "NoKillZone.Sqs"; - this would enable vechicle protection
- ; TEXT-IN and TEXT-OUT are OPTIONAL - if not supplied, no hint will be shown for that section (in/out)
- ; if you wished to use ONLY 'OUT' text and NO 'IN' text, you MUST include a empty quote for the 'IN' entry - see #3 above! Missing quote(s) = fails to run!
- ; text may also use the '\n\ command to allow for multiple lines of text in hint!
- ; PROTECTION (vechicle protection) is also OPTIONAL. if set to ZERO (0) or left out, it defaults to no protection.
- ; to enable protection, use a ONE (1) as a paramenter - see #6 above
- ; marker name and text ALL must be in quotes!
- ; marker name is the name you gave the marker in the editor - NOT 'text' field, rather the 'NAME' field
- ; put script call into your server "INIT.Sqf" file to be run at startup and in the "OnPlayerRespawn.Sqf" file so that it may start again at respawn
- ; for those that may not know, the INIT.Sqf and the "OnPlayerRespawn.Sqf" are where your 'Mission.SQM' reside! Not there? CREATE THEM! ;)
- ; this runs 100% on the client and NOT on the server! ZERO performence hit on the server side and ZERO interference with most other scrips in use!
- ; can be used in MP or SP!
- ; ********************************************************************************
- ; make sure script only runs on clients
- if (isDedicated) then {goto "ExitHere"};
- #StartLoop
- ; set varis to be used by script
- _NKZver = "1.16"
- _getdistance = 0;
- _NKZflag=9;
- _vp="";
- ; text in use flags
- _inflag = 9;
- _outflag = 9;
- ; get params
- _NKZmarker = _this select 0;
- _NKZdistance = _this select 1;
- _NKZTextIn = _this select 2;
- _NKZTextOut = _this select 3;
- _NKZvech = _this select 4;
- ; checks to ensure both parameters (#1 & #2) have been set
- if ((isNil "_NKZmarker") or(isNil "_NKZdistance")) then {goto "ParaError"};
- ; checks to see if text exist, if not flag as such so no hint will show
- ; checks for inside zone text
- if (isNil "_NKZTextIn") then {_inflag = 0};
- if (!isNil "_NKZTextIn") then {_inflag = 1};
- ; checks for outside zone text
- if (isNil "_NKZTextOut") then {_outflag = 0};
- if (!isNil "_NKZTextOut") then {_outflag = 1};
- ; check for vechile protection here - if missing, set to 'off'
- if (isNil "_NKZvech") then {_NKZvech = 0};
- if (_NKZvech == 0) then {_vp="Vehicle Protection Is: *Off*"};
- if (_NKZvech == 1) then {_vp="Vehicle Protection Is: *On*"};
- ; startup notice
- ;systemchat format ["No Kill Zone Script v%2 Active For '%1'",_NKZmarker, _NKZver];
- ;systemchat format ["--- %1 ---",_vp];
- ; start the checking here
- #LoopHere
- _objcoords = getMarkerPos _NKZmarker;
- _getdistance = player distance _objcoords;
- if (_getdistance <= _NKZdistance) then {goto "InsideTheZone"};
- if (_getdistance > _NKZdistance) then {goto "OutsideTheZone"};
- goto "LoopHere";
- ; comes here if player is inside the set zone
- #InsideTheZone
- if (_NKZflag == 9) then {_NKZflag = 0};
- if (_NKZflag == 0) then {player allowdamage false};
- if ((_NKZflag == 0) && (_NKZvech == 1)) then {vehicle player allowdamage false};
- if ((_NKZflag == 0) && (_inflag == 1)) then {hint _NKZTextIn};
- _NKZflag = 1;
- goto "LoopHere";
- ; comes here if player is outside the set zone
- #OutsideTheZone
- if (_NKZflag == 9) then {goto "LoopHere"};
- if (_NKZflag == 1) then {player allowdamage true};
- if ((_NKZflag == 1) && (_NKZvech == 1)) then {vehicle player allowdamage true};
- if ((_NKZflag == 1) && (_outflag == 1)) then {hint _NKZTextOut};
- _NKZflag = 0;
- goto "LoopHere";
- ; comes here if the params are not set
- #ParaError
- hint format ["You Did Not Use Correct Parameters!\n\n\nMarker Name: %1\n\nDistance: %2\n\nPlease Correct And Try Again!\n",_NKZmarker, _NKZdistance];
- goto "ExitHere";
- ; master exit point
- #ExitHere
- ; ********************************************************************************
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement