/// MAIN SCRIPT.... _Me = (_this select 0); //_namep= name player; //if (alive _namep) then {hint format["YES"]; }; sleep 2; _i=0; for [{_i=0},{_i<1},{_i=_i}] do { WestTriggerOne = createTrigger ["EmptyDetector", position _Me]; WestTriggerOne setTriggerActivation ["EAST", "PRESENT", true]; WestTriggerOne setTriggerType "NONE"; WestTriggerOne setTriggerArea [50000, 50000, 0, false ]; sleep 1; //get a list of enemy units inside the trigger. _whohere = list WestTriggerOne; _nr ={alive _x} count (_whohere); _index=0; _myarray=[0]; for [{_a=0},{_a < _nr },{_a=_a+1}] do { _unit = _whohere select _a; _Eclass = typeOf _unit; _Ename = name _unit; // i want only thouse who are of AIR type into a new array if (_unit isKindOf "AIR") then { _myarray set [_index, _unit]; _index = _index +1; _myarray resize _index; if (!alive _unit) then {deletemarker _Ename;}; }; }; nil=[_myarray] execvm "maplot.sqf"; publicvariable "pad"; onMapSingleClick "pad =+ _pos"; if (pad select 0 > 0) then { _px=pad select 0; _py=pad select 1; _not= [_px,_py] nearObjects ["Air",500]; _now = _not select 0; nil=[_now,_Me] execvm "fire.sqf"; pad=[0,0,0]; }; }; // MAPLOT script.. _myarray = (_this select 0); { _Ename = name _x; createMarker [_Ename, (position _x)]; _Ename setMarkerType "Dot"; _Ename setMarkerText _Ename; _pos= getpos _x; _xp = _pos select 0; _yp = _pos select 1; _zp = _pos select 2; _Ename setMarkerPos [_xp,_yp,_zp]; if (!alive _unit) then {deletemarker _Ename;}; } foreach _myarray; // FIRE SCRIPT... _unit = _this select 0; _AAvehicle = _this select 1; _Ename = name _unit; _missil = "M_Ch29_AT" createVehicle [0,0,0]; _missil setpos [(getpos _AAvehicle select 0),(getpos _AAvehicle select 1),(getpos _AAvehicle select 2)+ 3.5]; _camera = "camera" camcreate (position _missil); while {(getdammage _unit < 0.9)} do { _vel = velocity _missil; _dir = direction _missil; _speed = 20; _missil setVelocity [(_vel select 0)+(sin _dir*_speed),(_vel select 1)+(cos _dir*_speed),(_vel select 2)]; _Pm = getpos _missil; _Pu = getpos _unit; _Pmu = [((_Pu select 0) - (_Pm select 0)), ((_Pu select 1) - (_Pm select 1)),((_Pu select 2) - (_Pm select 2))]; _missil setVectorUp _Pmu; _missil setVectorDir _Pmu; if ((_unit distance _missil) <= 14) then { _missil setpos [(getpos _unit select 0),(getpos _unit select 1),((getpos _unit select 2)+1.6)]; }; camUseNVG set; _camera cameraeffect ["internal", "FRONT"]; _camera camsettarget _missil; _camera camPrepareFOV 1.100; _camera camsetrelpos [0,-10,5]; _camera camcommit 0; sleep 0.01; if (!alive _unit) then { deletemarker _Ename; _camera camsettarget _unit; _camera camPrepareFOV 0.500; _camera camsetrelpos [0,40,5]; sleep 0.7; _camera camsettarget _AAvehicle; _camera camPrepareFOV 0.800; _camera camsetrelpos [10,-40,15]; sleep 0.7; _camera cameraEffect ["Terminate", "FRONT"]; camDestroy _camera; [_missil] join grpNull; }; }; //end the while