def test_create_character_with_one_weapon(self):
     raises = False
     try:
         character = Character(character_name_1, doesnt_use_magic,
                               v_status_character)
         character.add_weapon(weapon_1)
     except:
         raises = True
     self.assertFalse(raises)
 def test_character_set_position_fake_wall_under_level(self):
     raises = False
     try:
         position_fake_wall = Position(2, 5)
         character = Character(character_name_1, doesnt_use_magic,
                               v_status_character)
         character.set_position(position_fake_wall)
     except:
         raises = True
     self.assertTrue(raises)
    def test_character_get_total_vital_status(self):
        character = Character(character_name_1, uses_magic, v_status_character)
        character.level = 7
        character.add_weapon(weapon_1)
        character.add_weapon(weapon_2)
        character.add_weapon(weapon_3)
        character.add_weapon(weapon_4)
        real_level = character.get_level_with_weapons()

        weapon_health = weapon_1.vital_status.health + weapon_2.vital_status.health + \
                        weapon_3.vital_status.health + weapon_4.vital_status.health
        weapon_attack = weapon_1.vital_status.attack + weapon_2.vital_status.attack + \
                        weapon_3.vital_status.attack + weapon_4.vital_status.attack
        weapon_defense = weapon_1.vital_status.defense + weapon_2.vital_status.defense + \
                         weapon_3.vital_status.defense + weapon_4.vital_status.defense
        weapon_magic_power = weapon_1.vital_status.magic_power + weapon_2.vital_status.magic_power + \
                         weapon_3.vital_status.magic_power + weapon_4.vital_status.magic_power
        weapon_magic_defense = weapon_1.vital_status.magic_defense + weapon_2.vital_status.magic_defense + \
                         weapon_3.vital_status.magic_defense + weapon_4.vital_status.magic_defense

        character_level_status = character.vital_status.get_vital_status_at_level(
            real_level)
        final_status = character.get_total_vital_status()

        total_health = weapon_health + character_level_status.health
        total_attack = weapon_attack + character_level_status.attack
        total_magic_power = weapon_magic_power + character_level_status.magic_power
        total_defense = weapon_defense + character_level_status.defense
        total_magic_defense = weapon_magic_defense + character_level_status.magic_defense

        self.assertEqual(final_status.health, total_health)
        self.assertEqual(final_status.attack, total_attack)
        self.assertEqual(final_status.magic_power, total_magic_power)
        self.assertEqual(final_status.defense, total_defense)
        self.assertEqual(final_status.magic_defense, total_magic_defense)
 def test_character_set_position_correctly(self):
     raises = False
     try:
         position_2 = Position(4, 4)
         character = Character(character_name_1, uses_magic,
                               v_status_character)
         game.append_character(character)
         character.set_position(position_2)
     except:
         raises = True
     self.assertFalse(raises)
 def test_character_set_position_fake_wall_enough_level(self):
     raises = False
     try:
         position_fake_wall = Position(2, 5)
         character = Character(character_name_1, uses_magic,
                               v_status_character)
         game.append_character(character)
         character.level = 3
         character.set_position(position_fake_wall)
     except:
         raises = True
     self.assertFalse(raises)
 def test_character_get_total_level(self):
     character = Character(character_name_1, uses_magic, v_status_character)
     character.add_weapon(weapon_1)
     character.add_weapon(weapon_2)
     character.add_weapon(weapon_3)
     character.add_weapon(weapon_4)
     character.level = 7
     self.assertEqual(8, character.get_level_with_weapons())
 def test_create_correctly_character(self):
     character = Character(character_name_1, uses_magic, v_status_character)
     game.append_character(character)
     position_start = Position(1, 7)
     self.assertIsNotNone(character)
     self.assertEqual(character.position.x, position_start.x)
     self.assertEqual(character.position.y, position_start.y)
 def test_create_character_with_five_weapon_and_select_sixth(self, input):
     raises = False
     try:
         character = Character(character_name_1, doesnt_use_magic,
                               v_status_character)
         character.add_weapon(weapon_1)
         character.add_weapon(weapon_2)
         character.add_weapon(weapon_3)
         character.add_weapon(weapon_4)
         character.add_weapon(weapon_5)
     except:
         raises = True
     self.assertTrue(raises)
 def test_create_character_with_five_weapon_and_select_fourth(self, input):
     raises = False
     try:
         character = Character(character_name_1, uses_magic,
                               v_status_character)
         character.add_weapon(weapon_1)
         character.add_weapon(weapon_2)
         character.add_weapon(weapon_3)
         character.add_weapon(weapon_4)
         character.add_weapon(weapon_5)
     except:
         raises = True
     self.assertFalse(raises)
     self.assertSetEqual(set(character.weapons),
                         set([weapon_1, weapon_2, weapon_3, weapon_4]))
 def test_remove_weapon_incorrect_index(self):
     raises = False
     try:
         character = Character(character_name_1, uses_magic,
                               v_status_character)
         character.add_weapon(weapon_5)
         character.remove_weapon(1)
     except:
         raises = True
     self.assertTrue(raises)
 def test_remove_weapon_correct(self):
     raises = False
     try:
         character = Character(character_name_1, doesnt_use_magic,
                               v_status_character)
         character.add_weapon(weapon_5)
         character.remove_weapon(0)
     except:
         raises = True
     self.assertFalse(raises)
 def test_create_character_with_multiple_weapon(self):
     raises = False
     try:
         character = Character(character_name_1, uses_magic,
                               v_status_character)
         character.add_weapon(weapon_1)
         character.add_weapon(weapon_2)
         character.add_weapon(weapon_3)
         character.add_weapon(weapon_4)
     except:
         raises = True
     self.assertFalse(raises)
