@gamepark/mythologies 0.10.0 → 0.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (319) hide show
  1. package/dist/CustomMoveType.d.ts +14 -14
  2. package/dist/CustomMoveType.js +11 -14
  3. package/dist/Memory.d.ts +14 -14
  4. package/dist/Memory.js +15 -18
  5. package/dist/MythologiesOptions.d.ts +12 -12
  6. package/dist/MythologiesOptions.js +22 -25
  7. package/dist/MythologiesRules.d.ts +158 -158
  8. package/dist/MythologiesRules.js +216 -244
  9. package/dist/MythologiesSetup.d.ts +17 -17
  10. package/dist/MythologiesSetup.js +84 -161
  11. package/dist/PlayerColor.d.ts +10 -10
  12. package/dist/PlayerColor.js +7 -10
  13. package/dist/index.d.ts +3 -3
  14. package/dist/index.js +3 -9
  15. package/dist/material/Destiny.d.ts +15 -15
  16. package/dist/material/Destiny.js +91 -130
  17. package/dist/material/Entity.d.ts +102 -102
  18. package/dist/material/Entity.js +92 -99
  19. package/dist/material/LocationType.d.ts +28 -28
  20. package/dist/material/LocationType.js +29 -33
  21. package/dist/material/MaterialType.d.ts +13 -13
  22. package/dist/material/MaterialType.js +14 -17
  23. package/dist/material/Mythology.d.ts +18 -18
  24. package/dist/material/Mythology.js +16 -19
  25. package/dist/material/Pantheon.d.ts +50 -50
  26. package/dist/material/Pantheon.js +294 -484
  27. package/dist/material/Trial.d.ts +22 -22
  28. package/dist/material/Trial.js +139 -183
  29. package/dist/material/entity/AutoEffectRule.d.ts +11 -11
  30. package/dist/material/entity/AutoEffectRule.js +16 -49
  31. package/dist/material/entity/Effect.d.ts +106 -106
  32. package/dist/material/entity/Effect.js +26 -46
  33. package/dist/material/entity/EntityDescription.d.ts +13 -13
  34. package/dist/material/entity/EntityDescription.js +165 -170
  35. package/dist/material/entity/MoveEffectRule.d.ts +18 -18
  36. package/dist/material/entity/MoveEffectRule.js +73 -129
  37. package/dist/material/entity/PlaceCardEffectRule.d.ts +15 -15
  38. package/dist/material/entity/PlaceCardEffectRule.js +43 -78
  39. package/dist/material/entity/PlayerEffectRule.d.ts +14 -14
  40. package/dist/material/entity/PlayerEffectRule.js +36 -63
  41. package/dist/material/entity/SacrificeEffectRule.d.ts +11 -11
  42. package/dist/material/entity/SacrificeEffectRule.js +40 -64
  43. package/dist/material/entity/SimultaneousEffectRule.d.ts +18 -18
  44. package/dist/material/entity/SimultaneousEffectRule.js +64 -149
  45. package/dist/material/entity/SimultaneousMoveEffectRule.d.ts +17 -17
  46. package/dist/material/entity/SimultaneousMoveEffectRule.js +65 -141
  47. package/dist/material/entity/SimultaneousSacrificeEffectRule.d.ts +10 -10
  48. package/dist/material/entity/SimultaneousSacrificeEffectRule.js +31 -55
  49. package/dist/material/entity/celtic/Banshee.d.ts +2 -2
  50. package/dist/material/entity/celtic/Banshee.js +23 -46
  51. package/dist/material/entity/celtic/Brigid.d.ts +2 -2
  52. package/dist/material/entity/celtic/Brigid.js +17 -40
  53. package/dist/material/entity/celtic/Cernunnos.d.ts +2 -2
  54. package/dist/material/entity/celtic/Cernunnos.js +19 -43
  55. package/dist/material/entity/celtic/Dagda.d.ts +2 -2
  56. package/dist/material/entity/celtic/Dagda.js +26 -50
  57. package/dist/material/entity/celtic/Dullahan.d.ts +2 -2
  58. package/dist/material/entity/celtic/Dullahan.js +9 -12
  59. package/dist/material/entity/celtic/Fairy.d.ts +2 -2
  60. package/dist/material/entity/celtic/Fairy.js +9 -12
  61. package/dist/material/entity/celtic/Kelpie.d.ts +2 -2
  62. package/dist/material/entity/celtic/Kelpie.js +16 -39
  63. package/dist/material/entity/celtic/Leprechaun.d.ts +2 -2
  64. package/dist/material/entity/celtic/Leprechaun.js +9 -12
  65. package/dist/material/entity/celtic/Morrigan.d.ts +2 -2
  66. package/dist/material/entity/celtic/Morrigan.js +8 -11
  67. package/dist/material/entity/celtic/Selkie.d.ts +2 -2
  68. package/dist/material/entity/celtic/Selkie.js +14 -17
  69. package/dist/material/entity/chinese/ChangE.d.ts +2 -2
  70. package/dist/material/entity/chinese/ChangE.js +6 -9
  71. package/dist/material/entity/chinese/Fenghuang.d.ts +2 -2
  72. package/dist/material/entity/chinese/Fenghuang.js +10 -15
  73. package/dist/material/entity/chinese/Jiangshi.d.ts +2 -2
  74. package/dist/material/entity/chinese/Jiangshi.js +9 -12
  75. package/dist/material/entity/chinese/Mogwai.d.ts +2 -2
  76. package/dist/material/entity/chinese/Mogwai.js +18 -44
  77. package/dist/material/entity/chinese/Nian.d.ts +2 -2
  78. package/dist/material/entity/chinese/Nian.js +19 -42
  79. package/dist/material/entity/chinese/Nuwa.d.ts +2 -2
  80. package/dist/material/entity/chinese/Nuwa.js +9 -12
  81. package/dist/material/entity/chinese/Qilin.d.ts +2 -2
  82. package/dist/material/entity/chinese/Qilin.js +9 -12
  83. package/dist/material/entity/chinese/SunWukong.d.ts +2 -2
  84. package/dist/material/entity/chinese/SunWukong.js +17 -43
  85. package/dist/material/entity/chinese/Tianlong.d.ts +2 -2
  86. package/dist/material/entity/chinese/Tianlong.js +9 -12
  87. package/dist/material/entity/chinese/YanluoWang.d.ts +2 -2
  88. package/dist/material/entity/chinese/YanluoWang.js +9 -12
  89. package/dist/material/entity/egyptian/Ammit.d.ts +2 -2
  90. package/dist/material/entity/egyptian/Ammit.js +9 -12
  91. package/dist/material/entity/egyptian/Anubis.d.ts +2 -2
  92. package/dist/material/entity/egyptian/Anubis.js +9 -12
  93. package/dist/material/entity/egyptian/Beetle.d.ts +2 -2
  94. package/dist/material/entity/egyptian/Beetle.js +20 -43
  95. package/dist/material/entity/egyptian/Bennu.d.ts +2 -2
  96. package/dist/material/entity/egyptian/Bennu.js +9 -12
  97. package/dist/material/entity/egyptian/Cobra.d.ts +2 -2
  98. package/dist/material/entity/egyptian/Cobra.js +9 -12
  99. package/dist/material/entity/egyptian/Isis.d.ts +2 -2
  100. package/dist/material/entity/egyptian/Isis.js +15 -41
  101. package/dist/material/entity/egyptian/Mummy.d.ts +2 -2
  102. package/dist/material/entity/egyptian/Mummy.js +17 -40
  103. package/dist/material/entity/egyptian/Osiris.d.ts +2 -2
  104. package/dist/material/entity/egyptian/Osiris.js +24 -72
  105. package/dist/material/entity/egyptian/Ra.d.ts +2 -2
  106. package/dist/material/entity/egyptian/Ra.js +9 -12
  107. package/dist/material/entity/egyptian/Sphinx.d.ts +2 -2
  108. package/dist/material/entity/egyptian/Sphinx.js +9 -12
  109. package/dist/material/entity/greek/Athena.d.ts +2 -2
  110. package/dist/material/entity/greek/Athena.js +9 -12
  111. package/dist/material/entity/greek/Centaur.d.ts +2 -2
  112. package/dist/material/entity/greek/Centaur.js +9 -12
  113. package/dist/material/entity/greek/Chimera.d.ts +2 -2
  114. package/dist/material/entity/greek/Chimera.js +9 -12
  115. package/dist/material/entity/greek/Cyclops.d.ts +2 -2
  116. package/dist/material/entity/greek/Cyclops.js +15 -19
  117. package/dist/material/entity/greek/Gorgon.d.ts +2 -2
  118. package/dist/material/entity/greek/Gorgon.js +9 -12
  119. package/dist/material/entity/greek/Griffin.d.ts +2 -2
  120. package/dist/material/entity/greek/Griffin.js +9 -12
  121. package/dist/material/entity/greek/Hades.d.ts +2 -2
  122. package/dist/material/entity/greek/Hades.js +9 -12
  123. package/dist/material/entity/greek/Minotaur.d.ts +2 -2
  124. package/dist/material/entity/greek/Minotaur.js +9 -12
  125. package/dist/material/entity/greek/Poseidon.d.ts +2 -2
  126. package/dist/material/entity/greek/Poseidon.js +20 -46
  127. package/dist/material/entity/greek/Zeus.d.ts +2 -2
  128. package/dist/material/entity/greek/Zeus.js +17 -40
  129. package/dist/material/entity/hindu/Asura.d.ts +2 -2
  130. package/dist/material/entity/hindu/Asura.js +19 -67
  131. package/dist/material/entity/hindu/Brahma.d.ts +2 -2
  132. package/dist/material/entity/hindu/Brahma.js +14 -37
  133. package/dist/material/entity/hindu/Ganesh.d.ts +2 -2
  134. package/dist/material/entity/hindu/Ganesh.js +18 -41
  135. package/dist/material/entity/hindu/Garuda.d.ts +2 -2
  136. package/dist/material/entity/hindu/Garuda.js +9 -12
  137. package/dist/material/entity/hindu/Kinnara.d.ts +2 -2
  138. package/dist/material/entity/hindu/Kinnara.js +9 -12
  139. package/dist/material/entity/hindu/Naga.d.ts +2 -2
  140. package/dist/material/entity/hindu/Naga.js +29 -75
  141. package/dist/material/entity/hindu/Rakshasa.d.ts +2 -2
  142. package/dist/material/entity/hindu/Rakshasa.js +9 -12
  143. package/dist/material/entity/hindu/Shiva.d.ts +2 -2
  144. package/dist/material/entity/hindu/Shiva.js +9 -12
  145. package/dist/material/entity/hindu/Vetala.d.ts +2 -2
  146. package/dist/material/entity/hindu/Vetala.js +9 -12
  147. package/dist/material/entity/hindu/Vishnu.d.ts +2 -2
  148. package/dist/material/entity/hindu/Vishnu.js +20 -68
  149. package/dist/material/entity/inca/Amaru.d.ts +2 -2
  150. package/dist/material/entity/inca/Amaru.js +15 -38
  151. package/dist/material/entity/inca/Caiman.d.ts +2 -2
  152. package/dist/material/entity/inca/Caiman.js +9 -12
  153. package/dist/material/entity/inca/Condor.d.ts +2 -2
  154. package/dist/material/entity/inca/Condor.js +9 -12
  155. package/dist/material/entity/inca/Illapa.d.ts +2 -2
  156. package/dist/material/entity/inca/Illapa.js +9 -12
  157. package/dist/material/entity/inca/Inti.d.ts +2 -2
  158. package/dist/material/entity/inca/Inti.js +16 -39
  159. package/dist/material/entity/inca/MamaQucha.d.ts +2 -2
  160. package/dist/material/entity/inca/MamaQucha.js +20 -43
  161. package/dist/material/entity/inca/Puma.d.ts +2 -2
  162. package/dist/material/entity/inca/Puma.js +14 -40
  163. package/dist/material/entity/inca/Supay.d.ts +2 -2
  164. package/dist/material/entity/inca/Supay.js +9 -12
  165. package/dist/material/entity/inca/Ukuku.d.ts +2 -2
  166. package/dist/material/entity/inca/Ukuku.js +14 -18
  167. package/dist/material/entity/inca/Viracocha.d.ts +2 -2
  168. package/dist/material/entity/inca/Viracocha.js +9 -12
  169. package/dist/material/entity/norse/Alf.d.ts +2 -2
  170. package/dist/material/entity/norse/Alf.js +9 -12
  171. package/dist/material/entity/norse/Draugr.d.ts +2 -2
  172. package/dist/material/entity/norse/Draugr.js +9 -12
  173. package/dist/material/entity/norse/Fenrir.d.ts +2 -2
  174. package/dist/material/entity/norse/Fenrir.js +9 -12
  175. package/dist/material/entity/norse/Freya.d.ts +2 -2
  176. package/dist/material/entity/norse/Freya.js +17 -40
  177. package/dist/material/entity/norse/Jotunn.d.ts +2 -2
  178. package/dist/material/entity/norse/Jotunn.js +15 -38
  179. package/dist/material/entity/norse/Loki.d.ts +2 -2
  180. package/dist/material/entity/norse/Loki.js +14 -37
  181. package/dist/material/entity/norse/Odin.d.ts +2 -2
  182. package/dist/material/entity/norse/Odin.js +3 -6
  183. package/dist/material/entity/norse/Thor.d.ts +2 -2
  184. package/dist/material/entity/norse/Thor.js +9 -12
  185. package/dist/material/entity/norse/Troll.d.ts +2 -2
  186. package/dist/material/entity/norse/Troll.js +6 -9
  187. package/dist/material/entity/norse/Valkyrie.d.ts +2 -2
  188. package/dist/material/entity/norse/Valkyrie.js +27 -73
  189. package/dist/material/entity/zulu/Idlozi.d.ts +2 -2
  190. package/dist/material/entity/zulu/Idlozi.js +9 -12
  191. package/dist/material/entity/zulu/Impundulu.d.ts +2 -2
  192. package/dist/material/entity/zulu/Impundulu.js +9 -12
  193. package/dist/material/entity/zulu/Inkanyamba.d.ts +2 -2
  194. package/dist/material/entity/zulu/Inkanyamba.js +16 -42
  195. package/dist/material/entity/zulu/Inkosazana.d.ts +2 -2
  196. package/dist/material/entity/zulu/Inkosazana.js +9 -12
  197. package/dist/material/entity/zulu/Shembe.d.ts +2 -2
  198. package/dist/material/entity/zulu/Shembe.js +19 -44
  199. package/dist/material/entity/zulu/Tokoloshe.d.ts +2 -2
  200. package/dist/material/entity/zulu/Tokoloshe.js +24 -47
  201. package/dist/material/entity/zulu/Umvelinqangi.d.ts +2 -2
  202. package/dist/material/entity/zulu/Umvelinqangi.js +22 -45
  203. package/dist/material/entity/zulu/Unkulunkulu.d.ts +2 -2
  204. package/dist/material/entity/zulu/Unkulunkulu.js +20 -43
  205. package/dist/material/entity/zulu/Unwabu.d.ts +2 -2
  206. package/dist/material/entity/zulu/Unwabu.js +25 -49
  207. package/dist/material/entity/zulu/Werehyena.d.ts +2 -2
  208. package/dist/material/entity/zulu/Werehyena.js +9 -12
  209. package/dist/rules/ChooseDraftTokenRule.d.ts +15 -15
  210. package/dist/rules/ChooseDraftTokenRule.js +54 -103
  211. package/dist/rules/DrawDestinyCardRule.d.ts +7 -7
  212. package/dist/rules/DrawDestinyCardRule.js +44 -115
  213. package/dist/rules/EndGameRule.d.ts +5 -5
  214. package/dist/rules/EndGameRule.js +34 -105
  215. package/dist/rules/PlaceCardsRule.d.ts +14 -14
  216. package/dist/rules/PlaceCardsRule.js +107 -206
  217. package/dist/rules/PlaceTokenRule.d.ts +12 -12
  218. package/dist/rules/PlaceTokenRule.js +75 -151
  219. package/dist/rules/RuleId.d.ts +65 -65
  220. package/dist/rules/RuleId.js +66 -69
  221. package/dist/rules/UpkeepRule.d.ts +9 -9
  222. package/dist/rules/UpkeepRule.js +56 -154
  223. package/dist/rules/effects/AlfEffectRule.d.ts +10 -10
  224. package/dist/rules/effects/AlfEffectRule.js +33 -59
  225. package/dist/rules/effects/AmmitEffectRule.d.ts +6 -6
  226. package/dist/rules/effects/AmmitEffectRule.js +15 -40
  227. package/dist/rules/effects/AnubisEffectRule.d.ts +9 -9
  228. package/dist/rules/effects/AnubisEffectRule.js +24 -49
  229. package/dist/rules/effects/AthenaEffectRule.d.ts +10 -10
  230. package/dist/rules/effects/AthenaEffectRule.js +48 -150
  231. package/dist/rules/effects/BennuEffectRule.d.ts +6 -6
  232. package/dist/rules/effects/BennuEffectRule.js +10 -35
  233. package/dist/rules/effects/CaimanEffectRule.d.ts +7 -7
  234. package/dist/rules/effects/CaimanEffectRule.js +23 -72
  235. package/dist/rules/effects/CentaurEffectRule.d.ts +15 -15
  236. package/dist/rules/effects/CentaurEffectRule.js +36 -95
  237. package/dist/rules/effects/ChimeraEffectRule.d.ts +8 -8
  238. package/dist/rules/effects/ChimeraEffectRule.js +15 -40
  239. package/dist/rules/effects/CobraEffectRule.d.ts +13 -13
  240. package/dist/rules/effects/CobraEffectRule.js +30 -61
  241. package/dist/rules/effects/CondorEffectRule.d.ts +8 -8
  242. package/dist/rules/effects/CondorEffectRule.js +20 -45
  243. package/dist/rules/effects/CyclopsEffectRule.d.ts +11 -11
  244. package/dist/rules/effects/CyclopsEffectRule.js +50 -106
  245. package/dist/rules/effects/DraugrEffectRule.d.ts +11 -11
  246. package/dist/rules/effects/DraugrEffectRule.js +32 -58
  247. package/dist/rules/effects/DullahanEffectRule.d.ts +11 -11
  248. package/dist/rules/effects/DullahanEffectRule.js +48 -73
  249. package/dist/rules/effects/FairyEffectRule.d.ts +10 -10
  250. package/dist/rules/effects/FairyEffectRule.js +33 -55
  251. package/dist/rules/effects/FenghuangEffectRule.d.ts +8 -8
  252. package/dist/rules/effects/FenghuangEffectRule.js +18 -48
  253. package/dist/rules/effects/FenrirEffectRule.d.ts +16 -16
  254. package/dist/rules/effects/FenrirEffectRule.js +85 -139
  255. package/dist/rules/effects/GarudaEffectRule.d.ts +16 -16
  256. package/dist/rules/effects/GarudaEffectRule.js +55 -113
  257. package/dist/rules/effects/GorgonEffectRule.d.ts +7 -7
  258. package/dist/rules/effects/GorgonEffectRule.js +15 -40
  259. package/dist/rules/effects/GriffinEffectRule.d.ts +9 -9
  260. package/dist/rules/effects/GriffinEffectRule.js +16 -41
  261. package/dist/rules/effects/HadesEffectRule.d.ts +9 -9
  262. package/dist/rules/effects/HadesEffectRule.js +14 -39
  263. package/dist/rules/effects/IdloziEffectRule.d.ts +9 -9
  264. package/dist/rules/effects/IdloziEffectRule.js +21 -46
  265. package/dist/rules/effects/IllapaEffectRule.d.ts +16 -16
  266. package/dist/rules/effects/IllapaEffectRule.js +43 -76
  267. package/dist/rules/effects/ImpunduluEffectRule.d.ts +10 -10
  268. package/dist/rules/effects/ImpunduluEffectRule.js +39 -77
  269. package/dist/rules/effects/InkosazanaEffectRule.d.ts +7 -7
  270. package/dist/rules/effects/InkosazanaEffectRule.js +21 -46
  271. package/dist/rules/effects/JiangshiEffectRule.d.ts +8 -8
  272. package/dist/rules/effects/JiangshiEffectRule.js +25 -51
  273. package/dist/rules/effects/KinnaraEffectRule.d.ts +13 -13
  274. package/dist/rules/effects/KinnaraEffectRule.js +42 -95
  275. package/dist/rules/effects/LeprechaunEffectRule.d.ts +9 -9
  276. package/dist/rules/effects/LeprechaunEffectRule.js +23 -49
  277. package/dist/rules/effects/MinotaurEffectRule.d.ts +11 -11
  278. package/dist/rules/effects/MinotaurEffectRule.js +23 -49
  279. package/dist/rules/effects/MultipleSimultaneousMoveEffectRule.d.ts +14 -14
  280. package/dist/rules/effects/MultipleSimultaneousMoveEffectRule.js +71 -144
  281. package/dist/rules/effects/NuwaEffectRule.d.ts +14 -14
  282. package/dist/rules/effects/NuwaEffectRule.js +57 -106
  283. package/dist/rules/effects/OdinEffectRule.d.ts +11 -11
  284. package/dist/rules/effects/OdinEffectRule.js +27 -52
  285. package/dist/rules/effects/PermanentEffectsRule.d.ts +7 -7
  286. package/dist/rules/effects/PermanentEffectsRule.js +21 -54
  287. package/dist/rules/effects/QilinEffectRule.d.ts +8 -8
  288. package/dist/rules/effects/QilinEffectRule.js +40 -115
  289. package/dist/rules/effects/RaEffectRule.d.ts +9 -9
  290. package/dist/rules/effects/RaEffectRule.js +14 -39
  291. package/dist/rules/effects/RakshasaEffectRule.d.ts +13 -13
  292. package/dist/rules/effects/RakshasaEffectRule.js +23 -48
  293. package/dist/rules/effects/ResolveEffectsRule.d.ts +12 -12
  294. package/dist/rules/effects/ResolveEffectsRule.js +87 -141
  295. package/dist/rules/effects/SelkieEffectRule.d.ts +8 -8
  296. package/dist/rules/effects/SelkieEffectRule.js +19 -44
  297. package/dist/rules/effects/ShivaEffectRule.d.ts +10 -10
  298. package/dist/rules/effects/ShivaEffectRule.js +35 -61
  299. package/dist/rules/effects/SphinxEffectRule.d.ts +10 -10
  300. package/dist/rules/effects/SphinxEffectRule.js +33 -58
  301. package/dist/rules/effects/SupayEffectRule.d.ts +20 -20
  302. package/dist/rules/effects/SupayEffectRule.js +44 -81
  303. package/dist/rules/effects/ThorEffectRule.d.ts +11 -11
  304. package/dist/rules/effects/ThorEffectRule.js +32 -58
  305. package/dist/rules/effects/TianlongEffectRule.d.ts +17 -17
  306. package/dist/rules/effects/TianlongEffectRule.js +47 -105
  307. package/dist/rules/effects/TriggerEffectsRule.d.ts +11 -11
  308. package/dist/rules/effects/TriggerEffectsRule.js +65 -183
  309. package/dist/rules/effects/UkukuEffectRule.d.ts +14 -14
  310. package/dist/rules/effects/UkukuEffectRule.js +35 -66
  311. package/dist/rules/effects/VetalaEffectRule.d.ts +12 -12
  312. package/dist/rules/effects/VetalaEffectRule.js +37 -62
  313. package/dist/rules/effects/ViracochaEffectRule.d.ts +7 -7
  314. package/dist/rules/effects/ViracochaEffectRule.js +15 -40
  315. package/dist/rules/effects/WerehyenaEffectRule.d.ts +8 -8
  316. package/dist/rules/effects/WerehyenaEffectRule.js +37 -98
  317. package/dist/rules/effects/YanluoWangEffectRule.d.ts +9 -9
  318. package/dist/rules/effects/YanluoWangEffectRule.js +46 -104
  319. package/package.json +7 -8
