def trigger(self, minion: Minion, own_board: PlayerBoard, opposing_board: PlayerBoard): number_rats = minion.last_attack logging.debug( f"Rat pack deathrattle triggered, creating {number_rats} rats") for rat in range(number_rats): own_board.add_minion(Rat(golden=minion.golden), position=minion.position)
def trigger_reborn(self, own_board: PlayerBoard): """If the minion has reborn and has not triggered, trigger it""" if self.reborn and not self.reborn_triggered: reborn_at = self.find_deathrattle_reborn_position() self.__init__(reborn_triggered=True, token=True, attacked=self.attacked, golden=self.golden, position=reborn_at) own_board.add_minion(new_minion=self, position=reborn_at)
def on_receive_damage(self, own_board: PlayerBoard): from utils.minion_utils import get_minions disallowed_demons = [ "Amalgam", "Fiery Imp", "Imp", "Imp Mama", "Voidwalker" ] select_demons = lambda x: (MinionType.Demon in x.types) and ( x.name not in disallowed_demons) demons = get_minions(select_demons) for _ in range(2 if self.golden else 1): demon = demons[random.randint(0, len(demons) - 1)](taunt=True) own_board.add_minion(demon, self.position + 1, True)
def trigger(self, minion: Minion, own_board: PlayerBoard, opposing_board: PlayerBoard): logging.debug("Mecharoo deathrattle triggered, creating Jo-E Bot") own_board.add_minion(JoEBot(golden=minion.golden), position=minion.position)
def trigger(self, minion: Minion, own_board: PlayerBoard, opposing_board: PlayerBoard): logging.debug( "Kindly Grandmother deathrattle triggered, creating Big Bad Wolf") own_board.add_minion(BigBadWolf(golden=minion.golden), position=minion.position)
def trigger(self, minion: Minion, own_board: PlayerBoard, opposing_board: PlayerBoard): logging.debug("Imprisoner deathrattle triggered, creating Imp") own_board.add_minion(Imp(golden=minion.golden), position=minion.position)
def trigger(self, minion: Minion, own_board: PlayerBoard, opposing_board: PlayerBoard): logging.debug( "Harvest Golem deathrattle triggered, creating Damaged Golem") own_board.add_minion(DamagedGolem(golden=minion.golden), position=minion.position)