@gamepark/mythologies 0.12.1 → 0.12.3

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 (115) hide show
  1. package/dist/MythologiesRules.d.ts +2 -2
  2. package/dist/MythologiesRules.js +2 -2
  3. package/dist/material/Pantheon.d.ts +5 -5
  4. package/dist/material/Pantheon.js +19 -19
  5. package/dist/material/Trial.d.ts +4 -4
  6. package/dist/material/Trial.js +11 -11
  7. package/dist/material/entity/Effect.d.ts +5 -5
  8. package/dist/material/entity/Effect.js +1 -1
  9. package/dist/material/entity/EntityDescription.d.ts +2 -2
  10. package/dist/material/entity/PlaceCardEffectRule.d.ts +2 -2
  11. package/dist/material/entity/PlaceCardEffectRule.js +3 -3
  12. package/dist/material/entity/celtic/Banshee.js +1 -1
  13. package/dist/material/entity/celtic/Brigid.js +1 -1
  14. package/dist/material/entity/celtic/Cernunnos.js +1 -1
  15. package/dist/material/entity/celtic/Dagda.js +1 -1
  16. package/dist/material/entity/celtic/Dullahan.js +1 -1
  17. package/dist/material/entity/celtic/Fairy.js +1 -1
  18. package/dist/material/entity/celtic/Kelpie.js +1 -1
  19. package/dist/material/entity/celtic/Leprechaun.js +1 -1
  20. package/dist/material/entity/celtic/Morrigan.js +1 -1
  21. package/dist/material/entity/celtic/Selkie.js +1 -1
  22. package/dist/material/entity/chinese/ChangE.js +1 -1
  23. package/dist/material/entity/chinese/Fenghuang.js +1 -1
  24. package/dist/material/entity/chinese/Jiangshi.js +1 -1
  25. package/dist/material/entity/chinese/Mogwai.js +1 -1
  26. package/dist/material/entity/chinese/Nian.js +1 -1
  27. package/dist/material/entity/chinese/Nuwa.js +1 -1
  28. package/dist/material/entity/chinese/Qilin.js +1 -1
  29. package/dist/material/entity/chinese/SunWukong.js +1 -1
  30. package/dist/material/entity/chinese/Tianlong.js +1 -1
  31. package/dist/material/entity/chinese/YanluoWang.js +1 -1
  32. package/dist/material/entity/egyptian/Ammit.js +1 -1
  33. package/dist/material/entity/egyptian/Anubis.js +1 -1
  34. package/dist/material/entity/egyptian/Beetle.js +1 -1
  35. package/dist/material/entity/egyptian/Bennu.js +1 -1
  36. package/dist/material/entity/egyptian/Cobra.js +1 -1
  37. package/dist/material/entity/egyptian/Isis.js +1 -1
  38. package/dist/material/entity/egyptian/Mummy.js +1 -1
  39. package/dist/material/entity/egyptian/Osiris.js +1 -1
  40. package/dist/material/entity/egyptian/Ra.js +1 -1
  41. package/dist/material/entity/egyptian/Sphinx.js +1 -1
  42. package/dist/material/entity/greek/Athena.js +1 -1
  43. package/dist/material/entity/greek/Centaur.js +1 -1
  44. package/dist/material/entity/greek/Chimera.js +1 -1
  45. package/dist/material/entity/greek/Cyclops.js +1 -1
  46. package/dist/material/entity/greek/Gorgon.js +1 -1
  47. package/dist/material/entity/greek/Griffin.js +1 -1
  48. package/dist/material/entity/greek/Hades.js +1 -1
  49. package/dist/material/entity/greek/Minotaur.js +1 -1
  50. package/dist/material/entity/greek/Poseidon.js +2 -2
  51. package/dist/material/entity/greek/Zeus.js +1 -1
  52. package/dist/material/entity/hindu/Asura.js +1 -1
  53. package/dist/material/entity/hindu/Brahma.js +1 -1
  54. package/dist/material/entity/hindu/Ganesh.js +1 -1
  55. package/dist/material/entity/hindu/Garuda.js +1 -1
  56. package/dist/material/entity/hindu/Kinnara.js +1 -1
  57. package/dist/material/entity/hindu/Naga.js +1 -1
  58. package/dist/material/entity/hindu/Rakshasa.js +1 -1
  59. package/dist/material/entity/hindu/Shiva.js +1 -1
  60. package/dist/material/entity/hindu/Vetala.js +1 -1
  61. package/dist/material/entity/hindu/Vishnu.js +1 -1
  62. package/dist/material/entity/inca/Amaru.js +1 -1
  63. package/dist/material/entity/inca/Caiman.js +1 -1
  64. package/dist/material/entity/inca/Condor.js +1 -1
  65. package/dist/material/entity/inca/Illapa.js +1 -1
  66. package/dist/material/entity/inca/Inti.js +1 -1
  67. package/dist/material/entity/inca/MamaQucha.js +1 -1
  68. package/dist/material/entity/inca/Puma.js +1 -1
  69. package/dist/material/entity/inca/Supay.js +1 -1
  70. package/dist/material/entity/inca/Ukuku.js +1 -1
  71. package/dist/material/entity/inca/Viracocha.js +1 -1
  72. package/dist/material/entity/norse/Alf.js +1 -1
  73. package/dist/material/entity/norse/Draugr.js +1 -1
  74. package/dist/material/entity/norse/Fenrir.js +1 -1
  75. package/dist/material/entity/norse/Freya.js +1 -1
  76. package/dist/material/entity/norse/Jotunn.js +1 -1
  77. package/dist/material/entity/norse/Loki.js +1 -1
  78. package/dist/material/entity/norse/Odin.js +1 -1
  79. package/dist/material/entity/norse/Thor.js +1 -1
  80. package/dist/material/entity/norse/Troll.js +1 -1
  81. package/dist/material/entity/norse/Valkyrie.js +1 -1
  82. package/dist/material/entity/zulu/Idlozi.js +1 -1
  83. package/dist/material/entity/zulu/Impundulu.js +1 -1
  84. package/dist/material/entity/zulu/Inkanyamba.js +1 -1
  85. package/dist/material/entity/zulu/Inkosazana.js +1 -1
  86. package/dist/material/entity/zulu/Shembe.js +1 -1
  87. package/dist/material/entity/zulu/Tokoloshe.js +1 -1
  88. package/dist/material/entity/zulu/Umvelinqangi.js +1 -1
  89. package/dist/material/entity/zulu/Unkulunkulu.js +2 -2
  90. package/dist/material/entity/zulu/Unwabu.js +1 -1
  91. package/dist/material/entity/zulu/Werehyena.js +1 -1
  92. package/dist/rules/PlaceCardsRule.d.ts +1 -1
  93. package/dist/rules/PlaceCardsRule.js +4 -4
  94. package/dist/rules/RuleId.d.ts +1 -1
  95. package/dist/rules/RuleId.js +1 -1
  96. package/dist/rules/effects/AmmitEffectRule.d.ts +2 -2
  97. package/dist/rules/effects/AmmitEffectRule.js +2 -2
  98. package/dist/rules/effects/AnubisEffectRule.d.ts +2 -2
  99. package/dist/rules/effects/AnubisEffectRule.js +2 -2
  100. package/dist/rules/effects/CentaurEffectRule.js +1 -4
  101. package/dist/rules/effects/ChimeraEffectRule.d.ts +2 -2
  102. package/dist/rules/effects/ChimeraEffectRule.js +3 -3
  103. package/dist/rules/effects/CobraEffectRule.d.ts +3 -3
  104. package/dist/rules/effects/CobraEffectRule.js +3 -3
  105. package/dist/rules/effects/CondorEffectRule.js +1 -1
  106. package/dist/rules/effects/IdloziEffectRule.js +1 -1
  107. package/dist/rules/effects/ImpunduluEffectRule.d.ts +2 -2
  108. package/dist/rules/effects/ImpunduluEffectRule.js +2 -2
  109. package/dist/rules/effects/InkosazanaEffectRule.d.ts +2 -2
  110. package/dist/rules/effects/InkosazanaEffectRule.js +2 -2
  111. package/dist/rules/effects/RakshasaEffectRule.js +1 -1
  112. package/dist/rules/effects/ResolveEffectsRule.js +7 -7
  113. package/dist/rules/effects/SphinxEffectRule.js +1 -1
  114. package/dist/rules/effects/VishnuEffectRule.js +1 -1
  115. package/package.json +2 -2
