Advertisement
Guest User

Untitled

a guest
Mar 23rd, 2017
49
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.49 KB | None | 0 0
  1. [] spawn {
  2. _PlayerMarkers = [];
  3. lbSetColor[101,9,[0,1,0,1]];
  4. addMissionEventHandler["Draw3D", {
  5. {
  6. if((isPlayer _x) && ((side _x) == (side player)) && ((player distance _x) < 3000) && (getplayeruid _x != "")) then {
  7. _pos = getposatl _x;
  8. _eyepos = ASLtoATL eyepos _x;
  9. if((getTerrainHeightASL [_pos select 0,_pos select 1]) < 0) then {
  10. _eyepos = eyepos _x;
  11. _pos = getposasl _x;
  12. };
  13. _1 = _x modelToWorld [-0.5,0,0];
  14. _2 = _x modelToWorld [0.5,0,0];
  15. _3 = _x modelToWorld [-0.5,0,0];
  16. _4 = _x modelToWorld [0.5,0,0];
  17. _1 set [2,_pos select 2];
  18. _2 set [2,_pos select 2];
  19. _3 set [2,(_eyepos select 2)+0.25];
  20. _4 set [2,(_eyepos select 2)+0.25];
  21. _HP = (damage _x - 1) * -100;
  22. _fontsize = 0.02;
  23. _eyepos set [2,(_3 select 2) - 0.1];
  24. drawIcon3D["",[0,1,0,1],_eyepos,0.1,0.1,45,format["%1(%2m) - %3HP",name _x,round(player distance _x),round(_HP)],1,_fontsize,'EtelkaNarrowMediumPro'];
  25. drawLine3D[_1,_2,[0,1,0,1]];
  26. drawLine3D[_2,_4,[0,1,0,1]];
  27. drawLine3D[_4,_3,[0,1,0,1]];
  28. drawLine3D[_3,_1,[0,1,0,1]];
  29. };
  30. if((isPlayer _x) && ((side _x) != (side player)) && ((player distance _x) < 3400) && (getplayeruid _x != "")) then {
  31. _pos = getposatl _x;
  32. _eyepos = ASLtoATL eyepos _x;
  33. _1 = _x modelToWorld [-0.5,0,0];
  34. _2 = _x modelToWorld [0.5,0,0];
  35. _3 = _x modelToWorld [-0.5,0,0];
  36. _4 = _x modelToWorld [0.5,0,0];
  37. _1 set [2,_pos select 2];
  38. _2 set [2,_pos select 2];
  39. _3 set [2,(_eyepos select 2)+0.25];
  40. _4 set [2,(_eyepos select 2)+0.25];
  41. _HP = (damage _x - 1) * -100;
  42. _fontsize = 0.02;
  43. _eyepos set [2,(_3 select 2) - 0.1];
  44. drawIcon3D["",[1,0,0,1],_eyepos,0.1,0.1,45,format["%1(%2m) - %3HP",name _x,round(player distance _x),round(_HP)],1,_fontsize,'EtelkaNarrowMediumPro'];
  45. drawLine3D[_1,_2,[1,0,0,1]];
  46. drawLine3D[_2,_4,[1,0,0,1]];
  47. drawLine3D[_4,_3,[1,0,0,1]];
  48. drawLine3D[_3,_1,[1,0,0,1]];
  49. };
  50. } forEach allUnits;
  51. }];
  52.  
  53. while {true} do
  54. {
  55. {
  56. if !(_x in playableUnits) then {
  57. deleteMarkerLocal str _x;
  58. };
  59. } forEach _PlayerMarkers;
  60. {
  61. if(alive _x && side _x == west) then {
  62. deleteMarkerLocal str _x;
  63. _pSee = createMarkerLocal [str _x,getPos _x];
  64. _pSee setMarkerTypeLocal "mil_triangle";
  65. _pSee setMarkerPosLocal getPos _x;
  66. _pSee setMarkerSizeLocal [1,1];
  67. _pSee setMarkerTextLocal format['%1',_x getVariable["realname",name _x]];
  68. _pSee setMarkerColorLocal ("ColorBLUFOR");
  69. if !(_x in _PlayerMarkers) then {
  70. _PlayerMarkers pushback _x;
  71. };
  72. };
  73.  
  74. if(alive _x && side _x == independent) then {
  75. deleteMarkerLocal str _x;
  76. _pSee = createMarkerLocal [str _x,getPos _x];
  77. _pSee setMarkerTypeLocal "mil_triangle";
  78. _pSee setMarkerPosLocal getPos _x;
  79. _pSee setMarkerSizeLocal [1,1];
  80. _pSee setMarkerTextLocal format['%1',_x getVariable["realname",name _x]];
  81. _pSee setMarkerColorLocal ("ColorIndependent");
  82. if !(_x in _PlayerMarkers) then {
  83. _PlayerMarkers pushback _x;
  84. };
  85. };
  86.  
  87. if(alive _x && side _x == civilian) then {
  88. deleteMarkerLocal str _x;
  89. _pSee = createMarkerLocal [str _x,getPos _x];
  90. _pSee setMarkerTypeLocal "mil_triangle";
  91. _pSee setMarkerPosLocal getPos _x;
  92. _pSee setMarkerSizeLocal [1,1];
  93. _pSee setMarkerTextLocal format['%1',_x getVariable["realname",name _x]];
  94. _pSee setMarkerColorLocal ("ColorCivilian");
  95. if !(_x in _PlayerMarkers) then {
  96. _PlayerMarkers pushback _x;
  97. };
  98. };
  99. } forEach playableUnits;
  100. sleep 0.5;
  101. };
  102. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement