Guest User

Untitled

a guest
Jun 20th, 2018
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.90 KB | None | 0 0
  1. if(isServer) then{
  2. if( ((paramsArray select 1) == 50)) then{
  3. west_score = 50;
  4. east_score = 50;
  5. };
  6. if( ((paramsArray select 1) == 100)) then{
  7. west_score = 100;
  8. east_score = 100;
  9. };
  10. if( ((paramsArray select 1) == 150)) then{
  11. west_score = 150;
  12. east_score = 150;
  13. };
  14. if( ((paramsArray select 1) == 200)) then{
  15. west_score = 200;
  16. east_score = 200;
  17. };
  18. if( ((paramsArray select 1) == 250)) then{
  19. west_score = 250;
  20. east_score = 250;
  21. };
  22. if( ((paramsArray select 1) == 300)) then{
  23. west_score = 300;
  24. east_score = 300;
  25. };
  26. if( ((paramsArray select 1) == 350)) then{
  27. west_score = 350;
  28. east_score = 350;
  29. };
  30. if( ((paramsArray select 1) == 400)) then{
  31. west_score = 400;
  32. east_score = 400;
  33. };
  34. if( ((paramsArray select 1) == 450)) then{
  35. west_score = 450;
  36. east_score = 450;
  37. };
  38. if( ((paramsArray select 1) == 500)) then{
  39. west_score = 500;
  40. east_score = 500;
  41. };
  42.  
  43. _trigger = _this select 0;
  44. _tocapture = _this select 1;
  45. _zonemarker = _this select 2;
  46. _markerpresence = _this select 3;
  47. _zoneindicator = _this select 4;
  48. _debug = _this select 5;
  49.  
  50. _presence = 0;
  51. _timecounter = 0;
  52. _timeperiod = 60;
  53. _origindicatorpos = getMarkerPos _zoneindicator;
  54.  
  55. while { true } do {
  56.  
  57. sleep 1;
  58.  
  59. // Count the sides
  60. _west = west countSide (list _trigger);
  61. _east = east countSide (list _trigger);
  62.  
  63. // Debug
  64. //if (_debug) then { hintSilent format ["BLUFOR: %1\nOPFOR: %2\nPRESENCE: %3\nZONE:
  65.  
  66. %4\nTIMECOUNTER: %5\nWEST SCORE: %6\nEAST SCORE: %7", _west, _east, _presence, _zonemarker,
  67.  
  68. _timecounter, west_score, east_score]; };
  69.  
  70. //Ticket Counter
  71. if (_debug) then { hintSilent format ["West Tickets: %1\nEast Tickets: %2",
  72.  
  73. west_score, east_score]; call CBA_fnc_globalExecute;};
  74.  
  75. // Check if west outweighs east, if so count up
  76. if ( (_west > _east) AND (_presence < _tocapture) ) then {
  77. _presence = _presence + 1;
  78. if (_presence < 0) then {
  79. _markerpresence setMarkerColor "ColorRed";
  80. _markerpresence setMarkerSize [3,_presence*-1];
  81. }
  82. else {
  83. _markerpresence setMarkerColor "ColorBlue";
  84. _markerpresence setMarkerSize [3,_presence];
  85. };
  86. };
  87.  
  88. // Check if east outweighs west, if so count down
  89. if ( (_east > _west) AND (_presence > _tocapture*-1) ) then {
  90. _presence = _presence - 1;
  91. if (_presence > 0) then {
  92. _markerpresence setMarkerColor "ColorBlue";
  93. _markerpresence setMarkerSize [3,_presence];
  94. }
  95. else {
  96. _markerpresence setMarkerColor "ColorRed";
  97. _markerpresence setMarkerSize [3,_presence*-1];
  98. };
  99. };
  100.  
  101. // West have captured the zone
  102. if (_presence >= _tocapture AND (getMarkerColor _zonemarker) != "ColorBlue" ) then {
  103. _zonemarker setMarkerColor "ColorBlue";
  104. };
  105.  
  106. // East have captured the zone, just check for the inverted capture value
  107. if (_presence <= (_tocapture * -1) AND (getMarkerColor _zonemarker) != "ColorRed")
  108.  
  109. then {
  110. _zonemarker setMarkerColor "ColorRed";
  111. };
  112.  
  113. _zoneindicator setMarkerSize [3,_timecounter];
  114.  
  115. if (_timecounter >= _timeperiod) then {
  116. if (getMarkerColor _zonemarker == "ColorBlue") then {
  117. if( ((paramsArray select 4) == 1)) then{
  118. east_score = east_score - 1;
  119. };
  120. if( ((paramsArray select 4) == 2)) then{
  121. east_score = east_score - 2;
  122. };
  123. if( ((paramsArray select 4) == 3)) then{
  124. east_score = east_score - 3;
  125. };
  126. if( ((paramsArray select 4) == 4)) then{
  127. east_score = east_score - 4;
  128. };
  129. if( ((paramsArray select 4) == 5)) then{
  130. east_score = east_score - 5;
  131. };
  132. };
  133. if (getMarkerColor _zonemarker == "ColorRed") then {
  134. if( ((paramsArray select 4) == 1)) then{
  135. east_score = west_score - 1;
  136. };
  137. if( ((paramsArray select 4) == 2)) then{
  138. east_score = west_score - 2;
  139. };
  140. if( ((paramsArray select 4) == 3)) then{
  141. east_score = west_score - 3;
  142. };
  143. if( ((paramsArray select 4) == 4)) then{
  144. east_score = west_score - 4;
  145. };
  146. if( ((paramsArray select 4) == 5)) then{
  147. east_score = west_score - 5;
  148. };
  149. };
  150.  
  151. //END CONDITIONS
  152.  
  153. if (west_score <= 0)
  154. then{
  155. _this spawn {
  156. _text = format [
  157. "Mission End - BLUFOR has run out of tickets! OPFOR wins!"];
  158.  
  159. titleText [_text, "BLACK"];
  160. removeAllWeapons player;
  161. player enableSimulation false;
  162. sleep 1;
  163. if (!isNil "specPen") then {
  164. player setPos (getPos specPen);
  165. };
  166.  
  167. sleep 10;
  168. endMission "LOSER";
  169. };
  170. };
  171.  
  172. if (east_score <= 0)
  173. then{
  174. _this spawn {
  175. _text = format [
  176. "Mission End - OPFOR has run out of tickets! BLUFOR wins!"];
  177.  
  178. titleText [_text, "BLACK"];
  179. removeAllWeapons player;
  180. player enableSimulation false;
  181. sleep 1;
  182. if (!isNil "specPen") then {
  183. player setPos (getPos specPen);
  184. };
  185.  
  186. sleep 10;
  187. endMission "LOSER";
  188. };
  189. };
  190.  
  191. //END CONDITIONS
  192. _zoneindicator setMarkerSize [3,1];
  193. _zoneindicator setMarkerPos _origindicatorpos;
  194. _timecounter = -1;
  195. };
  196.  
  197. _timecounter = _timecounter + 1;
  198. };
  199.  
  200.  
  201. };
Add Comment
Please, Sign In to add comment