@@ -1,7 +1,7 @@
1
1
  import { XYCoordinates } from '@gamepark/rules-api';
2
- import { InvokeEffectRule } from '../../material/entity/PlaceCardEffectRule';
2
+ import { SummonEffectRule } from '../../material/entity/PlaceCardEffectRule';
3
3
  import { RuleId } from '../RuleId';
4
- export declare class ChimeraEffectRule extends InvokeEffectRule {
4
+ export declare class ChimeraEffectRule extends SummonEffectRule {
5
5
  ruleId: RuleId;
6
6
  getCardsToPlace(): import("@gamepark/rules-api").Material<number, number, number>;
7
7
  getAvailableDestinations(): XYCoordinates[];
@@ -1,8 +1,8 @@
1
1
  import { Destiny } from '../../material/Destiny';
2
- import { InvokeEffectRule } from '../../material/entity/PlaceCardEffectRule';
2
+ import { SummonEffectRule } from '../../material/entity/PlaceCardEffectRule';
3
3
  import { Pantheon } from '../../material/Pantheon';
4
4
  import { RuleId } from '../RuleId';
5
- export class ChimeraEffectRule extends InvokeEffectRule {
5
+ export class ChimeraEffectRule extends SummonEffectRule {
6
6
  ruleId = RuleId.ChimeraEffect;
7
7
  getCardsToPlace() {
8
8
  return new Destiny(this.game).creaturesOnTopOfDecks;
@@ -10,6 +10,6 @@ export class ChimeraEffectRule extends InvokeEffectRule {
10
10
  getAvailableDestinations() {
11
11
  const pantheon = new Pantheon(this.game, this.card.location.player);
12
12
  const space = this.card.location;
13
- return pantheon.isLegalSpaceToInvoke(space) ? [space] : [];
13
+ return pantheon.isLegalSpaceToSummon(space) ? [space] : [];
14
14
  }
15
15
  }
@@ -1,13 +1,13 @@
1
1
  import { MoveItem } from '@gamepark/rules-api';
2
- import { InvokeEffectRule } from '../../material/entity/PlaceCardEffectRule';
2
+ import { SummonEffectRule } from '../../material/entity/PlaceCardEffectRule';
3
3
  import { SacrificeEffectRule } from '../../material/entity/SacrificeEffectRule';
4
4
  import { RuleId } from '../RuleId';
5
5
  export declare class CobraEffectRule extends SacrificeEffectRule {
6
6
  ruleId: RuleId;
7
7
  getCardsToSacrifice(): import("@gamepark/rules-api").Material<number, number, number>;
8
- onSacrifice(move: MoveItem): (MoveItem<number, number, number> | import("@gamepark/rules-api").StartRule<RuleId.CobraInvokeEffect>)[];
8
+ onSacrifice(move: MoveItem): (MoveItem<number, number, number> | import("@gamepark/rules-api").StartRule<RuleId.CobraSummonEffect>)[];
9
9
  }
10
- export declare class CobraInvokeEffect extends InvokeEffectRule {
10
+ export declare class CobraSummonEffect extends SummonEffectRule {
11
11
  getCardsToPlace(): import("@gamepark/rules-api").Material<number, number, number>;
12
12
  onRuleEnd(): never[];
13
13
  }
@@ -1,5 +1,5 @@
1
1
  import { entityMythology } from '../../material/Entity';
2
- import { InvokeEffectRule } from '../../material/entity/PlaceCardEffectRule';
2
+ import { SummonEffectRule } from '../../material/entity/PlaceCardEffectRule';
3
3
  import { SacrificeEffectRule } from '../../material/entity/SacrificeEffectRule';
4
4
  import { LocationType } from '../../material/LocationType';
5
5
  import { MaterialType } from '../../material/MaterialType';
@@ -16,10 +16,10 @@ export class CobraEffectRule extends SacrificeEffectRule {
16
16
  const mythology = entityMythology(cards.getItem(move.itemIndex).id.front);
17
17
  const creaturesDeck = cards.location(LocationType.CreaturesDeck).locationId(mythology).deck();
18
18
  this.memorize(Memory.TargetEntities, creaturesDeck.getIndex());
19
- return [creaturesDeck.dealOne({ type: LocationType.PlayerSelectedCards, player: this.player }), this.startRule(RuleId.CobraInvokeEffect)];
19
+ return [creaturesDeck.dealOne({ type: LocationType.PlayerSelectedCards, player: this.player }), this.startRule(RuleId.CobraSummonEffect)];
20
20
  }
21
21
  }
22
- export class CobraInvokeEffect extends InvokeEffectRule {
22
+ export class CobraSummonEffect extends SummonEffectRule {
23
23
  getCardsToPlace() {
24
24
  return this.material(MaterialType.EntityCard).index(this.remind(Memory.TargetEntities));
25
25
  }
@@ -13,7 +13,7 @@ export class CondorEffectRule extends SacrificeEffectRule {
13
13
  onSacrifice(move) {
14
14
  const entity = this.material(MaterialType.EntityCard).getItem(move.itemIndex);
15
15
  const pantheon = new Pantheon(this.game, this.player);
16
- const moves = pantheon.getInvokeGains(entity.id.front, entity.location.y);
16
+ const moves = pantheon.getSummonGains(entity.id.front, entity.location.y);
17
17
  moves.push(this.customMove(CustomMoveType.EndEffect));
18
18
  return moves;
19
19
  }
@@ -14,7 +14,7 @@ export class IdloziEffectRule extends MoveEffectRule {
14
14
  }
15
15
  onCardMoved(move) {
16
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);
17
+ const moves = new Pantheon(this.game, this.player).getSummonGains(entity, move.location.y);
18
18
  moves.push(this.customMove(CustomMoveType.EndEffect));
19
19
  return moves;
20
20
  }
@@ -1,6 +1,6 @@
1
- import { InvokeEffectRule } from '../../material/entity/PlaceCardEffectRule';
1
+ import { SummonEffectRule } from '../../material/entity/PlaceCardEffectRule';
2
2
  import { RuleId } from '../RuleId';
3
- export declare class ImpunduluEffectRule extends InvokeEffectRule {
3
+ export declare class ImpunduluEffectRule extends SummonEffectRule {
4
4
  ruleId: RuleId;
5
5
  onRuleStart(): import("@gamepark/rules-api").MoveItem<number, number, number>[];
6
6
  getCardsToPlace(): import("@gamepark/rules-api").Material<number, number, number>;
@@ -1,11 +1,11 @@
1
1
  import { Destiny } from '../../material/Destiny';
2
2
  import { entityMythology } from '../../material/Entity';
3
- import { InvokeEffectRule } from '../../material/entity/PlaceCardEffectRule';
3
+ import { SummonEffectRule } from '../../material/entity/PlaceCardEffectRule';
4
4
  import { LocationType } from '../../material/LocationType';
5
5
  import { MaterialType } from '../../material/MaterialType';
6
6
  import { Pantheon } from '../../material/Pantheon';
7
7
  import { RuleId } from '../RuleId';
8
- export class ImpunduluEffectRule extends InvokeEffectRule {
8
+ export class ImpunduluEffectRule extends SummonEffectRule {
9
9
  ruleId = RuleId.ImpunduluEffect;
10
10
  onRuleStart() {
11
11
  if (this.availableSanctuaryCards.length === 0) {
@@ -1,6 +1,6 @@
1
- import { InvokeEffectRule } from '../../material/entity/PlaceCardEffectRule';
1
+ import { SummonEffectRule } from '../../material/entity/PlaceCardEffectRule';
2
2
  import { RuleId } from '../RuleId';
3
- export declare class InkosazanaEffectRule extends InvokeEffectRule {
3
+ export declare class InkosazanaEffectRule extends SummonEffectRule {
4
4
  ruleId: RuleId;
5
5
  times: number;
6
6
  getCardsToPlace(): import("@gamepark/rules-api").Material<number, number, number>;
@@ -1,8 +1,8 @@
1
- import { InvokeEffectRule } from '../../material/entity/PlaceCardEffectRule';
1
+ import { SummonEffectRule } from '../../material/entity/PlaceCardEffectRule';
2
2
  import { LocationType } from '../../material/LocationType';
3
3
  import { MaterialType } from '../../material/MaterialType';
4
4
  import { RuleId } from '../RuleId';
5
- export class InkosazanaEffectRule extends InvokeEffectRule {
5
+ export class InkosazanaEffectRule extends SummonEffectRule {
6
6
  ruleId = RuleId.InkosazanaEffect;
7
7
  times = 2;
8
8
  getCardsToPlace() {
@@ -18,6 +18,6 @@ export class RakshasaEffectRule extends PlaceCardEffectRule {
18
18
  getAvailableDestinations(cardIndex) {
19
19
  const location = this.material(MaterialType.EntityCard).getItem(cardIndex).location;
20
20
  const pantheon = new Pantheon(this.game, location.player);
21
- return pantheon.isLegalSpaceToInvoke(location) ? [location] : [];
21
+ return pantheon.isLegalSpaceToSummon(location) ? [location] : [];
22
22
  }
23
23
  }
@@ -22,7 +22,7 @@ export class ResolveEffectsRule extends PlayerTurnRule {
22
22
  switch (pendingEffects.type) {
23
23
  case PendingEffectsType.CardsEffects:
24
24
  return pendingEffects.effects.every((effect) => effect.auto);
25
- case PendingEffectsType.InvokeGain:
25
+ case PendingEffectsType.SummonGain:
26
26
  return true;
27
27
  case PendingEffectsType.BonusGains:
28
28
  return pendingEffects.columns.length + pendingEffects.lines.length === 1;
@@ -33,8 +33,8 @@ export class ResolveEffectsRule extends PlayerTurnRule {
33
33
  this.memorize(Memory.PendingRule, previousRule);
34
34
  }
35
35
  const pendingEffects = this.getPendingEffects();
36
- if (pendingEffects.type === PendingEffectsType.InvokeGain) {
37
- return [...new Pantheon(this.game, this.player).getInvokeGains(pendingEffects.entity, pendingEffects.line), this.customMove(CustomMoveType.EndEffect)];
36
+ if (pendingEffects.type === PendingEffectsType.SummonGain) {
37
+ return [...new Pantheon(this.game, this.player).getSummonGains(pendingEffects.entity, pendingEffects.line), this.customMove(CustomMoveType.EndEffect)];
38
38
  }
39
39
  const moves = this.getPlayerMoves();
40
40
  if (moves.length === 1) {
@@ -63,14 +63,14 @@ export class ResolveEffectsRule extends PlayerTurnRule {
63
63
  return [
64
64
  ...this.material(MaterialType.GemToken)
65
65
  .location(LocationType.PantheonLineBonus)
66
- .player(this.player)
66
+ .player(pendingEffects.player)
67
67
  .location((l) => pendingEffects.lines.includes(l.y))
68
- .moveItems({ type: LocationType.PlayerGems, player: this.player }),
68
+ .moveItems({ type: LocationType.PlayerGems, player: pendingEffects.player }),
69
69
  ...this.material(MaterialType.FavorToken)
70
70
  .location(LocationType.PantheonColumnBonus)
71
- .player(this.player)
71
+ .player(pendingEffects.player)
72
72
  .location((l) => pendingEffects.columns.includes(l.x))
73
- .moveItems({ type: LocationType.PlayerFavor, player: this.player })
73
+ .moveItems({ type: LocationType.PlayerFavor, player: pendingEffects.player })
74
74
  ];
75
75
  }
76
76
  return [];
@@ -18,7 +18,7 @@ export class SphinxEffectRule extends MoveEffectRule {
18
18
  onCardMoved(move) {
19
19
  this.memorize(Memory.EntityMoved, move.itemIndex);
20
20
  const entity = this.material(MaterialType.EntityCard).getItem(move.itemIndex).id.front;
21
- const moves = new Pantheon(this.game, this.player).getInvokeGains(entity, move.location.y);
21
+ const moves = new Pantheon(this.game, this.player).getSummonGains(entity, move.location.y);
22
22
  moves.push(this.customMove(CustomMoveType.EndEffect));
23
23
  return moves;
24
24
  }
@@ -31,7 +31,7 @@ export class VishnuEffectRule extends PlayerEffectRule {
31
31
  return [
32
32
  ...gods.deleteItems(),
33
33
  pantheon.gainFavor(gods.length),
34
- ...pantheon.getInvokeGains(entity, this.card.location.y),
34
+ ...pantheon.getSummonGains(entity, this.card.location.y),
35
35
  this.customMove(CustomMoveType.EndEffect)
36
36
  ];
37
37
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gamepark/mythologies",
3
- "version": "0.12.1",
3
+ "version": "0.12.3",
4
4
  "description": "The rules of Mythologies adapted for Game Park",
5
5
  "sideEffects": false,
6
6
  "type": "module",
@@ -28,5 +28,5 @@
28
28
  "@gamepark/rules-api": "~7.1.0",
29
29
  "es-toolkit": "^1.39.10"
30
30
  },
31
- "gitHead": "77d7343dd850d5ec7cc31dd8ef4c78002ed196e3"
31
+ "gitHead": "6f3045ccf119810e8294b2e5272f0de5eae820bf"
32
32
  }