Example #1
0
    def test_summon_with_khadgar(self):
        khadgar = create_entity('Khadgar')
        combat = SimulatedCombat(([khadgar], []))
        combat.summon(combat.controllers[0][0],
                      get_random_card_id(CARDNAME='Kaboom Bot'))
        self.assertEqual(len(combat.controllers[0]), 3)

        triple_khadgar = create_entity('Khadgar', triple=True)
        combat.controllers[0] = [triple_khadgar]
        self.assertEqual(len(combat.controllers[0]), 1)
        combat.summon(combat.controllers[0][0],
                      get_random_card_id(CARDNAME='Kaboom Bot'))
        self.assertEqual(len(combat.controllers[0]), 4)
Example #2
0
 def test_summon_multiple(self):
     friendly = create_entity()
     combat = SimulatedCombat(([friendly], [create_entity()]))
     combat.summon(combat.controllers[0][0],
                   get_random_card_id(CARDNAME='Kaboom Bot'),
                   count=4)
     self.assertEqual(len(combat.controllers[0]), 5)
Example #3
0
 def test_summon_full_board_fails(self):
     friendlies = [create_entity() for _ in range(MAX_MINIONS)]
     combat = SimulatedCombat((friendlies, [create_entity()]))
     self.assertEqual(len(combat.controllers[0]), MAX_MINIONS)
     combat.summon(combat.controllers[0][0],
                   get_random_card_id(CARDNAME='Kaboom Bot'))
     self.assertEqual(len(combat.controllers[0]), MAX_MINIONS)
Example #4
0
    #     Start of Turn: Gain +2/+2 if you won the last Combat
    # },
    # 'TB_BaconUps_104': {'triple_Of': 'BGS_033'},

    # The Beast
    'EX1_577': {
        Event.DEATHRATTLE: lambda g, minion: g.summon(g.get_enemies(minion, allow_dead=True)[-1], 'EX1_finkle')
    },
    'TB_BaconUps_042': {
        'triple_of': 'EX1_577',
        Event.DEATHRATTLE: lambda g, minion: g.summon(g.get_enemies(minion, allow_dead=True)[-1], 'EX1_finkle')
    },

    # Piloted Shredder
    'BGS_023': {
        Event.DEATHRATTLE: lambda g, minion: g.summon(minion, get_random_card_id('BGS_023', TECH_LEVEL=2))
    },
    'TB_BaconUps_035': {'triple_of': 'BGS_023'},

    # Cobalt Guardian
    'GVG_062': {
        Event.FRIENDLY_MINION_SUMMONED: lambda g, minion, target: \
            g.buff([minion], divine_shield=True) if target.race == hearthstone.enums.Race.MECHANICAL else 0
    },

    # Imp Gang Boss
    'BRM_006': {
        Event.DAMAGE_RECEIVED: lambda g, minion, index: g.summon(minion, 'BRM_006t', index + 1)
    },
    'TB_BaconUps_030': {
        'triple_of': 'BRM_006',
Example #5
0
def create_entity(card_name: str = 'Mechano-Egg', triple=False, **kwargs):
    return Entity(
        get_random_card_id(battlegrounds_triple=triple, CARDNAME=card_name),
        **kwargs)