monster_name_1 = "Gannondorf"
monster_name_2 = "Dark link"
uses_magic = True
doesnt_use_magic = False

board_map = BoardMap(ROWS, COLS)
board_map.create_squares_of_boardmap(SQUARES)

game = Game(board_map)

monster_1 = Monster(monster_name_1, doesnt_use_magic, v_status_monster_1,
                    weapon_monster)
monster_2 = Monster(monster_name_2, doesnt_use_magic, v_status_monster_2,
                    weapon_monster)

character = Character(character_name, uses_magic, v_status_character)
character.level = 4

game.append_monster_list([monster_1, monster_2])
game.append_character(character)
game.append_weapon_list([weapon_1, weapon_2, weapon_3, weapon_4])


class MyTestCase(unittest.TestCase):
    def test_initiation_battle(self):
        raises = False
        try:
            battle = Battle(character)
        except:
            raises = True
        self.assertFalse(raises)
예제 #14
0
from print_map.game_objects import Battle, BoardMap, Character, ConsoleInterface, Monster, \
    Game, Position, VitalStatus, Weapon

SQUARES = [
    1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 4, 0, 0, 0, 0, 0, 0, 1, 1, 0, 3, 1, 0, 1, 3,
    0, 1, 1, 0, 2, 1, 0, 1, 1, 0, 1, 1, 0, 0, 0, 3, 0, 0, 0, 1, 1, 0, 1, 1, 0,
    1, 1, 0, 1, 1, 0, 3, 1, 0, 2, 3, 0, 1, 1, 0, 0, 0, 0, 0, 0, 5, 1, 1, 1, 1,
    1, 1, 1, 1, 1, 1
]
ROWS = 9
COLS = 9

board_map = BoardMap(ROWS, COLS)
board_map.create_squares_of_boardmap(SQUARES)

status_proportion = [0.5, 0.5, 0.7, 0.9, 0.8]
v_status_character = VitalStatus(10, 3, 4, 6, 20, status_proportion)

character_1 = Character("Onion knight", False, v_status_character)
character_2 = Character("Time knight", False, v_status_character)

game = Game(board_map)
game.append_character_list([character_1])

if __name__ == '__main__':
    game.start_game_only_movement()