Advertisement
mashen456

Untitled

Jan 26th, 2016
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 73.59 KB | None | 0 0
  1. call compile preprocessFileLineNumbers "DZ\functions\initFunctions.sqf";
  2. [] spawn {
  3. waitUntil {!isNil "clientReady"};
  4. _clonemyass = profilenamespace getVariable["Clone_Body", true];
  5. if (_clonemyass) then {
  6. publicVariableServer "clientReady";
  7. sleep 0.2;
  8. publicVariableServer "clientReady";
  9. sleep 0.2;
  10. publicVariableServer "clientReady";
  11. sleep 0.2;
  12. systemchat "George Cloning";
  13. profilenamespace setVariable["Clone_Body", false];
  14. };
  15. };
  16. [] spawn {
  17. while {true} do {
  18. 0 cutRsc['RscTitleStructuredText', 'PLAIN'];
  19. _display = uinamespace getvariable['RscTitleStructuredText', displaynull];
  20. _ctrl = _display displayctrl 9999;
  21. _ctrl ctrlShow true;
  22. _ctrl ctrlEnable true;
  23. _ctrl ctrlSetFade 0;
  24. _ctrl ctrlsettextcolor[0, 1, 1, 1];
  25. _ctrl ctrlSetPosition[safezonex + 0.65, safezoney + 1.1, safezonew, safezoneH];
  26. _ctrl ctrlSetStructuredText parseText "<t color='#FFFFFF'>InsanityCheats</t>";
  27. _ctrl ctrlSetFont "AmorSerifProBold";
  28. _ctrl ctrlcommit 0;
  29. uiSleep 7;
  30. };
  31. };
  32. [] spawn {
  33. waitUntil {!isNull player};
  34.  
  35. toggle_1 = false;
  36. toggle_2 = false;
  37. toggle_3 = false;
  38. toggle_4 = false;
  39. toggle_5 = false;
  40. toggle_6 = false;
  41. toggle_7 = false;
  42. toggle_8 = false;
  43. toggle_9 = false;
  44. toggle_10 = false;
  45. toggle_11 = false;
  46. toggle_12 = false;
  47.  
  48. xxx_fn_fast_anim = {
  49. if (toggle_8) then {
  50. hint "Fast Animes - playerinjured ON";
  51. playeraction "playerinjuredl";
  52. } else {
  53. hint "Fast Animes - playerinjured OFF";
  54. playeraction "playerhealthy";
  55. };
  56. };
  57. xxx_fn_speedhack = {
  58. if (toggle_1) then {
  59. hint "Speed ON";
  60. xxx_car1 = "car_hatchback"
  61. createvehiclelocal getposatl player;
  62. xxx_car2 = "car_hatchback"
  63. createvehiclelocal getposatl player;
  64. while {toggle_1} do {
  65. _pos = player modeltoworld[0, -2, 0];
  66. xxx_car1 setdir getdir player + 180;
  67. xxx_car2 setdir getdir player + 180;
  68. xxx_car1 setpos _pos;
  69. xxx_car2 setpos _pos;
  70. };
  71. } else {
  72. hint "Speed OFF";
  73. deletevehicle xxx_car1;
  74. deletevehicle xxx_car2;
  75. };
  76. };
  77. xxx_fn_dupe = {
  78. profilenamespace setVariable["Clone_Body", true];
  79. saveprofilenamespace;
  80. hint 'Clone Ready! Please log out and back into the server, you should see your dupe next to you, knock them out to steal the gear, then relog again.';
  81. };
  82. xxx_fn_view_dis = {
  83. if (toggle_7) then {
  84. setViewDistance 600;
  85. hint "View Distance Low";
  86. } else {
  87. setViewDistance 1500;
  88. hint "View Distance High";
  89. };
  90. };
  91. xxx_fn_map_markerz = {
  92. hint "Scanning Map, please be patient";
  93. closeDialog 0;
  94. for "_j" from 1 to 100 do {deleteMarkerLocal("marker" + str(_j));};
  95. _viewdist = viewDistance;
  96. _viewdist2 = objectviewdistance;
  97. setViewDistance 1;
  98. setobjectviewdistance 1;
  99. setTerrainGrid 50;
  100. _start = [1000, 2300, 500];
  101. _max = 15300;
  102. _i = 1;
  103. _u = 1;
  104. _c = 0;
  105. _arr = [];
  106. _local = "camera"
  107. camCreate(getPos player);
  108. _local cameraEffect["INTERNAL", "BACK"];
  109. cutText["0%", "BLACK FADED"];
  110. while {((_start select 0 < _max)) && ((_start select 1 < _max))} do {
  111. while {(_start select 0 < _max)} do {
  112. _local = "camera"
  113. camCreate _start;
  114. _local cameraEffect["INTERNAL", "BACK"];
  115. sleep 0.01;
  116. _obj = (allMissionObjects "LandVehicle") + (allMissionObjects "Land_UH1Y_Wreck") + (allMissionObjects "Land_Mi8_Crashed");
  117. _obj1 = (entities "SurvivorBase");
  118. _obj2 = (allMissionObjects "TentMedium_Pitched") + (allMissionObjects "TentLarge_Pitched") + (allMissionObjects "TentMedium_Packed") + (allMissionObjects "TentLarge_Backpack");
  119. _obj3 = (allMissionObjects "attachment_handguard_mp5_rail") + (allMissionObjects "attachment_compensator_mp5") + (allMissionObjects "attachment_buttstock_mp5_stock") + (allMissionObjects "prisonuniformpants") + (allMissionObjects "prisonuniformjacket") + (allMissionObjects "prisonercap") + (allMissionObjects "gasmask") + (allMissionObjects "MilitaryRifle") + (allMissionObjects "wolfmask") + (allMissionObjects "firefighteraxebase") + (allMissionObjects "mp5k") + (allMissionObjects "sword") + (allMissionObjects "rocketaviators");
  120. if (count _obj != 0) then {
  121. {
  122. if !((getPos _x) in _arr) then {
  123. _marker = createMarkerLocal["marker" + str(_i), getPos _x];
  124. _marker setMarkerTypeLocal "hd_objective";
  125. _marker setMarkerColorLocal "ColorGreen";
  126. _marker setMarkerSizeLocal[0.5, 0.5];
  127. _marker setMarkerTextLocal(typeOf _x);
  128. _i = _i + 1;
  129. _arr set[count _arr, getPos _x];
  130. };
  131. }
  132. forEach _obj;
  133. };
  134. if (count _obj1 != 0) then {
  135. {
  136. if !((getPos _x) in _arr) then {
  137. _marker1 = createMarkerLocal["marker" + str(_i), getPos _x];
  138. _marker1 setMarkerTypeLocal "hd_destroy";
  139. _marker1 setMarkerColorLocal "ColorRed";
  140. _marker1 setMarkerSizeLocal[0.5, 0.5];
  141. _marker1 setMarkerTextLocal(Name _x);
  142. _i = _i + 1;
  143. _arr set[count _arr, getPos _x];
  144. };
  145. }
  146. forEach _obj1;
  147. };
  148. if (count _obj2 != 0) then {
  149. {
  150. if !((getPos _x) in _arr) then {
  151. _marker2 = createMarkerLocal["marker" + str(_i), getPos _x];
  152. _marker2 setMarkerTypeLocal "hd_join";
  153. _marker2 setMarkerColorLocal "ColorOrange";
  154. _marker2 setMarkerSizeLocal[0.5, 0.5];
  155. _marker2 setMarkerTextLocal(typeOf _x);
  156. _i = _i + 1;
  157. _arr set[count _arr, getPos _x];
  158. };
  159. }
  160. forEach _obj2;
  161. };
  162. if (count _obj3 != 0) then {
  163. {
  164. if !((getPos _x) in _arr) then {
  165. _marker3 = createMarkerLocal["marker" + str(_i), getPos _x];
  166. _marker3 setMarkerTypeLocal "hd_join";
  167. _marker3 setMarkerColorLocal "ColorBlue";
  168. _marker3 setMarkerSizeLocal[0.5, 0.5];
  169. _marker3 setMarkerTextLocal(typeOf _x);
  170. _i = _i + 1;
  171. _arr set[count _arr, getPos _x];
  172. };
  173. }
  174. forEach _obj3;
  175. };
  176. camDestroy _local;
  177. _start = [(_start select 0) + 1000, (_start select 1), 0];
  178. };
  179. _start = [1000, (_start select 1) + 1000, 0];
  180. sleep 0.01;
  181. };
  182. setViewDistance _viewdist;
  183. setobjectviewdistance _viewdist2;
  184. camDestroy _local;
  185. player cameraEffect["TERMINATE", "BACK"];
  186. cutText["Search finished", "BLACK IN"];
  187. };
  188. xxx_fn_noblur_colour = {
  189. if (toggle_6) then {
  190. hint "No Blur - Full Color ON";
  191. } else {
  192. hint "No Blur - Full Color OFF";
  193. };
  194. _realblood = 0;
  195. while {toggle_6} do {
  196. resetCamShake;
  197. _realblood = player getVariable['blood', -1];
  198. player setVariable['blood', 5000];
  199. waitUntil {player getVariable['blood', -1] != 5000};
  200. };
  201. };
  202. xxx_fn_bullet_cam = {
  203. if (toggle_9) then {
  204. player addEventHandler["Fired", {
  205. _null = _this spawn {
  206. _missile = _this select 6;
  207. _cam = "Camera"
  208. camCreate(position player);
  209. _cam CameraEffect["External", "Back"];
  210. waitUntil {
  211. if (isNull _missile) exitWith {1};
  212. _cam camSetTarget _missile;
  213. _cam camSetRelPos[0, -3, 0];
  214. _cam camCommit 0;
  215. };
  216. sleep 0.4;
  217. _cam CameraEffect["Terminate", "Back"];
  218. camDestroy _cam;
  219. };
  220. }];
  221. hint "Bullet Camera ON";
  222. } else {
  223. (vehicle player) removeAllEventHandlers "Fired";
  224. hint "Bullet Camera OFF";
  225. };
  226. };
  227. xxx_fnc_gun_god = {
  228. if (toggle_10) then {
  229. player setWeaponReloadingTime[player, currentWeapon player, 0];
  230. player setUnitRecoilCoefficient 0;
  231. hint "Gun God ON";
  232. } else {
  233. player setWeaponReloadingTime[player, currentWeapon player, 1];
  234. player setUnitRecoilCoefficient 1;
  235. hint "Gun God OFF";
  236. };
  237. };
  238. xxx_fn_no_grass = {
  239. if (toggle_5) then {
  240. setTerrainGrid 50.0;
  241. hint "No Grass ON";
  242. } else {
  243. setTerrainGrid 12.5;
  244. hint "No Grass OFF";
  245. };
  246. };
  247. xxx_fn_get_my_guid = {
  248. systemchat format["UID is %1", (getplayeruid(player))];
  249. };
  250. xxx_fn_view_gear = {
  251. _entities = (positionCameraToWorld[0, 0, 0] nearObjects["SurvivorBase", 1000]); {
  252. if (name _x == _this select 0) then {
  253. createGearDialog[(_x), "RscDisplayGear"];
  254. };
  255. } forEach _entities;
  256. };
  257. xxx_fn_spectate = {
  258. _entities = (positionCameraToWorld[0, 0, 0] nearObjects["SurvivorBase", 1000]); {
  259. if (name _x == _this select 0) then {
  260. vehicle _x switchCamera "EXTERNAL";
  261. systemchat format["Spectating %1, press F10 to cancel", name _x];
  262. };
  263. }
  264. forEach _entities;
  265. (findDisplay 46) displayAddEventHandler['KeyDown', 'if ((_this select 1) == 0x44) then {vehicle player switchCamera "EXTERNAL";}'];
  266. };
  267. xxx_fn_executor = {
  268. disableSerialization;
  269. createDialog 'rscdisplaynote';
  270. ctrlSetText[1600, "Execute"];
  271. ctrlSettext[1601, "Clear"];
  272. ctrlSetText[1300, "Executor"];
  273. buttonSetAction[1600, "[] spawn compile (ctrlText 1400)"];
  274. buttonSetAction[1601, "ctrlSetText[1400,""""];"];
  275. hint "Execute Scripts";
  276. };
  277. xxx_fn_nightlight = {
  278. if (toggle_3) then {
  279. xxx_fn_nightlight2 = "#lightpoint"
  280. createVehicleLocal getpos player;
  281. xxx_fn_nightlight2 setLightBrightness 1;
  282. xxx_fn_nightlight2 setLightAmbient[0.8, 1, 0.2];
  283. xxx_fn_nightlight2 setLightColor[.4, 1, 0];
  284. xxx_fn_nightlight2 lightAttachObject[player, [10, 10, 10]];
  285. hint "Night Light ON";
  286. } else {
  287. deleteVehicle xxx_fn_nightlight2;
  288. hint "Night Light OFF";
  289. };
  290. };
  291. xxx_fn_max_view_dis = {
  292. if (toggle_11) then {
  293. setViewDistance 10000;
  294. hint "Max View Distance ON";
  295. } else {
  296. setViewDistance 1500;
  297. hint "Max View Distance OFF";
  298. };
  299. };
  300. xxx_fn_no_buildings = {
  301. if (toggle_4) then {
  302. hint "No Buildings ON";
  303. } else {
  304. hint "No Buildings OFF";
  305. };
  306. while {toggle_4} do {
  307. _entities = (positionCameraToWorld[0, 0, 0]) nearObjects 1000; {
  308. if ((_x != player) && !(_x isKindOf "Man")) then {
  309. _typeof = toArray typeof _x;
  310. _typeof resize 4;
  311. _typeof;
  312. _typeof = toString _typeof;
  313. if (_typeof == "land") then {
  314. hideObject _x;
  315. };
  316. };
  317. }
  318. forEach _entities;
  319. sleep 5;
  320. };
  321. while {!toggle_4} do {
  322. _entities = (positionCameraToWorld[0, 0, 0]) nearObjects 1000; {
  323. if ((_x != player) && !(_x isKindOf "Man")) then {
  324. _typeof = toArray typeof _x;
  325. _typeof resize 4;
  326. _typeof;
  327. _typeof = toString _typeof;
  328. if (_typeof == "land") then {
  329. _x hideObject false;
  330. };
  331. };
  332. }
  333. forEach _entities;
  334. sleep 5;
  335. };
  336. };
  337. xxx_fn_3rd_person = {
  338. player switchCamera "External";
  339. hint "Third Person Mode ON";
  340. };
  341. xxx_fn_break_free = {
  342. actionReleased = player;
  343. publicVariableServer 'actionReleased';
  344. player setCaptive false;
  345. player playAction "cancelAction";
  346. hint "Broke Free";
  347. };
  348. xxx_fn_view_map = {
  349. disableSerialization;
  350. closeDialog 0;
  351. if (isNil "xxx_fn_view_map1") then {
  352. xxx_fn_view_map2 = {
  353. _ctrl = _this select 0; {
  354. _ctrl drawIcon["DZuidatamapmarkersmilitaryStart_CA.paa",
  355. if (_x == player) then {
  356. [0, 0, 1, 1]
  357. } else {
  358. [1, 0, 0, 1]
  359. }, getPos _x, ((1 - ctrlMapScale _ctrl) max 0.2) * 30, ((1 - ctrlMapScale _ctrl) max 0.2) * 30, getDir _x, "herro", 2];
  360. }
  361. forEach(entities "SurvivorBase");
  362. };
  363. };
  364. createDialog "RscDisplayMainMap";
  365. _map = (findDisplay 12) displayCtrl 51;
  366. _map ctrlAddEventhandler["mousebuttondblclick", "((_this select 0) posScreenToWorld [_this select 2, _this select 3]) spawn xxx_fn_view_map1"];
  367. _map ctrlAddEventHandler["Draw", "_this call xxx_fn_view_map2"];
  368. for "_i" from 0 to 9999 do {
  369. if (_i != 51) then {
  370. ((findDisplay 12) displayCtrl _i) ctrlShow false;
  371. };
  372. };
  373. };
  374. xxx_fn_list_inventory = {
  375. hintc format["%1", (itemsInInventory(player))];
  376. hintsilent "";
  377. };
  378. xxx_fn_HUD = {
  379. if (toggle_12) then {
  380. hint "HUD ON";
  381. } else {
  382. hint "HUD OFF";
  383. };
  384. while {toggle_12} do {
  385. 0 cutRsc['RscTitleStructuredText', 'PLAIN'];
  386. _display = uinamespace getvariable['RscTitleStructuredText', displaynull];
  387. _ctrl = _display displayctrl 9999;
  388. _ctrl ctrlShow true;
  389. _ctrl ctrlEnable true;
  390. _ctrl ctrlSetFade 0;
  391. _unit = player;
  392. _blood = round(((_unit getVariable['blood', 0]) / 5000) * 100);
  393. _health = round(((_unit getVariable['health', 0]) / 5000) * 100);
  394. _shock = round(((_unit getVariable['shock', 0]) / 5000) * 100);
  395. _temp = round(((_unit getVariable['bodytemperature', 0]) / 100) * 100);
  396. _heat = round(((_unit getVariable['heatcomfort', 0]) / 100) * 100);
  397. _hand = currentWeapon _unit;
  398. if (_hand == "") then {
  399. _wName = typeof itemInHands _unit;
  400. };
  401. _pp = getpos _unit;
  402. _wName = getText(configFile >> "cfgWeapons" >> _hand >> "displayName");
  403. if (_wName == "") then {
  404. _wName = _hand;
  405. };
  406. _ctrl ctrlSetPosition[safezonex, safezoney, safezonew, safezoneH];
  407. _text = parseText format['<t size=''1'' color=''#8DFF00''> [Name: %1][Pos: %8][Health: %2%][Blood: %3%][Shock: %4%][Body Temperature: %5%][Heat Comfort: %6%][Item In Hands: %7] </t>', name _unit, _health, _blood, _shock, _temp, _heat, _wName, _pp];
  408. _ctrl ctrlSetStructuredText _text;
  409. _ctrl ctrlcommit 0;
  410. uisleep 5;
  411. };
  412. };
  413. xxx_fn_shit = {
  414. playerAction 'PlayerPoo';
  415. hint "You Are Taking A Shit";
  416. []spawn {while{true} do {vehicle player engineOn true;vehicle player setfuel 1;}};
  417. };
  418. xxx_fn_speedhack2 = {
  419. if (toggle_2) then {
  420. hint "speedhack 2 on";
  421. } else {
  422. hint "speedhack 2 off";
  423. };
  424. while {toggle_2} do {
  425. player setVehiclePosition [[(getPos player select 0) + (0.001 * sin(getDir player)), (getPos player select 1) + (0.001 * cos(getDir player)), getPos player select 2], ["","",""], 0];
  426. };
  427. };
  428. xxx_fn_televeh = {
  429. disableSerialization;
  430. closeDialog 0;
  431. if (isNil "tele") then
  432. {
  433. tele = {
  434. if (player != vehicle player) then
  435. {
  436. vehicle player setPos _this;
  437. closeDialog 0;
  438. hint format ["Teleported to: %1", _this];
  439. }
  440. else
  441. {
  442. hint str _this;
  443. };
  444. };
  445. dmap =
  446. {
  447. _ctrl = _this select 0;
  448. {_ctrl drawIcon ["\DZ\ui\data\map\markers\military\triangle_CA.paa", if (_x == player) then {[1,0,1,1]} else {[1,0.7,0,1]}, getPos _x, ((1 - ctrlMapScale _ctrl) max 0.2)*30, ((1 - ctrlMapScale _ctrl) max 0.2)*30, getDir _x, "herro", 2];} forEach (entities "SurvivorBase");
  449. };
  450. };
  451. createDialog "RscDisplayMainMap";
  452. {
  453. ((findDisplay 12) displayCtrl _x) ctrlShow false;
  454. } forEach [56,57,58,59,60,63,64,65,66,67,68,69,70,71,72,73,75,77,78,101,102,103,104,106,1001,1002,1003,1013,1021,1022,1023];
  455. ((findDisplay 12) displayCtrl 51) ctrlSetEventHandler ["mousebuttondblclick","((_this select 0) posScreenToWorld [_this select 2, _this select 3]) spawn tele"];
  456. ((findDisplay 12) displayCtrl 51) ctrlSetEventHandler ["Draw", "_this call dmap"];
  457. };
  458. xxx_fn_teleport = {
  459. _entities = (positionCameraToWorld [0,0,0]) nearObjects 1000;
  460. {
  461. if ((_x != player) && !(_x isKindOf "Man") && (typeOf _x == "V3S_Cargo")) then {
  462. _pos = player modelToWorld [round ((random 1)),round ((random 1)),0];
  463. _x setpos _pos;
  464. };
  465. if ((_x != player) && !(_x isKindOf "Man") && (typeOf _x == "v3s_cargo_blue")) then {
  466. _pos = player modelToWorld [round ((random 1)),round ((random 1)),0];
  467. _x setpos _pos;
  468. };
  469. } forEach _entities;
  470. };
  471.  
  472.  
  473.  
  474. xxx_fnc_esp1 = {
  475. xxx_fnc_esp1_list = {
  476. if (isNil 'xxx_fnc_esp1_tog') then {
  477. xxx_fnc_esp1_tog = 0;
  478. };
  479. if (xxx_fnc_esp1_tog == 0) then {
  480. hint "Player ESP ON";
  481. xxx_fnc_esp1_tog = 1;
  482. _a = [];
  483. while {xxx_fnc_esp1_tog == 1} do {
  484. _entities = entities "SurvivorBase"; {
  485. if ((_x in _a) && !(alive _x)) then {
  486. _a = _a - [_x];
  487. };
  488. if ((_x != player) && !(_x in _a)) then {
  489. _a = _a + [_x];
  490. [_x] spawn xxx_fnc_esp1_draw;
  491. sleep 0.25;
  492. };
  493. } forEach _entities;
  494. sleep 5;
  495. };
  496. } else {
  497. hint "Player ESP OFF";
  498. xxx_fnc_esp1_tog = 0;
  499. };
  500. };
  501. xxx_fnc_esp1_draw = {
  502. disableSerialization;
  503. if (isNil 'ESP_Count') then {
  504. ESP_Count = 2733;
  505. };
  506. ESP_Count cutRsc['rscDynamicText', 'PLAIN'];
  507. ESP_Count = ESP_Count + 1;
  508. _ctrl = ((uiNamespace getvariable 'BIS_dynamicText') displayctrl 9999);
  509. _ctrl ctrlShow true;
  510. _ctrl ctrlEnable true;
  511. _ctrl ctrlSetFade 0;
  512. _unit = _this select 0;
  513. _hand = currentWeapon _unit;
  514. if (_hand == "") then {
  515. _wName = typeof itemInHands _unit;
  516. };
  517. _wName = getText(configFile >> "cfgWeapons" >> _hand >> "displayName");
  518. if (_wName == "") then {
  519. _wName = _hand;
  520. };
  521. while {(alive _unit) && !(isNull _unit)} do {
  522. if (xxx_fnc_esp1_tog == 0) exitWith {
  523. _ctrl ctrlShow false;
  524. _ctrl ctrlEnable false;
  525. };
  526. _pos = [(getPosATL _unit) select 0, (getPosATL _unit) select 1, ((getPosATL _unit) select 2) + 2];
  527. _pos2D = WorldToScreen _pos;
  528. if (count _pos2D > 0) then {
  529. _ctrl ctrlSetPosition[(_pos2D select 0) - (safezoneW / 2), (_pos2D select 1), safezoneW, safezoneH];
  530. _text = parseText format['<t size=''0.3'' color=''#8DFF00''>%1 (%2m) %3</t>', name _unit, round(player distance _unit), _wName];
  531. _ctrl ctrlSetStructuredText _text;
  532. _ctrl ctrlCommit 0;
  533. };
  534. sleep 0.01;
  535. };
  536. _ctrl ctrlShow false;
  537. _ctrl ctrlEnable false;
  538. };
  539. [] spawn xxx_fnc_esp1_list;
  540. };
  541. xxx_fnc_esp2 = {
  542. xxx_fnc_esp2_list = {
  543. if (isNil 'xxx_fnc_esp2_tog') then {
  544. xxx_fnc_esp2_tog = 0;
  545. };
  546. if (xxx_fnc_esp2_tog == 0) then {
  547. hint "Player ESP ON";
  548. xxx_fnc_esp2_tog = 1;
  549. _a = [];
  550. while {
  551. xxx_fnc_esp2_tog == 1
  552. }
  553. do {
  554. _entities = entities "SurvivorBase"; {
  555. if ((_x in _a) && !(alive _x)) then {
  556. _a = _a - [_x];
  557. };
  558. if ((_x != player) && !(_x in _a)) then {
  559. _a = _a + [_x];
  560. [_x] spawn xxx_fnc_esp2_draw;
  561. sleep 0.25;
  562. };
  563. }
  564. forEach _entities;
  565. sleep 5;
  566. };
  567. } else {
  568. hint "Player ESP OFF";
  569. xxx_fnc_esp2_tog = 0;
  570. };
  571. };
  572. xxx_fnc_esp2_draw = {
  573. disableSerialization;
  574. if (isNil 'ESP_Count') then {
  575. ESP_Count = 2733;
  576. };
  577. ESP_Count cutRsc['rscDynamicText', 'PLAIN'];
  578. ESP_Count = ESP_Count + 1;
  579. _ctrl = ((uiNamespace getvariable 'BIS_dynamicText') displayctrl 9999);
  580. _ctrl ctrlShow true;
  581. _ctrl ctrlEnable true;
  582. _ctrl ctrlSetFade 0;
  583. _unit = _this select 0;
  584. while {
  585. (alive _unit) && !(isNull _unit)
  586. }
  587. do {
  588. if (xxx_fnc_esp2_tog == 0) exitWith {
  589. _ctrl ctrlShow false;
  590. _ctrl ctrlEnable false;
  591. };
  592. _pos = [(getPosATL _unit) select 0, (getPosATL _unit) select 1, ((getPosATL _unit) select 2) + 2];
  593. _pos2D = WorldToScreen _pos;
  594. _blood = round(((_unit getVariable['blood', 0]) / 5000) * 100);
  595. _health = round(((_unit getVariable['health', 0]) / 5000) * 100);
  596. _shock = round(((_unit getVariable['shock', 0]) / 5000) * 100);
  597. _temp = round(((_unit getVariable['bodytemperature', 0]) / 100) * 100);
  598. _heat = round(((_unit getVariable['heatcomfort', 0]) / 100) * 100);
  599. _UID = (getplayeruid(_unit));
  600. _hand = currentWeapon _unit;
  601. if (_hand == "") then {
  602. _wName = typeof itemInHands _unit;
  603. };
  604. _wName = getText(configFile >> "cfgWeapons" >> _hand >> "displayName");
  605. if (_wName == "") then {
  606. _wName = _hand;
  607. };
  608. if (count _pos2D > 0) then {
  609. _ctrl ctrlSetPosition[(_pos2D select 0) - (safezoneW / 2), (_pos2D select 1), safezoneW, safezoneH];
  610. _text = parseText format['<t size=''0.3'' color=''#8DFF00''>%1 (Range:%2m) <br/> [GUID: %9] <br/> [Health: %3%][Blood: %4%][Shock: %5%][Temp: %6%][Heat: %7%] <br/>In Hands: %8</t>', name _unit, round(player distance _unit), _health, _blood, _shock, _temp, _heat, _wName, _UID];
  611. _ctrl ctrlSetStructuredText _text;
  612. _ctrl ctrlCommit 0;
  613. };
  614. sleep 0.01;
  615. };
  616. _ctrl ctrlShow false;
  617. _ctrl ctrlEnable false;
  618. };
  619. [] spawn xxx_fnc_esp2_list;
  620. };
  621. xxx_fn_esp_weapons = {
  622. xxx_fn_esp_weapons2 = {
  623. if (isNil 'xxx_fn_esp_weapons1') then {
  624. xxx_fn_esp_weapons1 = 0;
  625. };
  626. if (xxx_fn_esp_weapons1 == 0) then {
  627. hint "Weapon ESP ON";
  628. xxx_fn_esp_weapons1 = 1;
  629. arr1 = [];
  630. while {
  631. xxx_fn_esp_weapons1 == 1
  632. }
  633. do {
  634. _entities = (allMissionObjects "riflecore") + (allMissionObjects "ShotgunBase") + (allMissionObjects "pistolcore") + (allMissionObjects "FlashGrenade") + (allMissionObjects "GrenadeBase"); {
  635. if !(_x in arr1) then {
  636. arr1 = arr1 + [_x];
  637. [_x] spawn xxx_fn_esp_weapons3;
  638. sleep 0.25;
  639. };
  640. }
  641. forEach _entities;
  642. sleep 5;
  643. };
  644. } else {
  645. hint "Weapon ESP OFF";
  646. xxx_fn_esp_weapons1 = 0;
  647. };
  648. };
  649. xxx_fn_esp_weapons3 = {
  650. disableSerialization;
  651. if (isNil 'ESP_Count') then {
  652. ESP_Count = 2733;
  653. };
  654. ESP_Count cutRsc['rscDynamicText', 'PLAIN'];
  655. ESP_Count = ESP_Count + 1;
  656. _ctrl = ((uiNamespace getvariable 'BIS_dynamicText') displayctrl 9999);
  657. _ctrl ctrlShow true;
  658. _ctrl ctrlEnable true;
  659. _ctrl ctrlSetFade 0;
  660. _unit = _this select 0;
  661. while {
  662. (!isNull _unit) && ((player distance _unit) < 1000)
  663. }
  664. do {
  665. if (xxx_fn_esp_weapons1 == 0) exitWith {
  666. arr1 = arr1 - [_unit];
  667. _ctrl ctrlShow false;
  668. _ctrl ctrlEnable false;
  669. };
  670. _pos = [(getPosATL _unit) select 0, (getPosATL _unit) select 1, ((getPosATL _unit) select 2)];
  671. _pos2D = WorldToScreen _pos;
  672. if (count _pos2D > 0) then {
  673. _ctrl ctrlSetPosition[(_pos2D select 0) - (safezoneW / 2), (_pos2D select 1), safezoneW, safezoneH];
  674. _text = parseText format["<t size='0.25' color='#00FC97'>%1 (%2m)</t>", typeOf _unit, round(player distance _unit)];
  675. _ctrl ctrlSetStructuredText _text;
  676. _ctrl ctrlCommit 0;
  677. };
  678. sleep 0.01;
  679. };
  680. arr1 = arr1 - [_unit];
  681. _ctrl ctrlShow false;
  682. _ctrl ctrlEnable false;
  683. };
  684. [] spawn xxx_fn_esp_weapons2;
  685. };
  686. xxx_fn_esp_all_items = {
  687. xxx_fn_esp_all_items2 = {
  688. if (isNil 'xxx_fn_esp_all_items1') then {
  689. xxx_fn_esp_all_items1 = 0;
  690. };
  691. if (xxx_fn_esp_all_items1 == 0) then {
  692. hint "All Items ESP ON";
  693. xxx_fn_esp_all_items1 = 1;
  694. arr2 = [];
  695. while {
  696. xxx_fn_esp_all_items1 == 1
  697. }
  698. do {
  699. _entities = (allMissionObjects "inventorybase"); {
  700. if !(_x in arr2) then {
  701. arr2 = arr2 + [_x];
  702. [_x] spawn xxx_fn_esp_all_items3;
  703. sleep 0.25;
  704. };
  705. }
  706. forEach _entities;
  707. sleep 5;
  708. };
  709. } else {
  710. hint "All Items ESP OFF";
  711. xxx_fn_esp_all_items1 = 0;
  712. };
  713. };
  714. xxx_fn_esp_all_items3 = {
  715. disableSerialization;
  716. if (isNil 'ESP_Count') then {
  717. ESP_Count = 2733;
  718. };
  719. ESP_Count cutRsc['rscDynamicText', 'PLAIN'];
  720. ESP_Count = ESP_Count + 1;
  721. _ctrl = ((uiNamespace getvariable 'BIS_dynamicText') displayctrl 9999);
  722. _ctrl ctrlShow true;
  723. _ctrl ctrlEnable true;
  724. _ctrl ctrlSetFade 0;
  725. _unit = _this select 0;
  726. while {
  727. (!isNull _unit) && ((player distance _unit) < 1000)
  728. }
  729. do {
  730. if (xxx_fn_esp_all_items1 == 0) exitWith {
  731. arr2 = arr2 - [_unit];
  732. _ctrl ctrlShow false;
  733. _ctrl ctrlEnable false;
  734. };
  735. _pos = [(getPosATL _unit) select 0, (getPosATL _unit) select 1, ((getPosATL _unit) select 2)];
  736. _pos2D = WorldToScreen _pos;
  737. if (count _pos2D > 0) then {
  738. _ctrl ctrlSetPosition[(_pos2D select 0) - (safezoneW / 2), (_pos2D select 1), safezoneW, safezoneH];
  739. _text = parseText format["<t size='0.22' color='#00FC97'>%1 (%2m)</t>", typeOf _unit, round(player distance _unit)];
  740. _ctrl ctrlSetStructuredText _text;
  741. _ctrl ctrlCommit 0;
  742. };
  743. sleep 0.01;
  744. };
  745. arr2 = arr2 - [_unit];
  746. _ctrl ctrlShow false;
  747. _ctrl ctrlEnable false;
  748. };
  749. [] spawn xxx_fn_esp_all_items2;
  750. };
  751. xxx_fn_esp_cthulhu = {
  752. xxx_fn_esp_cthulhu2 = {
  753. if (isNil 'xxx_fn_esp_cthulhu1') then {
  754. xxx_fn_esp_cthulhu1 = 0;
  755. };
  756. if (xxx_fn_esp_cthulhu1 == 0) then {
  757. hint "Cthulhu ESP ON";
  758. xxx_fn_esp_cthulhu1 = 1;
  759. xxx_fn_esp_cthulhu5 = [];
  760. while {
  761. xxx_fn_esp_cthulhu1 == 1
  762. }
  763. do {
  764. _entities = (allMissionObjects "highcapacityvest_olive") + (allMissionObjects "ukassvest_khaki") + (allMissionObjects "ukassvest_olive") + (allMissionObjects "smershvestbackpack") + (allMissionObjects "m65_jacket_olive") + (allMissionObjects "smershvest") + (allMissionObjects "wellies_green") + (allMissionObjects "rocketaviators") + (allMissionObjects "m_22_mkii_10rnd"); {
  765. if !(_x in xxx_fn_esp_cthulhu5) then {
  766. xxx_fn_esp_cthulhu5 = xxx_fn_esp_cthulhu5 + [_x];
  767. [_x] spawn xxx_fn_esp_cthulhu3;
  768. sleep 0.25;
  769. };
  770. }
  771. forEach _entities;
  772. sleep 5;
  773. };
  774. } else {
  775. hint "Cthulhu ESP OFF";
  776. xxx_fn_esp_cthulhu1 = 0;
  777. };
  778. };
  779. xxx_fn_esp_cthulhu3 = {
  780. disableSerialization;
  781. if (isNil 'xxx_fn_esp_cthulhu4') then {
  782. xxx_fn_esp_cthulhu4 = 2733;
  783. };
  784. xxx_fn_esp_cthulhu4 cutRsc['rscDynamicText', 'PLAIN'];
  785. xxx_fn_esp_cthulhu4 = xxx_fn_esp_cthulhu4 + 1;
  786. _ctrl = ((uiNamespace getvariable 'BIS_dynamicText') displayctrl 9999);
  787. _ctrl ctrlShow true;
  788. _ctrl ctrlEnable true;
  789. _ctrl ctrlSetFade 0;
  790. _unit = _this select 0;
  791. while {(!isNull _unit) && ((player distance _unit) < 1000)}do {
  792. if (xxx_fn_esp_cthulhu1 == 0) exitWith {
  793. xxx_fn_esp_cthulhu5 = xxx_fn_esp_cthulhu5 - [_unit];
  794. _ctrl ctrlShow false;
  795. _ctrl ctrlEnable false;
  796. };
  797. _pos = [(getPosATL _unit) select 0, (getPosATL _unit) select 1, ((getPosATL _unit) select 2)];
  798. _pos2D = WorldToScreen _pos;
  799. if (count _pos2D > 0) then {
  800. _ctrl ctrlSetPosition[(_pos2D select 0) - (safezoneW / 2), (_pos2D select 1), safezoneW, safezoneH];
  801. _text = parseText format["<t size='0.3' color='#00FC97'>%1 (%2m)</t>", typeOf _unit, round(player distance _unit)];
  802. _ctrl ctrlSetStructuredText _text;
  803. _ctrl ctrlCommit 0;
  804. };
  805. sleep 0.01;
  806. };
  807. xxx_fn_esp_cthulhu5 = xxx_fn_esp_cthulhu5 - [_unit];
  808. _ctrl ctrlShow false;
  809. _ctrl ctrlEnable false;
  810. };
  811. [] spawn xxx_fn_esp_cthulhu2;
  812. };
  813. xxx_fn_esp_sewing_can = {
  814. xxx_fn_esp_sewing_can2 = {
  815. if (isNil 'xxx_fn_esp_sewing_can1') then {
  816. xxx_fn_esp_sewing_can1 = 0;
  817. };
  818. if (xxx_fn_esp_sewing_can1 == 0) then {
  819. hint "Sewing ESP ON";
  820. xxx_fn_esp_sewing_can1 = 1;
  821. xxx_fn_esp_sewing_can5 = [];
  822. while {
  823. xxx_fn_esp_sewing_can1 == 1
  824. }
  825. do {
  826. _entities = (allMissionObjects "tool_sewingkit") + (allMissionObjects "tool_leathersewingkit") + (allMissionObjects "tool_canopener"); {
  827. if !(_x in xxx_fn_esp_sewing_can5) then {
  828. xxx_fn_esp_sewing_can5 = xxx_fn_esp_sewing_can5 + [_x];
  829. [_x] spawn xxx_fn_esp_sewing_can3;
  830. sleep 0.25;
  831. };
  832. }
  833. forEach _entities;
  834. sleep 5;
  835. };
  836. } else {
  837. hint "Sewing ESP OFF";
  838. xxx_fn_esp_sewing_can1 = 0;
  839. };
  840. };
  841. xxx_fn_esp_sewing_can3 = {
  842. disableSerialization;
  843. if (isNil 'xxx_fn_esp_sewing_can4') then {
  844. xxx_fn_esp_sewing_can4 = 2733;
  845. };
  846. xxx_fn_esp_sewing_can4 cutRsc['rscDynamicText', 'PLAIN'];
  847. xxx_fn_esp_sewing_can4 = xxx_fn_esp_sewing_can4 + 1;
  848. _ctrl = ((uiNamespace getvariable 'BIS_dynamicText') displayctrl 9999);
  849. _ctrl ctrlShow true;
  850. _ctrl ctrlEnable true;
  851. _ctrl ctrlSetFade 0;
  852. _unit = _this select 0;
  853. while {
  854. (!isNull _unit) && ((player distance _unit) < 1000)
  855. }
  856. do {
  857. if (xxx_fn_esp_sewing_can1 == 0) exitWith {
  858. xxx_fn_esp_sewing_can5 = xxx_fn_esp_sewing_can5 - [_unit];
  859. _ctrl ctrlShow false;
  860. _ctrl ctrlEnable false;
  861. };
  862. _pos = [(getPosATL _unit) select 0, (getPosATL _unit) select 1, ((getPosATL _unit) select 2)];
  863. _pos2D = WorldToScreen _pos;
  864. if (count _pos2D > 0) then {
  865. _ctrl ctrlSetPosition[(_pos2D select 0) - (safezoneW / 2), (_pos2D select 1), safezoneW, safezoneH];
  866. _text = parseText format["<t size='0.25' color='#00FC97'>%1 (%2m)</t>", typeOf _unit, round(player distance _unit)];
  867. _ctrl ctrlSetStructuredText _text;
  868. _ctrl ctrlCommit 0;
  869. };
  870. sleep 0.01;
  871. };
  872. xxx_fn_esp_sewing_can5 = xxx_fn_esp_sewing_can5 - [_unit];
  873. _ctrl ctrlShow false;
  874. _ctrl ctrlEnable false;
  875. };
  876. [] spawn xxx_fn_esp_sewing_can2;
  877. };
  878. xxx_fn_esp_tents_veh_prt = {
  879. xxx_fn_esp_tents_veh_prt2 = {
  880. if (isNil 'xxx_fn_esp_tents_veh_prt1') then {
  881. xxx_fn_esp_tents_veh_prt1 = 0;
  882. };
  883. if (xxx_fn_esp_tents_veh_prt1 == 0) then {
  884. hint "Tent ESP ON";
  885. xxx_fn_esp_tents_veh_prt1 = 1;
  886. xxx_fn_esp_tents_veh_prt5 = [];
  887. while {
  888. xxx_fn_esp_tents_veh_prt1 == 1
  889. }
  890. do {
  891. _entities = (allMissionObjects "TentMedium_Pitched") + (allMissionObjects "TentLarge_Pitched") + (allMissionObjects "TentMedium_Packed") + (allMissionObjects "TentLarge_Backpack") + (allMissionObjects "VehiclePartsBase") + (allMissionObjects "part_sparkplug") + (allMissionObjects "part_exhausttruck") + (allMissionObjects "part_canistergasoline") + (allMissionObjects "part_glowplug") + (allMissionObjects "part_batterytruck");
  892. {
  893. if !(_x in xxx_fn_esp_tents_veh_prt5) then {
  894. xxx_fn_esp_tents_veh_prt5 = xxx_fn_esp_tents_veh_prt5 + [_x];
  895. [_x] spawn xxx_fn_esp_tents_veh_prt3;
  896. sleep 0.25;
  897. };
  898. }
  899. forEach _entities;
  900. sleep 5;
  901. };
  902. } else {
  903. hint "Tent ESP OFF";
  904. xxx_fn_esp_tents_veh_prt1 = 0;
  905. };
  906. };
  907. xxx_fn_esp_tents_veh_prt3 = {
  908. disableSerialization;
  909. if (isNil 'xxx_fn_esp_tents_veh_prt4') then {
  910. xxx_fn_esp_tents_veh_prt4 = 2733;
  911. };
  912. xxx_fn_esp_tents_veh_prt4 cutRsc['rscDynamicText', 'PLAIN'];
  913. xxx_fn_esp_tents_veh_prt4 = xxx_fn_esp_tents_veh_prt4 + 1;
  914. _ctrl = ((uiNamespace getvariable 'BIS_dynamicText') displayctrl 9999);
  915. _ctrl ctrlShow true;
  916. _ctrl ctrlEnable true;
  917. _ctrl ctrlSetFade 0;
  918. _unit = _this select 0;
  919. while {
  920. (!isNull _unit) && ((player distance _unit) < 1000)
  921. }
  922. do {
  923. if (xxx_fn_esp_tents_veh_prt1 == 0) exitWith {
  924. xxx_fn_esp_tents_veh_prt5 = xxx_fn_esp_tents_veh_prt5 - [_unit];
  925. _ctrl ctrlShow false;
  926. _ctrl ctrlEnable false;
  927. };
  928. _pos = [(getPosATL _unit) select 0, (getPosATL _unit) select 1, ((getPosATL _unit) select 2)];
  929. _pos2D = WorldToScreen _pos;
  930. if (count _pos2D > 0) then {
  931. _ctrl ctrlSetPosition[(_pos2D select 0) - (safezoneW / 2), (_pos2D select 1), safezoneW, safezoneH];
  932. _text = parseText format["<t size='0.25' color='#00FC97'>%1 (%2m)</t>", typeOf _unit, round(player distance _unit)];
  933. _ctrl ctrlSetStructuredText _text;
  934. _ctrl ctrlCommit 0;
  935. };
  936. sleep 0.01;
  937. };
  938. xxx_fn_esp_tents_veh_prt5 = xxx_fn_esp_tents_veh_prt5 - [_unit];
  939. _ctrl ctrlShow false;
  940. _ctrl ctrlEnable false;
  941. };
  942. [] spawn xxx_fn_esp_tents_veh_prt2;
  943. };
  944. xxx_fn_esp_helis = {
  945. xxx_fn_esp_helis1 = {
  946. tardis2 = 1000;
  947. if (isNil 'xxx_fn_esp_helis2') then {
  948. xxx_fn_esp_helis2 = 0;
  949. };
  950. if (xxx_fn_esp_helis2 == 0) then {
  951. xxx_fn_esp_helis2 = 1;
  952. hint "Heli ESP ON";
  953. _a = [];
  954. while {
  955. xxx_fn_esp_helis2 == 1
  956. }
  957. do {
  958. _entities = (positionCameraToWorld[0, 0, 0]) nearObjects 1000;
  959. _count = count _entities; {
  960. if (((_x in _a)) or((_x in _a) && ((positionCameraToWorld[0, 0, 0] distance _x) > tardis2))) then {
  961. _a = _a - [_x];
  962. };
  963. if ((typeof _x == "land_mh_60wreck") or(typeof _x == "Land_Mi8_Crashed") or(typeof _x == "Land_UH1Y_Wreck") && ((positionCameraToWorld[0, 0, 0] distance _x) <= tardis2)) then {
  964. _a = _a + [_x];
  965. [_x] spawn xxx_fn_esp_helis3;
  966. sleep 1;
  967. };
  968. }
  969. forEach _entities;
  970. sleep 2;
  971. };
  972. } else {
  973. xxx_fn_esp_helis2 = 0;
  974. hint "Heli ESP OFF";
  975. };
  976. };
  977. xxx_fn_esp_helis3 = {
  978. disableSerialization;
  979. if (isNil 'xxx_fn_esp_helis4') then {
  980. xxx_fn_esp_helis4 = 2733;
  981. };
  982. xxx_fn_esp_helis4 cutRsc['RscTime', 'PLAIN'];
  983. xxx_fn_esp_helis4 = xxx_fn_esp_helis4 + 1;
  984. _ctrl = ((uiNamespace getvariable 'BIS_InfoTime') displayctrl 112301);
  985. _ctrl ctrlShow true;
  986. _ctrl ctrlEnable true;
  987. _ctrl ctrlSetFade 0;
  988. _unit = _this select 0;
  989. while {
  990. ((positionCameraToWorld[0, 0, 0] distance _unit) < tardis2)
  991. }
  992. do {
  993. if (xxx_fn_esp_helis2 == 0) exitWith {
  994. _ctrl ctrlShow false;
  995. _ctrl ctrlEnable false;
  996. };
  997. _pos = [(getPosATL _unit) select 0, (getPosATL _unit) select 1, ((getPosATL _unit) select 2) + 2];
  998. _pos2D = WorldToScreen _pos;
  999. if ((count _pos2D > 0)) then {
  1000. _ctrl ctrlSetPosition[(_pos2D select 0) - (safezoneW / 2), (_pos2D select 1), safezoneW, safezoneH];
  1001. _text = parseText format['<t size=''0.5'' color=''#0D00FF''>%1</t>', "Heli Crash"];
  1002. _ctrl ctrlSetStructuredText _text;
  1003. _ctrl ctrlCommit 0;
  1004. };
  1005. sleep 0.05;
  1006. };
  1007. _ctrl ctrlShow false;
  1008. _ctrl ctrlEnable false;
  1009. };
  1010. [] spawn xxx_fn_esp_helis1;
  1011. };
  1012. xxx_fnc_esp_bodies = {
  1013. xxx_fnc_esp_bodies1 = {
  1014. tarDis2 = 1000;
  1015. if (isNil 'xxx_fnc_esp_bodies3') then {
  1016. xxx_fnc_esp_bodies3 = 0;
  1017. };
  1018. if (xxx_fnc_esp_bodies3 == 0) then {
  1019. xxx_fnc_esp_bodies3 = 1;
  1020. hint "Body ESP ON";
  1021. _a = [];
  1022. while {
  1023. xxx_fnc_esp_bodies3 == 1
  1024. }
  1025. do {
  1026. _entities = (positionCameraToWorld[0, 0, 0] nearObjects["SurvivorBase", 1050]);
  1027. _count = count _entities; {
  1028. if (((_x in _a) && (alive _x)) or((_x in _a) && ((positionCameraToWorld[0, 0, 0] distance _x) > tarDis2))) then {
  1029. _a = _a - [_x];
  1030. };
  1031. if ((_x != player) && (name _x != '') && !(_x in _a) && (name _X == "UnKnown Entity") && ((positionCameraToWorld[0, 0, 0] distance _x) <= tarDis2)) then {
  1032. _a = _a + [_x];
  1033. [_x] spawn xxx_fnc_esp_bodies2;
  1034. sleep 1;
  1035. };
  1036. }
  1037. forEach _entities;
  1038. sleep 10;
  1039. };
  1040. } else {
  1041. xxx_fnc_esp_bodies3 = 0;
  1042. hint "Body ESP OFF";
  1043. };
  1044. };
  1045. xxx_fnc_esp_bodies2 = {
  1046. disableSerialization;
  1047. if (isNil 'xxx_fnc_esp_bodies4') then {
  1048. xxx_fnc_esp_bodies4 = 2733;
  1049. };
  1050. xxx_fnc_esp_bodies4 cutRsc['RscDynamicText', 'PLAIN'];
  1051. xxx_fnc_esp_bodies4 = xxx_fnc_esp_bodies4 + 1;
  1052. _ctrl = ((uiNamespace getvariable 'BIS_dynamicText') displayctrl 9999);
  1053. _ctrl ctrlShow true;
  1054. _ctrl ctrlEnable true;
  1055. _ctrl ctrlSetFade 0;
  1056. _unit = _this select 0;
  1057. while {
  1058. !(alive _unit) && ((positionCameraToWorld[0, 0, 0] distance _unit) < tarDis2)
  1059. }
  1060. do {
  1061. if (xxx_fnc_esp_bodies3 == 0) exitWith {
  1062. _ctrl ctrlShow false;
  1063. _ctrl ctrlEnable false;
  1064. };
  1065. _pos = [(getPosATL _unit) select 0, (getPosATL _unit) select 1, ((getPosATL _unit) select 2) + 2];
  1066. _pos2D = WorldToScreen _pos;
  1067. _hand = primaryWeapon _unit;
  1068. _wName = getText(configFile >> "cfgWeapons" >> _hand >> "displayName");
  1069. if (_wName == "") then {
  1070. _wName = typeof itemInHands _unit;
  1071. };
  1072. if ((count _pos2D > 0) && (name _unit == "UnKnown Entity")) then {
  1073. _ctrl ctrlSetPosition[(_pos2D select 0) - (safezoneW / 2), (_pos2D select 1), safezoneW, safezoneH];
  1074. _text = parseText format['<t size=''0.35'' color=''#ff0000''>Body (%1m) <br/>Wep: %2</t>', round(positionCameraToWorld[0, 0, 0] distance _unit), _wName];
  1075. _ctrl ctrlSetStructuredText _text;
  1076. _ctrl ctrlCommit 0;
  1077. };
  1078. sleep 0.05;
  1079. };
  1080. _ctrl ctrlShow false;
  1081. _ctrl ctrlEnable false;
  1082. };
  1083. [] spawn xxx_fnc_esp_bodies1;
  1084. };
  1085. xxx_fn_esp_zombies = {
  1086. xxx_fn_esp_zombies2 = {
  1087. if (isNil 'xxx_fn_esp_zombies1') then {
  1088. xxx_fn_esp_zombies1 = 0;
  1089. };
  1090. if (xxx_fn_esp_zombies1 == 0) then {
  1091. hint "Zombie ESP ON";
  1092. xxx_fn_esp_zombies1 = 1;
  1093. _a = [];
  1094. while {
  1095. xxx_fn_esp_zombies1 == 1
  1096. }
  1097. do {
  1098. _entities = (getpos player) nearObjects["ZombieBase", 850]; {
  1099. if ((_x in _a) && !(alive _x)) then {
  1100. _a = _a - [_x];
  1101. };
  1102. if ((_x != player) && !(_x in _a)) then {
  1103. _a = _a + [_x];
  1104. [_x] spawn xxx_fn_esp_zombies3;
  1105. sleep 0.25;
  1106. };
  1107. }
  1108. forEach _entities;
  1109. sleep 5;
  1110. };
  1111. } else {
  1112. hint "Zombie ESP OFF";
  1113. xxx_fn_esp_zombies1 = 0;
  1114. };
  1115. };
  1116. xxx_fn_esp_zombies3 = {
  1117. disableSerialization;
  1118. if (isNil 'xxx_fn_esp_zombies4') then {
  1119. xxx_fn_esp_zombies4 = 2733;
  1120. };
  1121. xxx_fn_esp_zombies4 cutRsc['rscDynamicText', 'PLAIN'];
  1122. xxx_fn_esp_zombies4 = xxx_fn_esp_zombies4 + 1;
  1123. _ctrl = ((uiNamespace getvariable 'BIS_dynamicText') displayctrl 9999);
  1124. _ctrl ctrlShow true;
  1125. _ctrl ctrlEnable true;
  1126. _ctrl ctrlSetFade 0;
  1127. _unit = _this select 0;
  1128. while {
  1129. (alive _unit) && !(isNull _unit)
  1130. }
  1131. do {
  1132. if (xxx_fn_esp_zombies1 == 0) exitWith {
  1133. _ctrl ctrlShow false;
  1134. _ctrl ctrlEnable false;
  1135. };
  1136. _pos = [(getPosATL _unit) select 0, (getPosATL _unit) select 1, ((getPosATL _unit) select 2) + 2];
  1137. _pos2D = WorldToScreen _pos;
  1138. if (count _pos2D > 0) then {
  1139. _ctrl ctrlSetPosition[(_pos2D select 0) - (safezoneW / 2), (_pos2D select 1), safezoneW, safezoneH];
  1140. _text = parseText format['<t size=''0.2'' color=''#FCFF00''>%1 (Range:%2m)</t>', "Zombie", round(player distance _unit)];
  1141. _ctrl ctrlSetStructuredText _text;
  1142. _ctrl ctrlCommit 0;
  1143. };
  1144. sleep 0.01;
  1145. };
  1146. _ctrl ctrlShow false;
  1147. _ctrl ctrlEnable false;
  1148. };
  1149. [] spawn xxx_fn_esp_zombies2;
  1150. };
  1151. xxx_fn_esp_food_drink = {
  1152. xxx_fn_esp_food_drink3 = {
  1153. if (isNil 'xxx_fn_esp_food_drink1') then {
  1154. xxx_fn_esp_food_drink1 = 0;
  1155. };
  1156. if (xxx_fn_esp_food_drink1 == 0) then {
  1157.  
  1158. hint "Food and Drink ESP ON";
  1159. xxx_fn_esp_food_drink1 = 1;
  1160. arr1 = [];
  1161. while {
  1162. xxx_fn_esp_food_drink1 == 1
  1163. }
  1164. do {
  1165. _entities = (player nearObjects["DrinksItemBase", 1000]) + (player nearObjects["FoodItemBase", 1000]) + (player nearObjects["FoodCanned", 1000]) + (player nearObjects["FoodCanned_Closed", 1000]) + (player nearObjects["FruitBase", 1000]) + (player nearObjects["MeatBase ", 1000]) + (player nearObjects["berrybase", 1000]); {
  1166. if !(_x in arr1) then {
  1167.  
  1168. arr1 = arr1 + [_x];
  1169. [_x] spawn xxx_fn_esp_food_drink2;
  1170. sleep 0.25;
  1171. };
  1172. }
  1173. forEach _entities;
  1174. sleep 5;
  1175. };
  1176. } else {
  1177. hint "Food and Drink ESP OFF";
  1178. xxx_fn_esp_food_drink1 = 0;
  1179. };
  1180. };
  1181.  
  1182. xxx_fn_esp_food_drink2 = {
  1183. disableSerialization;
  1184. if (isNil 'xxx_fn_esp_food_drink4') then {
  1185. xxx_fn_esp_food_drink4 = 2833;
  1186. };
  1187. xxx_fn_esp_food_drink4 cutRsc['rscDynamicText', 'PLAIN'];
  1188. xxx_fn_esp_food_drink4 = xxx_fn_esp_food_drink4 + 1;
  1189. _ctrl = ((uiNamespace getvariable 'BIS_dynamicText') displayctrl 9999);
  1190. _ctrl ctrlShow true;
  1191. _ctrl ctrlEnable true;
  1192. _ctrl ctrlSetFade 0;
  1193. _unit = _this select 0;
  1194. while {
  1195. (!isNull _unit) && ((player distance _unit) < 1000)
  1196. }
  1197. do {
  1198. if (xxx_fn_esp_food_drink1 == 0) exitWith {
  1199. arr1 = arr1 - [_unit];
  1200. };
  1201. _pos = [(getPosATL _unit) select 0, (getPosATL _unit) select 1, ((getPosATL _unit) select 2)];
  1202. _pos2D = WorldToScreen _pos;
  1203. if (count _pos2D > 0) then {
  1204. _ctrl ctrlSetPosition[(_pos2D select 0) - (safezoneW / 2), (_pos2D select 1), safezoneW, safezoneH];
  1205. _text = parseText format["<t size='0.2' color='#00FC97'>%1 (%2m)</t>", typeOf _unit, round(player distance _unit)];
  1206. _ctrl ctrlSetStructuredText _text;
  1207. _ctrl ctrlCommit 0;
  1208. };
  1209. sleep 0.01;
  1210. };
  1211. arr1 = arr1 - [_unit];
  1212. _ctrl ctrlShow false;
  1213. _ctrl ctrlEnable false;
  1214. };
  1215. [] spawn xxx_fn_esp_food_drink3;
  1216. };
  1217. xxx_fn_esp_ammo = {
  1218. xxx_fn_esp_ammo2 = {
  1219. if (isNil 'xxx_fn_esp_ammo1') then {
  1220. xxx_fn_esp_ammo1 = 0;
  1221. };
  1222. if (xxx_fn_esp_ammo1 == 0) then {
  1223. hint "Ammo ESP ON";
  1224. xxx_fn_esp_ammo1 = 1;
  1225. xxx_fn_esp_ammo4 = [];
  1226. while {
  1227. xxx_fn_esp_ammo1 == 1
  1228. }
  1229. do {
  1230. _entities = (allMissionObjects "MagazineBase") + (allMissionObjects "AmmunitionItemBase") + (allMissionObjects "AmmunitionBoxItemBase") + (allMissionObjects "ArrowsBase"); {
  1231. if !(_x in xxx_fn_esp_ammo4) then {
  1232. xxx_fn_esp_ammo4 = xxx_fn_esp_ammo4 + [_x];
  1233. [_x] spawn xxx_fn_esp_ammo3;
  1234. sleep 0.25;
  1235. };
  1236. }
  1237. forEach _entities;
  1238. sleep 5;
  1239. };
  1240. } else {
  1241. hint "Ammo ESP OFF";
  1242. xxx_fn_esp_ammo1 = 0;
  1243. };
  1244. };
  1245. xxx_fn_esp_ammo3 = {
  1246. disableSerialization;
  1247. if (isNil 'xxx_fn_esp_ammo5') then {
  1248. xxx_fn_esp_ammo5 = 2733;
  1249. };
  1250. xxx_fn_esp_ammo5 cutRsc['rscDynamicText', 'PLAIN'];
  1251. xxx_fn_esp_ammo5 = xxx_fn_esp_ammo5 + 1;
  1252. _ctrl = ((uiNamespace getvariable 'BIS_dynamicText') displayctrl 9999);
  1253. _ctrl ctrlShow true;
  1254. _ctrl ctrlEnable true;
  1255. _ctrl ctrlSetFade 0;
  1256. _unit = _this select 0;
  1257. while {
  1258. (!isNull _unit) && ((player distance _unit) < 1000)
  1259. }
  1260. do {
  1261. if (xxx_fn_esp_ammo1 == 0) exitWith {
  1262. xxx_fn_esp_ammo4 = xxx_fn_esp_ammo4 - [_unit];
  1263. _ctrl ctrlShow false;
  1264. _ctrl ctrlEnable false;
  1265. };
  1266. _pos = [(getPosATL _unit) select 0, (getPosATL _unit) select 1, ((getPosATL _unit) select 2)];
  1267. _pos2D = WorldToScreen _pos;
  1268. if (count _pos2D > 0) then {
  1269. _ctrl ctrlSetPosition[(_pos2D select 0) - (safezoneW / 2), (_pos2D select 1), safezoneW, safezoneH];
  1270. _text = parseText format["<t size='0.25' color='#00FC97'>%1 (%2m)</t>", typeOf _unit, round(player distance _unit)];
  1271. _ctrl ctrlSetStructuredText _text;
  1272. _ctrl ctrlCommit 0;
  1273. };
  1274. sleep 0.01;
  1275. };
  1276. xxx_fn_esp_ammo4 = xxx_fn_esp_ammo4 - [_unit];
  1277. _ctrl ctrlShow false;
  1278. _ctrl ctrlEnable false;
  1279. };
  1280. [] spawn xxx_fn_esp_ammo2;
  1281. };
  1282. xxx_fn_esp_attachments = {
  1283. xxx_fn_esp_attachments2 = {
  1284. if (isNil 'xxx_fn_esp_attachments1') then {
  1285. xxx_fn_esp_attachments1 = 0;
  1286. };
  1287. if (xxx_fn_esp_attachments1 == 0) then {
  1288. hint "Attachment ESP ON";
  1289. xxx_fn_esp_attachments1 = 1;
  1290. xxx_fn_esp_attachments5 = [];
  1291. while {
  1292. xxx_fn_esp_attachments1 == 1
  1293. }
  1294. do {
  1295. _entities = (allMissionObjects "AttachmentBase") + (allMissionObjects "SuppressorBase") + (allMissionObjects "PoweredOpticBase"); {
  1296. if !(_x in xxx_fn_esp_attachments5) then {
  1297. xxx_fn_esp_attachments5 = xxx_fn_esp_attachments5 + [_x];
  1298. [_x] spawn xxx_fn_esp_attachments3;
  1299. sleep 0.25;
  1300. };
  1301. }
  1302. forEach _entities;
  1303. sleep 5;
  1304. };
  1305. } else {
  1306. hint "Attachment ESP OFF";
  1307. xxx_fn_esp_attachments1 = 0;
  1308. };
  1309. };
  1310. xxx_fn_esp_attachments3 = {
  1311. disableSerialization;
  1312. if (isNil 'xxx_fn_esp_attachments4') then {
  1313. xxx_fn_esp_attachments4 = 2733;
  1314. };
  1315. xxx_fn_esp_attachments4 cutRsc['rscDynamicText', 'PLAIN'];
  1316. xxx_fn_esp_attachments4 = xxx_fn_esp_attachments4 + 1;
  1317. _ctrl = ((uiNamespace getvariable 'BIS_dynamicText') displayctrl 9999);
  1318. _ctrl ctrlShow true;
  1319. _ctrl ctrlEnable true;
  1320. _ctrl ctrlSetFade 0;
  1321. _unit = _this select 0;
  1322. while {
  1323. (!isNull _unit) && ((player distance _unit) < 1000)
  1324. }
  1325. do {
  1326. if (xxx_fn_esp_attachments1 == 0) exitWith {
  1327. xxx_fn_esp_attachments5 = xxx_fn_esp_attachments5 - [_unit];
  1328. _ctrl ctrlShow false;
  1329. _ctrl ctrlEnable false;
  1330. };
  1331. _pos = [(getPosATL _unit) select 0, (getPosATL _unit) select 1, ((getPosATL _unit) select 2)];
  1332. _pos2D = WorldToScreen _pos;
  1333. if (count _pos2D > 0) then {
  1334. _ctrl ctrlSetPosition[(_pos2D select 0) - (safezoneW / 2), (_pos2D select 1), safezoneW, safezoneH];
  1335. _text = parseText format["<t size='0.25' color='#00FC97'>%1 (%2m)</t>", typeOf _unit, round(player distance _unit)];
  1336. _ctrl ctrlSetStructuredText _text;
  1337. _ctrl ctrlCommit 0;
  1338. };
  1339. sleep 0.01;
  1340. };
  1341. xxx_fn_esp_attachments5 = xxx_fn_esp_attachments5 - [_unit];
  1342. _ctrl ctrlShow false;
  1343. _ctrl ctrlEnable false;
  1344. };
  1345. [] spawn xxx_fn_esp_attachments2;
  1346. };
  1347. xxx_fn_esp_backpacks_vests = {
  1348. xxx_fn_esp_backpacks_vests2 = {
  1349. if (isNil 'xxx_fn_esp_backpacks_vests1') then {
  1350. xxx_fn_esp_backpacks_vests1 = 0;
  1351. };
  1352. if (xxx_fn_esp_backpacks_vests1 == 0) then {
  1353. hint "BackPack ESP ON";
  1354. xxx_fn_esp_backpacks_vests1 = 1;
  1355. xxx_fn_esp_backpacks_vests5 = [];
  1356. while {
  1357. xxx_fn_esp_backpacks_vests1 == 1
  1358. }
  1359. do {
  1360. _entities = (allMissionObjects "BagBase") + (allMissionObjects "VestBase");
  1361. {
  1362. if !(_x in xxx_fn_esp_backpacks_vests5) then {
  1363. xxx_fn_esp_backpacks_vests5 = xxx_fn_esp_backpacks_vests5 + [_x];
  1364. [_x] spawn xxx_fn_esp_backpacks_vests3;
  1365. sleep 0.25;
  1366. };
  1367. }
  1368. forEach _entities;
  1369. sleep 5;
  1370. };
  1371. } else {
  1372. hint "BackPack ESP OFF";
  1373. xxx_fn_esp_backpacks_vests1 = 0;
  1374. };
  1375. };
  1376. xxx_fn_esp_backpacks_vests3 = {
  1377. disableSerialization;
  1378. if (isNil 'xxx_fn_esp_backpacks_vests4') then {
  1379. xxx_fn_esp_backpacks_vests4 = 2733;
  1380. };
  1381. xxx_fn_esp_backpacks_vests4 cutRsc['rscDynamicText', 'PLAIN'];
  1382. xxx_fn_esp_backpacks_vests4 = xxx_fn_esp_backpacks_vests4 + 1;
  1383. _ctrl = ((uiNamespace getvariable 'BIS_dynamicText') displayctrl 9999);
  1384. _ctrl ctrlShow true;
  1385. _ctrl ctrlEnable true;
  1386. _ctrl ctrlSetFade 0;
  1387. _unit = _this select 0;
  1388. while {
  1389. (!isNull _unit) && ((player distance _unit) < 1000)
  1390. }
  1391. do {
  1392. if (xxx_fn_esp_backpacks_vests1 == 0) exitWith {
  1393. xxx_fn_esp_backpacks_vests5 = xxx_fn_esp_backpacks_vests5 - [_unit];
  1394. _ctrl ctrlShow false;
  1395. _ctrl ctrlEnable false;
  1396. };
  1397. _pos = [(getPosATL _unit) select 0, (getPosATL _unit) select 1, ((getPosATL _unit) select 2)];
  1398. _pos2D = WorldToScreen _pos;
  1399. if (count _pos2D > 0) then {
  1400. _ctrl ctrlSetPosition[(_pos2D select 0) - (safezoneW / 2), (_pos2D select 1), safezoneW, safezoneH];
  1401. _text = parseText format["<t size='0.25' color='#00FC97'>%1 (%2m)</t>", typeOf _unit, round(player distance _unit)];
  1402. _ctrl ctrlSetStructuredText _text;
  1403. _ctrl ctrlCommit 0;
  1404. };
  1405. sleep 0.01;
  1406. };
  1407. xxx_fn_esp_backpacks_vests5 = xxx_fn_esp_backpacks_vests5 - [_unit];
  1408. _ctrl ctrlShow false;
  1409. _ctrl ctrlEnable false;
  1410. };
  1411. [] spawn xxx_fn_esp_backpacks_vests2;
  1412. };
  1413. xxx_fn_esp_all_clothing = {
  1414. xxx_fn_esp_all_clothing2 = {
  1415. if (isNil 'xxx_fn_esp_all_clothing1') then {
  1416. xxx_fn_esp_all_clothing1 = 0;
  1417. };
  1418. if (xxx_fn_esp_all_clothing1 == 0) then {
  1419. hint "Clothing ESP ON";
  1420. xxx_fn_esp_all_clothing1 = 1;
  1421. xxx_fn_esp_all_clothing5 = [];
  1422. while {
  1423. xxx_fn_esp_all_clothing1 == 1
  1424. }
  1425. do {
  1426. _entities = (allMissionObjects "ClothingBase") + (allMissionObjects "EyewearBase") + (allMissionObjects "Consumable_BandanaBase"); {
  1427. if !(_x in xxx_fn_esp_all_clothing5) then {
  1428. xxx_fn_esp_all_clothing5 = xxx_fn_esp_all_clothing5 + [_x];
  1429. [_x] spawn xxx_fn_esp_all_clothing3;
  1430. sleep 0.25;
  1431. };
  1432. }
  1433. forEach _entities;
  1434. sleep 5;
  1435. };
  1436. } else {
  1437. hint "Clothing ESP OFF";
  1438. xxx_fn_esp_all_clothing1 = 0;
  1439. };
  1440. };
  1441. xxx_fn_esp_all_clothing3 = {
  1442. disableSerialization;
  1443. if (isNil 'xxx_fn_esp_all_clothing4') then {
  1444. xxx_fn_esp_all_clothing4 = 2733;
  1445. };
  1446. xxx_fn_esp_all_clothing4 cutRsc['rscDynamicText', 'PLAIN'];
  1447. xxx_fn_esp_all_clothing4 = xxx_fn_esp_all_clothing4 + 1;
  1448. _ctrl = ((uiNamespace getvariable 'BIS_dynamicText') displayctrl 9999);
  1449. _ctrl ctrlShow true;
  1450. _ctrl ctrlEnable true;
  1451. _ctrl ctrlSetFade 0;
  1452. _unit = _this select 0;
  1453. while {
  1454. (!isNull _unit) && ((player distance _unit) < 1000)
  1455. }
  1456. do {
  1457. if (xxx_fn_esp_all_clothing1 == 0) exitWith {
  1458. xxx_fn_esp_all_clothing5 = xxx_fn_esp_all_clothing5 - [_unit];
  1459. _ctrl ctrlShow false;
  1460. _ctrl ctrlEnable false;
  1461. };
  1462. _pos = [(getPosATL _unit) select 0, (getPosATL _unit) select 1, ((getPosATL _unit) select 2)];
  1463. _pos2D = WorldToScreen _pos;
  1464. if (count _pos2D > 0) then {
  1465. _ctrl ctrlSetPosition[(_pos2D select 0) - (safezoneW / 2), (_pos2D select 1), safezoneW, safezoneH];
  1466. _text = parseText format["<t size='0.25' color='#00FC97'>%1 (%2m)</t>", typeOf _unit, round(player distance _unit)];
  1467. _ctrl ctrlSetStructuredText _text;
  1468. _ctrl ctrlCommit 0;
  1469. };
  1470. sleep 0.01;
  1471. };
  1472. xxx_fn_esp_all_clothing5 = xxx_fn_esp_all_clothing5 - [_unit];
  1473. _ctrl ctrlShow false;
  1474. _ctrl ctrlEnable false;
  1475. };
  1476. [] spawn xxx_fn_esp_all_clothing2;
  1477. };
  1478. xxx_fn_esp_eyewear_mask = {
  1479. xxx_fn_esp_eyewear_mask2 = {
  1480. if (isNil 'xxx_fn_esp_eyewear_mask1') then {
  1481. xxx_fn_esp_eyewear_mask1 = 0;
  1482. };
  1483. if (xxx_fn_esp_eyewear_mask1 == 0) then {
  1484. hint "Eyewear ESP ON";
  1485. xxx_fn_esp_eyewear_mask1 = 1;
  1486. xxx_fn_esp_eyewear_mask5 = [];
  1487. while {
  1488. xxx_fn_esp_eyewear_mask1 == 1
  1489. }
  1490. do {
  1491. _entities = (allMissionObjects "EyewearBase") + (allMissionObjects "MaskBase");
  1492. {
  1493. if !(_x in xxx_fn_esp_eyewear_mask5) then {
  1494. xxx_fn_esp_eyewear_mask5 = xxx_fn_esp_eyewear_mask5 + [_x];
  1495. [_x] spawn xxx_fn_esp_eyewear_mask3;
  1496. sleep 0.25;
  1497. };
  1498. }
  1499. forEach _entities;
  1500. sleep 5;
  1501. };
  1502. } else {
  1503. hint "Eyewear ESP OFF";
  1504. xxx_fn_esp_eyewear_mask1 = 0;
  1505. };
  1506. };
  1507. xxx_fn_esp_eyewear_mask3 = {
  1508. disableSerialization;
  1509. if (isNil 'xxx_fn_esp_eyewear_mask4') then {
  1510. xxx_fn_esp_eyewear_mask4 = 2733;
  1511. };
  1512. xxx_fn_esp_eyewear_mask4 cutRsc['rscDynamicText', 'PLAIN'];
  1513. xxx_fn_esp_eyewear_mask4 = xxx_fn_esp_eyewear_mask4 + 1;
  1514. _ctrl = ((uiNamespace getvariable 'BIS_dynamicText') displayctrl 9999);
  1515. _ctrl ctrlShow true;
  1516. _ctrl ctrlEnable true;
  1517. _ctrl ctrlSetFade 0;
  1518. _unit = _this select 0;
  1519. while {
  1520. (!isNull _unit) && ((player distance _unit) < 1000)
  1521. }
  1522. do {
  1523. if (xxx_fn_esp_eyewear_mask1 == 0) exitWith {
  1524. xxx_fn_esp_eyewear_mask5 = xxx_fn_esp_eyewear_mask5 - [_unit];
  1525. _ctrl ctrlShow false;
  1526. _ctrl ctrlEnable false;
  1527. };
  1528. _pos = [(getPosATL _unit) select 0, (getPosATL _unit) select 1, ((getPosATL _unit) select 2)];
  1529. _pos2D = WorldToScreen _pos;
  1530. if (count _pos2D > 0) then {
  1531. _ctrl ctrlSetPosition[(_pos2D select 0) - (safezoneW / 2), (_pos2D select 1), safezoneW, safezoneH];
  1532. _text = parseText format["<t size='0.25' color='#00FC97'>%1 (%2m)</t>", typeOf _unit, round(player distance _unit)];
  1533. _ctrl ctrlSetStructuredText _text;
  1534. _ctrl ctrlCommit 0;
  1535. };
  1536. sleep 0.01;
  1537. };
  1538. xxx_fn_esp_eyewear_mask5 = xxx_fn_esp_eyewear_mask5 - [_unit];
  1539. _ctrl ctrlShow false;
  1540. _ctrl ctrlEnable false;
  1541. };
  1542. [] spawn xxx_fn_esp_eyewear_mask2;
  1543. };
  1544. xxx_fn_esp_headgear = {
  1545. xxx_fn_esp_headgear2 = {
  1546. if (isNil 'xxx_fn_esp_headgear1') then {
  1547. xxx_fn_esp_headgear1 = 0;
  1548. };
  1549. if (xxx_fn_esp_headgear1 == 0) then {
  1550. hint "Headgear ESP ON";
  1551. xxx_fn_esp_headgear1 = 1;
  1552. xxx_fn_esp_headgear5 = [];
  1553. while {
  1554. xxx_fn_esp_headgear1 == 1
  1555. }
  1556. do {
  1557. _entities = (allMissionObjects "HeadgearBase"); {
  1558. if !(_x in xxx_fn_esp_headgear5) then {
  1559. xxx_fn_esp_headgear5 = xxx_fn_esp_headgear5 + [_x];
  1560. [_x] spawn xxx_fn_esp_headgear3;
  1561. sleep 0.25;
  1562. };
  1563. }
  1564. forEach _entities;
  1565. sleep 5;
  1566. };
  1567. } else {
  1568. hint "Headgear ESP OFF";
  1569. xxx_fn_esp_headgear1 = 0;
  1570. };
  1571. };
  1572. xxx_fn_esp_headgear3 = {
  1573. disableSerialization;
  1574. if (isNil 'xxx_fn_esp_headgear4') then {
  1575. xxx_fn_esp_headgear4 = 2733;
  1576. };
  1577. xxx_fn_esp_headgear4 cutRsc['rscDynamicText', 'PLAIN'];
  1578. xxx_fn_esp_headgear4 = xxx_fn_esp_headgear4 + 1;
  1579. _ctrl = ((uiNamespace getvariable 'BIS_dynamicText') displayctrl 9999);
  1580. _ctrl ctrlShow true;
  1581. _ctrl ctrlEnable true;
  1582. _ctrl ctrlSetFade 0;
  1583. _unit = _this select 0;
  1584. while {
  1585. (!isNull _unit) && ((player distance _unit) < 1000)
  1586. }
  1587. do {
  1588. if (xxx_fn_esp_headgear1 == 0) exitWith {
  1589. xxx_fn_esp_headgear5 = xxx_fn_esp_headgear5 - [_unit];
  1590. _ctrl ctrlShow false;
  1591. _ctrl ctrlEnable false;
  1592. };
  1593. _pos = [(getPosATL _unit) select 0, (getPosATL _unit) select 1, ((getPosATL _unit) select 2)];
  1594. _pos2D = WorldToScreen _pos;
  1595. if (count _pos2D > 0) then {
  1596. _ctrl ctrlSetPosition[(_pos2D select 0) - (safezoneW / 2), (_pos2D select 1), safezoneW, safezoneH];
  1597. _text = parseText format["<t size='0.25' color='#00FC97'>%1 (%2m)</t>", typeOf _unit, round(player distance _unit)];
  1598. _ctrl ctrlSetStructuredText _text;
  1599. _ctrl ctrlCommit 0;
  1600. };
  1601. sleep 0.01;
  1602. };
  1603. xxx_fn_esp_headgear5 = xxx_fn_esp_headgear5 - [_unit];
  1604. _ctrl ctrlShow false;
  1605. _ctrl ctrlEnable false;
  1606. };
  1607. [] spawn xxx_fn_esp_headgear2;
  1608. };
  1609. xxx_fn_esp_topwear = {
  1610. xxx_fn_esp_topwear2 = {
  1611. if (isNil 'xxx_fn_esp_topwear1') then {
  1612. xxx_fn_esp_topwear1 = 0;
  1613. };
  1614. if (xxx_fn_esp_topwear1 == 0) then {
  1615. hint "Topwear ESP ON";
  1616. xxx_fn_esp_topwear1 = 1;
  1617. xxx_fn_esp_topwear5 = [];
  1618. while {
  1619. xxx_fn_esp_topwear1 == 1
  1620. }
  1621. do {
  1622. _entities = (allMissionObjects "TopwearBase"); {
  1623. if !(_x in xxx_fn_esp_topwear5) then {
  1624. xxx_fn_esp_topwear5 = xxx_fn_esp_topwear5 + [_x];
  1625. [_x] spawn xxx_fn_esp_topwear3;
  1626. sleep 0.25;
  1627. };
  1628. }
  1629. forEach _entities;
  1630. sleep 5;
  1631. };
  1632. } else {
  1633. hint "Topwear ESP OFF";
  1634. xxx_fn_esp_topwear1 = 0;
  1635. };
  1636. };
  1637. xxx_fn_esp_topwear3 = {
  1638. disableSerialization;
  1639. if (isNil 'xxx_fn_esp_topwear4') then {
  1640. xxx_fn_esp_topwear4 = 2733;
  1641. };
  1642. xxx_fn_esp_topwear4 cutRsc['rscDynamicText', 'PLAIN'];
  1643. xxx_fn_esp_topwear4 = xxx_fn_esp_topwear4 + 1;
  1644. _ctrl = ((uiNamespace getvariable 'BIS_dynamicText') displayctrl 9999);
  1645. _ctrl ctrlShow true;
  1646. _ctrl ctrlEnable true;
  1647. _ctrl ctrlSetFade 0;
  1648. _unit = _this select 0;
  1649. while {
  1650. (!isNull _unit) && ((player distance _unit) < 1000)
  1651. }
  1652. do {
  1653. if (xxx_fn_esp_topwear1 == 0) exitWith {
  1654. xxx_fn_esp_topwear5 = xxx_fn_esp_topwear5 - [_unit];
  1655. _ctrl ctrlShow false;
  1656. _ctrl ctrlEnable false;
  1657. };
  1658. _pos = [(getPosATL _unit) select 0, (getPosATL _unit) select 1, ((getPosATL _unit) select 2)];
  1659. _pos2D = WorldToScreen _pos;
  1660. if (count _pos2D > 0) then {
  1661. _ctrl ctrlSetPosition[(_pos2D select 0) - (safezoneW / 2), (_pos2D select 1), safezoneW, safezoneH];
  1662. _text = parseText format["<t size='0.25' color='#00FC97'>%1 (%2m)</t>", typeOf _unit, round(player distance _unit)];
  1663. _ctrl ctrlSetStructuredText _text;
  1664. _ctrl ctrlCommit 0;
  1665. };
  1666. sleep 0.01;
  1667. };
  1668. xxx_fn_esp_topwear5 = xxx_fn_esp_topwear5 - [_unit];
  1669. _ctrl ctrlShow false;
  1670. _ctrl ctrlEnable false;
  1671. };
  1672. [] spawn xxx_fn_esp_topwear2;
  1673. };
  1674. xxx_fn_esp_bottomware = {
  1675. xxx_fn_esp_bottomware2 = {
  1676. if (isNil 'xxx_fn_esp_bottomware1') then {
  1677. xxx_fn_esp_bottomware1 = 0;
  1678. };
  1679. if (xxx_fn_esp_bottomware1 == 0) then {
  1680. hint "Bottomwear ESP ON";
  1681. xxx_fn_esp_bottomware1 = 1;
  1682. xxx_fn_esp_bottomware5 = [];
  1683. while {
  1684. xxx_fn_esp_bottomware1 == 1
  1685. }
  1686. do {
  1687. _entities = (allMissionObjects "BottomwearBase"); {
  1688. if !(_x in xxx_fn_esp_bottomware5) then {
  1689. xxx_fn_esp_bottomware5 = xxx_fn_esp_bottomware5 + [_x];
  1690. [_x] spawn xxx_fn_esp_bottomware3;
  1691. sleep 0.25;
  1692. };
  1693. }
  1694. forEach _entities;
  1695. sleep 5;
  1696. };
  1697. } else {
  1698. hint "Bottomwear ESP OFF";
  1699. xxx_fn_esp_bottomware1 = 0;
  1700. };
  1701. };
  1702. xxx_fn_esp_bottomware3 = {
  1703. disableSerialization;
  1704. if (isNil 'xxx_fn_esp_bottomware4') then {
  1705. xxx_fn_esp_bottomware4 = 2733;
  1706. };
  1707. xxx_fn_esp_bottomware4 cutRsc['rscDynamicText', 'PLAIN'];
  1708. xxx_fn_esp_bottomware4 = xxx_fn_esp_bottomware4 + 1;
  1709. _ctrl = ((uiNamespace getvariable 'BIS_dynamicText') displayctrl 9999);
  1710. _ctrl ctrlShow true;
  1711. _ctrl ctrlEnable true;
  1712. _ctrl ctrlSetFade 0;
  1713. _unit = _this select 0;
  1714. while {
  1715. (!isNull _unit) && ((player distance _unit) < 1000)
  1716. }
  1717. do {
  1718. if (xxx_fn_esp_bottomware1 == 0) exitWith {
  1719. xxx_fn_esp_bottomware5 = xxx_fn_esp_bottomware5 - [_unit];
  1720. _ctrl ctrlShow false;
  1721. _ctrl ctrlEnable false;
  1722. };
  1723. _pos = [(getPosATL _unit) select 0, (getPosATL _unit) select 1, ((getPosATL _unit) select 2)];
  1724. _pos2D = WorldToScreen _pos;
  1725. if (count _pos2D > 0) then {
  1726. _ctrl ctrlSetPosition[(_pos2D select 0) - (safezoneW / 2), (_pos2D select 1), safezoneW, safezoneH];
  1727. _text = parseText format["<t size='0.25' color='#00FC97'>%1 (%2m)</t>", typeOf _unit, round(player distance _unit)];
  1728. _ctrl ctrlSetStructuredText _text;
  1729. _ctrl ctrlCommit 0;
  1730. };
  1731. sleep 0.01;
  1732. };
  1733. xxx_fn_esp_bottomware5 = xxx_fn_esp_bottomware5 - [_unit];
  1734. _ctrl ctrlShow false;
  1735. _ctrl ctrlEnable false;
  1736. };
  1737. [] spawn xxx_fn_esp_bottomware2;
  1738. };
  1739. xxx_fn_esp_footwear = {
  1740. xxx_fn_esp_footwear2 = {
  1741. if (isNil 'xxx_fn_esp_footwear1') then {
  1742. xxx_fn_esp_footwear1 = 0;
  1743. };
  1744. if (xxx_fn_esp_footwear1 == 0) then {
  1745. hint "Footwear ESP ON";
  1746. xxx_fn_esp_footwear1 = 1;
  1747. xxx_fn_esp_footwear5 = [];
  1748. while {
  1749. xxx_fn_esp_footwear1 == 1
  1750. }
  1751. do {
  1752. _entities = (allMissionObjects "FootwearBase"); {
  1753. if !(_x in xxx_fn_esp_footwear5) then {
  1754. xxx_fn_esp_footwear5 = xxx_fn_esp_footwear5 + [_x];
  1755. [_x] spawn xxx_fn_esp_footwear3;
  1756. sleep 0.25;
  1757. };
  1758. }
  1759. forEach _entities;
  1760. sleep 5;
  1761. };
  1762. } else {
  1763. hint "Footwear ESP OFF";
  1764. xxx_fn_esp_footwear1 = 0;
  1765. };
  1766. };
  1767. xxx_fn_esp_footwear3 = {
  1768. disableSerialization;
  1769. if (isNil 'xxx_fn_esp_footwear4') then {
  1770. xxx_fn_esp_footwear4 = 2733;
  1771. };
  1772. xxx_fn_esp_footwear4 cutRsc['rscDynamicText', 'PLAIN'];
  1773. xxx_fn_esp_footwear4 = xxx_fn_esp_footwear4 + 1;
  1774. _ctrl = ((uiNamespace getvariable 'BIS_dynamicText') displayctrl 9999);
  1775. _ctrl ctrlShow true;
  1776. _ctrl ctrlEnable true;
  1777. _ctrl ctrlSetFade 0;
  1778. _unit = _this select 0;
  1779. while {
  1780. (!isNull _unit) && ((player distance _unit) < 1000)
  1781. }
  1782. do {
  1783. if (xxx_fn_esp_footwear1 == 0) exitWith {
  1784. xxx_fn_esp_footwear5 = xxx_fn_esp_footwear5 - [_unit];
  1785. _ctrl ctrlShow false;
  1786. _ctrl ctrlEnable false;
  1787. };
  1788. _pos = [(getPosATL _unit) select 0, (getPosATL _unit) select 1, ((getPosATL _unit) select 2)];
  1789. _pos2D = WorldToScreen _pos;
  1790. if (count _pos2D > 0) then {
  1791. _ctrl ctrlSetPosition[(_pos2D select 0) - (safezoneW / 2), (_pos2D select 1), safezoneW, safezoneH];
  1792. _text = parseText format["<t size='0.25' color='#00FC97'>%1 (%2m)</t>", typeOf _unit, round(player distance _unit)];
  1793. _ctrl ctrlSetStructuredText _text;
  1794. _ctrl ctrlCommit 0;
  1795. };
  1796. sleep 0.01;
  1797. };
  1798. xxx_fn_esp_footwear5 = xxx_fn_esp_footwear5 - [_unit];
  1799. _ctrl ctrlShow false;
  1800. _ctrl ctrlEnable false;
  1801. };
  1802. [] spawn xxx_fn_esp_footwear2;
  1803. };
  1804. xxx_fn_esp_vests = {
  1805. xxx_fn_esp_vests2 = {
  1806. if (isNil 'xxx_fn_esp_vests1') then {
  1807. xxx_fn_esp_vests1 = 0;
  1808. };
  1809. if (xxx_fn_esp_vests1 == 0) then {
  1810. hint "Vest ESP ON";
  1811. xxx_fn_esp_vests1 = 1;
  1812. xxx_fn_esp_vests5 = [];
  1813. while {
  1814. xxx_fn_esp_vests1 == 1
  1815. }
  1816. do {
  1817. _entities = (allMissionObjects "VestBase"); {
  1818. if !(_x in xxx_fn_esp_vests5) then {
  1819. xxx_fn_esp_vests5 = xxx_fn_esp_vests5 + [_x];
  1820. [_x] spawn xxx_fn_esp_vests3;
  1821. sleep 0.25;
  1822. };
  1823. }
  1824. forEach _entities;
  1825. sleep 5;
  1826. };
  1827. } else {
  1828. hint "Vest ESP OFF";
  1829. xxx_fn_esp_vests1 = 0;
  1830. };
  1831. };
  1832. xxx_fn_esp_vests3 = {
  1833. disableSerialization;
  1834. if (isNil 'xxx_fn_esp_vests4') then {
  1835. xxx_fn_esp_vests4 = 2733;
  1836. };
  1837. xxx_fn_esp_vests4 cutRsc['rscDynamicText', 'PLAIN'];
  1838. xxx_fn_esp_vests4 = xxx_fn_esp_vests4 + 1;
  1839. _ctrl = ((uiNamespace getvariable 'BIS_dynamicText') displayctrl 9999);
  1840. _ctrl ctrlShow true;
  1841. _ctrl ctrlEnable true;
  1842. _ctrl ctrlSetFade 0;
  1843. _unit = _this select 0;
  1844. while {
  1845. (!isNull _unit) && ((player distance _unit) < 1000)
  1846. }
  1847. do {
  1848. if (xxx_fn_esp_vests1 == 0) exitWith {
  1849. xxx_fn_esp_vests5 = xxx_fn_esp_vests5 - [_unit];
  1850. _ctrl ctrlShow false;
  1851. _ctrl ctrlEnable false;
  1852. };
  1853. _pos = [(getPosATL _unit) select 0, (getPosATL _unit) select 1, ((getPosATL _unit) select 2)];
  1854. _pos2D = WorldToScreen _pos;
  1855. if (count _pos2D > 0) then {
  1856. _ctrl ctrlSetPosition[(_pos2D select 0) - (safezoneW / 2), (_pos2D select 1), safezoneW, safezoneH];
  1857. _text = parseText format["<t size='0.25' color='#00FC97'>%1 (%2m)</t>", typeOf _unit, round(player distance _unit)];
  1858. _ctrl ctrlSetStructuredText _text;
  1859. _ctrl ctrlCommit 0;
  1860. };
  1861. sleep 0.01;
  1862. };
  1863. xxx_fn_esp_vests5 = xxx_fn_esp_vests5 - [_unit];
  1864. _ctrl ctrlShow false;
  1865. _ctrl ctrlEnable false;
  1866. };
  1867. [] spawn xxx_fn_esp_vests2;
  1868. };
  1869. xxx_fn_esp_gloves = {
  1870. xxx_fn_esp_gloves2 = {
  1871. if (isNil 'xxx_fn_esp_gloves1') then {
  1872. xxx_fn_esp_gloves1 = 0;
  1873. };
  1874. if (xxx_fn_esp_gloves1 == 0) then {
  1875. hint "Gloves ESP ON";
  1876. xxx_fn_esp_gloves1 = 1;
  1877. xxx_fn_esp_gloves5 = [];
  1878. while {
  1879. xxx_fn_esp_gloves1 == 1
  1880. }
  1881. do {
  1882. _entities = (allMissionObjects "GlovesBase"); {
  1883. if !(_x in xxx_fn_esp_gloves5) then {
  1884. xxx_fn_esp_gloves5 = xxx_fn_esp_gloves5 + [_x];
  1885. [_x] spawn xxx_fn_esp_gloves3;
  1886. sleep 0.25;
  1887. };
  1888. }
  1889. forEach _entities;
  1890. sleep 5;
  1891. };
  1892. } else {
  1893. hint "Gloves ESP OFF";
  1894. xxx_fn_esp_gloves1 = 0;
  1895. };
  1896. };
  1897. xxx_fn_esp_gloves3 = {
  1898. disableSerialization;
  1899. if (isNil 'xxx_fn_esp_gloves4') then {
  1900. xxx_fn_esp_gloves4 = 2733;
  1901. };
  1902. xxx_fn_esp_gloves4 cutRsc['rscDynamicText', 'PLAIN'];
  1903. xxx_fn_esp_gloves4 = xxx_fn_esp_gloves4 + 1;
  1904. _ctrl = ((uiNamespace getvariable 'BIS_dynamicText') displayctrl 9999);
  1905. _ctrl ctrlShow true;
  1906. _ctrl ctrlEnable true;
  1907. _ctrl ctrlSetFade 0;
  1908. _unit = _this select 0;
  1909. while {
  1910. (!isNull _unit) && ((player distance _unit) < 1000)
  1911. }
  1912. do {
  1913. if (xxx_fn_esp_gloves1 == 0) exitWith {
  1914. xxx_fn_esp_gloves5 = xxx_fn_esp_gloves5 - [_unit];
  1915. _ctrl ctrlShow false;
  1916. _ctrl ctrlEnable false;
  1917. };
  1918. _pos = [(getPosATL _unit) select 0, (getPosATL _unit) select 1, ((getPosATL _unit) select 2)];
  1919. _pos2D = WorldToScreen _pos;
  1920. if (count _pos2D > 0) then {
  1921. _ctrl ctrlSetPosition[(_pos2D select 0) - (safezoneW / 2), (_pos2D select 1), safezoneW, safezoneH];
  1922. _text = parseText format["<t size='0.25' color='#00FC97'>%1 (%2m)</t>", typeOf _unit, round(player distance _unit)];
  1923. _ctrl ctrlSetStructuredText _text;
  1924. _ctrl ctrlCommit 0;
  1925. };
  1926. sleep 0.01;
  1927. };
  1928. xxx_fn_esp_gloves5 = xxx_fn_esp_gloves5 - [_unit];
  1929. _ctrl ctrlShow false;
  1930. _ctrl ctrlEnable false;
  1931. };
  1932. [] spawn xxx_fn_esp_gloves2;
  1933. };
  1934. xxx_fn_esp_containers = {
  1935. xxx_fn_esp_containers2 = {
  1936. if (isNil 'xxx_fn_esp_containers1') then {
  1937. xxx_fn_esp_containers1 = 0;
  1938. };
  1939. if (xxx_fn_esp_containers1 == 0) then {
  1940. hint "Container ESP ON";
  1941. xxx_fn_esp_containers1 = 1;
  1942. xxx_fn_esp_containers5 = [];
  1943. while {
  1944. xxx_fn_esp_containers1 == 1
  1945. }
  1946. do {
  1947. _entities = (allMissionObjects "ContainerBase"); {
  1948. if !(_x in xxx_fn_esp_containers5) then {
  1949. xxx_fn_esp_containers5 = xxx_fn_esp_containers5 + [_x];
  1950. [_x] spawn xxx_fn_esp_containers3;
  1951. sleep 0.25;
  1952. };
  1953. }
  1954. forEach _entities;
  1955. sleep 5;
  1956. };
  1957. } else {
  1958. hint "Container ESP OFF";
  1959. xxx_fn_esp_containers1 = 0;
  1960. };
  1961. };
  1962. xxx_fn_esp_containers3 = {
  1963. disableSerialization;
  1964. if (isNil 'xxx_fn_esp_containers4') then {
  1965. xxx_fn_esp_containers4 = 2733;
  1966. };
  1967. xxx_fn_esp_containers4 cutRsc['rscDynamicText', 'PLAIN'];
  1968. xxx_fn_esp_containers4 = xxx_fn_esp_containers4 + 1;
  1969. _ctrl = ((uiNamespace getvariable 'BIS_dynamicText') displayctrl 9999);
  1970. _ctrl ctrlShow true;
  1971. _ctrl ctrlEnable true;
  1972. _ctrl ctrlSetFade 0;
  1973. _unit = _this select 0;
  1974. while {
  1975. (!isNull _unit) && ((player distance _unit) < 1000)
  1976. }
  1977. do {
  1978. if (xxx_fn_esp_containers1 == 0) exitWith {
  1979. xxx_fn_esp_containers5 = xxx_fn_esp_containers5 - [_unit];
  1980. _ctrl ctrlShow false;
  1981. _ctrl ctrlEnable false;
  1982. };
  1983. _pos = [(getPosATL _unit) select 0, (getPosATL _unit) select 1, ((getPosATL _unit) select 2)];
  1984. _pos2D = WorldToScreen _pos;
  1985. if (count _pos2D > 0) then {
  1986. _ctrl ctrlSetPosition[(_pos2D select 0) - (safezoneW / 2), (_pos2D select 1), safezoneW, safezoneH];
  1987. _text = parseText format["<t size='0.25' color='#00FC97'>%1 (%2m)</t>", typeOf _unit, round(player distance _unit)];
  1988. _ctrl ctrlSetStructuredText _text;
  1989. _ctrl ctrlCommit 0;
  1990. };
  1991. sleep 0.01;
  1992. };
  1993. xxx_fn_esp_containers5 = xxx_fn_esp_containers5 - [_unit];
  1994. _ctrl ctrlShow false;
  1995. _ctrl ctrlEnable false;
  1996. };
  1997. [] spawn xxx_fn_esp_containers2;
  1998. };
  1999. xxx_fn_esp_cookware_crafting = {
  2000. xxx_fn_esp_cookware_crafting2 = {
  2001. if (isNil 'xxx_fn_esp_cookware_crafting1') then {
  2002. xxx_fn_esp_cookware_crafting1 = 0;
  2003. };
  2004. if (xxx_fn_esp_cookware_crafting1 == 0) then {
  2005. hint "Cookware ESP ON";
  2006. xxx_fn_esp_cookware_crafting1 = 1;
  2007. xxx_fn_esp_cookware_crafting5 = [];
  2008. while {
  2009. xxx_fn_esp_cookware_crafting1 == 1
  2010. }
  2011. do {
  2012. _entities = (allMissionObjects "CookwareBase") + (allMissionObjects "CookerBase") + (allMissionObjects "CraftingItemBase") + (allMissionObjects "Consumable_Netting") + (allMissionObjects "Consumable_BurlapStrips") + (allMissionObjects "Consumable_Hook");
  2013. {
  2014. if !(_x in xxx_fn_esp_cookware_crafting5) then {
  2015. xxx_fn_esp_cookware_crafting5 = xxx_fn_esp_cookware_crafting5 + [_x];
  2016. [_x] spawn xxx_fn_esp_cookware_crafting3;
  2017. sleep 0.25;
  2018. };
  2019. }
  2020. forEach _entities;
  2021. sleep 5;
  2022. };
  2023. } else {
  2024. hint "Cookware ESP OFF";
  2025. xxx_fn_esp_cookware_crafting1 = 0;
  2026. };
  2027. };
  2028. xxx_fn_esp_cookware_crafting3 = {
  2029. disableSerialization;
  2030. if (isNil 'xxx_fn_esp_cookware_crafting4') then {
  2031. xxx_fn_esp_cookware_crafting4 = 2733;
  2032. };
  2033. xxx_fn_esp_cookware_crafting4 cutRsc['rscDynamicText', 'PLAIN'];
  2034. xxx_fn_esp_cookware_crafting4 = xxx_fn_esp_cookware_crafting4 + 1;
  2035. _ctrl = ((uiNamespace getvariable 'BIS_dynamicText') displayctrl 9999);
  2036. _ctrl ctrlShow true;
  2037. _ctrl ctrlEnable true;
  2038. _ctrl ctrlSetFade 0;
  2039. _unit = _this select 0;
  2040. while {(!isNull _unit) && ((player distance _unit) < 1000)} do {
  2041. if (xxx_fn_esp_cookware_crafting1 == 0) exitWith {
  2042. xxx_fn_esp_cookware_crafting5 = xxx_fn_esp_cookware_crafting5 - [_unit];
  2043. _ctrl ctrlShow false;
  2044. _ctrl ctrlEnable false;
  2045. };
  2046. _pos = [(getPosATL _unit) select 0, (getPosATL _unit) select 1, ((getPosATL _unit) select 2)];
  2047. _pos2D = WorldToScreen _pos;
  2048. if (count _pos2D > 0) then {
  2049. _ctrl ctrlSetPosition[(_pos2D select 0) - (safezoneW / 2), (_pos2D select 1), safezoneW, safezoneH];
  2050. _text = parseText format["<t size='0.25' color='#00FC97'>%1 (%2m)</t>", typeOf _unit, round(player distance _unit)];
  2051. _ctrl ctrlSetStructuredText _text;
  2052. _ctrl ctrlCommit 0;
  2053. };
  2054. sleep 0.01;
  2055. };
  2056. xxx_fn_esp_cookware_crafting5 = xxx_fn_esp_cookware_crafting5 - [_unit];
  2057. _ctrl ctrlShow false;
  2058. _ctrl ctrlEnable false;
  2059. };
  2060. [] spawn xxx_fn_esp_cookware_crafting2;
  2061. };
  2062. xxx_fn_esp_medical = {
  2063. xxx_fn_esp_medical2 = {
  2064. if (isNil 'xxx_fn_esp_medical1') then {
  2065. xxx_fn_esp_medical1 = 0;
  2066. };
  2067. if (xxx_fn_esp_medical1 == 0) then {
  2068. hint "Medical ESP ON";
  2069. xxx_fn_esp_medical1 = 1;
  2070. xxx_fn_esp_medical5 = [];
  2071. while {
  2072. xxx_fn_esp_medical1 == 1
  2073. }
  2074. do {
  2075. _entities = (allMissionObjects "MedicalItemBase"); {
  2076. if !(_x in xxx_fn_esp_medical5) then {
  2077. xxx_fn_esp_medical5 = xxx_fn_esp_medical5 + [_x];
  2078. [_x] spawn xxx_fn_esp_medical3;
  2079. sleep 0.25;
  2080. };
  2081. }
  2082. forEach _entities;
  2083. sleep 5;
  2084. };
  2085. } else {
  2086. hint "Medical ESP OFF";
  2087. xxx_fn_esp_medical1 = 0;
  2088. };
  2089. };
  2090. xxx_fn_esp_medical3 = {
  2091. disableSerialization;
  2092. if (isNil 'xxx_fn_esp_medical4') then {
  2093. xxx_fn_esp_medical4 = 2733;
  2094. };
  2095. xxx_fn_esp_medical4 cutRsc['rscDynamicText', 'PLAIN'];
  2096. xxx_fn_esp_medical4 = xxx_fn_esp_medical4 + 1;
  2097. _ctrl = ((uiNamespace getvariable 'BIS_dynamicText') displayctrl 9999);
  2098. _ctrl ctrlShow true;
  2099. _ctrl ctrlEnable true;
  2100. _ctrl ctrlSetFade 0;
  2101. _unit = _this select 0;
  2102. while {
  2103. (!isNull _unit) && ((player distance _unit) < 1000)
  2104. }
  2105. do {
  2106. if (xxx_fn_esp_medical1 == 0) exitWith {
  2107. xxx_fn_esp_medical5 = xxx_fn_esp_medical5 - [_unit];
  2108. _ctrl ctrlShow false;
  2109. _ctrl ctrlEnable false;
  2110. };
  2111. _pos = [(getPosATL _unit) select 0, (getPosATL _unit) select 1, ((getPosATL _unit) select 2)];
  2112. _pos2D = WorldToScreen _pos;
  2113. if (count _pos2D > 0) then {
  2114. _ctrl ctrlSetPosition[(_pos2D select 0) - (safezoneW / 2), (_pos2D select 1), safezoneW, safezoneH];
  2115. _text = parseText format["<t size='0.25' color='#00FC97'>%1 (%2m)</t>", typeOf _unit, round(player distance _unit)];
  2116. _ctrl ctrlSetStructuredText _text;
  2117. _ctrl ctrlCommit 0;
  2118. };
  2119. sleep 0.01;
  2120. };
  2121. xxx_fn_esp_medical5 = xxx_fn_esp_medical5 - [_unit];
  2122. _ctrl ctrlShow false;
  2123. _ctrl ctrlEnable false;
  2124. };
  2125. [] spawn xxx_fn_esp_medical2;
  2126. };
  2127. xxx_fn_esp_melee = {
  2128. xxx_fn_esp_melee2 = {
  2129. if (isNil 'xxx_fn_esp_melee1') then {
  2130. xxx_fn_esp_melee1 = 0;
  2131. };
  2132. if (xxx_fn_esp_melee1 == 0) then {
  2133. hint "Melee ESP ON";
  2134. xxx_fn_esp_melee1 = 1;
  2135. xxx_fn_esp_melee5 = [];
  2136. while {
  2137. xxx_fn_esp_melee1 == 1
  2138. }
  2139. do {
  2140. _entities = (allMissionObjects "MeleeItemBase") + (allMissionObjects "Sword") + (allMissionObjects "KnifeBase"); {
  2141. if !(_x in xxx_fn_esp_melee5) then {
  2142. xxx_fn_esp_melee5 = xxx_fn_esp_melee5 + [_x];
  2143. [_x] spawn xxx_fn_esp_melee3;
  2144. sleep 0.25;
  2145. };
  2146. }
  2147. forEach _entities;
  2148. sleep 5;
  2149. };
  2150. } else {
  2151. hint "Melee ESP OFF";
  2152. xxx_fn_esp_melee1 = 0;
  2153. };
  2154. };
  2155. xxx_fn_esp_melee3 = {
  2156. disableSerialization;
  2157. if (isNil 'xxx_fn_esp_melee4') then {
  2158. xxx_fn_esp_melee4 = 2733;
  2159. };
  2160. xxx_fn_esp_melee4 cutRsc['rscDynamicText', 'PLAIN'];
  2161. xxx_fn_esp_melee4 = xxx_fn_esp_melee4 + 1;
  2162. _ctrl = ((uiNamespace getvariable 'BIS_dynamicText') displayctrl 9999);
  2163. _ctrl ctrlShow true;
  2164. _ctrl ctrlEnable true;
  2165. _ctrl ctrlSetFade 0;
  2166. _unit = _this select 0;
  2167. while {
  2168. (!isNull _unit) && ((player distance _unit) < 1000)
  2169. }
  2170. do {
  2171. if (xxx_fn_esp_melee1 == 0) exitWith {
  2172. xxx_fn_esp_melee5 = xxx_fn_esp_melee5 - [_unit];
  2173. _ctrl ctrlShow false;
  2174. _ctrl ctrlEnable false;
  2175. };
  2176. _pos = [(getPosATL _unit) select 0, (getPosATL _unit) select 1, ((getPosATL _unit) select 2)];
  2177. _pos2D = WorldToScreen _pos;
  2178. if (count _pos2D > 0) then {
  2179. _ctrl ctrlSetPosition[(_pos2D select 0) - (safezoneW / 2), (_pos2D select 1), safezoneW, safezoneH];
  2180. _text = parseText format["<t size='0.25' color='#00FC97'>%1 (%2m)</t>", typeOf _unit, round(player distance _unit)];
  2181. _ctrl ctrlSetStructuredText _text;
  2182. _ctrl ctrlCommit 0;
  2183. };
  2184. sleep 0.01;
  2185. };
  2186. xxx_fn_esp_melee5 = xxx_fn_esp_melee5 - [_unit];
  2187. _ctrl ctrlShow false;
  2188. _ctrl ctrlEnable false;
  2189. };
  2190. [] spawn xxx_fn_esp_melee2;
  2191. };
  2192. xxx_fn_esp_vehicles = {
  2193. xxx_fn_esp_vehicles2 = {
  2194. if (isNil 'xxx_fn_esp_vehicles1') then {
  2195. xxx_fn_esp_vehicles1 = 0;
  2196. };
  2197. if (xxx_fn_esp_vehicles1 == 0) then {
  2198. hint "Vehicle ESP ON";
  2199. xxx_fn_esp_vehicles1 = 1;
  2200. xxx_fn_esp_vehicles5 = [];
  2201. while {
  2202. xxx_fn_esp_vehicles1 == 1
  2203. }
  2204. do {
  2205. _entities = (allMissionObjects "V3S_Cargo") + (allMissionObjects "v3s_cargo_blue") + (allMissionObjects "Car_DZ"); {
  2206. if !(_x in xxx_fn_esp_vehicles5) then {
  2207. xxx_fn_esp_vehicles5 = xxx_fn_esp_vehicles5 + [_x];
  2208. [_x] spawn xxx_fn_esp_vehicles3;
  2209. sleep 0.25;
  2210. };
  2211. }
  2212. forEach _entities;
  2213. sleep 5;
  2214. };
  2215. } else {
  2216. hint "Vehicle ESP OFF";
  2217. xxx_fn_esp_vehicles1 = 0;
  2218. };
  2219. };
  2220. xxx_fn_esp_vehicles3 = {
  2221. disableSerialization;
  2222. if (isNil 'xxx_fn_esp_vehicles4') then {
  2223. xxx_fn_esp_vehicles4 = 2733;
  2224. };
  2225. xxx_fn_esp_vehicles4 cutRsc['rscDynamicText', 'PLAIN'];
  2226. xxx_fn_esp_vehicles4 = xxx_fn_esp_vehicles4 + 1;
  2227. _ctrl = ((uiNamespace getvariable 'BIS_dynamicText') displayctrl 9999);
  2228. _ctrl ctrlShow true;
  2229. _ctrl ctrlEnable true;
  2230. _ctrl ctrlSetFade 0;
  2231. _unit = _this select 0;
  2232. while {
  2233. (!isNull _unit) && ((player distance _unit) < 1000)
  2234. }
  2235. do {
  2236. if (xxx_fn_esp_vehicles1 == 0) exitWith {
  2237. xxx_fn_esp_vehicles5 = xxx_fn_esp_vehicles5 - [_unit];
  2238. _ctrl ctrlShow false;
  2239. _ctrl ctrlEnable false;
  2240. };
  2241. _pos = [(getPosATL _unit) select 0, (getPosATL _unit) select 1, ((getPosATL _unit) select 2)];
  2242. _pos2D = WorldToScreen _pos;
  2243. if (count _pos2D > 0) then {
  2244. _ctrl ctrlSetPosition[(_pos2D select 0) - (safezoneW / 2), (_pos2D select 1), safezoneW, safezoneH];
  2245. _text = parseText format["<t size='0.25' color='#7200FC'>%1 (%2m)</t>", typeOf _unit, round(player distance _unit)];
  2246. _ctrl ctrlSetStructuredText _text;
  2247. _ctrl ctrlCommit 0;
  2248. };
  2249. sleep 0.01;
  2250. };
  2251. xxx_fn_esp_vehicles5 = xxx_fn_esp_vehicles5 - [_unit];
  2252. _ctrl ctrlShow false;
  2253. _ctrl ctrlEnable false;
  2254. };
  2255. [] spawn xxx_fn_esp_vehicles2;
  2256. };
  2257. xxx_fn_esp_animal = {
  2258. xxx_fn_esp_animal2 = {
  2259. if (isNil 'xxx_esp_animal_tog') then {
  2260. xxx_esp_animal_tog = 0;
  2261. };
  2262. if (xxx_esp_animal_tog == 0) then {
  2263. hint "Animal ESP ON";
  2264. xxx_esp_animal_tog = 1;
  2265. xxx_esp_animal_list = [];
  2266. while {xxx_esp_animal_tog == 1}
  2267. do {
  2268. _entities = (allMissionObjects "DZ_AnimalBase"); {
  2269. if !(_x in xxx_esp_animal_list) then {
  2270. xxx_esp_animal_list = xxx_esp_animal_list + [_x];
  2271. [_x] spawn xxx_esp_animal_draw;
  2272. sleep 0.25;
  2273. };
  2274. }
  2275. forEach _entities;
  2276. sleep 5;
  2277. };
  2278. } else {
  2279. hint "Animal ESP OFF";
  2280. xxx_esp_animal_tog = 0;
  2281. };
  2282. };
  2283. xxx_esp_animal_draw = {
  2284. disableSerialization;
  2285. if (isNil 'xxx_fn_esp_animal4') then {
  2286. xxx_fn_esp_animal4 = 2733;
  2287. };
  2288. xxx_fn_esp_animal4 cutRsc['rscDynamicText', 'PLAIN'];
  2289. xxx_fn_esp_animal4 = xxx_fn_esp_animal4 + 1;
  2290. _ctrl = ((uiNamespace getvariable 'BIS_dynamicText') displayctrl 9999);
  2291. _ctrl ctrlShow true;
  2292. _ctrl ctrlEnable true;
  2293. _ctrl ctrlSetFade 0;
  2294. _unit = _this select 0;
  2295. while {(!isNull _unit) && ((player distance _unit) < 1000)} do {
  2296. if (xxx_esp_animal_tog == 0) exitWith {
  2297. xxx_esp_animal_list = xxx_esp_animal_list - [_unit];
  2298. _ctrl ctrlShow false;
  2299. _ctrl ctrlEnable false;
  2300. };
  2301. _pos = [(getPosATL _unit) select 0, (getPosATL _unit) select 1, ((getPosATL _unit) select 2)];
  2302. _pos2D = WorldToScreen _pos;
  2303. if (count _pos2D > 0) then {
  2304. _ctrl ctrlSetPosition[(_pos2D select 0) - (safezoneW / 2), (_pos2D select 1), safezoneW, safezoneH];
  2305. _text = parseText format["<t size='0.25' color='#B7FF00'>%1 (%2m)</t>", typeOf _unit, round(player distance _unit)];
  2306. _ctrl ctrlSetStructuredText _text;
  2307. _ctrl ctrlCommit 0;
  2308. };
  2309. sleep 0.01;
  2310. };
  2311. xxx_esp_animal_list = xxx_esp_animal_list - [_unit];
  2312. _ctrl ctrlShow false;
  2313. _ctrl ctrlEnable false;
  2314. };
  2315. [] spawn xxx_fn_esp_animal2;
  2316. };
  2317.  
  2318.  
  2319.  
  2320. subMenu = [];
  2321. genSubMenu = {hint "holder";};
  2322. menuScripts = [
  2323. [" ESP Menu",{ tempArray = subMenu; subMenu spawn genSubMenu; },false,"",true],
  2324. [" Player (simple)",xxx_fnc_esp1,false,""],
  2325. [" Vehicles",xxx_fn_esp_vehicles,false,""],
  2326. [" Map",xxx_fn_view_map,false,"",false],
  2327. [" Map Markers",xxx_fn_map_markerz,false,"",false],
  2328. [" TP",xxx_fn_televeh,false,"",false],
  2329. [" Vehicle TP-1000m",xxx_fn_teleport,false,"",false],
  2330. [" Speedhack",xxx_fn_speedhack,true,"toggle_1",false],
  2331. [" Speedhack 2",xxx_fn_speedhack2,true,"toggle_2",false],
  2332. [" Night Light",xxx_fn_nightlight,true,"toggle_3",false],
  2333. [" No Buildings",xxx_fn_no_buildings,true,"toggle_4",false],
  2334. [" No Grass",xxx_fn_no_grass,true,"toggle_5",false],
  2335. [" No Blur Full Color",xxx_fn_noblur_colour,true,"toggle_6",false],
  2336. [" Gun God",xxx_fnc_gun_god,true,"toggle_10",false],
  2337. [" Fast Animations",xxx_fn_fast_anim,true,"toggle_8",false],
  2338. [" Bullet Cam",xxx_fn_bullet_cam,true,"toggle_9",false],
  2339. [" Low View Distance",xxx_fn_view_dis,true,"toggle_7",false],
  2340. [" Max View Distance",xxx_fn_max_view_dis,true,"toggle_11",false],
  2341. [" HUD",xxx_fn_HUD,true,"toggle_12",false],
  2342. [" Dupe Me",xxx_fn_dupe,false,"",false],
  2343. [" Take a Shit",xxx_fn_shit,false,"",false],
  2344. [" 3rd Person",xxx_fn_3rd_person,false,"",false],
  2345. [" Executor",xxx_fn_executor,false,"",false]
  2346. ];
  2347. subMenu = [
  2348. [" Player (full)",xxx_fnc_esp2,false,""],
  2349. [" Weapons",xxx_fn_esp_weapons,false,""],
  2350. [" Ammo",xxx_fn_esp_ammo,false,""],
  2351. [" Attachments",xxx_fn_esp_attachments,false,""],
  2352. [" Cthulhu",xxx_fn_esp_cthulhu,false,""],
  2353. [" Sewing - Can Opener",xxx_fn_esp_sewing_can,false,""],
  2354. [" Tents - Vehicle Parts",xxx_fn_esp_tents_veh_prt,false,""],
  2355. [" Helicopters",xxx_fn_esp_helis,false,""],
  2356. [" Bodies",xxx_fnc_esp_bodies,false,""],
  2357. [" Zombies",xxx_fn_esp_zombies,false,""],
  2358. [" Food Drink",xxx_fn_esp_food_drink,false,""],
  2359. [" Backpacks - Vests",xxx_fn_esp_backpacks_vests,false,""],
  2360. [" All Items",xxx_fn_esp_all_items,false,""],
  2361. [" All Clothing",xxx_fn_esp_all_clothing,false,""],
  2362. [" Glasses-Masks",xxx_fn_esp_eyewear_mask,false,""],
  2363. [" Headgear",xxx_fn_esp_headgear,false,""],
  2364. [" Body",xxx_fn_esp_topwear,false,""],
  2365. [" Legs",xxx_fn_esp_bottomware,false,""],
  2366. [" Feet",xxx_fn_esp_footwear,false,""],
  2367. [" Gloves",xxx_fn_esp_gloves,false,""],
  2368. [" Containers",xxx_fn_esp_containers,false,""],
  2369. [" Cooking - Crafting",xxx_fn_esp_cookware_crafting,false,""],
  2370. [" Medical",xxx_fn_esp_medical,false,""],
  2371. [" Melee",xxx_fn_esp_melee,false,""],
  2372. [" Animals",xxx_fn_esp_animal,false,""]
  2373. ];
  2374.  
  2375.  
  2376.  
  2377. shiftMenu = {
  2378. if ((typeName _this) == "ARRAY") then {
  2379. _control = _this select 0;
  2380. _pos = ctrlPosition _control;
  2381. _control ctrlSetPosition [(_pos select 0)+0.5, (_pos select 1),(_pos select 2)+(_this select 1), (_pos select 3) + (_this select 2)];
  2382. _control ctrlCommit 0;
  2383. } else {
  2384. _control = _this;
  2385. _pos = ctrlPosition _control;
  2386. _control ctrlSetPosition [(_pos select 0)+0.5, (_pos select 1),(_pos select 2), (_pos select 3)];
  2387. _control ctrlCommit 0;
  2388. };
  2389. };
  2390. fixMenu = {
  2391. _display = _this;
  2392. _controlScripts = (_display displayCtrl 1021);
  2393. _pos = ctrlPosition _controlScripts;
  2394. _controlPlayers = (_display displayCtrl 1002);
  2395. _controlPlayers ctrlSetPosition [(_pos select 0)+(_pos select 2)+0.06, (_pos select 1)];
  2396. _controlPlayersBG = (_display displayCtrl 1022);
  2397. _controlPlayersBG ctrlSetPosition [(_pos select 0)+(_pos select 2)+0.06, (_pos select 1)];
  2398. _controlPlayers ctrlCommit 0;
  2399. _controlPlayersBG ctrlCommit 0;
  2400.  
  2401. [(_display displayCtrl 1021),0.05,0] call shiftMenu;
  2402. (_display displayCtrl 1022) call shiftMenu;
  2403.  
  2404. _mcontrol = (_this displayCtrl 1001);
  2405. _mpos = ctrlPosition _mcontrol;
  2406. _control = (_display displayCtrl 1023);
  2407. _pos = ctrlPosition _control;
  2408. _widthScripts = ctrlPosition (_display displayCtrl 1021) select 2;
  2409. _widthPlayers = ctrlPosition (_display displayCtrl 1022) select 2;
  2410. _control ctrlSetText " Jme Menu";
  2411. _control ctrlSetfont "AmorSerifProBold";
  2412. _control ctrlSetBackgroundColor [0, 0, 0, 0.8];
  2413. _control ctrlSetPosition [(_mpos select 0)+0.5, (_pos select 1)-0.08, (_widthScripts + _widthPlayers + 0.009),0.08];
  2414. _control ctrlCommit 0;
  2415.  
  2416. (_display displayCtrl 1013) ctrlShow false;
  2417. (_display displayCtrl 1013) ctrlSetScale 3;
  2418. (_display displayCtrl 1013) ctrlCommit 1;
  2419. };
  2420. genPlayers = {
  2421. _control = (_this displayCtrl 1002);
  2422. _control call shiftMenu;
  2423. _control ctrlSetfont "AmorSerifProBold";
  2424. _control lbAdd "Players:";
  2425. _control lbSetColor [0, [1,0.1,0.66,1]];
  2426. _control lbAdd "-----------------------------";
  2427. _control lbSetColor [1, [1,0.1,0.66,1]];
  2428. _list = player nearEntities ["SurvivorBase",1000];
  2429. {
  2430. _control lbAdd format["%1",name _x];
  2431. }forEach _list;
  2432. };
  2433. dbClicked = {
  2434. disableserialization;
  2435. _index = _this;
  2436. _item = tempArray select _index;
  2437. _text = _item select 0;
  2438. _cmd = _item select 1;
  2439. _isToggle = _item select 2;
  2440. _toggleVar = _item select 3;
  2441. [] spawn _cmd;
  2442. if(_isToggle) then {
  2443. call compile format["%1 = !%1",_toggleVar];
  2444. _bool= call compile _toggleVar;
  2445. if(_bool) then {
  2446. lbSetColor [1001,_index,[0,1,0,1]];
  2447. } else {
  2448. lbSetColor [1001,_index,[1,0,0,1]];
  2449. };
  2450. };
  2451. };
  2452. genScripts = {
  2453. _control = (_this displayCtrl 1001);
  2454. _control ctrlRemoveAllEventHandlers "LBSelChanged";
  2455. _control ctrlRemoveAllEventHandlers "LBDblClick";
  2456. _control ctrlRemoveAllEventHandlers "MouseButtonDown";
  2457. _control ctrlRemoveAllEventHandlers "KeyDown";
  2458. _control ctrlAddEventHandler ["LBDblClick","(_this select 1) spawn dbClicked;"];
  2459. _control ctrlCommit 0;
  2460. _control = (_this displayCtrl 1001);
  2461. _pos = ctrlPosition _control;
  2462. _control ctrlSetfont "AmorSerifProBold";
  2463. [_control,0.05,0] call shiftMenu;
  2464. disableSerialization;
  2465. _display = _this;
  2466. _left = _display displayctrl 1001;
  2467. _counter = 0;
  2468. lbClear _left;
  2469. {
  2470. _left lbAdd (_x select 0);
  2471. if((_x select 2)) then {
  2472. _bool= call compile (_x select 3);
  2473. if(_bool) then {
  2474. _left lbSetColor [_counter,[0.28,0.99,0.19,1]];
  2475. } else {
  2476. _left lbSetColor [_counter,[0.99,0.18,0.17,1]];
  2477. };
  2478. } else {
  2479. if (_x select 4) then {
  2480. _left lbSetColor [_counter,[0.04,0.8,0.92,1]];
  2481. } else {
  2482. _left lbSetColor [_counter,[1,1,1,1]];
  2483. };
  2484. };
  2485. _counter = _counter + 1;
  2486. } forEach menuScripts;
  2487. _left ctrlCommit 0;
  2488. };
  2489. genSubMenu = {
  2490. disableSerialization;
  2491. _display = findDisplay 129;
  2492. _left = _display displayctrl 1001;
  2493. _subscripts = _this;
  2494. _counter = 0;
  2495. lbClear _left;
  2496. {
  2497. _left lbAdd (_x select 0);
  2498. if((_x select 2)) then {
  2499. _bool= call compile (_x select 3);
  2500. if(_bool) then {
  2501. _left lbSetColor [_counter,[0,1,0,1]];
  2502. } else {
  2503. _left lbSetColor [_counter,[1,0,0,1]];
  2504. };
  2505. } else {
  2506. if (_x select 4) then {
  2507. _left lbSetColor [_counter,[0,0,0.75,1]];
  2508. } else {
  2509. _left lbSetColor [_counter,[1,1,1,1]];
  2510. };
  2511. };
  2512. _counter = _counter + 1;
  2513. } forEach _subscripts;
  2514. _left ctrlCommit 0;
  2515. };
  2516. startMenu = {
  2517. _ok = createDialog "RscDisplayDiary";
  2518. disableSerialization;
  2519. waitUntil{!isNull (findDisplay 129)};
  2520. _display = findDisplay 129;
  2521.  
  2522. _display call fixMenu;
  2523. _display call genScripts;
  2524. _display call genPlayers;
  2525. tempArray = menuScripts;
  2526. if (_ok) then {
  2527. };
  2528. disableUserInput false;
  2529. };
  2530.  
  2531.  
  2532.  
  2533. [] spawn {
  2534. _count = 0;
  2535. while{true} do {
  2536. if(inputAction "NightVision" > 0) then {
  2537. if(isNull (findDisplay 129)) then {
  2538. [] spawn startMenu;
  2539. };
  2540. sleep 0.5;
  2541. };
  2542. sleep 0.001;
  2543. _count = _count + 1;
  2544. };
  2545. };
  2546.  
  2547. [] spawn {
  2548. while {true} do {
  2549. if (inputAction "moveRight" > 0) then {
  2550. [] spawn almagnet;
  2551. waitUntil{inputAction "moveRight" == 0};
  2552. };
  2553. sleep 0.001;
  2554. };
  2555. };
  2556.  
  2557. [] spawn {
  2558. while {true} do {
  2559. if (inputAction "buldSwitchCamera" > 0) then {
  2560. [] spawn jme_healthometer;
  2561. waitUntil{inputAction "buldSwitchCamera" == 0};
  2562. };
  2563. sleep 0.001;
  2564. };
  2565. };
  2566.  
  2567. _Stxt = parseText format["<t color='#FFFFFF'>Welcome to</t><br/><br/><t color='#ffff00'>Jme Menu v2</t><br/>~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br/><t color='#99D5FF'>Press </t><t color='#FFFFFF'>N</t><t color='#99D5FF'> to open the menu!</t> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br/><t color='#FF3B3E'>CREDITS</t><br/><t color='#FFFFFF'>m0nky, Necro, Lystic, Raiin, Bowen, Fonzy, Vince and Jme</t>"];
  2568. hintSilent _Stxt; systemchat "Jme Menu v2 Loaded";
  2569. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement