Пример #1
0
 def __init__(self):
     super().__init__("Grove Tender",
                      3,
                      CHARACTER_CLASS.DRUID,
                      CARD_RARITY.RARE,
                      choices=[
                          Choice(GiftOfMana(), GiveManaCrystal(),
                                 PlayerSelector(players=BothPlayer())),
                          Choice(GiftOfCards(), Draw(),
                                 PlayerSelector(players=BothPlayer()))
                      ])
Пример #2
0
 def __init__(self):
     super().__init__("Keeper of the Grove",
                      4,
                      CHARACTER_CLASS.DRUID,
                      CARD_RARITY.RARE,
                      choices=[
                          Choice(
                              Moonfire(), Damage(2),
                              CharacterSelector(players=BothPlayer(),
                                                picker=UserPicker())),
                          Choice(
                              Dispel(), Silence(),
                              MinionSelector(players=BothPlayer(),
                                             picker=UserPicker()))
                      ])
Пример #3
0
 def create_minion(self, player):
     return Minion(9,
                   9,
                   effects=[
                       Effect(TurnEnded(MinionCountIs(1), BothPlayer()),
                              ActionTag(Kill(), SelfSelector()))
                   ])
Пример #4
0
 def __init__(self):
     super().__init__("Shadowbomber",
                      1,
                      CHARACTER_CLASS.PRIEST,
                      CARD_RARITY.EPIC,
                      battlecry=Battlecry(
                          Damage(3), HeroSelector(players=BothPlayer())))
Пример #5
0
 def __init__(self):
     super().__init__("Cruel Taskmaster",
                      2,
                      CHARACTER_CLASS.WARRIOR,
                      CARD_RARITY.COMMON,
                      battlecry=Battlecry(
                          [Damage(1), Give(ChangeAttack(2))],
                          MinionSelector(players=BothPlayer())))
Пример #6
0
 def __init__(self):
     super().__init__("Scarlet Purifier",
                      3,
                      CHARACTER_CLASS.PALADIN,
                      CARD_RARITY.RARE,
                      battlecry=Battlecry(
                          Damage(2),
                          MinionSelector(MinionHasDeathrattle(),
                                         BothPlayer())))
Пример #7
0
 def create_minion(self, player):
     return Minion(4,
                   2,
                   effects=[
                       Effect(
                           CharacterDamaged(MinionIsNotTarget(),
                                            BothPlayer()),
                           [ActionTag(Kill(), TargetSelector())])
                   ])
Пример #8
0
 def __init__(self):
     super().__init__("Dread Infernal",
                      6,
                      CHARACTER_CLASS.WARLOCK,
                      CARD_RARITY.COMMON,
                      minion_type=MINION_TYPE.DEMON,
                      battlecry=Battlecry(
                          Damage(1),
                          CharacterSelector(players=BothPlayer())))
Пример #9
0
 def __init__(self):
     super().__init__("Fire Elemental",
                      6,
                      CHARACTER_CLASS.SHAMAN,
                      CARD_RARITY.COMMON,
                      battlecry=Battlecry(
                          Damage(3),
                          CharacterSelector(players=BothPlayer(),
                                            picker=UserPicker())))
Пример #10
0
 def __init__(self):
     super().__init__(
         "Cruel Taskmaster",
         2,
         CHARACTER_CLASS.WARRIOR,
         CARD_RARITY.COMMON,
         battlecry=Battlecry(
             [Damage(1), Give(Add(CHARACTER_STATUS.ATTACK, 2))],
             MinionSelector(players=BothPlayer(), picker=UserPicker())))
Пример #11
0
 def __init__(self):
     super().__init__("Vol'jin",
                      5,
                      CHARACTER_CLASS.PRIEST,
                      CARD_RARITY.LEGENDARY,
                      battlecry=Battlecry(
                          SwapStats("health", "health", True),
                          MinionSelector(players=BothPlayer(),
                                         picker=UserPicker())))
Пример #12
0
 def create_minion(self, player):
     return Minion(2,
                   4,
                   effects=[
                       Effect(
                           CharacterDamaged(player=BothPlayer(),
                                            condition=IsMinion()),
                           ActionTag(Give(ChangeAttack(1)), SelfSelector()))
                   ])
Пример #13
0
 def create_minion(self, player):
     return Minion(1,
                   3,
                   effects=[
                       Effect(
                           CharacterHealed(condition=IsMinion(),
                                           player=BothPlayer()),
                           ActionTag(Draw(), PlayerSelector()))
                   ])
Пример #14
0
 def __init__(self):
     super().__init__("SI:7 Agent",
                      3,
                      CHARACTER_CLASS.ROGUE,
                      CARD_RARITY.RARE,
                      combo=Battlecry(
                          Damage(2),
                          CharacterSelector(players=BothPlayer(),
                                            picker=UserPicker())))
Пример #15
0
 def __init__(self):
     super().__init__("Kidnapper",
                      6,
                      CHARACTER_CLASS.ROGUE,
                      CARD_RARITY.EPIC,
                      combo=Battlecry(
                          Bounce(),
                          MinionSelector(picker=UserPicker(),
                                         players=BothPlayer())))
Пример #16
0
 def create_minion(self, player):
     minion = Minion(2,
                     4,
                     effects=[
                         Effect(
                             CharacterDamaged(player=BothPlayer(),
                                              condition=IsMinion()),
                             ChangeAttack(1), SelfSelector())
                     ])
     return minion
