Skip to content

Commit

Permalink
add requirements
Browse files Browse the repository at this point in the history
  • Loading branch information
shinoi2 committed Mar 18, 2024
1 parent a34fb6f commit 18ec6bb
Show file tree
Hide file tree
Showing 87 changed files with 1,093 additions and 8 deletions.
7 changes: 7 additions & 0 deletions fireplace/cards/boomsday/druid.py
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,10 @@ class Hand:
class BOT_507:
"""Gloop Sprayer"""
# <b>Battlecry:</b> Summon a copy of each adjacent minion.
requirements = {
PlayReq.REQ_FRIENDLY_TARGET: 0,
PlayReq.REQ_MINION_TARGET: 0,
}
play = Summon(CONTROLLER, ExactCopy(SELF_ADJACENT))


Expand Down Expand Up @@ -92,6 +96,9 @@ class BOT_404:
class BOT_420:
"""Landscaping"""
# Summon two 2/2 Treants.
requirements = {
PlayReq.REQ_NUM_MINION_SLOTS: 1,
}
play = Summon(CONTROLLER, "EX1_158t") * 2


Expand Down
17 changes: 17 additions & 0 deletions fireplace/cards/boomsday/hunter.py
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,12 @@ class BOT_038:
"""Fireworks Tech"""
# [x]<b>Battlecry:</b> Give a friendly Mech +1/+1. If it has <b>Deathrattle</b>,
# trigger it.
requirements = {
PlayReq.REQ_TARGET_IF_AVAILABLE: 0,
PlayReq.REQ_FRIENDLY_TARGET: 0,
PlayReq.REQ_MINION_TARGET: 0,
PlayReq.REQ_TARGET_WITH_RACE: 17,
}
play = (
Buff(TARGET, "BOT_038e"),
Find(TARGET + DEATHRATTLE) & Deathrattle(TARGET)
Expand Down Expand Up @@ -56,6 +62,9 @@ class BOT_251e:
class BOT_033:
"""Bomb Toss"""
# Deal $2 damage. Summon a 0/2 Goblin_Bomb.
requirements = {
PlayReq.REQ_TARGET_TO_PLAY: 0,
}
play = Hit(TARGET, 2), Summon(CONTROLLER, "BOT_031")


Expand All @@ -72,6 +81,9 @@ class BOT_402:
class BOT_429:
"""Flark's Boom-Zooka"""
# [x]Summon 3 minions from your deck. They attack enemy minions, then die.
requirements = {
PlayReq.REQ_NUM_MINION_SLOTS: 1,
}
play = Summon(CONTROLLER, RANDOM(FRIENDLY_DECK + MINION)).then(
Attack(Summon.CARD, RANDOM_ENEMY_MINION),
Destroy(Summon.CARD)
Expand All @@ -81,6 +93,11 @@ class BOT_429:
class BOT_437:
"""Goblin Prank"""
# Give a friendly minion +3/+3 and <b>Rush</b>. It_dies at end of turn.
requirements = {
PlayReq.REQ_TARGET_TO_PLAY: 0,
PlayReq.REQ_MINION_TARGET: 0,
PlayReq.REQ_FRIENDLY_TARGET: 0,
}
play = Buff(TARGET, "BOT_437e")


Expand Down
7 changes: 7 additions & 0 deletions fireplace/cards/boomsday/mage.py
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,9 @@ class BOT_101:
class BOT_254:
"""Unexpected Results"""
# [x]Summon two random $2-Cost minions <i>(improved by <b>Spell Damage</b>)</i>.
requirements = {
PlayReq.REQ_NUM_MINION_SLOTS: 1,
}
play = Summon(CONTROLLER, RandomMinion(cost=SPELL_DAMAGE(2)))


Expand All @@ -62,6 +65,10 @@ class BOT_257e:
class BOT_453:
"""Shooting Star"""
# Deal $1 damage to a minion and the minions next to it.
requirements = {
PlayReq.REQ_TARGET_TO_PLAY: 0,
PlayReq.REQ_MINION_TARGET: 0,
}
play = Hit(TARGET, 1), Hit(TARGET_ADJACENT, 1)


Expand Down
9 changes: 9 additions & 0 deletions fireplace/cards/boomsday/neutral_common.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,12 @@ class BOT_031:
class BOT_079:
"""Faithful Lumi"""
# <b>Battlecry:</b> Give a friendly Mech +1/+1.
requirements = {
PlayReq.REQ_TARGET_IF_AVAILABLE: 0,
PlayReq.REQ_TARGET_WITH_RACE: 17,
PlayReq.REQ_FRIENDLY_TARGET: 0,
PlayReq.REQ_MINION_TARGET: 0,
}
play = Buff(TARGET, "BOT_079e")


Expand All @@ -55,6 +61,9 @@ class BOT_267:
class BOT_308:
"""Spring Rocket"""
# <b>Battlecry:</b> Deal 2 damage.
requirements = {
PlayReq.REQ_TARGET_IF_AVAILABLE: 0,
}
play = Hit(TARGET, 2)


Expand Down
5 changes: 5 additions & 0 deletions fireplace/cards/boomsday/neutral_epic.py
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,11 @@ class BOT_511t:
class BOT_540:
"""E.M.P. Operative"""
# <b>Battlecry:</b> Destroy a Mech.
requirements = {
PlayReq.REQ_TARGET_IF_AVAILABLE: 0,
PlayReq.REQ_TARGET_WITH_RACE: 17,
PlayReq.REQ_MINION_TARGET: 0,
}
play = Destroy(TARGET)


Expand Down
8 changes: 8 additions & 0 deletions fireplace/cards/boomsday/paladin.py
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,10 @@ class BOT_234e:
class BOT_436:
"""Prismatic Lens"""
# Draw a minion and a spell from your deck. Swap their Costs.
requirements = {
PlayReq.REQ_MINION_TARGET: 0,
PlayReq.REQ_FRIENDLY_TARGET: 0,
}
play = FindAll(
FRIENDLY_DECK + MINION,
FRIENDLY_DECK + SPELL
Expand Down Expand Up @@ -96,4 +100,8 @@ class BOT_909:
class BOT_912:
"""Kangor's Endless Army"""
# Resurrect 3 friendly Mechs. They keep any <b>Magnetic</b> upgrades.
requirements = {
PlayReq.REQ_NUM_MINION_SLOTS: 1,
PlayReq.REQ_FRIENDLY_MINIONS_OF_RACE_DIED_THIS_GAME: 17,
}
play = Summon(CONTROLLER, KeepMagneticCopy(RANDOM(FRIENDLY + KILLED + MECH) * 3))
18 changes: 18 additions & 0 deletions fireplace/cards/boomsday/priest.py
Original file line number Diff line number Diff line change
Expand Up @@ -63,10 +63,18 @@ class BOT_566e:
class BOT_219:
"""Extra Arms"""
# [x]Give a minion +2/+2. Add 'More Arms!' to your hand that gives +2/+2.
requirements = {
PlayReq.REQ_TARGET_TO_PLAY: 0,
PlayReq.REQ_MINION_TARGET: 0,
}
play = Buff(TARGET, "BOT_219e"), Give(CONTROLLER, "BOT_219t")


class BOT_219t:
requirements = {
PlayReq.REQ_TARGET_TO_PLAY: 0,
PlayReq.REQ_MINION_TARGET: 0,
}
play = Buff(TARGET, "BOT_219te")


Expand All @@ -85,6 +93,10 @@ class BOT_435:
class BOT_517:
"""Topsy Turvy"""
# Swap a minion's Attack and Health.
requirements = {
PlayReq.REQ_TARGET_TO_PLAY: 0,
PlayReq.REQ_MINION_TARGET: 0,
}
play = Buff(TARGET, "BOT_517e")


Expand All @@ -94,6 +106,12 @@ class BOT_517:
class BOT_529:
"""Power Word: Replicate"""
# Choose a friendly minion. Summon a 5/5 copy of it.
requirements = {
PlayReq.REQ_TARGET_TO_PLAY: 0,
PlayReq.REQ_MINION_TARGET: 0,
PlayReq.REQ_FRIENDLY_TARGET: 0,
PlayReq.REQ_NUM_MINION_SLOTS: 1,
}
play = Summon(CONTROLLER, Buff(ExactCopy(TARGET), "BOT_529e"))


Expand Down
19 changes: 19 additions & 0 deletions fireplace/cards/boomsday/rogue.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,11 @@ class BOT_283:
class BOT_288:
"""Lab Recruiter"""
# <b>Battlecry:</b> Shuffle 3 copies of a friendly minion into your deck.
requirements = {
PlayReq.REQ_MINION_TARGET: 0,
PlayReq.REQ_TARGET_IF_AVAILABLE: 0,
PlayReq.REQ_FRIENDLY_TARGET: 0,
}
play = Shuffle(CONTROLLER, Copy(TARGET)) * 3


Expand All @@ -39,6 +44,11 @@ class BOT_565:
class BOT_576:
"""Crazed Chemist"""
# <b>Combo:</b> Give a friendly minion +4 Attack.
requirements = {
PlayReq.REQ_MINION_TARGET: 0,
PlayReq.REQ_TARGET_FOR_COMBO: 0,
PlayReq.REQ_FRIENDLY_TARGET: 0,
}
combo = Buff(TARGET, "BOT_576e")


Expand All @@ -57,6 +67,9 @@ class BOT_084:
class BOT_087:
"""Academic Espionage"""
# Shuffle 10 cards from your opponent's class into your deck. They_cost (1).
requirements = {
PlayReq.REQ_MINION_TARGET: 0,
}
play = Shuffle(CONTROLLER, Buff(
RandomCollectible(card_class=ENEMY_CLASS), "BOT_087e")) * 10

Expand All @@ -75,6 +88,12 @@ class BOT_242:
class BOT_508:
"""Necrium Vial"""
# Trigger a friendly minion's <b>Deathrattle</b> twice.
requirements = {
PlayReq.REQ_TARGET_TO_PLAY: 0,
PlayReq.REQ_MINION_TARGET: 0,
PlayReq.REQ_FRIENDLY_TARGET: 0,
PlayReq.REQ_TARGET_WITH_DEATHRATTLE: 0,
}
play = Deathrattle(TARGET) * 2


Expand Down
6 changes: 6 additions & 0 deletions fireplace/cards/boomsday/shaman.py
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,9 @@ class BOT_093:
class BOT_099:
"""Eureka!"""
# Summon a copy of_a_random minion from your hand.
requirements = {
PlayReq.REQ_NUM_MINION_SLOTS: 1,
}
play = Summon(CONTROLLER, ExactCopy(RANDOM(FRIENDLY_HAND + MINION)))


Expand All @@ -81,4 +84,7 @@ class BOT_246:
class BOT_451:
"""Voltaic Burst"""
# Summon two 1/1 Sparks with <b>Rush</b>. <b>Overload:</b> (1)
requirements = {
PlayReq.REQ_NUM_MINION_SLOTS: 1,
}
play = Summon(CONTROLLER, "BOT_102t") * 2
7 changes: 7 additions & 0 deletions fireplace/cards/boomsday/warlock.py
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,10 @@ class BOT_536:
class BOT_222:
"""Spirit Bomb"""
# Deal $4 damage to a minion and your hero.
requirements = {
PlayReq.REQ_TARGET_TO_PLAY: 0,
PlayReq.REQ_MINION_TARGET: 0,
}
play = Hit(TARGET, 4), Hit(FRIENDLY_HERO, 4)


Expand All @@ -62,6 +66,9 @@ class BOT_263:
class BOT_521:
"""Ectomancy"""
# Summon copies of all Demons you control.
requirements = {
PlayReq.REQ_NUM_MINION_SLOTS: 1,
}
play = Summon(CONTROLLER, ExactCopy(FRIENDLY_MINIONS + DEMON))


Expand Down
17 changes: 17 additions & 0 deletions fireplace/cards/boomsday/warrior.py
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,11 @@ class BOT_042:
class BOT_067:
"""Rocket Boots"""
# Give a minion <b>Rush</b>. Draw a card.
requirements = {
PlayReq.REQ_TARGET_TO_PLAY: 0,
PlayReq.REQ_MINION_TARGET: 0,
PlayReq.REQ_FRIENDLY_TARGET: 0,
}
play = Buff(TARGET, "BOT_067e"), Draw(CONTROLLER)


Expand All @@ -55,6 +60,9 @@ class BOT_067:
class BOT_069:
"""The Boomship"""
# Summon 3 random minions from your hand. Give them <b>Rush</b>.
requirements = {
PlayReq.REQ_NUM_MINION_SLOTS: 1,
}
play = Summon(CONTROLLER, RANDOM(FRIENDLY_HAND + MINION) * 3).then(
Buff(Summon.CARD, "BOT_069e")
)
Expand Down Expand Up @@ -111,6 +119,9 @@ class BOT_238p:


class BOT_238p1:
requirements = {
PlayReq.REQ_TARGET_TO_PLAY: 0,
}
entourage = BOT_238.entourage
activate = Hit(TARGET, 3)
events = OWN_TURN_END.on(Summon(CONTROLLER, RandomEntourage(exclude=SELF)))
Expand All @@ -129,12 +140,18 @@ class BOT_238p3:


class BOT_238p4:
requirements = {
PlayReq.REQ_HAND_NOT_FULL: 0,
}
entourage = BOT_238.entourage
activate = DISCOVER(RandomMech())
events = OWN_TURN_END.on(Summon(CONTROLLER, RandomEntourage(exclude=SELF)))


class BOT_238p6:
requirements = {
PlayReq.REQ_NUM_MINION_SLOTS: 1,
}
entourage = BOT_238.entourage
activate = Summon(CONTROLLER, "BOT_312t") * 3
events = OWN_TURN_END.on(Summon(CONTROLLER, RandomEntourage(exclude=SELF)))
4 changes: 4 additions & 0 deletions fireplace/cards/classic/mage.py
Original file line number Diff line number Diff line change
Expand Up @@ -201,6 +201,10 @@ class EX1_594:
class EX1_179:
"""Icicle"""
# Deal $2 damage to a minion. If it's <b>Frozen</b>, draw a card.
requirements = {
PlayReq.REQ_TARGET_TO_PLAY: 0,
PlayReq.REQ_MINION_TARGET: 0,
}
play = Hit(TARGET, 2), Find(TARGET + FROZEN) & Draw(CONTROLLER)


Expand Down
3 changes: 3 additions & 0 deletions fireplace/cards/classic/priest.py
Original file line number Diff line number Diff line change
Expand Up @@ -118,6 +118,9 @@ def apply(self, target):

class CS1_130:
"""Holy Smite"""
requirements = {
PlayReq.REQ_TARGET_TO_PLAY: 0,
}
play = Hit(TARGET, 2)


Expand Down
5 changes: 5 additions & 0 deletions fireplace/cards/classic/rogue.py
Original file line number Diff line number Diff line change
Expand Up @@ -226,4 +226,9 @@ class EX1_182:
class EX1_191:
"""Plaguebringer"""
# <b>Battlecry:</b> Give a friendly minion <b>Poisonous</b>.
requirements = {
PlayReq.REQ_MINION_TARGET: 0,
PlayReq.REQ_FRIENDLY_TARGET: 0,
PlayReq.REQ_TARGET_IF_AVAILABLE: 0,
}
play = GivePoisonous(TARGET)
4 changes: 4 additions & 0 deletions fireplace/cards/classic/warlock.py
Original file line number Diff line number Diff line change
Expand Up @@ -197,6 +197,10 @@ class EX1_596:

class NEW1_003:
"""Sacrificial Pact"""
requirements = {
PlayReq.REQ_TARGET_TO_PLAY: 0,
PlayReq.REQ_TARGET_WITH_RACE: 15,
}
play = Destroy(TARGET), Heal(FRIENDLY_HERO, 5)


Expand Down
Loading

0 comments on commit 18ec6bb

Please sign in to comment.