def create_minion(self, player): return Minion(5, 8, effects=[Effect(SpellCast(Not(HasCardName("Gallywix's Coin")), EnemyPlayer()), ActionTag(AddCard(CardQuery(source=CARD_SOURCE.LAST_CARD)), PlayerSelector(FriendlyPlayer()))), Effect(SpellCast(Not(HasCardName("Gallywix's Coin")), EnemyPlayer()), ActionTag(AddCard(GallywixsCoin()), PlayerSelector(EnemyPlayer())))])
def create_minion(self, player): return Minion( 3, 3, effects=[ Effect(TurnEnded(HasSecret()), ActionTag(Give(ChangeAttack(2)), SelfSelector())), Effect(TurnEnded(HasSecret()), ActionTag(Give(ChangeHealth(2)), SelfSelector())) ])
def create_minion(self, player): return Minion( 2, 2, effects=[ Effect(MinionDied(IsType(MINION_TYPE.BEAST)), ActionTag(Give(ChangeAttack(2)), SelfSelector())), Effect(MinionDied(IsType(MINION_TYPE.BEAST)), ActionTag(Give(ChangeHealth(1)), SelfSelector())) ])
def create_minion(self, player): return Minion( 2, 4, effects=[ Effect(CardPlayed(HasOverload()), ActionTag(Give(ChangeAttack(1)), SelfSelector())), Effect(CardPlayed(HasOverload()), ActionTag(Give(ChangeHealth(1)), SelfSelector())) ])
def create_minion(self, player): return Minion(3, 3, effects=[ Effect( TurnEnded(HasSecret()), ActionTag(Give(Add(CHARACTER_STATUS.ATTACK, 2)), SelfSelector())), Effect( TurnEnded(HasSecret()), ActionTag(Give(Add(CHARACTER_STATUS.HEALTH, 2)), SelfSelector())) ])
def create_weapon(self, player): return Weapon( 7, 1, effects=[ Effect(CharacterAttack(And(IsHero(), TargetIsMinion())), [ ActionTag(IncreaseDurability(), HeroSelector()), ActionTag(IncreaseWeaponAttack(-1), HeroSelector()), ActionTag( Give(BuffUntil(ChangeAttack(1), AttackCompleted())), HeroSelector()) ]) ])
def create_minion(self, player): return Minion(2, 4, effects=[ Effect( CardPlayed(HasOverload()), ActionTag(Give(Add(CHARACTER_STATUS.ATTACK, 1)), SelfSelector())), Effect( CardPlayed(HasOverload()), ActionTag(Give(Add(CHARACTER_STATUS.HEALTH, 1)), SelfSelector())) ])
def create_minion(self, player): return Minion(2, 2, effects=[ Effect( MinionDied(IsType(MINION_TYPE.BEAST)), ActionTag(Give(Add(CHARACTER_STATUS.ATTACK, 2)), SelfSelector())), Effect( MinionDied(IsType(MINION_TYPE.BEAST)), ActionTag(Give(Add(CHARACTER_STATUS.HEALTH, 1)), SelfSelector())) ])
def create_weapon(self, player): return Weapon( 1, 5, effects=[ Effect( MinionSummoned(), ActionTag( Give([Buff(ChangeAttack(1)), Buff(ChangeHealth(1))]), TargetSelector())), Effect(MinionSummoned(), ActionTag(DecreaseDurability(), WeaponSelector())) ])
def create_minion(self, player): return Minion(5, 8, effects=[ Effect( SpellCast(Not(HasCardName("Gallywix's Coin")), EnemyPlayer()), ActionTag(AddCard(LastCard()), PlayerSelector(FriendlyPlayer()))), Effect( SpellCast(Not(HasCardName("Gallywix's Coin")), EnemyPlayer()), ActionTag(AddCard(GallywixsCoin()), PlayerSelector(EnemyPlayer()))) ])
def use(self, player, game): super().use(player, game) self.target.add_effect( Effect(TurnEnded(), ActionTag(Kill(), SelfSelector()))) self.target.change_attack(4) self.target.increase_health(4)
def create_minion(self, player): return Minion(3, 6, effects=[ Effect(DidDamage(), ActionTag(Give(Frozen()), TargetSelector())) ])
def create_minion(self, player): return Minion(2, 3, effects=[ Effect(DidDamage(), ActionTag(Freeze(), TargetSelector())) ])
def create_minion(self, player): return Minion(4, 1, effects=[ Effect(MinionSummoned(IsType(MINION_TYPE.PIRATE)), ActionTag(Give(Stealth()), SelfSelector())) ])
def __init__(self): super().__init__("Burrowing Mine", 0, CHARACTER_CLASS.WARRIOR, CARD_RARITY.COMMON, False, effects=[ Effect(Drawn(), ActionTag(Damage(10), HeroSelector())), Effect( Drawn(), ActionTag(RemoveFromHand(Same()), PlayerSelector())), Effect(Drawn(), ActionTag(Draw(), PlayerSelector())) ])
def use(self, player, game): super().use(player, game) if player is game.players[0]: draw_player = PlayerOne() else: draw_player = PlayerTwo() self.target.add_effect(Effect(Attack(), ActionTag(Draw(), PlayerSelector(draw_player))))
def __init__(self): super().__init__("Fist of Jaraxxus", 4, CHARACTER_CLASS.WARLOCK, CARD_RARITY.RARE, effects=[Effect(CardDiscarded(MinionIsTarget()), ActionTag(Damage(4), CharacterSelector(None, EnemyPlayer(), RandomPicker()))) ])
def create_minion(self, player): return Minion(2, 3, effects=[ Effect(MinionPlaced(AttackLessThanOrEqualTo(3)), ActionTag(Give(Charge()), TargetSelector())) ])
def use(self, player, game): super().use(player, game) game.other_player.hero.damage(player.effective_spell_damage(2), self) if player.cards_played > 0: player.add_effect( Effect(TurnEnded(), ActionTag(AddCard(self), PlayerSelector())))
def create_minion(self, player): return Minion(2, 4, effects=[ Effect(Damaged(), ActionTag(Summon(Imp()), PlayerSelector())) ])
def create_minion(self, player): return Minion(5, 4, windfury=True, effects=[Effect(Attack(), ActionTag(ChangeTarget(CharacterSelector(NotCurrentTarget(), EnemyPlayer(), RandomPicker())), SelfSelector(), And(OneIn(2), OpponentMinionCountIsGreaterThan(0))))])
def create_minion(self, player): return Minion(9, 9, effects=[ Effect(TurnEnded(MinionCountIs(1), BothPlayer()), ActionTag(Kill(), SelfSelector())) ])
def create_minion(self, player): return Minion(1, 4, effects=[ Effect(DidDamage(), ActionTag(Heal(EventValue()), HeroSelector())) ])
def create_minion(self, player): return Minion(2, 5, effects=[ Effect(MinionDied(IsType(MINION_TYPE.MURLOC)), ActionTag(Draw(), PlayerSelector())) ])
def create_minion(self, player): return Minion(3, 2, effects=[ Effect(MinionPlaced(IsType(MINION_TYPE.BEAST)), ActionTag(Draw(), PlayerSelector())) ])
def create_weapon(self, player): return Weapon(4, 2, effects=[ Effect(CharacterAttack(IsHero()), ActionTag(Heal(2), HeroSelector())) ])
def create_minion(self, player): return Minion(1, 4, effects=[ Effect(CharacterDamaged(condition=IsMinion()), ActionTag(IncreaseArmor(), HeroSelector())) ])
def create_minion(self, player): return Minion(6, 3, effects=[ Effect( MinionSummoned(IsType(MINION_TYPE.MECH)), ActionTag(Give(DivineShield()), SelfSelector())) ])
def create_minion(self, player): return Minion(1, 1, stealth=True, effects=[ Effect(DidDamage(), ActionTag(Kill(), TargetSelector(IsMinion()))) ])
def create_minion(self, player): return Minion(5, 5, effects=[ Effect( ArmorIncreased(), ActionTag(Give(ChangeAttack(1)), SelfSelector())) ])