@@ -1,113 +1,55 @@
1
- "use strict";
2
- var __extends = (this && this.__extends) || (function () {
3
- var extendStatics = function (d, b) {
4
- extendStatics = Object.setPrototypeOf ||
5
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
- return extendStatics(d, b);
8
- };
9
- return function (d, b) {
10
- if (typeof b !== "function" && b !== null)
11
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
- extendStatics(d, b);
13
- function __() { this.constructor = d; }
14
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
- };
16
- })();
17
- var __read = (this && this.__read) || function (o, n) {
18
- var m = typeof Symbol === "function" && o[Symbol.iterator];
19
- if (!m) return o;
20
- var i = m.call(o), r, ar = [], e;
21
- try {
22
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
23
- }
24
- catch (error) { e = { error: error }; }
25
- finally {
26
- try {
27
- if (r && !r.done && (m = i["return"])) m.call(i);
28
- }
29
- finally { if (e) throw e.error; }
30
- }
31
- return ar;
32
- };
33
- var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
34
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
35
- if (ar || !(i in from)) {
36
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
37
- ar[i] = from[i];
38
- }
39
- }
40
- return to.concat(ar || Array.prototype.slice.call(from));
41
- };
42
- Object.defineProperty(exports, "__esModule", { value: true });
43
- exports.GarudaSacrificeRule = exports.GarudaEffectRule = void 0;
44
- var lodash_1 = require("lodash");
45
- var CustomMoveType_1 = require("../../CustomMoveType");
46
- var Entity_1 = require("../../material/Entity");
47
- var PlayerEffectRule_1 = require("../../material/entity/PlayerEffectRule");
48
- var SacrificeEffectRule_1 = require("../../material/entity/SacrificeEffectRule");
49
- var Pantheon_1 = require("../../material/Pantheon");
50
- var Memory_1 = require("../../Memory");
51
- var RuleId_1 = require("../RuleId");
52
- var GarudaEffectRule = (function (_super) {
53
- __extends(GarudaEffectRule, _super);
54
- function GarudaEffectRule() {
55
- var _this = _super !== null && _super.apply(this, arguments) || this;
56
- _this.ruleId = RuleId_1.RuleId.GarudaEffect;
57
- return _this;
58
- }
59
- GarudaEffectRule.prototype.getPlayerMoves = function () {
60
- var _this = this;
61
- return (0, lodash_1.range)(0, 3).map(function (line) { return _this.customMove(CustomMoveType_1.CustomMoveType.ChoosePlan, line); });
62
- };
63
- GarudaEffectRule.prototype.onCustomMove = function (move) {
64
- if (move.type === CustomMoveType_1.CustomMoveType.ChoosePlan) {
65
- this.memorize(Memory_1.Memory.TargetPlane, move.data);
66
- return [this.startRule(RuleId_1.RuleId.GarudaSacrifice)];
67
- }
68
- return _super.prototype.onCustomMove.call(this, move);
69
- };
70
- return GarudaEffectRule;
71
- }(PlayerEffectRule_1.PlayerEffectRule));
72
- exports.GarudaEffectRule = GarudaEffectRule;
73
- var GarudaSacrificeRule = (function (_super) {
74
- __extends(GarudaSacrificeRule, _super);
75
- function GarudaSacrificeRule() {
76
- var _this = _super !== null && _super.apply(this, arguments) || this;
77
- _this.ruleId = RuleId_1.RuleId.GarudaSacrifice;
78
- return _this;
79
- }
80
- GarudaSacrificeRule.prototype.onRuleStart = function () {
81
- var count = this.getCardsToSacrifice().length;
82
- if (!count)
83
- return [this.customMove(CustomMoveType_1.CustomMoveType.EndEffect)];
84
- this.memorize(Memory_1.Memory.EffectCount, count);
85
- var moves = [new Pantheon_1.Pantheon(this.game, this.player).gainGems(count)];
86
- var playerMoves = this.getPlayerMoves();
87
- if (playerMoves.length === count) {
88
- moves.push.apply(moves, __spreadArray([], __read(playerMoves), false));
89
- }
90
- return moves;
91
- };
92
- GarudaSacrificeRule.prototype.getCardsToSacrifice = function () {
93
- var pantheon = new Pantheon_1.Pantheon(this.game, this.player);
94
- var plan = this.remind(Memory_1.Memory.TargetPlane);
95
- return pantheon.visibleEntities.id(function (id) { return (0, Entity_1.isCreature)(id.front); }).location(function (l) { return l.y === plan; });
96
- };
97
- GarudaSacrificeRule.prototype.onSacrifice = function () {
98
- var sacrificeLeft = this.memorize(Memory_1.Memory.EffectCount, function (count) { return count - 1; });
99
- if (sacrificeLeft) {
100
- return [];
101
- }
102
- else {
103
- this.forget(Memory_1.Memory.EffectCount);
104
- return [this.customMove(CustomMoveType_1.CustomMoveType.EndEffect)];
105
- }
106
- };
107
- GarudaSacrificeRule.prototype.onRuleEnd = function () {
108
- this.forget(Memory_1.Memory.TargetPlane);
109
- return [];
110
- };
111
- return GarudaSacrificeRule;
112
- }(SacrificeEffectRule_1.SacrificeEffectRule));
113
- exports.GarudaSacrificeRule = GarudaSacrificeRule;
1
+ import { range } from 'es-toolkit';
2
+ import { CustomMoveType } from '../../CustomMoveType';
3
+ import { isCreature } from '../../material/Entity';
4
+ import { PlayerEffectRule } from '../../material/entity/PlayerEffectRule';
5
+ import { SacrificeEffectRule } from '../../material/entity/SacrificeEffectRule';
6
+ import { Pantheon } from '../../material/Pantheon';
7
+ import { Memory } from '../../Memory';
8
+ import { RuleId } from '../RuleId';
9
+ export class GarudaEffectRule extends PlayerEffectRule {
10
+ ruleId = RuleId.GarudaEffect;
11
+ getPlayerMoves() {
12
+ return range(0, 3).map((line) => this.customMove(CustomMoveType.ChoosePlan, line));
13
+ }
14
+ onCustomMove(move) {
15
+ if (move.type === CustomMoveType.ChoosePlan) {
16
+ this.memorize(Memory.TargetPlane, move.data);
17
+ return [this.startRule(RuleId.GarudaSacrifice)];
18
+ }
19
+ return super.onCustomMove(move);
20
+ }
21
+ }
22
+ export class GarudaSacrificeRule extends SacrificeEffectRule {
23
+ ruleId = RuleId.GarudaSacrifice;
24
+ onRuleStart() {
25
+ const count = this.getCardsToSacrifice().length;
26
+ if (!count)
27
+ return [this.customMove(CustomMoveType.EndEffect)];
28
+ this.memorize(Memory.EffectCount, count);
29
+ const moves = [new Pantheon(this.game, this.player).gainGems(count)];
30
+ const playerMoves = this.getPlayerMoves();
31
+ if (playerMoves.length === count) {
32
+ moves.push(...playerMoves);
33
+ }
34
+ return moves;
35
+ }
36
+ getCardsToSacrifice() {
37
+ const pantheon = new Pantheon(this.game, this.player);
38
+ const plan = this.remind(Memory.TargetPlane);
39
+ return pantheon.visibleEntities.id((id) => isCreature(id.front)).location((l) => l.y === plan);
40
+ }
41
+ onSacrifice() {
42
+ const sacrificeLeft = this.memorize(Memory.EffectCount, (count) => count - 1);
43
+ if (sacrificeLeft) {
44
+ return [];
45
+ }
46
+ else {
47
+ this.forget(Memory.EffectCount);
48
+ return [this.customMove(CustomMoveType.EndEffect)];
49
+ }
50
+ }
51
+ onRuleEnd() {
52
+ this.forget(Memory.TargetPlane);
53
+ return [];
54
+ }
55
+ }
@@ -1,7 +1,7 @@
1
- import { SacrificeEffectRule } from '../../material/entity/SacrificeEffectRule';
2
- import { RuleId } from '../RuleId';
3
- export declare class GorgonEffectRule extends SacrificeEffectRule {
4
- ruleId: RuleId;
5
- getCardsToSacrifice(): import("@gamepark/rules-api").Material<number, number, number>;
6
- onSacrifice(): (import("@gamepark/rules-api").CustomMove<number> | import("@gamepark/rules-api").CreateItem<number, number, number>)[];
7
- }
1
+ import { SacrificeEffectRule } from '../../material/entity/SacrificeEffectRule';
2
+ import { RuleId } from '../RuleId';
3
+ export declare class GorgonEffectRule extends SacrificeEffectRule {
4
+ ruleId: RuleId;
5
+ getCardsToSacrifice(): import("@gamepark/rules-api").Material<number, number, number>;
6
+ onSacrifice(): (import("@gamepark/rules-api").CustomMove | import("@gamepark/rules-api").CreateItem<number, number, number>)[];
7
+ }
@@ -1,40 +1,15 @@
1
- "use strict";
2
- var __extends = (this && this.__extends) || (function () {
3
- var extendStatics = function (d, b) {
4
- extendStatics = Object.setPrototypeOf ||
5
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
- return extendStatics(d, b);
8
- };
9
- return function (d, b) {
10
- if (typeof b !== "function" && b !== null)
11
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
- extendStatics(d, b);
13
- function __() { this.constructor = d; }
14
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
- };
16
- })();
17
- Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.GorgonEffectRule = void 0;
19
- var CustomMoveType_1 = require("../../CustomMoveType");
20
- var SacrificeEffectRule_1 = require("../../material/entity/SacrificeEffectRule");
21
- var Pantheon_1 = require("../../material/Pantheon");
22
- var RuleId_1 = require("../RuleId");
23
- var GorgonEffectRule = (function (_super) {
24
- __extends(GorgonEffectRule, _super);
25
- function GorgonEffectRule() {
26
- var _this = _super !== null && _super.apply(this, arguments) || this;
27
- _this.ruleId = RuleId_1.RuleId.GorgonEffect;
28
- return _this;
29
- }
30
- GorgonEffectRule.prototype.getCardsToSacrifice = function () {
31
- var _a = this.card.location, x = _a.x, y = _a.y;
32
- return _super.prototype.getCardsToSacrifice.call(this).location(function (l) { return l.x === x && l.y === y + 1; });
33
- };
34
- GorgonEffectRule.prototype.onSacrifice = function () {
35
- var pantheon = new Pantheon_1.Pantheon(this.game, this.player);
36
- return [pantheon.gainGems(2), this.customMove(CustomMoveType_1.CustomMoveType.EndEffect)];
37
- };
38
- return GorgonEffectRule;
39
- }(SacrificeEffectRule_1.SacrificeEffectRule));
40
- exports.GorgonEffectRule = GorgonEffectRule;
1
+ import { CustomMoveType } from '../../CustomMoveType';
2
+ import { SacrificeEffectRule } from '../../material/entity/SacrificeEffectRule';
3
+ import { Pantheon } from '../../material/Pantheon';
4
+ import { RuleId } from '../RuleId';
5
+ export class GorgonEffectRule extends SacrificeEffectRule {
6
+ ruleId = RuleId.GorgonEffect;
7
+ getCardsToSacrifice() {
8
+ const { x, y } = this.card.location;
9
+ return super.getCardsToSacrifice().location((l) => l.x === x && l.y === y + 1);
10
+ }
11
+ onSacrifice() {
12
+ const pantheon = new Pantheon(this.game, this.player);
13
+ return [pantheon.gainGems(2), this.customMove(CustomMoveType.EndEffect)];
14
+ }
15
+ }
@@ -1,9 +1,9 @@
1
- import { Material, MaterialMove } from '@gamepark/rules-api';
2
- import { MoveEffectRule } from '../../material/entity/MoveEffectRule';
3
- import { RuleId } from '../RuleId';
4
- export declare class GriffinEffectRule extends MoveEffectRule {
5
- ruleId: RuleId;
6
- canPlayEffect(cardIndex: number): boolean;
7
- onRuleStart(): MaterialMove[];
8
- getMovingCards(effectCardIndex: number): Material;
9
- }
1
+ import { Material, MaterialMove } from '@gamepark/rules-api';
2
+ import { MoveEffectRule } from '../../material/entity/MoveEffectRule';
3
+ import { RuleId } from '../RuleId';
4
+ export declare class GriffinEffectRule extends MoveEffectRule {
5
+ ruleId: RuleId;
6
+ canPlayEffect(cardIndex: number): boolean;
7
+ onRuleStart(): MaterialMove[];
8
+ getMovingCards(effectCardIndex: number): Material;
9
+ }
@@ -1,41 +1,16 @@
1
- "use strict";
2
- var __extends = (this && this.__extends) || (function () {
3
- var extendStatics = function (d, b) {
4
- extendStatics = Object.setPrototypeOf ||
5
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
- return extendStatics(d, b);
8
- };
9
- return function (d, b) {
10
- if (typeof b !== "function" && b !== null)
11
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
- extendStatics(d, b);
13
- function __() { this.constructor = d; }
14
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
- };
16
- })();
17
- Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.GriffinEffectRule = void 0;
19
- var MoveEffectRule_1 = require("../../material/entity/MoveEffectRule");
20
- var Pantheon_1 = require("../../material/Pantheon");
21
- var RuleId_1 = require("../RuleId");
22
- var GriffinEffectRule = (function (_super) {
23
- __extends(GriffinEffectRule, _super);
24
- function GriffinEffectRule() {
25
- var _this = _super !== null && _super.apply(this, arguments) || this;
26
- _this.ruleId = RuleId_1.RuleId.GriffinEffect;
27
- return _this;
28
- }
29
- GriffinEffectRule.prototype.canPlayEffect = function (cardIndex) {
30
- var pantheon = new Pantheon_1.Pantheon(this.game, this.player);
31
- return pantheon.gems > 0 && _super.prototype.canPlayEffect.call(this, cardIndex);
32
- };
33
- GriffinEffectRule.prototype.onRuleStart = function () {
34
- return [new Pantheon_1.Pantheon(this.game, this.player).spendGems(1)];
35
- };
36
- GriffinEffectRule.prototype.getMovingCards = function (effectCardIndex) {
37
- return _super.prototype.getMovingCards.call(this, effectCardIndex).location(function (l) { return l.y === 0; });
38
- };
39
- return GriffinEffectRule;
40
- }(MoveEffectRule_1.MoveEffectRule));
41
- exports.GriffinEffectRule = GriffinEffectRule;
1
+ import { MoveEffectRule } from '../../material/entity/MoveEffectRule';
2
+ import { Pantheon } from '../../material/Pantheon';
3
+ import { RuleId } from '../RuleId';
4
+ export class GriffinEffectRule extends MoveEffectRule {
5
+ ruleId = RuleId.GriffinEffect;
6
+ canPlayEffect(cardIndex) {
7
+ const pantheon = new Pantheon(this.game, this.player);
8
+ return pantheon.gems > 0 && super.canPlayEffect(cardIndex);
9
+ }
10
+ onRuleStart() {
11
+ return [new Pantheon(this.game, this.player).spendGems(1)];
12
+ }
13
+ getMovingCards(effectCardIndex) {
14
+ return super.getMovingCards(effectCardIndex).location((l) => l.y === 0);
15
+ }
16
+ }
@@ -1,9 +1,9 @@
1
- import { Location, XYCoordinates } from '@gamepark/rules-api';
2
- import { PlayerColor } from '../../PlayerColor';
3
- import { RuleId } from '../RuleId';
4
- import { MultipleSimultaneousMoveEffectRule } from './MultipleSimultaneousMoveEffectRule';
5
- export declare class HadesEffectRule extends MultipleSimultaneousMoveEffectRule {
6
- ruleId: RuleId;
7
- getTargetEntities(player: PlayerColor): import("@gamepark/rules-api").Material<number, number, number>;
8
- isLegalDestination(space: XYCoordinates, cardLocation: Location): boolean;
9
- }
1
+ import { Location, XYCoordinates } from '@gamepark/rules-api';
2
+ import { PlayerColor } from '../../PlayerColor';
3
+ import { RuleId } from '../RuleId';
4
+ import { MultipleSimultaneousMoveEffectRule } from './MultipleSimultaneousMoveEffectRule';
5
+ export declare class HadesEffectRule extends MultipleSimultaneousMoveEffectRule {
6
+ ruleId: RuleId;
7
+ getTargetEntities(player: PlayerColor): import("@gamepark/rules-api").Material<number, number, number>;
8
+ isLegalDestination(space: XYCoordinates, cardLocation: Location): boolean;
9
+ }
@@ -1,39 +1,14 @@
1
- "use strict";
2
- var __extends = (this && this.__extends) || (function () {
3
- var extendStatics = function (d, b) {
4
- extendStatics = Object.setPrototypeOf ||
5
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
- return extendStatics(d, b);
8
- };
9
- return function (d, b) {
10
- if (typeof b !== "function" && b !== null)
11
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
- extendStatics(d, b);
13
- function __() { this.constructor = d; }
14
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
- };
16
- })();
17
- Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.HadesEffectRule = void 0;
19
- var Entity_1 = require("../../material/Entity");
20
- var Pantheon_1 = require("../../material/Pantheon");
21
- var RuleId_1 = require("../RuleId");
22
- var MultipleSimultaneousMoveEffectRule_1 = require("./MultipleSimultaneousMoveEffectRule");
23
- var HadesEffectRule = (function (_super) {
24
- __extends(HadesEffectRule, _super);
25
- function HadesEffectRule() {
26
- var _this = _super !== null && _super.apply(this, arguments) || this;
27
- _this.ruleId = RuleId_1.RuleId.HadesEffect;
28
- return _this;
29
- }
30
- HadesEffectRule.prototype.getTargetEntities = function (player) {
31
- var pantheon = new Pantheon_1.Pantheon(this.game, player);
32
- return pantheon.visibleEntities.id(function (id) { return !(0, Entity_1.isGod)(id.front); }).location(function (l) { return l.y < 2 && pantheon.isFreeSpace({ x: l.x, y: l.y + 1 }); });
33
- };
34
- HadesEffectRule.prototype.isLegalDestination = function (space, cardLocation) {
35
- return cardLocation.x === space.x && cardLocation.y === space.y - 1;
36
- };
37
- return HadesEffectRule;
38
- }(MultipleSimultaneousMoveEffectRule_1.MultipleSimultaneousMoveEffectRule));
39
- exports.HadesEffectRule = HadesEffectRule;
1
+ import { isGod } from '../../material/Entity';
2
+ import { Pantheon } from '../../material/Pantheon';
3
+ import { RuleId } from '../RuleId';
4
+ import { MultipleSimultaneousMoveEffectRule } from './MultipleSimultaneousMoveEffectRule';
5
+ export class HadesEffectRule extends MultipleSimultaneousMoveEffectRule {
6
+ ruleId = RuleId.HadesEffect;
7
+ getTargetEntities(player) {
8
+ const pantheon = new Pantheon(this.game, player);
9
+ return pantheon.visibleEntities.id((id) => !isGod(id.front)).location((l) => l.y < 2 && pantheon.isFreeSpace({ x: l.x, y: l.y + 1 }));
10
+ }
11
+ isLegalDestination(space, cardLocation) {
12
+ return cardLocation.x === space.x && cardLocation.y === space.y - 1;
13
+ }
14
+ }
@@ -1,9 +1,9 @@
1
- import { Location, Material, MoveItem, XYCoordinates } from '@gamepark/rules-api';
2
- import { MoveEffectRule } from '../../material/entity/MoveEffectRule';
3
- import { RuleId } from '../RuleId';
4
- export declare class IdloziEffectRule extends MoveEffectRule {
5
- ruleId: RuleId;
6
- getMovingCards(effectCardIndex: number): Material;
7
- isLegalDestination(space: XYCoordinates, cardLocation: Location): boolean;
8
- onCardMoved(move: MoveItem): import("@gamepark/rules-api").MaterialMove<number, number, number, number>[];
9
- }
1
+ import { Location, Material, MoveItem, XYCoordinates } from '@gamepark/rules-api';
2
+ import { MoveEffectRule } from '../../material/entity/MoveEffectRule';
3
+ import { RuleId } from '../RuleId';
4
+ export declare class IdloziEffectRule extends MoveEffectRule {
5
+ ruleId: RuleId;
6
+ getMovingCards(effectCardIndex: number): Material;
7
+ isLegalDestination(space: XYCoordinates, cardLocation: Location): boolean;
8
+ onCardMoved(move: MoveItem): import("@gamepark/rules-api").MaterialMove[];
9
+ }
@@ -1,46 +1,21 @@
1
- "use strict";
2
- var __extends = (this && this.__extends) || (function () {
3
- var extendStatics = function (d, b) {
4
- extendStatics = Object.setPrototypeOf ||
5
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
- return extendStatics(d, b);
8
- };
9
- return function (d, b) {
10
- if (typeof b !== "function" && b !== null)
11
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
- extendStatics(d, b);
13
- function __() { this.constructor = d; }
14
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
- };
16
- })();
17
- Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.IdloziEffectRule = void 0;
19
- var CustomMoveType_1 = require("../../CustomMoveType");
20
- var Entity_1 = require("../../material/Entity");
21
- var MoveEffectRule_1 = require("../../material/entity/MoveEffectRule");
22
- var MaterialType_1 = require("../../material/MaterialType");
23
- var Pantheon_1 = require("../../material/Pantheon");
24
- var RuleId_1 = require("../RuleId");
25
- var IdloziEffectRule = (function (_super) {
26
- __extends(IdloziEffectRule, _super);
27
- function IdloziEffectRule() {
28
- var _this = _super !== null && _super.apply(this, arguments) || this;
29
- _this.ruleId = RuleId_1.RuleId.IdloziEffect;
30
- return _this;
31
- }
32
- IdloziEffectRule.prototype.getMovingCards = function (effectCardIndex) {
33
- return _super.prototype.getMovingCards.call(this, effectCardIndex).id(function (id) { return (0, Entity_1.isCreature)(id.front); });
34
- };
35
- IdloziEffectRule.prototype.isLegalDestination = function (space, cardLocation) {
36
- return space.y !== cardLocation.y;
37
- };
38
- IdloziEffectRule.prototype.onCardMoved = function (move) {
39
- var entity = this.material(MaterialType_1.MaterialType.EntityCard).getItem(move.itemIndex).id.front;
40
- var moves = new Pantheon_1.Pantheon(this.game, this.player).getInvokeGains(entity, move.location.y);
41
- moves.push(this.customMove(CustomMoveType_1.CustomMoveType.EndEffect));
42
- return moves;
43
- };
44
- return IdloziEffectRule;
45
- }(MoveEffectRule_1.MoveEffectRule));
46
- exports.IdloziEffectRule = IdloziEffectRule;
1
+ import { CustomMoveType } from '../../CustomMoveType';
2
+ import { isCreature } from '../../material/Entity';
3
+ import { MoveEffectRule } from '../../material/entity/MoveEffectRule';
4
+ import { MaterialType } from '../../material/MaterialType';
5
+ import { Pantheon } from '../../material/Pantheon';
6
+ import { RuleId } from '../RuleId';
7
+ export class IdloziEffectRule extends MoveEffectRule {
8
+ ruleId = RuleId.IdloziEffect;
9
+ getMovingCards(effectCardIndex) {
10
+ return super.getMovingCards(effectCardIndex).id((id) => isCreature(id.front));
11
+ }
12
+ isLegalDestination(space, cardLocation) {
13
+ return space.y !== cardLocation.y;
14
+ }
15
+ onCardMoved(move) {
16
+ const entity = this.material(MaterialType.EntityCard).getItem(move.itemIndex).id.front;
17
+ const moves = new Pantheon(this.game, this.player).getInvokeGains(entity, move.location.y);
18
+ moves.push(this.customMove(CustomMoveType.EndEffect));
19
+ return moves;
20
+ }
21
+ }
@@ -1,16 +1,16 @@
1
- import { CustomMove, Material } from '@gamepark/rules-api';
2
- import { PlayerEffectRule } from '../../material/entity/PlayerEffectRule';
3
- import { SimultaneousSacrificeEffectRule } from '../../material/entity/SimultaneousSacrificeEffectRule';
4
- import { PlayerColor } from '../../PlayerColor';
5
- import { RuleId } from '../RuleId';
6
- export declare class IllapaEffectRule extends PlayerEffectRule {
7
- ruleId: RuleId;
8
- getPlayerMoves(): CustomMove<number>[];
9
- onCustomMove(move: CustomMove): import("@gamepark/rules-api").MaterialMove<number, number, number, number>[];
10
- }
11
- export declare class IllapaSacrificeRule extends SimultaneousSacrificeEffectRule {
12
- ruleId: RuleId;
13
- getAffectedPlayers(): number[];
14
- getCardsToSacrifice(player: PlayerColor): Material;
15
- onRuleEnd(): never[];
16
- }
1
+ import { CustomMove, Material } from '@gamepark/rules-api';
2
+ import { PlayerEffectRule } from '../../material/entity/PlayerEffectRule';
3
+ import { SimultaneousSacrificeEffectRule } from '../../material/entity/SimultaneousSacrificeEffectRule';
4
+ import { PlayerColor } from '../../PlayerColor';
5
+ import { RuleId } from '../RuleId';
6
+ export declare class IllapaEffectRule extends PlayerEffectRule {
7
+ ruleId: RuleId;
8
+ getPlayerMoves(): CustomMove[];
9
+ onCustomMove(move: CustomMove): import("@gamepark/rules-api").MaterialMove[];
10
+ }
11
+ export declare class IllapaSacrificeRule extends SimultaneousSacrificeEffectRule {
12
+ ruleId: RuleId;
13
+ getAffectedPlayers(): number[];
14
+ getCardsToSacrifice(player: PlayerColor): Material;
15
+ onRuleEnd(): never[];
16
+ }