Timers and other features for Heroes of the Storm
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

187 lines
3.6 KiB

  1. /*
  2. * Copyright © 2021 Adrien Agez <adrien.agez@pm.me>
  3. *
  4. * This file is part of Nexus Timers.
  5. *
  6. * Nexus Timers is free software: you can redistribute it and/or modify
  7. * it under the terms of the GNU Affero General Public License as published by
  8. * the Free Software Foundation, either version 3 of the License, or
  9. * (at your option) any later version.
  10. *
  11. * Nexus Timers is distributed in the hope that it will be useful,
  12. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  13. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  14. * GNU Affero General Public License for more details.
  15. *
  16. * You should have received a copy of the GNU Affero General Public License
  17. * along with Nexus Timers. If not, see <https://www.gnu.org/licenses/>.
  18. */
  19. /**
  20. * This file contains informations about all objectives types in the game
  21. * They are separated in 2 arrays of objectives objects, one for mercenary camps and the other for map objectives
  22. */
  23. const BRUISER = {
  24. type: 'Bruiser',
  25. initialSpawnTime: 60,
  26. respawnTime: 240
  27. }
  28. const SIEGE = {
  29. type: 'Siege',
  30. initialSpawnTime: 60,
  31. respawnTime: 180
  32. }
  33. const BOSS = {
  34. type: 'Boss',
  35. initialSpawnTime: 300,
  36. respawnTime: 300
  37. }
  38. const REWARD = {
  39. type: 'Reward',
  40. initialSpawnTime: 60,
  41. respawnTime: 150
  42. }
  43. export const CAMPS = {
  44. // #################### BRUISER CAMPS ####################
  45. shamans: {
  46. ...BRUISER,
  47. name: 'Shamans'
  48. },
  49. knights: {
  50. ...BRUISER,
  51. name: 'Knights'
  52. },
  53. goliaths: {
  54. ...BRUISER,
  55. name: 'Goliaths and Raven'
  56. },
  57. // #################### SIEGE CAMPS ####################
  58. gnolls: {
  59. ...SIEGE,
  60. name: 'Armored Gnolls'
  61. },
  62. troopers: {
  63. ...SIEGE,
  64. name: 'Assault Troopers'
  65. },
  66. hellbats: {
  67. ...SIEGE,
  68. name: 'Hellbats'
  69. },
  70. impalers: {
  71. ...SIEGE,
  72. name: 'Impalers'
  73. },
  74. sappers: {
  75. ...SIEGE,
  76. name: 'Sappers',
  77. respawnTime: 120
  78. },
  79. sentinel: {
  80. ...SIEGE,
  81. name: 'Sentinels',
  82. respawnTime: 150
  83. },
  84. giants: {
  85. ...SIEGE,
  86. name: 'Giants'
  87. },
  88. // #################### BOSS ####################
  89. archangel: {
  90. ...BOSS,
  91. name: 'Archangel',
  92. respawnTime: 250
  93. },
  94. graveGolem: {
  95. ...BOSS,
  96. name: 'Grave Golem'
  97. },
  98. headlessHorseman: {
  99. ...BOSS,
  100. name: 'Headless Horseman'
  101. },
  102. iceGiant: {
  103. ...BOSS,
  104. name: 'Ice Giant'
  105. },
  106. megaEnforcer: {
  107. ...BOSS,
  108. name: 'Mega Enforcer'
  109. },
  110. sandGolem: {
  111. ...BOSS,
  112. name: 'Sand Golem'
  113. },
  114. slime: {
  115. ...BOSS,
  116. name: 'Slime Boss'
  117. },
  118. // #################### REWARD CAMPS ####################
  119. fortifiaction: {
  120. ...REWARD,
  121. name: 'Fortification'
  122. },
  123. recon: {
  124. ...REWARD,
  125. name: 'Recon',
  126. respawnTime: 0
  127. },
  128. skeletalPirates: {
  129. ...REWARD,
  130. name: 'Skeletal Pirates',
  131. initialSpawnTime: 90
  132. },
  133. support: {
  134. ...REWARD,
  135. name: 'Support',
  136. respawnTime: 180
  137. }
  138. }
  139. export const MAP = {
  140. shrine: {
  141. /** Infernal Shrine */
  142. name: 'Shrine',
  143. initialSpawnTime: 180,
  144. respawnTime: 180
  145. },
  146. /** Battlefield of Eternity */
  147. immortals: {
  148. name: 'Immortals',
  149. initialSpawnTime: 105,
  150. respawnTime: 180
  151. },
  152. cavalryPrison: {
  153. /** Alterac Pass */
  154. name: 'Cavalry Prison',
  155. initialSpawnTime: 180,
  156. respawnTime: 180
  157. },
  158. capturePoints: {
  159. /** Volskaya Foundry */
  160. name: 'Capture Points',
  161. initialSpawnTime: 180,
  162. respawnTime: 180
  163. },
  164. altars: {
  165. /** Towers of Doom */
  166. name: 'Altars',
  167. initialSpawnTime: 180,
  168. respawnTime: 110
  169. },
  170. temples: {
  171. /** Sky Temples */
  172. name: 'Temples',
  173. initialSpawnTime: 180,
  174. respawnTime: 180
  175. },
  176. dragon: {
  177. /** Dragon Shire */
  178. name: 'Dragon',
  179. initialSpawnTime: 90,
  180. respawnTime: 180
  181. }
  182. }