Advertisement
Guest User

Untitled

a guest
Sep 25th, 2017
49
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.16 KB | None | 0 0
  1. /*
  2. ================
  3. CheckPowerups
  4.  
  5. Check for turning off powerups
  6. ================
  7. */
  8. void() CheckPowerups =
  9. {
  10. if (self.health <= 0)
  11. return;
  12.  
  13. // invisibility
  14. if (self.invisible_finished)
  15. {
  16. // sound and screen flash when items starts to run out
  17. if (self.invisible_sound < time)
  18. {
  19. sound (self, CHAN_AUTO, "items/inv3.wav", 0.5, ATTN_IDLE);
  20. self.invisible_sound = time + ((random() * 3) + 1);
  21. }
  22.  
  23.  
  24. if (self.invisible_finished < time + 3)
  25. {
  26. if (self.invisible_time == 1)
  27. {
  28. sprint (self, PRINT_HIGH, "Ring of Shadows magic is fading\n");
  29. stuffcmd (self, "bf\n");
  30. sound (self, CHAN_AUTO, "items/inv2.wav", 1, ATTN_NORM);
  31. self.invisible_time = time + 1;
  32. }
  33.  
  34. if (self.invisible_time < time)
  35. {
  36. self.invisible_time = time + 1;
  37. stuffcmd (self, "bf\n");
  38. }
  39. }
  40.  
  41. if (self.invisible_finished < time)
  42. { // just stopped
  43. self.items = self.items - IT_INVISIBILITY;
  44. self.invisible_finished = 0;
  45. self.invisible_time = 0;
  46. }
  47.  
  48. // use the eyes
  49. self.frame = 0;
  50. self.modelindex = modelindex_eyes;
  51. }
  52. else
  53. self.modelindex = modelindex_player; // don't use eyes
  54.  
  55. // invincibility
  56. if (self.invincible_finished)
  57. {
  58. // sound and screen flash when items starts to run out
  59. if (self.invincible_finished < time + 3)
  60. {
  61. if (self.invincible_time == 1)
  62. {
  63. sprint (self, PRINT_HIGH, "Protection is almost burned out\n");
  64. stuffcmd (self, "bf\n");
  65. sound (self, CHAN_AUTO, "items/protect2.wav", 1, ATTN_NORM);
  66. self.invincible_time = time + 1;
  67. }
  68.  
  69. if (self.invincible_time < time)
  70. {
  71. self.invincible_time = time + 1;
  72. stuffcmd (self, "bf\n");
  73. }
  74. }
  75.  
  76. if (self.invincible_finished < time)
  77. { // just stopped
  78. self.items = self.items - IT_INVULNERABILITY;
  79. self.invincible_time = 0;
  80. self.invincible_finished = 0;
  81. }
  82. if (self.invincible_finished > time)
  83. {
  84. self.effects = self.effects | EF_DIMLIGHT;
  85. self.effects = self.effects | EF_RED;
  86. }
  87. else
  88. {
  89. self.effects = self.effects - (self.effects & EF_DIMLIGHT);
  90. self.effects = self.effects - (self.effects & EF_RED);
  91. }
  92. }
  93.  
  94. // super damage
  95. if (self.super_damage_finished)
  96. {
  97.  
  98. // sound and screen flash when items starts to run out
  99. if ( quadToggledOff )
  100. self.super_damage_finished = time-4; // -4 just in case
  101.  
  102. if (self.super_damage_finished < time + 3)
  103. {
  104. if (self.super_time == 1)
  105. {
  106. if (deathmatch == 4)
  107. sprint (self, PRINT_HIGH, "OctaPower is wearing off\n");
  108. else
  109. sprint (self, PRINT_HIGH, "Quad Damage is wearing off\n");
  110. stuffcmd (self, "bf\n");
  111. sound (self, CHAN_AUTO, "items/damage2.wav", 1, ATTN_NORM);
  112. self.super_time = time + 1;
  113. }
  114.  
  115. if (self.super_time < time)
  116. {
  117. self.super_time = time + 1;
  118. stuffcmd (self, "bf\n");
  119. }
  120. }
  121.  
  122. if (self.super_damage_finished < time)
  123. { // just stopped
  124. self.items = self.items - IT_QUAD;
  125. if (deathmatch == 4)
  126. {
  127. self.ammo_cells = 255;
  128. self.armorvalue = 1;
  129. self.armortype = 0.8;
  130. self.health = 100;
  131. }
  132. self.super_damage_finished = 0;
  133. self.super_time = 0;
  134. }
  135. if (self.super_damage_finished > time)
  136. {
  137. self.effects = self.effects | EF_DIMLIGHT;
  138. self.effects = self.effects | EF_BLUE;
  139. }
  140. else
  141. {
  142. self.effects = self.effects - (self.effects & EF_DIMLIGHT);
  143. self.effects = self.effects - (self.effects & EF_BLUE);
  144. }
  145. }
  146.  
  147. // suit
  148. if (self.radsuit_finished)
  149. {
  150. self.air_finished = time + 12; // don't drown
  151.  
  152. // sound and screen flash when items starts to run out
  153. if (self.radsuit_finished < time + 3)
  154. {
  155. if (self.rad_time == 1)
  156. {
  157. sprint (self, PRINT_HIGH, "Air supply in Biosuit expiring\n");
  158. stuffcmd (self, "bf\n");
  159. sound (self, CHAN_AUTO, "items/suit2.wav", 1, ATTN_NORM);
  160. self.rad_time = time + 1;
  161. }
  162.  
  163. if (self.rad_time < time)
  164. {
  165. self.rad_time = time + 1;
  166. stuffcmd (self, "bf\n");
  167. }
  168. }
  169.  
  170. if (self.radsuit_finished < time)
  171. { // just stopped
  172. self.items = self.items - IT_SUIT;
  173. self.rad_time = 0;
  174. self.radsuit_finished = 0;
  175. }
  176. }
  177.  
  178. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement