Ejemplo n.º 1
0
 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())))])
Ejemplo n.º 2
0
 def create_minion(self, player):
     return Minion(2,
                   2,
                   effects=[
                       Effect(MinionDied(MinionIsType(MINION_TYPE.BEAST)),
                              ChangeAttack(2), SelfSelector()),
                       Effect(MinionDied(MinionIsType(MINION_TYPE.BEAST)),
                              ChangeHealth(1), SelfSelector())
                   ])
Ejemplo n.º 3
0
 def create_minion(self, player):
     return Minion(3,
                   3,
                   effects=[
                       Effect(TurnEnded(HasSecret()), ChangeAttack(2),
                              SelfSelector()),
                       Effect(TurnEnded(HasSecret()), ChangeHealth(2),
                              SelfSelector())
                   ])
Ejemplo n.º 4
0
 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()))
         ])
Ejemplo n.º 5
0
 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()))
         ])
Ejemplo n.º 6
0
 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()))
                   ])
Ejemplo n.º 7
0
 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()))
                   ])
Ejemplo n.º 8
0
 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()))
                   ])
Ejemplo n.º 9
0
 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())))
                   ])
Ejemplo n.º 10
0
 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())))
                               ])
Ejemplo n.º 11
0
 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())))
Ejemplo n.º 12
0
 def create_minion(self, player):
     return Minion(0,
                   5,
                   effects=[
                       Effect(TurnStarted(), Heal(3),
                              CharacterSelector(picker=RandomPicker()))
                   ])
Ejemplo n.º 13
0
    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)
Ejemplo n.º 14
0
 def create_minion(self, player):
     return Minion(4,
                   1,
                   effects=[
                       Effect(MinionSummoned(IsType(MINION_TYPE.PIRATE)),
                              ActionTag(Give(Stealth()), SelfSelector()))
                   ])
Ejemplo n.º 15
0
 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()))
                      ])
Ejemplo n.º 16
0
 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))))
Ejemplo n.º 17
0
 def create_minion(self, player):
     return Minion(2,
                   3,
                   effects=[
                       Effect(MinionPlaced(AttackLessThanOrEqualTo(3)),
                              ActionTag(Give(Charge()), TargetSelector()))
                   ])
Ejemplo n.º 18
0
 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))))])
Ejemplo n.º 19
0
 def create_minion(self, player):
     return Minion(2,
                   5,
                   effects=[
                       Effect(MinionDied(IsType(MINION_TYPE.MURLOC)),
                              ActionTag(Draw(), PlayerSelector()))
                   ])
Ejemplo n.º 20
0
 def create_minion(self, player):
     return Minion(2,
                   3,
                   effects=[
                       Effect(DidDamage(),
                              ActionTag(Freeze(), TargetSelector()))
                   ])
Ejemplo n.º 21
0
 def create_minion(self, player):
     return Minion(2,
                   4,
                   effects=[
                       Effect(Damaged(),
                              ActionTag(Summon(Imp()), PlayerSelector()))
                   ])
Ejemplo n.º 22
0
 def create_minion(self, player):
     return Minion(1,
                   4,
                   effects=[
                       Effect(DidDamage(),
                              ActionTag(Heal(EventValue()), HeroSelector()))
                   ])
Ejemplo n.º 23
0
 def create_minion(self, player):
     return Minion(3,
                   6,
                   effects=[
                       Effect(DidDamage(),
                              ActionTag(Give(Frozen()), TargetSelector()))
                   ])
Ejemplo n.º 24
0
 def create_minion(self, player):
     return Minion(3,
                   2,
                   effects=[
                       Effect(MinionPlaced(IsType(MINION_TYPE.BEAST)),
                              ActionTag(Draw(), PlayerSelector()))
                   ])
Ejemplo n.º 25
0
 def create_minion(self, player):
     return Minion(9,
                   9,
                   effects=[
                       Effect(TurnEnded(MinionCountIs(1), BothPlayer()),
                              ActionTag(Kill(), SelfSelector()))
                   ])
Ejemplo n.º 26
0
 def create_weapon(self, player):
     return Weapon(4,
                   2,
                   effects=[
                       Effect(CharacterAttack(IsHero()),
                              ActionTag(Heal(2), HeroSelector()))
                   ])
Ejemplo n.º 27
0
 def create_minion(self, player):
     return Minion(1,
                   4,
                   effects=[
                       Effect(CharacterDamaged(condition=IsMinion()),
                              ActionTag(IncreaseArmor(), HeroSelector()))
                   ])
Ejemplo n.º 28
0
 def create_minion(self, player):
     return Minion(6,
                   3,
                   effects=[
                       Effect(
                           MinionSummoned(IsType(MINION_TYPE.MECH)),
                           ActionTag(Give(DivineShield()), SelfSelector()))
                   ])
Ejemplo n.º 29
0
 def create_minion(self, player):
     return Minion(1,
                   1,
                   stealth=True,
                   effects=[
                       Effect(DidDamage(),
                              ActionTag(Kill(), TargetSelector(IsMinion())))
                   ])
Ejemplo n.º 30
0
 def create_minion(self, player):
     return Minion(5,
                   5,
                   effects=[
                       Effect(
                           ArmorIncreased(),
                           ActionTag(Give(ChangeAttack(1)), SelfSelector()))
                   ])