@gamepark/skyrift 0.2.9 → 0.4.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.
- package/dist/Deck.d.ts +2 -0
- package/dist/Deck.js +2 -0
- package/dist/Memory.d.ts +3 -2
- package/dist/Memory.js +2 -1
- package/dist/SkyriftRules.d.ts +33 -43
- package/dist/SkyriftRules.js +47 -51
- package/dist/SkyriftSetup.js +5 -0
- package/dist/material/Card.d.ts +32 -0
- package/dist/material/Card.js +32 -0
- package/dist/material/CardProperties.js +64 -0
- package/dist/material/CardRule.d.ts +26 -21
- package/dist/material/CardRule.js +53 -56
- package/dist/material/CardTag.d.ts +2 -1
- package/dist/material/CardTag.js +2 -1
- package/dist/material/Effect.d.ts +1 -1
- package/dist/material/EffectTraits.d.ts +51 -0
- package/dist/material/EffectTraits.js +1 -0
- package/dist/material/LocationType.d.ts +3 -1
- package/dist/material/LocationType.js +2 -0
- package/dist/material/MaterialType.d.ts +2 -1
- package/dist/material/MaterialType.js +1 -0
- package/dist/material/OngoingEffect.d.ts +8 -0
- package/dist/material/OngoingEffect.js +5 -0
- package/dist/material/SpecialTokenType.d.ts +3 -0
- package/dist/material/SpecialTokenType.js +4 -0
- package/dist/material/createCardRule.d.ts +3 -0
- package/dist/material/createCardRule.js +7 -0
- package/dist/material/decks/GraveHurt.d.ts +18 -0
- package/dist/material/decks/GraveHurt.js +19 -0
- package/dist/material/decks/WinSands.d.ts +18 -0
- package/dist/material/decks/WinSands.js +19 -0
- package/dist/material/decks/WindSands.d.ts +18 -0
- package/dist/material/decks/WindSands.js +19 -0
- package/dist/material/decks/gravehurt/AstralHammer.d.ts +18 -0
- package/dist/material/decks/gravehurt/AstralHammer.js +25 -0
- package/dist/material/decks/gravehurt/AstralHammerEffectRule.d.ts +4 -0
- package/dist/material/decks/gravehurt/AstralHammerEffectRule.js +26 -0
- package/dist/material/decks/gravehurt/CallOfTheEclipse.d.ts +17 -0
- package/dist/material/decks/gravehurt/CallOfTheEclipse.js +28 -0
- package/dist/material/decks/gravehurt/CallOfTheEclipseEffectRule.d.ts +5 -0
- package/dist/material/decks/gravehurt/CallOfTheEclipseEffectRule.js +11 -0
- package/dist/material/decks/gravehurt/CavernSkulker.d.ts +16 -0
- package/dist/material/decks/gravehurt/CavernSkulker.js +26 -0
- package/dist/material/decks/gravehurt/CavernSkulkerEffectRule.d.ts +4 -0
- package/dist/material/decks/gravehurt/CavernSkulkerEffectRule.js +15 -0
- package/dist/material/decks/gravehurt/Doom.d.ts +18 -0
- package/dist/material/decks/gravehurt/Doom.js +29 -0
- package/dist/material/decks/gravehurt/DoomEffectRule.d.ts +8 -0
- package/dist/material/decks/gravehurt/DoomEffectRule.js +32 -0
- package/dist/material/decks/gravehurt/InsatiableUmbraphage.d.ts +19 -0
- package/dist/material/decks/gravehurt/InsatiableUmbraphage.js +28 -0
- package/dist/material/decks/gravehurt/InsatiableUmbraphageEffectRule.d.ts +5 -0
- package/dist/material/decks/gravehurt/InsatiableUmbraphageEffectRule.js +21 -0
- package/dist/material/decks/gravehurt/MacabreLegion.d.ts +17 -0
- package/dist/material/decks/gravehurt/MacabreLegion.js +20 -0
- package/dist/material/decks/gravehurt/MoonFang.d.ts +17 -0
- package/dist/material/decks/gravehurt/MoonFang.js +20 -0
- package/dist/material/decks/gravehurt/Nosferatis.d.ts +20 -0
- package/dist/material/decks/gravehurt/Nosferatis.js +29 -0
- package/dist/material/decks/gravehurt/OstraVoiceOfTheSoul.d.ts +12 -0
- package/dist/material/decks/gravehurt/OstraVoiceOfTheSoul.js +11 -0
- package/dist/material/decks/gravehurt/ReturnInTime.d.ts +15 -0
- package/dist/material/decks/gravehurt/ReturnInTime.js +18 -0
- package/dist/material/decks/gravehurt/ScrabDoombird.d.ts +18 -0
- package/dist/material/decks/gravehurt/ScrabDoombird.js +21 -0
- package/dist/material/decks/gravehurt/TerrifyingSummoning.d.ts +18 -0
- package/dist/material/decks/gravehurt/TerrifyingSummoning.js +26 -0
- package/dist/material/decks/gravehurt/TerrifyingSummoningEffectRule.d.ts +5 -0
- package/dist/material/decks/gravehurt/TerrifyingSummoningEffectRule.js +11 -0
- package/dist/material/decks/gravehurt/TheGreatToady.d.ts +19 -0
- package/dist/material/decks/gravehurt/TheGreatToady.js +42 -0
- package/dist/material/decks/gravehurt/Umbraboros.d.ts +22 -0
- package/dist/material/decks/gravehurt/Umbraboros.js +30 -0
- package/dist/material/decks/gravehurt/UndeadRule.d.ts +5 -0
- package/dist/material/decks/gravehurt/UndeadRule.js +11 -0
- package/dist/material/decks/gravehurt/Whisperers.d.ts +13 -0
- package/dist/material/decks/gravehurt/Whisperers.js +17 -0
- package/dist/material/decks/gravehurt/WitchingHour.d.ts +16 -0
- package/dist/material/decks/gravehurt/WitchingHour.js +19 -0
- package/dist/material/decks/heathblade/ArcherRule.js +2 -2
- package/dist/material/decks/heathblade/Armada.d.ts +4 -3
- package/dist/material/decks/heathblade/Armada.js +5 -3
- package/dist/material/decks/heathblade/ArmadaEffectRule.d.ts +1 -1
- package/dist/material/decks/heathblade/ArmadaEffectRule.js +4 -1
- package/dist/material/decks/heathblade/Confluence.d.ts +2 -3
- package/dist/material/decks/heathblade/Confluence.js +5 -3
- package/dist/material/decks/heathblade/CoverOfNight.d.ts +4 -2
- package/dist/material/decks/heathblade/CoverOfNight.js +7 -1
- package/dist/material/decks/heathblade/Harvest.d.ts +4 -2
- package/dist/material/decks/heathblade/Harvest.js +7 -1
- package/dist/material/decks/heathblade/LoyalSquire.d.ts +6 -3
- package/dist/material/decks/heathblade/LoyalSquire.js +11 -4
- package/dist/material/decks/heathblade/Nightguard.js +3 -9
- package/dist/material/decks/heathblade/OzmaTheMage.d.ts +6 -4
- package/dist/material/decks/heathblade/OzmaTheMage.js +9 -3
- package/dist/material/decks/heathblade/OzmaTheMageEffectRule.js +1 -3
- package/dist/material/decks/heathblade/PrincessLitha.d.ts +1 -2
- package/dist/material/decks/heathblade/PrincessLitha.js +4 -11
- package/dist/material/decks/heathblade/RobbinsMasterOfArms.d.ts +6 -2
- package/dist/material/decks/heathblade/RobbinsMasterOfArms.js +10 -1
- package/dist/material/decks/heathblade/RobbinsMasterOfArmsEffectRule.js +1 -3
- package/dist/material/decks/heathblade/Sacrifice.d.ts +7 -2
- package/dist/material/decks/heathblade/Sacrifice.js +19 -1
- package/dist/material/decks/heathblade/SoulBlade.d.ts +5 -2
- package/dist/material/decks/heathblade/SoulBlade.js +8 -1
- package/dist/material/decks/heathblade/WatchTower.d.ts +5 -3
- package/dist/material/decks/heathblade/WatchTower.js +10 -3
- package/dist/material/decks/highwave/AeliaSteadyHand.d.ts +1 -1
- package/dist/material/decks/highwave/AeliaSteadyHand.js +4 -1
- package/dist/material/decks/highwave/BoardingParty.d.ts +1 -1
- package/dist/material/decks/highwave/BoardingParty.js +4 -1
- package/dist/material/decks/highwave/BoardingPartyEffectRule.d.ts +4 -3
- package/dist/material/decks/highwave/BoardingPartyEffectRule.js +18 -23
- package/dist/material/decks/highwave/BonnyTheGunner.d.ts +0 -2
- package/dist/material/decks/highwave/BonnyTheGunner.js +0 -2
- package/dist/material/decks/highwave/CannonCardRule.d.ts +3 -0
- package/dist/material/decks/highwave/CannonCardRule.js +11 -10
- package/dist/material/decks/highwave/DarkArmageddon.d.ts +4 -2
- package/dist/material/decks/highwave/DarkArmageddon.js +7 -1
- package/dist/material/decks/highwave/DawnsDoom.d.ts +4 -2
- package/dist/material/decks/highwave/DawnsDoom.js +9 -1
- package/dist/material/decks/highwave/EyeOfSky.d.ts +2 -4
- package/dist/material/decks/highwave/EyeOfSky.js +5 -7
- package/dist/material/decks/highwave/EyeOfSkyEffectRule.d.ts +4 -4
- package/dist/material/decks/highwave/EyeOfSkyEffectRule.js +1 -3
- package/dist/material/decks/highwave/FortunesCourse.d.ts +1 -2
- package/dist/material/decks/highwave/FortunesCourse.js +3 -3
- package/dist/material/decks/highwave/GoldenApocalypse.d.ts +1 -1
- package/dist/material/decks/highwave/GoldenApocalypse.js +4 -1
- package/dist/material/decks/highwave/LongJawsSilver.d.ts +2 -3
- package/dist/material/decks/highwave/LongJawsSilver.js +7 -5
- package/dist/material/decks/highwave/OscarScullion.d.ts +4 -2
- package/dist/material/decks/highwave/OscarScullion.js +7 -1
- package/dist/material/decks/highwave/OttoFactotum.d.ts +4 -2
- package/dist/material/decks/highwave/OttoFactotum.js +10 -1
- package/dist/material/decks/highwave/RiggingRaiders.d.ts +5 -2
- package/dist/material/decks/highwave/RiggingRaiders.js +9 -1
- package/dist/material/decks/highwave/SeaScorcher.d.ts +6 -3
- package/dist/material/decks/highwave/SeaScorcher.js +13 -2
- package/dist/material/decks/highwave/SurpriseLoot.d.ts +4 -2
- package/dist/material/decks/highwave/SurpriseLoot.js +7 -1
- package/dist/material/decks/highwave/TideRover.d.ts +6 -2
- package/dist/material/decks/highwave/TideRover.js +15 -1
- package/dist/material/decks/highwave/TropicalRuffian.d.ts +1 -1
- package/dist/material/decks/highwave/TropicalRuffian.js +4 -1
- package/dist/material/decks/windsands/AbiSnakeCharmer.d.ts +13 -0
- package/dist/material/decks/windsands/AbiSnakeCharmer.js +15 -0
- package/dist/material/decks/windsands/AbiSnakeCharmerEffectRule.d.ts +8 -0
- package/dist/material/decks/windsands/AbiSnakeCharmerEffectRule.js +35 -0
- package/dist/material/decks/windsands/AncientCurse.d.ts +17 -0
- package/dist/material/decks/windsands/AncientCurse.js +25 -0
- package/dist/material/decks/windsands/Catadjinn.d.ts +14 -0
- package/dist/material/decks/windsands/Catadjinn.js +20 -0
- package/dist/material/decks/windsands/DeathTrap.d.ts +20 -0
- package/dist/material/decks/windsands/DeathTrap.js +38 -0
- package/dist/material/decks/windsands/DesertRaider.d.ts +17 -0
- package/dist/material/decks/windsands/DesertRaider.js +21 -0
- package/dist/material/decks/windsands/DuneWardrums.d.ts +12 -0
- package/dist/material/decks/windsands/DuneWardrums.js +14 -0
- package/dist/material/decks/windsands/ErgDeathslayer.d.ts +13 -0
- package/dist/material/decks/windsands/ErgDeathslayer.js +15 -0
- package/dist/material/decks/windsands/MalikShadowtracker.d.ts +18 -0
- package/dist/material/decks/windsands/MalikShadowtracker.js +24 -0
- package/dist/material/decks/windsands/Metamorph.d.ts +14 -0
- package/dist/material/decks/windsands/Metamorph.js +18 -0
- package/dist/material/decks/windsands/MushaFakir.d.ts +14 -0
- package/dist/material/decks/windsands/MushaFakir.js +18 -0
- package/dist/material/decks/windsands/OasisShaman.d.ts +13 -0
- package/dist/material/decks/windsands/OasisShaman.js +15 -0
- package/dist/material/decks/windsands/SandWalkers.d.ts +21 -0
- package/dist/material/decks/windsands/SandWalkers.js +30 -0
- package/dist/material/decks/windsands/StarlightBazaar.d.ts +15 -0
- package/dist/material/decks/windsands/StarlightBazaar.js +18 -0
- package/dist/material/decks/windsands/Vandals.d.ts +18 -0
- package/dist/material/decks/windsands/Vandals.js +25 -0
- package/dist/material/decks/windsands/WindWrath.d.ts +13 -0
- package/dist/material/decks/windsands/WindWrath.js +15 -0
- package/dist/material/decks/windsands/WindWrathEffectRule.d.ts +5 -0
- package/dist/material/decks/windsands/WindWrathEffectRule.js +17 -0
- package/dist/material/decks/windsands/WishLamp.d.ts +16 -0
- package/dist/material/decks/windsands/WishLamp.js +22 -0
- package/dist/material/decks/winsands/AbiSnakeCharmer.d.ts +13 -0
- package/dist/material/decks/winsands/AbiSnakeCharmer.js +12 -0
- package/dist/material/decks/winsands/AbiSnakeCharmerEffectRule.d.ts +7 -0
- package/dist/material/decks/winsands/AbiSnakeCharmerEffectRule.js +33 -0
- package/dist/material/decks/winsands/AncientCurse.d.ts +16 -0
- package/dist/material/decks/winsands/AncientCurse.js +23 -0
- package/dist/material/decks/winsands/Catadjinn.d.ts +14 -0
- package/dist/material/decks/winsands/Catadjinn.js +24 -0
- package/dist/material/decks/winsands/CreatureBonusCardRule.d.ts +4 -0
- package/dist/material/decks/winsands/CreatureBonusCardRule.js +14 -0
- package/dist/material/decks/winsands/DeathTrap.d.ts +14 -0
- package/dist/material/decks/winsands/DeathTrap.js +16 -0
- package/dist/material/decks/winsands/DeathTrapEffectRule.d.ts +4 -0
- package/dist/material/decks/winsands/DeathTrapEffectRule.js +18 -0
- package/dist/material/decks/winsands/DesertRaider.d.ts +13 -0
- package/dist/material/decks/winsands/DesertRaider.js +12 -0
- package/dist/material/decks/winsands/DesertRaiderEffectRule.d.ts +4 -0
- package/dist/material/decks/winsands/DesertRaiderEffectRule.js +17 -0
- package/dist/material/decks/winsands/DuneWardrums.d.ts +12 -0
- package/dist/material/decks/winsands/DuneWardrums.js +22 -0
- package/dist/material/decks/winsands/ErgDeathslayer.d.ts +13 -0
- package/dist/material/decks/winsands/ErgDeathslayer.js +19 -0
- package/dist/material/decks/winsands/MalikShadowtracker.d.ts +14 -0
- package/dist/material/decks/winsands/MalikShadowtracker.js +16 -0
- package/dist/material/decks/winsands/MalikShadowtrackerEffectRule.d.ts +4 -0
- package/dist/material/decks/winsands/MalikShadowtrackerEffectRule.js +13 -0
- package/dist/material/decks/winsands/Metamorph.d.ts +14 -0
- package/dist/material/decks/winsands/Metamorph.js +15 -0
- package/dist/material/decks/winsands/MushaFakir.d.ts +15 -0
- package/dist/material/decks/winsands/MushaFakir.js +16 -0
- package/dist/material/decks/winsands/OasisShaman.d.ts +13 -0
- package/dist/material/decks/winsands/OasisShaman.js +12 -0
- package/dist/material/decks/winsands/OasisShamanEffectRule.d.ts +8 -0
- package/dist/material/decks/winsands/OasisShamanEffectRule.js +33 -0
- package/dist/material/decks/winsands/SandWalkers.d.ts +17 -0
- package/dist/material/decks/winsands/SandWalkers.js +26 -0
- package/dist/material/decks/winsands/SandWalkersEffectRule.d.ts +5 -0
- package/dist/material/decks/winsands/SandWalkersEffectRule.js +25 -0
- package/dist/material/decks/winsands/StarlightBazaar.d.ts +13 -0
- package/dist/material/decks/winsands/StarlightBazaar.js +12 -0
- package/dist/material/decks/winsands/StarlightBazaarEffectRule.d.ts +4 -0
- package/dist/material/decks/winsands/StarlightBazaarEffectRule.js +6 -0
- package/dist/material/decks/winsands/Vandals.d.ts +13 -0
- package/dist/material/decks/winsands/Vandals.js +12 -0
- package/dist/material/decks/winsands/VandalsEffectRule.d.ts +4 -0
- package/dist/material/decks/winsands/VandalsEffectRule.js +14 -0
- package/dist/material/decks/winsands/WindWrath.d.ts +13 -0
- package/dist/material/decks/winsands/WindWrath.js +12 -0
- package/dist/material/decks/winsands/WindWrathEffectRule.d.ts +5 -0
- package/dist/material/decks/winsands/WindWrathEffectRule.js +20 -0
- package/dist/material/decks/winsands/WishLamp.d.ts +13 -0
- package/dist/material/decks/winsands/WishLamp.js +12 -0
- package/dist/material/decks/winsands/WishLampEffectRule.d.ts +10 -0
- package/dist/material/decks/winsands/WishLampEffectRule.js +46 -0
- package/dist/rules/ChallengeEffectRule.d.ts +6 -0
- package/dist/rules/ChallengeEffectRule.js +17 -0
- package/dist/rules/ChallengeResponseRule.d.ts +8 -0
- package/dist/rules/ChallengeResponseRule.js +31 -0
- package/dist/rules/ChooseStartPlayerEffectRule.d.ts +6 -0
- package/dist/rules/ChooseStartPlayerEffectRule.js +15 -0
- package/dist/rules/DestroyEffectRule.d.ts +5 -2
- package/dist/rules/DestroyEffectRule.js +26 -3
- package/dist/rules/DiscardEffectRule.d.ts +5 -3
- package/dist/rules/DiscardEffectRule.js +13 -1
- package/dist/rules/DrawEffectRule.d.ts +4 -2
- package/dist/rules/DrawEffectRule.js +9 -6
- package/dist/rules/EffectRule.d.ts +4 -2
- package/dist/rules/EffectRule.js +12 -4
- package/dist/rules/EndRoundRule.js +11 -17
- package/dist/rules/GainPowerTokensEffectRule.d.ts +8 -0
- package/dist/rules/GainPowerTokensEffectRule.js +25 -0
- package/dist/rules/MulliganEffectRule.d.ts +7 -0
- package/dist/rules/MulliganEffectRule.js +19 -0
- package/dist/rules/PlayCardEffectRule.d.ts +9 -0
- package/dist/rules/PlayCardEffectRule.js +37 -0
- package/dist/rules/PlayCardRule.js +14 -29
- package/dist/rules/PlayerHelper.d.ts +8 -3
- package/dist/rules/PlayerHelper.js +40 -6
- package/dist/rules/PrepareNextRoundRule.js +7 -3
- package/dist/rules/PutCardUnderEffectRule.d.ts +7 -0
- package/dist/rules/PutCardUnderEffectRule.js +22 -0
- package/dist/rules/PutPowerTokenEffectRule.d.ts +4 -2
- package/dist/rules/PutPowerTokenEffectRule.js +24 -4
- package/dist/rules/ReturnCardEffectRule.d.ts +9 -0
- package/dist/rules/ReturnCardEffectRule.js +36 -0
- package/dist/rules/ReturnCardRule.d.ts +5 -3
- package/dist/rules/ReturnCardRule.js +18 -8
- package/dist/rules/RuleId.d.ts +17 -24
- package/dist/rules/RuleId.js +16 -23
- package/dist/rules/StartPlayerTurnRule.js +5 -5
- package/dist/rules/StashPowerTokensEffectRule.d.ts +5 -0
- package/dist/rules/StashPowerTokensEffectRule.js +15 -0
- package/dist/rules/StealCrystalEffectRule.js +3 -3
- package/dist/rules/StunCardRule.d.ts +4 -2
- package/dist/rules/StunCardRule.js +24 -19
- package/dist/rules/SwitchSideEffectRule.d.ts +11 -0
- package/dist/rules/SwitchSideEffectRule.js +33 -0
- package/package.json +3 -3
package/dist/Deck.d.ts
CHANGED
package/dist/Deck.js
CHANGED
package/dist/Memory.d.ts
CHANGED
|
@@ -3,9 +3,10 @@ export declare enum Memory {
|
|
|
3
3
|
CardsPlayed = 2,
|
|
4
4
|
Suit = 3,
|
|
5
5
|
PendingEffects = 4,
|
|
6
|
-
|
|
6
|
+
ActivatedCards = 5,
|
|
7
7
|
CurrentPlayer = 6,
|
|
8
8
|
NextRoundStartPlayer = 7,
|
|
9
9
|
EffectCount = 8,
|
|
10
|
-
ChallengeConceded = 9
|
|
10
|
+
ChallengeConceded = 9,
|
|
11
|
+
OngoingEffects = 10
|
|
11
12
|
}
|
package/dist/Memory.js
CHANGED
|
@@ -4,9 +4,10 @@ export var Memory;
|
|
|
4
4
|
Memory[Memory["CardsPlayed"] = 2] = "CardsPlayed";
|
|
5
5
|
Memory[Memory["Suit"] = 3] = "Suit";
|
|
6
6
|
Memory[Memory["PendingEffects"] = 4] = "PendingEffects";
|
|
7
|
-
Memory[Memory["
|
|
7
|
+
Memory[Memory["ActivatedCards"] = 5] = "ActivatedCards";
|
|
8
8
|
Memory[Memory["CurrentPlayer"] = 6] = "CurrentPlayer";
|
|
9
9
|
Memory[Memory["NextRoundStartPlayer"] = 7] = "NextRoundStartPlayer";
|
|
10
10
|
Memory[Memory["EffectCount"] = 8] = "EffectCount";
|
|
11
11
|
Memory[Memory["ChallengeConceded"] = 9] = "ChallengeConceded";
|
|
12
|
+
Memory[Memory["OngoingEffects"] = 10] = "OngoingEffects";
|
|
12
13
|
})(Memory || (Memory = {}));
|
package/dist/SkyriftRules.d.ts
CHANGED
|
@@ -1,39 +1,33 @@
|
|
|
1
1
|
import { CustomMove, ItemMove, MaterialGame, MaterialMove, MaterialMoveRandomized, MaterialMoveView, PlayMoveContext, PositiveSequenceStrategy, SecretMaterialRules, TimeLimit } from '@gamepark/rules-api';
|
|
2
2
|
import { Deck } from './Deck';
|
|
3
|
+
import { CavernSkulkerEffectRule } from './material/decks/gravehurt/CavernSkulkerEffectRule';
|
|
4
|
+
import { DoomEffectRule } from './material/decks/gravehurt/DoomEffectRule';
|
|
3
5
|
import { ArmadaEffectRule } from './material/decks/heathblade/ArmadaEffectRule';
|
|
4
|
-
import { CoverOfNightEffectRule } from './material/decks/heathblade/CoverOfNightEffectRule';
|
|
5
|
-
import { HarvestEffectRule } from './material/decks/heathblade/HarvestEffectRule';
|
|
6
|
-
import { LoyalSquireEffectRule } from './material/decks/heathblade/LoyalSquireEffectRule';
|
|
7
|
-
import { OzmaTheMageEffectRule } from './material/decks/heathblade/OzmaTheMageEffectRule';
|
|
8
6
|
import { PrincessLithaEffectRule } from './material/decks/heathblade/PrincessLithaEffectRule';
|
|
9
|
-
import { RobbinsMasterOfArmsEffectRule } from './material/decks/heathblade/RobbinsMasterOfArmsEffectRule';
|
|
10
|
-
import { SacrificeEffectRule } from './material/decks/heathblade/SacrificeEffectRule';
|
|
11
|
-
import { SoulBladeEffectRule } from './material/decks/heathblade/SoulBladeEffectRule';
|
|
12
|
-
import { WatchTowerEffectRule } from './material/decks/heathblade/WatchTowerEffectRule';
|
|
13
7
|
import { BoardingPartyEffectRule } from './material/decks/highwave/BoardingPartyEffectRule';
|
|
14
|
-
import { DarkArmageddonEffectRule } from './material/decks/highwave/DarkArmageddonEffectRule';
|
|
15
|
-
import { DawnsDoomEffectRule } from './material/decks/highwave/DawnsDoomEffectRule';
|
|
16
|
-
import { OttoFactotumEffectRule } from './material/decks/highwave/OttoFactotumEffectRule';
|
|
17
|
-
import { SeaScorcherEffectRule } from './material/decks/highwave/SeaScorcherEffectRule';
|
|
18
8
|
import { EyeOfSkyEffectRule } from './material/decks/highwave/EyeOfSkyEffectRule';
|
|
19
|
-
import {
|
|
20
|
-
import {
|
|
21
|
-
import { OscarScullionEffectRule } from './material/decks/highwave/OscarScullionEffectRule';
|
|
22
|
-
import { SurpriseLootEffectRule } from './material/decks/highwave/SurpriseLootEffectRule';
|
|
9
|
+
import { AbiSnakeCharmerEffectRule } from './material/decks/windsands/AbiSnakeCharmerEffectRule';
|
|
10
|
+
import { WindWrathEffectRule } from './material/decks/windsands/WindWrathEffectRule';
|
|
23
11
|
import { LocationType } from './material/LocationType';
|
|
24
12
|
import { MaterialType } from './material/MaterialType';
|
|
25
|
-
import {
|
|
13
|
+
import { ChallengeEffectRule } from './rules/ChallengeEffectRule';
|
|
14
|
+
import { ChallengeResponseRule } from './rules/ChallengeResponseRule';
|
|
15
|
+
import { DestroyEffectRule } from './rules/DestroyEffectRule';
|
|
26
16
|
import { DiscardEffectRule } from './rules/DiscardEffectRule';
|
|
27
17
|
import { DrawEffectRule } from './rules/DrawEffectRule';
|
|
28
18
|
import { EndPlayerTurnRule } from './rules/EndPlayerTurnRule';
|
|
29
19
|
import { EndRoundRule } from './rules/EndRoundRule';
|
|
30
20
|
import { GainCrystalEffectRule } from './rules/GainCrystalEffectRule';
|
|
31
|
-
import {
|
|
21
|
+
import { PlayCardEffectRule } from './rules/PlayCardEffectRule';
|
|
32
22
|
import { PlayCardRule } from './rules/PlayCardRule';
|
|
33
23
|
import { PrepareNextRoundRule } from './rules/PrepareNextRoundRule';
|
|
24
|
+
import { PutPowerTokenEffectRule } from './rules/PutPowerTokenEffectRule';
|
|
25
|
+
import { ReturnCardEffectRule } from './rules/ReturnCardEffectRule';
|
|
34
26
|
import { StartPlayerTurnRule } from './rules/StartPlayerTurnRule';
|
|
35
27
|
import { StartRoundRule } from './rules/StartRoundRule';
|
|
28
|
+
import { StashPowerTokensEffectRule } from './rules/StashPowerTokensEffectRule';
|
|
36
29
|
import { StealCrystalEffectRule } from './rules/StealCrystalEffectRule';
|
|
30
|
+
import { StunCardRule } from './rules/StunCardRule';
|
|
37
31
|
export declare class SkyriftRules extends SecretMaterialRules<Deck, MaterialType, LocationType> implements TimeLimit<MaterialGame<Deck, MaterialType, LocationType>, MaterialMove<Deck, MaterialType, LocationType>, Deck> {
|
|
38
32
|
rules: {
|
|
39
33
|
1: typeof StartRoundRule;
|
|
@@ -42,33 +36,26 @@ export declare class SkyriftRules extends SecretMaterialRules<Deck, MaterialType
|
|
|
42
36
|
4: typeof EndPlayerTurnRule;
|
|
43
37
|
5: typeof EndRoundRule;
|
|
44
38
|
6: typeof PrepareNextRoundRule;
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
39
|
+
20: typeof ChallengeEffectRule;
|
|
40
|
+
21: typeof ChallengeResponseRule;
|
|
41
|
+
22: typeof DrawEffectRule;
|
|
42
|
+
23: typeof DiscardEffectRule;
|
|
43
|
+
24: typeof DestroyEffectRule;
|
|
44
|
+
25: typeof StunCardRule;
|
|
45
|
+
26: typeof ReturnCardEffectRule;
|
|
46
|
+
27: typeof PutPowerTokenEffectRule;
|
|
47
|
+
28: typeof StashPowerTokensEffectRule;
|
|
48
|
+
29: typeof GainCrystalEffectRule;
|
|
49
|
+
30: typeof StealCrystalEffectRule;
|
|
50
|
+
204: typeof AbiSnakeCharmerEffectRule;
|
|
51
|
+
31: typeof PlayCardEffectRule;
|
|
51
52
|
110: typeof ArmadaEffectRule;
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
115: typeof DrawEffectRule;
|
|
57
|
-
116: typeof HarvestEffectRule;
|
|
58
|
-
601: typeof SeaScorcherEffectRule;
|
|
59
|
-
602: typeof DrawEffectRule;
|
|
53
|
+
103: typeof PrincessLithaEffectRule;
|
|
54
|
+
215: typeof WindWrathEffectRule;
|
|
55
|
+
302: typeof CavernSkulkerEffectRule;
|
|
56
|
+
315: typeof DoomEffectRule;
|
|
60
57
|
603: typeof EyeOfSkyEffectRule;
|
|
61
|
-
605: typeof DiscardEffectRule;
|
|
62
|
-
606: typeof RiggingRaidersEffectRule;
|
|
63
|
-
607: typeof OttoFactotumEffectRule;
|
|
64
|
-
608: typeof OscarScullionEffectRule;
|
|
65
|
-
609: typeof TideRoverEffectRule;
|
|
66
|
-
610: typeof StealCrystalEffectRule;
|
|
67
|
-
612: typeof GainCrystalEffectRule;
|
|
68
|
-
613: typeof DarkArmageddonEffectRule;
|
|
69
58
|
614: typeof BoardingPartyEffectRule;
|
|
70
|
-
615: typeof DawnsDoomEffectRule;
|
|
71
|
-
616: typeof SurpriseLootEffectRule;
|
|
72
59
|
};
|
|
73
60
|
locationsStrategies: {
|
|
74
61
|
1: {
|
|
@@ -76,17 +63,20 @@ export declare class SkyriftRules extends SecretMaterialRules<Deck, MaterialType
|
|
|
76
63
|
2: PositiveSequenceStrategy<number, number, number>;
|
|
77
64
|
7: PositiveSequenceStrategy<number, number, number>;
|
|
78
65
|
8: PositiveSequenceStrategy<number, number, number>;
|
|
66
|
+
14: PositiveSequenceStrategy<number, number, number>;
|
|
79
67
|
};
|
|
80
68
|
};
|
|
81
69
|
hidingStrategies: {
|
|
82
70
|
1: {
|
|
83
71
|
1: import("@gamepark/rules-api").HidingStrategy<number, number>;
|
|
84
|
-
2: import("@gamepark/rules-api").HidingStrategy
|
|
72
|
+
2: import("@gamepark/rules-api").HidingStrategy<number, number>;
|
|
73
|
+
14: import("@gamepark/rules-api").HidingStrategy<number, number>;
|
|
85
74
|
};
|
|
86
75
|
};
|
|
87
76
|
play(move: MaterialMoveRandomized<Deck, MaterialType, LocationType> | MaterialMoveView<Deck, MaterialType, LocationType>, context?: PlayMoveContext): MaterialMove<Deck, MaterialType, LocationType, number>[];
|
|
88
77
|
protected beforeItemMove(move: ItemMove): MaterialMove<Deck, MaterialType, LocationType, number>[];
|
|
89
78
|
protected afterItemMove(move: ItemMove, context?: PlayMoveContext): MaterialMove<Deck, MaterialType, LocationType, number>[];
|
|
90
79
|
protected onCustomMove(move: CustomMove, context?: PlayMoveContext): MaterialMove<Deck, MaterialType, LocationType, number>[];
|
|
80
|
+
isUnpredictableMove(move: MaterialMove<Deck, MaterialType, LocationType>, player: Deck): boolean;
|
|
91
81
|
giveTime(): number;
|
|
92
82
|
}
|
package/dist/SkyriftRules.js
CHANGED
|
@@ -1,42 +1,36 @@
|
|
|
1
|
-
import { hideFront, hideFrontToOthers, isMoveItemType, isMoveItemTypeAtOnce, MoveKind, PositiveSequenceStrategy, SecretMaterialRules } from '@gamepark/rules-api';
|
|
1
|
+
import { hideFront, hideFrontToOthers, isMoveItemType, isMoveItemTypeAtOnce, isStartPlayerTurn, MoveKind, PositiveSequenceStrategy, SecretMaterialRules } from '@gamepark/rules-api';
|
|
2
2
|
import { CustomMoveType } from './CustomMoveType';
|
|
3
|
+
import { createCardRule } from './material/createCardRule';
|
|
4
|
+
import { CavernSkulkerEffectRule } from './material/decks/gravehurt/CavernSkulkerEffectRule';
|
|
5
|
+
import { DoomEffectRule } from './material/decks/gravehurt/DoomEffectRule';
|
|
3
6
|
import { ArmadaEffectRule } from './material/decks/heathblade/ArmadaEffectRule';
|
|
4
|
-
import { CoverOfNightEffectRule } from './material/decks/heathblade/CoverOfNightEffectRule';
|
|
5
|
-
import { HarvestEffectRule } from './material/decks/heathblade/HarvestEffectRule';
|
|
6
|
-
import { LoyalSquireEffectRule } from './material/decks/heathblade/LoyalSquireEffectRule';
|
|
7
|
-
import { OzmaTheMageEffectRule } from './material/decks/heathblade/OzmaTheMageEffectRule';
|
|
8
7
|
import { PrincessLithaEffectRule } from './material/decks/heathblade/PrincessLithaEffectRule';
|
|
9
|
-
import { RobbinsMasterOfArmsEffectRule } from './material/decks/heathblade/RobbinsMasterOfArmsEffectRule';
|
|
10
|
-
import { SacrificeEffectRule } from './material/decks/heathblade/SacrificeEffectRule';
|
|
11
|
-
import { SoulBladeEffectRule } from './material/decks/heathblade/SoulBladeEffectRule';
|
|
12
|
-
import { WatchTowerEffectRule } from './material/decks/heathblade/WatchTowerEffectRule';
|
|
13
8
|
import { BoardingPartyEffectRule } from './material/decks/highwave/BoardingPartyEffectRule';
|
|
14
|
-
import { DarkArmageddonEffectRule } from './material/decks/highwave/DarkArmageddonEffectRule';
|
|
15
|
-
import { DawnsDoomEffectRule } from './material/decks/highwave/DawnsDoomEffectRule';
|
|
16
|
-
import { OttoFactotumEffectRule } from './material/decks/highwave/OttoFactotumEffectRule';
|
|
17
|
-
import { SeaScorcherEffectRule } from './material/decks/highwave/SeaScorcherEffectRule';
|
|
18
9
|
import { EyeOfSkyEffectRule } from './material/decks/highwave/EyeOfSkyEffectRule';
|
|
19
|
-
import {
|
|
20
|
-
import {
|
|
21
|
-
import { OscarScullionEffectRule } from './material/decks/highwave/OscarScullionEffectRule';
|
|
22
|
-
import { SurpriseLootEffectRule } from './material/decks/highwave/SurpriseLootEffectRule';
|
|
10
|
+
import { AbiSnakeCharmerEffectRule } from './material/decks/windsands/AbiSnakeCharmerEffectRule';
|
|
11
|
+
import { WindWrathEffectRule } from './material/decks/windsands/WindWrathEffectRule';
|
|
23
12
|
import { LocationType } from './material/LocationType';
|
|
24
13
|
import { MaterialType } from './material/MaterialType';
|
|
25
14
|
import { Memory } from './Memory';
|
|
26
|
-
import {
|
|
15
|
+
import { ChallengeEffectRule } from './rules/ChallengeEffectRule';
|
|
16
|
+
import { ChallengeResponseRule } from './rules/ChallengeResponseRule';
|
|
17
|
+
import { DestroyEffectRule } from './rules/DestroyEffectRule';
|
|
27
18
|
import { DiscardEffectRule } from './rules/DiscardEffectRule';
|
|
28
19
|
import { DrawEffectRule } from './rules/DrawEffectRule';
|
|
29
20
|
import { EndPlayerTurnRule } from './rules/EndPlayerTurnRule';
|
|
30
21
|
import { EndRoundRule } from './rules/EndRoundRule';
|
|
31
22
|
import { GainCrystalEffectRule } from './rules/GainCrystalEffectRule';
|
|
32
|
-
import {
|
|
23
|
+
import { PlayCardEffectRule } from './rules/PlayCardEffectRule';
|
|
33
24
|
import { PlayCardRule } from './rules/PlayCardRule';
|
|
34
|
-
import { PlayerHelper } from './rules/PlayerHelper';
|
|
35
25
|
import { PrepareNextRoundRule } from './rules/PrepareNextRoundRule';
|
|
26
|
+
import { PutPowerTokenEffectRule } from './rules/PutPowerTokenEffectRule';
|
|
27
|
+
import { ReturnCardEffectRule } from './rules/ReturnCardEffectRule';
|
|
36
28
|
import { RuleId } from './rules/RuleId';
|
|
37
29
|
import { StartPlayerTurnRule } from './rules/StartPlayerTurnRule';
|
|
38
30
|
import { StartRoundRule } from './rules/StartRoundRule';
|
|
31
|
+
import { StashPowerTokensEffectRule } from './rules/StashPowerTokensEffectRule';
|
|
39
32
|
import { StealCrystalEffectRule } from './rules/StealCrystalEffectRule';
|
|
33
|
+
import { StunCardRule } from './rules/StunCardRule';
|
|
40
34
|
export class SkyriftRules extends SecretMaterialRules {
|
|
41
35
|
rules = {
|
|
42
36
|
[RuleId.StartRound]: StartRoundRule,
|
|
@@ -45,46 +39,41 @@ export class SkyriftRules extends SecretMaterialRules {
|
|
|
45
39
|
[RuleId.EndPlayerTurn]: EndPlayerTurnRule,
|
|
46
40
|
[RuleId.EndRound]: EndRoundRule,
|
|
47
41
|
[RuleId.PrepareNextRound]: PrepareNextRoundRule,
|
|
48
|
-
[RuleId.
|
|
49
|
-
[RuleId.
|
|
50
|
-
[RuleId.
|
|
51
|
-
[RuleId.
|
|
52
|
-
[RuleId.
|
|
53
|
-
[RuleId.
|
|
42
|
+
[RuleId.ChallengeEffect]: ChallengeEffectRule,
|
|
43
|
+
[RuleId.ChallengeResponse]: ChallengeResponseRule,
|
|
44
|
+
[RuleId.DrawEffect]: DrawEffectRule,
|
|
45
|
+
[RuleId.DiscardEffect]: DiscardEffectRule,
|
|
46
|
+
[RuleId.DestroyEffect]: DestroyEffectRule,
|
|
47
|
+
[RuleId.StunEffect]: StunCardRule,
|
|
48
|
+
[RuleId.ReturnCardEffect]: ReturnCardEffectRule,
|
|
49
|
+
[RuleId.PutPowerTokensEffect]: PutPowerTokenEffectRule,
|
|
50
|
+
[RuleId.StashPowerTokensEffect]: StashPowerTokensEffectRule,
|
|
51
|
+
[RuleId.GainCrystalEffect]: GainCrystalEffectRule,
|
|
52
|
+
[RuleId.StealCrystalEffect]: StealCrystalEffectRule,
|
|
53
|
+
[RuleId.AbiSnakeCharmerEffect]: AbiSnakeCharmerEffectRule,
|
|
54
|
+
[RuleId.PlayCardEffect]: PlayCardEffectRule,
|
|
54
55
|
[RuleId.ArmadaEffect]: ArmadaEffectRule,
|
|
55
|
-
[RuleId.
|
|
56
|
-
[RuleId.
|
|
57
|
-
[RuleId.
|
|
58
|
-
[RuleId.
|
|
59
|
-
[RuleId.ConfluenceEffect]: DrawEffectRule,
|
|
60
|
-
[RuleId.HarvestEffect]: HarvestEffectRule,
|
|
61
|
-
[RuleId.SeaScorcherEffect]: SeaScorcherEffectRule,
|
|
62
|
-
[RuleId.AeliaSteadyHandEffect]: DrawEffectRule,
|
|
56
|
+
[RuleId.PrincessLithaEffect]: PrincessLithaEffectRule,
|
|
57
|
+
[RuleId.WindWrathEffect]: WindWrathEffectRule,
|
|
58
|
+
[RuleId.CavernSkulkerEffect]: CavernSkulkerEffectRule,
|
|
59
|
+
[RuleId.DoomEffect]: DoomEffectRule,
|
|
63
60
|
[RuleId.EyeOfSkyEffect]: EyeOfSkyEffectRule,
|
|
64
|
-
[RuleId.
|
|
65
|
-
[RuleId.RiggingRaidersEffect]: RiggingRaidersEffectRule,
|
|
66
|
-
[RuleId.OttoFactotumEffect]: OttoFactotumEffectRule,
|
|
67
|
-
[RuleId.OscarScullionEffect]: OscarScullionEffectRule,
|
|
68
|
-
[RuleId.TideRoverEffect]: TideRoverEffectRule,
|
|
69
|
-
[RuleId.LongJawsSilverEffect]: StealCrystalEffectRule,
|
|
70
|
-
[RuleId.FortunesCourseEffect]: GainCrystalEffectRule,
|
|
71
|
-
[RuleId.DarkArmageddonEffect]: DarkArmageddonEffectRule,
|
|
72
|
-
[RuleId.BoardingPartyEffect]: BoardingPartyEffectRule,
|
|
73
|
-
[RuleId.DawnsDoomEffect]: DawnsDoomEffectRule,
|
|
74
|
-
[RuleId.SurpriseLootEffect]: SurpriseLootEffectRule
|
|
61
|
+
[RuleId.BoardingPartyEffect]: BoardingPartyEffectRule
|
|
75
62
|
};
|
|
76
63
|
locationsStrategies = {
|
|
77
64
|
[MaterialType.Card]: {
|
|
78
65
|
[LocationType.PlayerDeck]: new PositiveSequenceStrategy(),
|
|
79
66
|
[LocationType.PlayerHand]: new PositiveSequenceStrategy(),
|
|
80
67
|
[LocationType.PlayArea]: new PositiveSequenceStrategy(),
|
|
81
|
-
[LocationType.PlayerDiscard]: new PositiveSequenceStrategy()
|
|
68
|
+
[LocationType.PlayerDiscard]: new PositiveSequenceStrategy(),
|
|
69
|
+
[LocationType.UnderCard]: new PositiveSequenceStrategy()
|
|
82
70
|
}
|
|
83
71
|
};
|
|
84
72
|
hidingStrategies = {
|
|
85
73
|
[MaterialType.Card]: {
|
|
86
74
|
[LocationType.PlayerDeck]: hideFront,
|
|
87
|
-
[LocationType.PlayerHand]: hideFrontToOthers
|
|
75
|
+
[LocationType.PlayerHand]: hideFrontToOthers,
|
|
76
|
+
[LocationType.UnderCard]: hideFront
|
|
88
77
|
}
|
|
89
78
|
};
|
|
90
79
|
play(move, context) {
|
|
@@ -98,18 +87,22 @@ export class SkyriftRules extends SecretMaterialRules {
|
|
|
98
87
|
if (isMoveItemType(MaterialType.Card)(move)) {
|
|
99
88
|
const origin = this.material(MaterialType.Card).getItem(move.itemIndex).location;
|
|
100
89
|
if (origin.type === LocationType.PlayArea && move.location.type !== LocationType.PlayArea) {
|
|
101
|
-
|
|
102
|
-
|
|
90
|
+
moves.push(...createCardRule(this.game, move.itemIndex).onLeaves());
|
|
91
|
+
this.memorize(Memory.OngoingEffects, (effects) => effects.filter((e) => e.cardIndex !== move.itemIndex));
|
|
103
92
|
}
|
|
104
93
|
}
|
|
105
94
|
else if (isMoveItemTypeAtOnce(MaterialType.Card)(move)) {
|
|
95
|
+
const leavingIndexes = [];
|
|
106
96
|
for (const itemIndex of move.indexes) {
|
|
107
97
|
const origin = this.material(MaterialType.Card).getItem(itemIndex).location;
|
|
108
98
|
if (origin.type === LocationType.PlayArea && move.location.type !== LocationType.PlayArea) {
|
|
109
|
-
|
|
110
|
-
|
|
99
|
+
moves.push(...createCardRule(this.game, itemIndex).onLeaves());
|
|
100
|
+
leavingIndexes.push(itemIndex);
|
|
111
101
|
}
|
|
112
102
|
}
|
|
103
|
+
if (leavingIndexes.length > 0) {
|
|
104
|
+
this.memorize(Memory.OngoingEffects, (effects) => effects.filter((e) => !leavingIndexes.includes(e.cardIndex)));
|
|
105
|
+
}
|
|
113
106
|
}
|
|
114
107
|
return moves;
|
|
115
108
|
}
|
|
@@ -145,6 +138,9 @@ export class SkyriftRules extends SecretMaterialRules {
|
|
|
145
138
|
}
|
|
146
139
|
return moves;
|
|
147
140
|
}
|
|
141
|
+
isUnpredictableMove(move, player) {
|
|
142
|
+
return (isStartPlayerTurn(move) && move.id === RuleId.CavernSkulkerEffect) || super.isUnpredictableMove(move, player);
|
|
143
|
+
}
|
|
148
144
|
giveTime() {
|
|
149
145
|
return 60;
|
|
150
146
|
}
|
package/dist/SkyriftSetup.js
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import { listingToList, MaterialGameSetup } from '@gamepark/rules-api';
|
|
2
2
|
import { shuffle } from 'es-toolkit';
|
|
3
3
|
import { Deck } from './Deck';
|
|
4
|
+
import { GraveHurt } from './material/decks/GraveHurt';
|
|
4
5
|
import { HearthBlade } from './material/decks/HearthBlade';
|
|
5
6
|
import { HighWave } from './material/decks/HighWave';
|
|
7
|
+
import { WindSands } from './material/decks/WindSands';
|
|
6
8
|
import { LocationType } from './material/LocationType';
|
|
7
9
|
import { MaterialType } from './material/MaterialType';
|
|
8
10
|
import { Memory } from './Memory';
|
|
@@ -10,6 +12,8 @@ import { RuleId } from './rules/RuleId';
|
|
|
10
12
|
import { SkyriftRules } from './SkyriftRules';
|
|
11
13
|
const deckConfigurations = {
|
|
12
14
|
[Deck.HearthBlade]: HearthBlade,
|
|
15
|
+
[Deck.WindSands]: WindSands,
|
|
16
|
+
[Deck.GraveHurt]: GraveHurt,
|
|
13
17
|
[Deck.HighWave]: HighWave
|
|
14
18
|
};
|
|
15
19
|
export class SkyriftSetup extends MaterialGameSetup {
|
|
@@ -17,6 +21,7 @@ export class SkyriftSetup extends MaterialGameSetup {
|
|
|
17
21
|
setupMaterial(_options) {
|
|
18
22
|
this.setupDecks();
|
|
19
23
|
this.memorize(Memory.PendingEffects, []);
|
|
24
|
+
this.memorize(Memory.OngoingEffects, []);
|
|
20
25
|
this.memorize(Memory.CrystalsToWin, 6);
|
|
21
26
|
}
|
|
22
27
|
setupDecks() {
|
package/dist/material/Card.d.ts
CHANGED
|
@@ -16,6 +16,38 @@ export declare enum Card {
|
|
|
16
16
|
WatchTower = 114,
|
|
17
17
|
Confluence = 115,
|
|
18
18
|
Harvest = 116,
|
|
19
|
+
DesertRaider = 201,
|
|
20
|
+
Metamorph = 202,
|
|
21
|
+
ErgDeathslayer = 203,
|
|
22
|
+
AbiSnakeCharmer = 204,
|
|
23
|
+
Catadjinn = 205,
|
|
24
|
+
Vandals = 206,
|
|
25
|
+
MushaFakir = 207,
|
|
26
|
+
OasisShaman = 208,
|
|
27
|
+
MalikShadowtracker = 209,
|
|
28
|
+
DuneWardrums = 210,
|
|
29
|
+
SandWalkers = 211,
|
|
30
|
+
WishLamp = 212,
|
|
31
|
+
StarlightBazaar = 213,
|
|
32
|
+
AncientCurse = 214,
|
|
33
|
+
WindWrath = 215,
|
|
34
|
+
DeathTrap = 216,
|
|
35
|
+
MacabreLegion = 301,
|
|
36
|
+
CavernSkulker = 302,
|
|
37
|
+
TheGreatToady = 303,
|
|
38
|
+
Umbraboros = 304,
|
|
39
|
+
Nosferatis = 305,
|
|
40
|
+
InsatiableUmbraphage = 306,
|
|
41
|
+
ScrabDoombird = 307,
|
|
42
|
+
MoonFang = 308,
|
|
43
|
+
Whisperers = 309,
|
|
44
|
+
OstraVoiceOfTheSoul = 310,
|
|
45
|
+
TerrifyingSummoning = 311,
|
|
46
|
+
ReturnInTime = 312,
|
|
47
|
+
CallOfTheEclipse = 313,
|
|
48
|
+
WitchingHour = 314,
|
|
49
|
+
Doom = 315,
|
|
50
|
+
AstralHammer = 316,
|
|
19
51
|
SeaScorcher = 601,
|
|
20
52
|
AeliaSteadyHand = 602,
|
|
21
53
|
EyeOfSky = 603,
|
package/dist/material/Card.js
CHANGED
|
@@ -16,6 +16,38 @@ export var Card;
|
|
|
16
16
|
Card[Card["WatchTower"] = 114] = "WatchTower";
|
|
17
17
|
Card[Card["Confluence"] = 115] = "Confluence";
|
|
18
18
|
Card[Card["Harvest"] = 116] = "Harvest";
|
|
19
|
+
Card[Card["DesertRaider"] = 201] = "DesertRaider";
|
|
20
|
+
Card[Card["Metamorph"] = 202] = "Metamorph";
|
|
21
|
+
Card[Card["ErgDeathslayer"] = 203] = "ErgDeathslayer";
|
|
22
|
+
Card[Card["AbiSnakeCharmer"] = 204] = "AbiSnakeCharmer";
|
|
23
|
+
Card[Card["Catadjinn"] = 205] = "Catadjinn";
|
|
24
|
+
Card[Card["Vandals"] = 206] = "Vandals";
|
|
25
|
+
Card[Card["MushaFakir"] = 207] = "MushaFakir";
|
|
26
|
+
Card[Card["OasisShaman"] = 208] = "OasisShaman";
|
|
27
|
+
Card[Card["MalikShadowtracker"] = 209] = "MalikShadowtracker";
|
|
28
|
+
Card[Card["DuneWardrums"] = 210] = "DuneWardrums";
|
|
29
|
+
Card[Card["SandWalkers"] = 211] = "SandWalkers";
|
|
30
|
+
Card[Card["WishLamp"] = 212] = "WishLamp";
|
|
31
|
+
Card[Card["StarlightBazaar"] = 213] = "StarlightBazaar";
|
|
32
|
+
Card[Card["AncientCurse"] = 214] = "AncientCurse";
|
|
33
|
+
Card[Card["WindWrath"] = 215] = "WindWrath";
|
|
34
|
+
Card[Card["DeathTrap"] = 216] = "DeathTrap";
|
|
35
|
+
Card[Card["MacabreLegion"] = 301] = "MacabreLegion";
|
|
36
|
+
Card[Card["CavernSkulker"] = 302] = "CavernSkulker";
|
|
37
|
+
Card[Card["TheGreatToady"] = 303] = "TheGreatToady";
|
|
38
|
+
Card[Card["Umbraboros"] = 304] = "Umbraboros";
|
|
39
|
+
Card[Card["Nosferatis"] = 305] = "Nosferatis";
|
|
40
|
+
Card[Card["InsatiableUmbraphage"] = 306] = "InsatiableUmbraphage";
|
|
41
|
+
Card[Card["ScrabDoombird"] = 307] = "ScrabDoombird";
|
|
42
|
+
Card[Card["MoonFang"] = 308] = "MoonFang";
|
|
43
|
+
Card[Card["Whisperers"] = 309] = "Whisperers";
|
|
44
|
+
Card[Card["OstraVoiceOfTheSoul"] = 310] = "OstraVoiceOfTheSoul";
|
|
45
|
+
Card[Card["TerrifyingSummoning"] = 311] = "TerrifyingSummoning";
|
|
46
|
+
Card[Card["ReturnInTime"] = 312] = "ReturnInTime";
|
|
47
|
+
Card[Card["CallOfTheEclipse"] = 313] = "CallOfTheEclipse";
|
|
48
|
+
Card[Card["WitchingHour"] = 314] = "WitchingHour";
|
|
49
|
+
Card[Card["Doom"] = 315] = "Doom";
|
|
50
|
+
Card[Card["AstralHammer"] = 316] = "AstralHammer";
|
|
19
51
|
Card[Card["SeaScorcher"] = 601] = "SeaScorcher";
|
|
20
52
|
Card[Card["AeliaSteadyHand"] = 602] = "AeliaSteadyHand";
|
|
21
53
|
Card[Card["EyeOfSky"] = 603] = "EyeOfSky";
|
|
@@ -15,6 +15,38 @@ import { OscarScullion } from './decks/highwave/OscarScullion';
|
|
|
15
15
|
import { SurpriseLoot } from './decks/highwave/SurpriseLoot';
|
|
16
16
|
import { FortunesCourse } from './decks/highwave/FortunesCourse';
|
|
17
17
|
import { TropicalRuffian } from './decks/highwave/TropicalRuffian';
|
|
18
|
+
import { AbiSnakeCharmer } from './decks/windsands/AbiSnakeCharmer';
|
|
19
|
+
import { AncientCurse } from './decks/windsands/AncientCurse';
|
|
20
|
+
import { Catadjinn } from './decks/windsands/Catadjinn';
|
|
21
|
+
import { DeathTrap } from './decks/windsands/DeathTrap';
|
|
22
|
+
import { DesertRaider } from './decks/windsands/DesertRaider';
|
|
23
|
+
import { DuneWardrums } from './decks/windsands/DuneWardrums';
|
|
24
|
+
import { ErgDeathslayer } from './decks/windsands/ErgDeathslayer';
|
|
25
|
+
import { MalikShadowtracker } from './decks/windsands/MalikShadowtracker';
|
|
26
|
+
import { Metamorph } from './decks/windsands/Metamorph';
|
|
27
|
+
import { MushaFakir } from './decks/windsands/MushaFakir';
|
|
28
|
+
import { OasisShaman } from './decks/windsands/OasisShaman';
|
|
29
|
+
import { SandWalkers } from './decks/windsands/SandWalkers';
|
|
30
|
+
import { StarlightBazaar } from './decks/windsands/StarlightBazaar';
|
|
31
|
+
import { Vandals } from './decks/windsands/Vandals';
|
|
32
|
+
import { WindWrath } from './decks/windsands/WindWrath';
|
|
33
|
+
import { WishLamp } from './decks/windsands/WishLamp';
|
|
34
|
+
import { AstralHammer } from './decks/gravehurt/AstralHammer';
|
|
35
|
+
import { CavernSkulker } from './decks/gravehurt/CavernSkulker';
|
|
36
|
+
import { Doom } from './decks/gravehurt/Doom';
|
|
37
|
+
import { CallOfTheEclipse } from './decks/gravehurt/CallOfTheEclipse';
|
|
38
|
+
import { InsatiableUmbraphage } from './decks/gravehurt/InsatiableUmbraphage';
|
|
39
|
+
import { MacabreLegion } from './decks/gravehurt/MacabreLegion';
|
|
40
|
+
import { MoonFang } from './decks/gravehurt/MoonFang';
|
|
41
|
+
import { Nosferatis } from './decks/gravehurt/Nosferatis';
|
|
42
|
+
import { OstraVoiceOfTheSoul } from './decks/gravehurt/OstraVoiceOfTheSoul';
|
|
43
|
+
import { ReturnInTime } from './decks/gravehurt/ReturnInTime';
|
|
44
|
+
import { ScrabDoombird } from './decks/gravehurt/ScrabDoombird';
|
|
45
|
+
import { TerrifyingSummoning } from './decks/gravehurt/TerrifyingSummoning';
|
|
46
|
+
import { TheGreatToady } from './decks/gravehurt/TheGreatToady';
|
|
47
|
+
import { Umbraboros } from './decks/gravehurt/Umbraboros';
|
|
48
|
+
import { Whisperers } from './decks/gravehurt/Whisperers';
|
|
49
|
+
import { WitchingHour } from './decks/gravehurt/WitchingHour';
|
|
18
50
|
import { Armada } from './decks/heathblade/Armada';
|
|
19
51
|
import { Confluence } from './decks/heathblade/Confluence';
|
|
20
52
|
import { CoverOfNight } from './decks/heathblade/CoverOfNight';
|
|
@@ -48,6 +80,38 @@ export const cardProperties = {
|
|
|
48
80
|
[Card.WatchTower]: WatchTower,
|
|
49
81
|
[Card.Confluence]: Confluence,
|
|
50
82
|
[Card.Harvest]: Harvest,
|
|
83
|
+
[Card.DesertRaider]: DesertRaider,
|
|
84
|
+
[Card.Metamorph]: Metamorph,
|
|
85
|
+
[Card.ErgDeathslayer]: ErgDeathslayer,
|
|
86
|
+
[Card.AbiSnakeCharmer]: AbiSnakeCharmer,
|
|
87
|
+
[Card.Catadjinn]: Catadjinn,
|
|
88
|
+
[Card.Vandals]: Vandals,
|
|
89
|
+
[Card.MushaFakir]: MushaFakir,
|
|
90
|
+
[Card.OasisShaman]: OasisShaman,
|
|
91
|
+
[Card.MalikShadowtracker]: MalikShadowtracker,
|
|
92
|
+
[Card.DuneWardrums]: DuneWardrums,
|
|
93
|
+
[Card.SandWalkers]: SandWalkers,
|
|
94
|
+
[Card.WishLamp]: WishLamp,
|
|
95
|
+
[Card.StarlightBazaar]: StarlightBazaar,
|
|
96
|
+
[Card.AncientCurse]: AncientCurse,
|
|
97
|
+
[Card.WindWrath]: WindWrath,
|
|
98
|
+
[Card.DeathTrap]: DeathTrap,
|
|
99
|
+
[Card.MacabreLegion]: MacabreLegion,
|
|
100
|
+
[Card.CavernSkulker]: CavernSkulker,
|
|
101
|
+
[Card.TheGreatToady]: TheGreatToady,
|
|
102
|
+
[Card.Umbraboros]: Umbraboros,
|
|
103
|
+
[Card.Nosferatis]: Nosferatis,
|
|
104
|
+
[Card.InsatiableUmbraphage]: InsatiableUmbraphage,
|
|
105
|
+
[Card.ScrabDoombird]: ScrabDoombird,
|
|
106
|
+
[Card.MoonFang]: MoonFang,
|
|
107
|
+
[Card.Whisperers]: Whisperers,
|
|
108
|
+
[Card.OstraVoiceOfTheSoul]: OstraVoiceOfTheSoul,
|
|
109
|
+
[Card.TerrifyingSummoning]: TerrifyingSummoning,
|
|
110
|
+
[Card.ReturnInTime]: ReturnInTime,
|
|
111
|
+
[Card.CallOfTheEclipse]: CallOfTheEclipse,
|
|
112
|
+
[Card.WitchingHour]: WitchingHour,
|
|
113
|
+
[Card.Doom]: Doom,
|
|
114
|
+
[Card.AstralHammer]: AstralHammer,
|
|
51
115
|
[Card.SeaScorcher]: SeaScorcher,
|
|
52
116
|
[Card.AeliaSteadyHand]: AeliaSteadyHand,
|
|
53
117
|
[Card.EyeOfSky]: EyeOfSky,
|
|
@@ -1,36 +1,41 @@
|
|
|
1
1
|
import { MaterialGame, MaterialMove, MaterialRulesPart } from '@gamepark/rules-api';
|
|
2
2
|
import { Deck } from '../Deck';
|
|
3
|
-
import { RuleId } from '../rules/RuleId';
|
|
4
3
|
import { Card, CardId } from './Card';
|
|
5
|
-
import {
|
|
4
|
+
import { Effect } from './Effect';
|
|
5
|
+
import { OngoingEffectType } from './OngoingEffect';
|
|
6
6
|
export declare class CardRule extends MaterialRulesPart {
|
|
7
7
|
index: number;
|
|
8
8
|
constructor(game: MaterialGame, index: number);
|
|
9
|
-
onEnters():
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
9
|
+
onEnters?(): void;
|
|
10
|
+
onCardEnters?(card: Card, side: Deck): void;
|
|
11
|
+
activate?(): void;
|
|
12
|
+
onPlayerTurnStart?(): void;
|
|
13
|
+
onFoeTurnStart?(): void;
|
|
14
|
+
onSkirmishEnd?(): void;
|
|
15
|
+
onSkirmishWin?(): void;
|
|
16
|
+
onSkirmishLost?(): void;
|
|
17
|
+
survivesSkirmish?(): boolean;
|
|
18
|
+
canActivate(): boolean;
|
|
19
|
+
onLeaves(): MaterialMove[];
|
|
20
|
+
removePowerTokens(): MaterialMove[];
|
|
21
|
+
removeStunTokens(): MaterialMove[];
|
|
22
|
+
removeSpecialTokens(): MaterialMove[];
|
|
23
23
|
get item(): import("@gamepark/rules-api").MaterialItem<number, number, CardId>;
|
|
24
24
|
get card(): Card;
|
|
25
25
|
get properties(): import("./CardProperties").CardProperties;
|
|
26
|
+
get playArea(): import("@gamepark/rules-api").Material<number, number, number>;
|
|
27
|
+
get creatures(): import("@gamepark/rules-api").Material<number, number, number>;
|
|
26
28
|
isStunned(): boolean;
|
|
27
29
|
getPower(): number;
|
|
28
30
|
getPowerIfNotStunned(): number;
|
|
29
|
-
addPendingEffect(): void;
|
|
31
|
+
addPendingEffect(ruleId: number): void;
|
|
32
|
+
addOngoingEffect(type: OngoingEffectType): void;
|
|
33
|
+
removeOngoingEffect(type: OngoingEffectType): void;
|
|
30
34
|
get player(): number;
|
|
31
|
-
get
|
|
32
|
-
startEffect(): MaterialMove[];
|
|
35
|
+
get foe(): number;
|
|
36
|
+
startEffect(effect: Effect): MaterialMove[];
|
|
37
|
+
getEffectPlayer(_effect: Effect): number;
|
|
33
38
|
canBePlayed(): boolean;
|
|
34
|
-
|
|
35
|
-
|
|
39
|
+
canSuitBePlayed(): boolean;
|
|
40
|
+
ongoingEffectPreventsPlayCard(): boolean;
|
|
36
41
|
}
|