TheoneandonlyNOR 12 Posted June 13, 2019 Hello, I have made a mission using a script made by an Armaholic profile called ESO. It simply spawns units when Player/Player's(MP) are in its desired distance. BUT. I wunder if it is somehow possible to make the Players that are in Plane or Helicopter not be able to activate ESO script. Other words that they can fly inside a marker with ESO without any units spawning. Could any1 help me out on this? Would be really helpfull! 🙂 Regards Sorry for bad English. Share this post Link to post Share on other sites
ZaellixA 383 Posted June 13, 2019 It would be more helpful if you could provide more information regarding the script you use, or anything relevant to it. Generally speaking, if you have access to the marker you could either change it's size in the editor, or via script like _markerPos = markerPos["markerName", true]; // Get the position of the marker _markerPos set[2, 0]; // Set its z-value equal to 0 "markerName" setMarkerPos _markerPos; // Set new position to the marker Or, alternatively you could check the position of the players inside the marker and if their z value is higher than let's say 2 metres you could disable the spawning. Again, if you don't provide more info we won't be able to help you solve your problem easily. 1 Share this post Link to post Share on other sites
TheoneandonlyNOR 12 Posted June 13, 2019 Might this help? // INITIATE ZONE _trig=format ["EOSTrigger%1",_mkr]; if (!_cache) then { if ismultiplayer then { if (_heightLimit) then {_actCond="{vehicle _x in thisList && isplayer _x && ((getPosATL _x) select 2) < 5} count playableunits > 0"; }else {_actCond="{vehicle _x in thisList && isplayer _x} count playableunits > 0"; };}else{ if (_heightLimit) then {_actCond="{vehicle _x in thisList && isplayer _x && ((getPosATL _x) select 2) < 5} count allUnits > 0"; }else {_actCond="{vehicle _x in thisList && isplayer _x} count allUnits > 0";};}; _eosActivated = createTrigger ["EmptyDetector",_mPos]; _eosActivated setTriggerArea [(_distance+_mkrX),(_distance+_mkrY),_mkrAgl,FALSE]; _eosActivated setTriggerActivation ["ANY","PRESENT",true]; _eosActivated setTriggerTimeout [1, 1, 1, true]; _eosActivated setTriggerStatements [_actCond,"",""]; server setvariable [_trig,_eosActivated]; }else{ _eosActivated=server getvariable _trig; }; _mkr setmarkerAlpha _mAN; if (!(getmarkercolor _mkr == VictoryColor)) then //IF MARKER IS GREEN DO NOT CHANGE COLOUR { _mkr setmarkercolor hostileColor; }; waituntil {triggeractivated _eosActivated}; //WAIT UNTIL PLAYERS IN ZONE if (!(getmarkercolor _mkr == "colorblack"))then { if (!(getmarkercolor _mkr == VictoryColor)) then {_mkr setmarkerAlpha _mAH;}; Share this post Link to post Share on other sites
ZaellixA 383 Posted June 13, 2019 Well, from the looks of it, seems like you could actually set the variable _heightLimit to true and then it is supposed to work for units whose z-coordinate is less than 5 metres. This in respect to the ground of course. Have you tried that? 1 Share this post Link to post Share on other sites
TheoneandonlyNOR 12 Posted June 13, 2019 9 minutes ago, ZaellixA said: Well, from the looks of it, seems like you could actually set the variable _heightLimit to true and then it is supposed to work for units whose z-coordinate is less than 5 metres. This in respect to the ground of course. Have you tried that? Ehm were to add this Hight limit? no I will try it right away!. I will come back with the results 🙂 1 Share this post Link to post Share on other sites
TheoneandonlyNOR 12 Posted June 13, 2019 Picture of the sqf. were to put it? Share this post Link to post Share on other sites
ZaellixA 383 Posted June 13, 2019 There is a _heighLimit variable in the script. So you can go somewhere close to the top and write (duplicating the first line, no need to write that down) _trig = format["EOSTrigger%1", _mkr]; _heigthLimit = true; // You place it somewhere here 1 Share this post Link to post Share on other sites
TheoneandonlyNOR 12 Posted June 13, 2019 1 minute ago, ZaellixA said: There is a _heighLimit variable in the script. So you can go somewhere close to the top and write (duplicating the first line, no need to write that down) _trig = format[EOSTrigger%1, _mkr]; _heigthLimit = true; // You place it somewhere here So like this: Spoiler // INITIATE ZONE _trig=format ["EOSTrigger%1",_mkr]; _heigthLimit = true; if (!_cache) then { if ismultiplayer then { if (_heightLimit) then {_actCond="{vehicle _x in thisList && isplayer _x && ((getPosATL _x) select 2) < 5} count playableunits > 0"; }else {_actCond="{vehicle _x in thisList && isplayer _x} count playableunits > 0"; };}else{ if (_heightLimit) then {_actCond="{vehicle _x in thisList && isplayer _x && ((getPosATL _x) select 2) < 5} count allUnits > 0"; }else {_actCond="{vehicle _x in thisList && isplayer _x} count allUnits > 0";};}; _eosActivated = createTrigger ["EmptyDetector",_mPos]; _eosActivated setTriggerArea [(_distance+_mkrX),(_distance+_mkrY),_mkrAgl,FALSE]; _eosActivated setTriggerActivation ["ANY","PRESENT",true]; _eosActivated setTriggerTimeout [1, 1, 1, true]; _eosActivated setTriggerStatements [_actCond,"",""]; server setvariable [_trig,_eosActivated]; }else{ _eosActivated=server getvariable _trig; }; _mkr setmarkerAlpha _mAN; if (!(getmarkercolor _mkr == VictoryColor)) then //IF MARKER IS GREEN DO NOT CHANGE COLOUR { _mkr setmarkercolor hostileColor; }; waituntil {triggeractivated _eosActivated}; //WAIT UNTIL PLAYERS IN ZONE if (!(getmarkercolor _mkr == "colorblack"))then { if (!(getmarkercolor _mkr == VictoryColor)) then {_mkr setmarkerAlpha _mAH;}; Share this post Link to post Share on other sites
TheoneandonlyNOR 12 Posted June 13, 2019 Thanks. it worked!! REP ++++ 1 Share this post Link to post Share on other sites
Larrow 2822 Posted June 13, 2019 3 hours ago, TheoneandonlyNOR said: by an Armaholic profile called ESO EOS ( Enemy Occupation System ) 3 hours ago, TheoneandonlyNOR said: BUT. I wunder if it is somehow possible to make the Players that are in Plane or Helicopter not be able to activate ESO script. Other words that they can fly inside a marker with ESO without any units spawning. If you actually read the instructions document that came with the download it actually tells you how to set this up. Quote Height limit A height limit will prevent flying units from activating EOS zones. To use this feature (Boolean). null = [["EOSinf_1","EOSinf_2"],[2,1],[0,0],[0,0],[0],[0],[0,0],[0,0,250,EAST,TRUE,FALSE]] call EOS_Spawn; The Armaholic page even has a link to the forum page for the script where you could of got better help from, from people who use the script. 1 Share this post Link to post Share on other sites