Пример #17
0
 def create_minion(self, player):
     return Minion(2,
                   4,
                   effects=[
                       Effect(
                           CharacterDamaged(player=BothPlayer(),
                                            condition=IsMinion()),
                           ActionTag(Give(Add(CHARACTER_STATUS.ATTACK, 1)),
                                     SelfSelector()))
                   ])
Пример #18
0
 def __init__(self):
     super().__init__(
         "Solemn Vigil",
         5,
         CHARACTER_CLASS.PALADIN,
         CARD_RARITY.COMMON,
         buffs=[
             Buff(
                 ManaChange(Count(DeadMinionSelector(players=BothPlayer())),
                            -1))
         ])
Пример #19
0
 def __init__(self):
     super().__init__(
         "Dragon's Breath",
         5,
         CHARACTER_CLASS.MAGE,
         CARD_RARITY.COMMON,
         target_func=hearthbreaker.targeting.find_spell_target,
         buffs=[
             Subtract(CARD_STATUS.MANA,
                      Count(DeadMinionSelector(players=BothPlayer())))
         ])
Пример #20
0
 def __init__(self):
     super().__init__("Shrinkmeister",
                      2,
                      CHARACTER_CLASS.PRIEST,
                      CARD_RARITY.COMMON,
                      battlecry=Battlecry(
                          Give(
                              BuffUntil(ChangeAttack(-2),
                                        TurnEnded(player=CurrentPlayer()))),
                          MinionSelector(players=BothPlayer(),
                                         picker=UserPicker())))
Пример #21
0
 def __init__(self):
     super().__init__(
         "Volcanic Lumberer",
         9,
         CHARACTER_CLASS.DRUID,
         CARD_RARITY.RARE,
         buffs=[
             Buff(
                 ManaChange(Count(DeadMinionSelector(players=BothPlayer())),
                            -1))
         ])
Пример #22
0
    def create_weapon(self, player):
        def deal_one_to_all(weapon):
            targets = copy.copy(weapon.player.minions)
            targets.extend(weapon.player.opponent.minions)
            for minion in targets:
                minion.damage(1, None)

        return Weapon(4,
                      2,
                      deathrattle=Deathrattle(
                          Damage(1), MinionSelector(players=BothPlayer())))
Пример #23
0
 def create_minion(self, player):
     return Minion(3,
                   5,
                   effects=[
                       Effect(
                           TurnEnded(),
                           ActionTag(
                               Damage(2),
                               MinionSelector(
                                   Not(IsType(MINION_TYPE.MECH, True)),
                                   BothPlayer(), RandomPicker())))
                   ])
Пример #24
0
 def __init__(self):
     super().__init__(
         "Dragon's Breath",
         5,
         CHARACTER_CLASS.MAGE,
         CARD_RARITY.COMMON,
         target_func=hearthbreaker.targeting.find_spell_target,
         buffs=[
             Buff(
                 ManaChange(Count(DeadMinionSelector(players=BothPlayer())),
                            -1))
         ])
Пример #25
0
 def __init__(self):
     super().__init__("Shrinkmeister",
                      2,
                      CHARACTER_CLASS.PRIEST,
                      CARD_RARITY.COMMON,
                      battlecry=Battlecry(
                          Give(
                              Subtract(CHARACTER_STATUS.ATTACK,
                                       2,
                                       until=TurnEnded())),
                          MinionSelector(players=BothPlayer(),
                                         picker=UserPicker())))
Пример #26
0
 def create_minion(self, player):
     return Minion(2,
                   3,
                   effects=[
                       Effect(
                           CharacterHealed(player=BothPlayer()),
                           ActionTag(
                               Damage(1),
                               CharacterSelector(players=EnemyPlayer(),
                                                 picker=RandomPicker(),
                                                 condition=None)))
                   ])
Пример #27
0
 def __init__(self):
     super().__init__("Flame Leviathan",
                      7,
                      CHARACTER_CLASS.MAGE,
                      CARD_RARITY.LEGENDARY,
                      minion_type=MINION_TYPE.MECH,
                      effects=[
                          Effect(
                              Drawn(),
                              ActionTag(
                                  Damage(2),
                                  CharacterSelector(None, BothPlayer())))
                      ])
Пример #28
0
 def from_json(name):
     from hearthbreaker.tags.selector import FriendlyPlayer, EnemyPlayer, BothPlayer, PlayerOne, \
         PlayerTwo, CurrentPlayer, OtherPlayer
     if name == "friendly":
         return FriendlyPlayer()
     elif name == "enemy":
         return EnemyPlayer()
     elif name == "both":
         return BothPlayer()
     elif name == "player_one":
         return PlayerOne()
     elif name == "player_two":
         return PlayerTwo()
     elif name == "current_player":
         return CurrentPlayer()
     elif name == "other_player":
         return OtherPlayer()
Пример #29
0
 def create_weapon(self, player):
     return Weapon(4,
                   2,
                   deathrattle=Deathrattle(
                       Damage(1), MinionSelector(players=BothPlayer())))
Пример #30
0
 def __init__(self):
     super().__init__("Solemn Vigil", 5, CHARACTER_CLASS.PALADIN, CARD_RARITY.COMMON,
                      buffs=[Subtract(CARD_STATUS.MANA, Count(DeadMinionSelector(players=BothPlayer())))])