Advertisement
Guest User

Secure recon data

a guest
Apr 10th, 2016
105
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.69 KB | None | 0 0
  1. /*
  2. @file: destroyRadar.sqf
  3. Author:
  4.  
  5. Quiksilver. Edited by Spearhead.
  6.  
  7. Last modified:
  8.  
  9. 10/04/2016
  10.  
  11. Description:
  12.  
  13. Destroy a Blackfoot wreckage and recover the recon Intel.
  14. _________________________________________________________________________*/
  15.  
  16. private
  17.  
  18. ["_objPos","_flatPos","_accepted","_position","_randomDir","_hangar","_x","_enemiesArray","
  19.  
  20. _briefing","_fuzzyPos","_unitsArray","_dummy","_object","_tower1","_tower2","_tower3"];
  21.  
  22. _c4Message = ["Recon Data Secured!The charge has been set! 30 seconds until detonation.","
  23.  
  24. The explosives have been set! 30 seconds until detonation.","Crash site secured. The charge
  25.  
  26. is planted! 30 seconds until detonation."] call BIS_fnc_selectRandom;
  27.  
  28. //-------------------- FIND SAFE POSITION FOR OBJECTIVE
  29.  
  30. _flatPos = [0,0,0];
  31. _accepted = false;
  32. while {!_accepted} do {
  33. _position = [] call BIS_fnc_randomPos;
  34. _flatPos = _position isFlatEmpty [5,0,0.1,sizeOf
  35.  
  36. "Land_Wreck_Heli_Attack_01_F",0,false];
  37.  
  38. while {(count _flatPos) < 2} do {
  39. _position = [] call BIS_fnc_randomPos;
  40. _flatPos = _position isFlatEmpty [5,0,0.1,sizeOf
  41.  
  42. "Land_Wreck_Heli_Attack_01_F",0,false];
  43. };
  44.  
  45. if ((_flatPos distance (getMarkerPos "respawn_west")) > 1000 && (_flatPos
  46.  
  47. distance (getMarkerPos currentAO)) > 500) then
  48. {
  49. _accepted = true;
  50. };
  51. };
  52.  
  53. _objPos = [_flatPos, 15, 30, 10, 0, 0.5, 0] call BIS_fnc_findSafePos;
  54.  
  55. //-------------------- SPAWN OBJECTIVE
  56.  
  57. sideObj = "Land_Wreck_Heli_Attack_01_F" createVehicle _flatPos;
  58. waitUntil {!isNull sideObj};
  59. sideObj setDir random 360;
  60.  
  61. house = "Land_Cargo_House_V3_F" createVehicle _objPos;
  62. house setDir random 360;
  63. house allowDamage false;
  64.  
  65. _dummy = [explosivesDummy1,explosivesDummy2] call BIS_fnc_selectRandom;
  66. sleep 0.3;
  67. _object = [research1,research2] call BIS_fnc_selectRandom;
  68. sleep 0.3;
  69. { _x enableSimulation true; } forEach [researchTable,_object];
  70. sleep 0.3;
  71. researchTable setPos [(getPos house select 0), (getPos house select 1), ((getPos
  72.  
  73. house select 2) + 1)];
  74. sleep 1;
  75. [researchTable,_object,[0,0,0.9]] call BIS_fnc_relPosObject;
  76. sleep 0.3;
  77. _tower1 = [sideObj, 50, 0] call BIS_fnc_relPos;
  78. _tower2 = [sideObj, 50, 120] call BIS_fnc_relPos;
  79. _tower3 = [sideObj, 50, 240] call BIS_fnc_relPos;
  80. sleep 0.3;
  81. tower1 = "Land_Cargo_Patrol_V3_F" createVehicle _tower1;
  82. tower2 = "Land_Cargo_Patrol_V3_F" createVehicle _tower2;
  83. tower3 = "Land_Cargo_Patrol_V3_F" createVehicle _tower3;
  84. sleep 0.3;
  85. tower1 setDir 180;
  86. tower2 setDir 300;
  87. tower3 setDir 60;
  88.  
  89. { _x allowDamage false } forEach [tower1,tower2,tower3];
  90. sleep 0.3;
  91.  
  92.  
  93. //-------------------- SPAWN FORCE PROTECTION
  94.  
  95. _enemiesArray = [sideObj] call QS_fnc_SMenemyEAST;
  96.  
  97. //-------------------- BRIEF
  98.  
  99. _fuzzyPos = [((_flatPos select 0) - 300) + (random 600),((_flatPos select 1) - 300)
  100.  
  101. + (random 600),0];
  102.  
  103. { _x setMarkerPos _fuzzyPos; } forEach ["sideMarker", "sideCircle"];
  104. sideMarkerText = "Secure Recon Data"; publicVariable "sideMarkerText";
  105. "sideMarker" setMarkerText "Side Mission: Secure Recon Data"; publicVariable
  106.  
  107. "sideMarker";
  108. publicVariable "sideObj";
  109.  
  110. _briefing = "<t align='center'><t size='2.2'>New Side Mission</t><br/><t size='1.5'
  111.  
  112. color='#00B2EE'>Secure Recon Data</t><br/>____________________<br/>OPFOR have downed one of
  113.  
  114. our helicopter recon teams with important intel!<br/><br/>We've marked the position on your
  115.  
  116. map; head over there and secure the site. Find that intel and destroy any remaining
  117.  
  118. sensitive files on the heli's Black Box.</t>";
  119. [_briefing] remoteExec ["AW_fnc_globalHint",0,false];
  120. ["NewSideMission", "Secure Recon Data"] remoteExec
  121.  
  122. ["AW_fnc_globalNotification",0,false];
  123. sideMarkerText = "Secure Recon Data"; publicVariable "sideMarkerText";
  124.  
  125. sideMissionUp = true;
  126. SM_SUCCESS = false;
  127.  
  128.  
  129. while { sideMissionUp } do {
  130.  
  131. if (!alive sideObj) exitWith {
  132.  
  133. //-------------------- DE-BRIEFING
  134.  
  135. hqSideChat = "Blackfoot Recon Data destroyed! Mission FAILED!";
  136. [hqSideChat] remoteExec ["AW_fnc_globalSideChat",0,false];
  137. remoteExec ["QS_fnc_SMhintFAIL",0,false];
  138. { _x setMarkerPos [-10000,-10000,-10000]; } forEach ["sideMarker",
  139.  
  140. "sideCircle"]; publicVariable "sideMarker";
  141. sideMissionUp = false; publicVariable "sideMissionUp";
  142.  
  143. //-------------------- DELETE
  144.  
  145. { _x setPos [-10000,-10000,0]; } forEach [_object,researchTable,_dummy];
  146.  
  147. // hide objective pieces
  148. sleep 120;
  149. { deleteVehicle _x } forEach [sideObj,house,tower1,tower2,tower3];
  150. deleteVehicle nearestObject [getPos sideObj,"Land_Wreck_Heli_Attack_01_F"];
  151. [_enemiesArray] spawn QS_fnc_SMdelete;
  152. };
  153.  
  154. if (SM_SUCCESS) exitWith {
  155.  
  156. hqSideChat = _c4Message;
  157. [hqSideChat] remoteExec ["AW_fnc_globalSideChat",0,false];
  158.  
  159. //-------------------- BOOM!
  160.  
  161. _dummy setPos [(getPos sideObj select 0), ((getPos sideObj select 1) +5),
  162.  
  163. ((getPos sideObj select 2) + 0.5)];
  164. sleep 0.1;
  165. _object setPos [-10000,-10000,0]; //
  166.  
  167. hide objective
  168. sleep 30;
  169.  
  170. // ghetto bomb timer
  171. "Bo_Mk82" createVehicle getPos _dummy; // default
  172.  
  173. "Bo_Mk82","Bo_GBU12_LGB"
  174. _dummy setPos [-10000,-10000,1]; //
  175.  
  176. hide dummy
  177. researchTable setPos [-10000,-10000,1]; // hide
  178.  
  179. research table
  180. sleep 0.1;
  181.  
  182. //-------------------- DE-BRIEFING
  183.  
  184. [] call QS_fnc_SMhintSUCCESS;
  185. { _x setMarkerPos [-10000,-10000,-10000]; } forEach ["sideMarker",
  186.  
  187. "sideCircle"]; publicVariable "sideMarker";
  188. sideMissionUp = false; publicVariable "sideMissionUp";
  189.  
  190. //--------------------- DELETE
  191. sleep 120;
  192. { deleteVehicle _x } forEach [sideObj,house,tower1,tower2,tower3];
  193. deleteVehicle nearestObject [getPos sideObj,"Land_Wreck_Heli_Attack_01_F"];
  194. [_enemiesArray] spawn QS_fnc_SMdelete;
  195. };
  196. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement