def opp_play_minion(self, cardId, card_id, pos): """The opponent plays a minion with a specific position. """ minion = card_from_id(cardId, card_id) if minion: minion.zone = "PLAY" minion.pos = pos # if its a hero power or weapon, add it to game but not our play area if isinstance(minion, HeroPower) or isinstance(minion, Weapon): logger.info("Moving Hero Power/Weapon to play but not as minion: {}".\ format(minion)) self.add_card_to_game(minion) return if isinstance(minion, Hero): logger.info("Adding opponent hero to play: {}".format(minion)) self.add_card_to_game(minion) self.opponent.hero = minion return if self.add_card_to_game(minion): self.opponent.minions.append(minion) logger.info("OPPONENT plays: {}".format(minion)) logger.info("OPPONENT's minions:\n"+pprint.pformat(self.opponent.minions)) else: logger.error("Trying to add opponent minion {} (card_id={}) to PLAY but no minion found with that name.".\ format(cardId, card_id))
def opp_play_minion(self, cardId, card_id, pos): """The opponent plays a minion with a specific position. """ minion = card_from_id(cardId, card_id) if minion: minion.zone = "PLAY" minion.pos = pos # if its a hero power or weapon, add it to game but not our play area if isinstance(minion, HeroPower) or isinstance(minion, Weapon): logger.info("Moving Hero Power/Weapon to play but not as minion: {}".\ format(minion)) self.add_card_to_game(minion) return if isinstance(minion, Hero): logger.info("Adding opponent hero to play: {}".format(minion)) self.add_card_to_game(minion) self.opponent.hero = minion return if self.add_card_to_game(minion): self.opponent.minions.append(minion) logger.info("OPPONENT plays: {}".format(minion)) logger.info("OPPONENT's minions:\n" + pprint.pformat(self.opponent.minions)) else: logger.error("Trying to add opponent minion {} (card_id={}) to PLAY but no minion found with that name.".\ format(cardId, card_id))
def opp_play_spell(self, cardId, card_id): spell = card_from_id(cardId, card_id) if spell: spell.zone = "PLAY" logger.info("OPPONENT plays: {}".format(spell)) self.add_card_to_game(spell) else: logger.error("Trying to add opponent spell {} (card_id={}) to PLAY but no spell found with that name.".\ format(cardId, card_id))
def add_card_to_hand(self, cardId, card_id): """Add a card with cardId and id to hand. Add it to game. """ card = card_from_id(cardId, card_id) if card: logger.info("DRAW CARD: {}".format(card)) card.zone = "HAND" self.add_card_to_game(card) self.tingle.hand.append(card) self.drew_card_this_turn = True else: logger.error("Trying to add card {} (card_id={}) to HAND but no card with that name found".\ format(cardId, card_id)) logger.info("Cards in HAND:\n" + pprint.pformat(self.tingle.hand))
def add_card_to_hand(self, cardId, card_id): """Add a card with cardId and id to hand. Add it to game. """ card = card_from_id(cardId, card_id) if card: logger.info("DRAW CARD: {}".format(card)) card.zone = "HAND" self.add_card_to_game(card) self.tingle.hand.append(card) self.drew_card_this_turn = True else: logger.error("Trying to add card {} (card_id={}) to HAND but no card with that name found".\ format(cardId, card_id)) logger.info("Cards in HAND:\n"+ pprint.pformat(self.tingle.hand))
def play_minion(self, cardId, card_id): # If the minion was already in our hand, use that one card = self.card_with_id(card_id) if card: card.zone = "PLAY" self.tingle.minions.append(card) logger.info("TINGLE plays minion from hand: {}".format(card)) self.tingle.spend_mana(int(card.cost)) return # this is a minion that was not in our hand (or in play) if not card: minion = card_from_id(cardId, card_id) if minion: minion.zone = "PLAY" # if its a hero or hero power, add it to game but not our play area if isinstance(minion, HeroPower) or isinstance(minion, Weapon): logger.info("Moving Hero Power/Weapon to play but not as a minion: {}".\ format(minion)) self.add_card_to_game(minion) return if isinstance(minion, Hero): logger.info("Adding our hero to play: {}".format(minion)) self.add_card_to_game(minion) self.tingle.hero = minion return logger.info("Playing a minion that was not in our hand!") if self.add_card_to_game(minion): self.tingle.minions.append(minion) logger.info("TINGLE plays: {}".format(minion)) logger.info("TINGLE's minions:\n" + pprint.pformat(self.tingle.minions)) else: logger.error("Trying to add minion {} (card_id={}) to PLAY but no minion found with that name".\ format(cardId, card_id))
def play_minion(self, cardId, card_id): # If the minion was already in our hand, use that one card = self.card_with_id(card_id) if card: card.zone = "PLAY" self.tingle.minions.append(card) logger.info("TINGLE plays minion from hand: {}".format(card)) self.tingle.spend_mana(int(card.cost)) return # this is a minion that was not in our hand (or in play) if not card: minion = card_from_id(cardId, card_id) if minion: minion.zone = "PLAY" # if its a hero or hero power, add it to game but not our play area if isinstance(minion, HeroPower) or isinstance(minion, Weapon): logger.info("Moving Hero Power/Weapon to play but not as a minion: {}".\ format(minion)) self.add_card_to_game(minion) return if isinstance(minion, Hero): logger.info("Adding our hero to play: {}".format(minion)) self.add_card_to_game(minion) self.tingle.hero = minion return logger.info("Playing a minion that was not in our hand!") if self.add_card_to_game(minion): self.tingle.minions.append(minion) logger.info("TINGLE plays: {}".format(minion)) logger.info("TINGLE's minions:\n"+pprint.pformat(self.tingle.minions)) else: logger.error("Trying to add minion {} (card_id={}) to PLAY but no minion found with that name".\ format(cardId, card_id))