Exemplo n.º 1
0
 def use(self, player, game):
     super().use(player, game)
     query = CollectionSource([IsMinion()])
     new_minon = query.get_card(player, player, self)
     new_minon.add_buff(Subtract(CARD_STATUS.MANA, 3))
     player.hand.append(new_minon)
     new_minon.attach(new_minon, player)
Exemplo n.º 2
0
 def use(self, player, game):
     super().use(player, game)
     query = CollectionSource([IsMinion()])
     new_minon = query.get_card(player, player, self)
     new_minon.add_buff(Buff(ManaChange(-3)))
     player.hand.append(new_minon)
     new_minon.attach(new_minon, player)
Exemplo n.º 3
0
 def use(self, player, game):
     super().use(player, game)
     query = CollectionSource([IsMinion()])
     new_minon = query.get_card(player, player, self)
     new_minon.add_buff(Buff(ManaChange(-3)))
     player.hand.append(new_minon)
     new_minon.attach(new_minon, player)
Exemplo n.º 4
0
 def use(self, player, game):
     super().use(player, game)
     query = CollectionSource([IsMinion()])
     new_minon = query.get_card(player, player, self)
     new_minon.add_buff(Subtract(CARD_STATUS.MANA, 3))
     player.hand.append(new_minon)
     new_minon.attach(new_minon, player)
Exemplo n.º 5
0
 def use(self, player, game):
     super().use(player, game)
     if self.target.health <= player.effective_spell_damage(2) and \
             (isinstance(self.target, Minion) and not self.target.divine_shield):
         self.target.damage(player.effective_spell_damage(2), self)
         demons = CollectionSource([IsType(MINION_TYPE.DEMON)])
         demons.get_card(player, player, self).summon(player, game, len(player.minions))
     else:
         self.target.damage(player.effective_spell_damage(2), self)
Exemplo n.º 6
0
 def __init__(self):
     super().__init__(
         "Neptulon",
         7,
         CHARACTER_CLASS.SHAMAN,
         CARD_RARITY.LEGENDARY,
         overload=3,
         battlecry=Battlecry(
             AddCard(CollectionSource([IsType(MINION_TYPE.MURLOC)]), 4),
             PlayerSelector()))
Exemplo n.º 7
0
 def from_json(query):
     from hearthbreaker.tags.card_source import SpecificCard, CardList, HandSource, \
         DeckSource, CollectionSource, ObjectSource, LastCard, Same
     if isinstance(query, str):
         return SpecificCard.__from_json__(query)
     elif isinstance(query, list):
         return CardList.__from_json__(query)
     elif query['name'] == 'object':
         return ObjectSource.__from_json__(**query)
     elif query['name'] == 'hand':
         return HandSource.__from_json__(**query)
     elif query['name'] == 'deck':
         return DeckSource.__from_json__(**query)
     elif query['name'] == 'collection':
         return CollectionSource.__from_json__(**query)
     elif query['name'] == 'last_card':
         return LastCard()
     elif query['name'] == 'same':
         return Same()
     else:
         raise Exception(query['name'])
Exemplo n.º 8
0
 def from_json(query):
     from hearthbreaker.tags.card_source import SpecificCard, CardList, HandSource, \
         DeckSource, CollectionSource, ObjectSource, LastCard, Same
     if isinstance(query, str):
         return SpecificCard.__from_json__(query)
     elif isinstance(query, list):
         return CardList.__from_json__(query)
     elif query['name'] == 'object':
         return ObjectSource.__from_json__(**query)
     elif query['name'] == 'hand':
         return HandSource.__from_json__(**query)
     elif query['name'] == 'deck':
         return DeckSource.__from_json__(**query)
     elif query['name'] == 'collection':
         return CollectionSource.__from_json__(**query)
     elif query['name'] == 'last_card':
         return LastCard()
     elif query['name'] == 'same':
         return Same()
     else:
         raise Exception(query['name'])
Exemplo n.º 9
0
 def use(self, player, game):
     super().use(player, game)
     query = CollectionSource([HasCardName("Malorne")])
     new_minon = query.get_card(player, player, self)
     player.hand.append(new_minon)
     new_minon.attach(new_minon, player)
Exemplo n.º 10
0
 def use(self, player, game):
     super().use(player, game)
     query = CollectionSource([HasCardName("Malorne")])
     new_minon = query.get_card(player, player, self)
     player.hand.append(new_minon)
     new_minon.attach(new_minon, player)
Exemplo n.º 11
0
 def create_minion(self, player):
     return Minion(1,
                   1,
                   deathrattle=Deathrattle(
                       AddCard(CollectionSource([IsType(MINION_TYPE.BEAST)
                                                 ])), PlayerSelector()))