gameboy_worlds.emulation.bomberman.registry
1from typing import Dict, Type 2 3from gameboy_worlds.emulation.bomberman.parsers import ( 4 BombermanMaxParser, 5 BombermanPocketParser, 6 BombermanQuestParser, 7) 8from gameboy_worlds.emulation.bomberman.trackers import ( 9 BombermanMaxCharabomSelectTestTracker, 10 BombermanMaxDefeatEnemyTestTracker, 11 BombermanMaxGameOverTestTracker, 12 BombermanMaxPauseMenuTestTracker, 13 BombermanMaxPickupBombUpTestTracker, 14 BombermanMaxPickupFireUpTestTracker, 15 BombermanMaxPitchAreaTestTracker, 16 BombermanMaxStageBriefingTestTracker, 17 BombermanMaxStageSelectTestTracker, 18 BombermanMaxOCRTracker, 19 BombermanPocketForestAreaIntroTestTracker, 20 BombermanPocketGameOverTestTracker, 21 BombermanPocketHudBottomRightChangedTestTracker, 22 BombermanPocketHudChangedTestTracker, 23 BombermanPocketHudEnemyCountChangedTestTracker, 24 BombermanPocketHudHeartChangedTestTracker, 25 BombermanPocketJumpLevelSelectTestTracker, 26 BombermanPocketJumpResultsTestTracker, 27 BombermanPocketJumpRankingTestTracker, 28 BombermanPocketOceanAreaIntroTestTracker, 29 BombermanPocketPauseMenuTestTracker, 30 BombermanPocketOCRTracker, 31 BombermanPocketWorldClearTestTracker, 32 BombermanQuestBattleTestTracker, 33 BombermanQuestBombSelectTestTracker, 34 BombermanQuestBombComponentSelectTestTracker, 35 BombermanQuestBoxPickedUpTestTracker, 36 BombermanQuestCliffBoxPickedUpTestTracker, 37 BombermanQuestHardSwitchActivatedTestTracker, 38 BombermanQuestSaveNpcTestTracker, 39 BombermanQuestButtonRegionChangedTestTracker, 40 BombermanQuestSwitchActivatedTestTracker, 41 BombermanQuestEnterCampTestTracker, 42 BombermanQuestEnterCaveTestTracker, 43 BombermanQuestEnterRoomTestTracker, 44 BombermanQuestEnterRuinsTestTracker, 45 BombermanQuestEnterHouseTestTracker, 46 BombermanQuestGameOverTestTracker, 47 BombermanQuestBookReadTestTracker, 48 BombermanQuestNpcDialogueTestTracker, 49 BombermanQuestPauseMenuTestTracker, 50 BombermanQuestShieldSelectTestTracker, 51 BombermanQuestSignDialogueTestTracker, 52 BombermanQuestOCRTracker, 53) 54from gameboy_worlds.emulation.emulator import Emulator 55from gameboy_worlds.emulation.parser import StateParser 56from gameboy_worlds.emulation.tracker import StateTracker 57 58 59GAME_TO_GB_NAME = { 60 "bomberman_max": "BombermanMax.gbc", 61 "bomberman_pocket": "BombermanPocket.gbc", 62 "bomberman_quest": "BombermanQuest.gbc", 63} 64 65STRONGEST_PARSERS: Dict[str, Type[StateParser]] = { 66 "bomberman_max": BombermanMaxParser, 67 "bomberman_pocket": BombermanPocketParser, 68 "bomberman_quest": BombermanQuestParser, 69} 70 71AVAILABLE_STATE_TRACKERS: Dict[str, Dict[str, Type[StateTracker]]] = { 72 "bomberman_max": { 73 "default": BombermanMaxOCRTracker, 74 "ocr": BombermanMaxOCRTracker, 75 "pause_menu_open_test": BombermanMaxPauseMenuTestTracker, 76 "stage_select_test": BombermanMaxStageSelectTestTracker, 77 "game_over_test": BombermanMaxGameOverTestTracker, 78 "charabom_select_test": BombermanMaxCharabomSelectTestTracker, 79 "stage_briefing_test": BombermanMaxStageBriefingTestTracker, 80 "pickup_bomb_up_test": BombermanMaxPickupBombUpTestTracker, 81 "defeat_enemy_test": BombermanMaxDefeatEnemyTestTracker, 82 "pickup_fire_up_test": BombermanMaxPickupFireUpTestTracker, 83 "pitch_area_test": BombermanMaxPitchAreaTestTracker, 84 }, 85 "bomberman_pocket": { 86 "default": BombermanPocketOCRTracker, 87 "ocr": BombermanPocketOCRTracker, 88 "pause_menu_open_test": BombermanPocketPauseMenuTestTracker, 89 "stage_clear_test": BombermanPocketForestAreaIntroTestTracker, 90 "forest_stage_clear_test": BombermanPocketForestAreaIntroTestTracker, 91 "ocean_stage_clear_test": BombermanPocketOceanAreaIntroTestTracker, 92 "world_clear_test": BombermanPocketWorldClearTestTracker, 93 "game_over_test": BombermanPocketGameOverTestTracker, 94 "jump_level_select_test": BombermanPocketJumpLevelSelectTestTracker, 95 "jump_results_test": BombermanPocketJumpResultsTestTracker, 96 "jump_ranking_test": BombermanPocketJumpRankingTestTracker, 97 "pickup_bomb_up_test": BombermanPocketHudChangedTestTracker, 98 "defeat_enemy_test": BombermanPocketHudEnemyCountChangedTestTracker, 99 "pickup_bomb_range_up_test": BombermanPocketHudBottomRightChangedTestTracker, 100 "pickup_heart_test": BombermanPocketHudHeartChangedTestTracker, 101 }, 102 "bomberman_quest": { 103 "default": BombermanQuestOCRTracker, 104 "ocr": BombermanQuestOCRTracker, 105 "pause_menu_open_test": BombermanQuestPauseMenuTestTracker, 106 "game_over_test": BombermanQuestGameOverTestTracker, 107 "bomb_select_open_test": BombermanQuestBombSelectTestTracker, 108 "npc_dialogue_test": BombermanQuestNpcDialogueTestTracker, 109 "sign_read_test": BombermanQuestSignDialogueTestTracker, 110 "charabom_battle_test": BombermanQuestBattleTestTracker, 111 "shield_select_test": BombermanQuestShieldSelectTestTracker, 112 "bomb_component_select_test": BombermanQuestBombComponentSelectTestTracker, 113 "button_region_changed_test": BombermanQuestButtonRegionChangedTestTracker, 114 "switch_activated_test": BombermanQuestSwitchActivatedTestTracker, 115 "box_picked_up_test": BombermanQuestBoxPickedUpTestTracker, 116 "cliff_box_picked_up_test": BombermanQuestCliffBoxPickedUpTestTracker, 117 "hard_switch_activated_test": BombermanQuestHardSwitchActivatedTestTracker, 118 "save_npc_test": BombermanQuestSaveNpcTestTracker, 119 120 "enter_camp_test": BombermanQuestEnterCampTestTracker, 121 "enter_cave_test": BombermanQuestEnterCaveTestTracker, 122 "enter_room_test": BombermanQuestEnterRoomTestTracker, 123 "enter_ruins_test": BombermanQuestEnterRuinsTestTracker, 124 "enter_house_test": BombermanQuestEnterHouseTestTracker, 125 "book_read_test": BombermanQuestBookReadTestTracker, 126 }, 127} 128 129AVAILABLE_EMULATORS: Dict[str, Dict[str, Type[Emulator]]] = { 130 "bomberman_max": {"default": Emulator}, 131 "bomberman_pocket": {"default": Emulator}, 132 "bomberman_quest": {"default": Emulator}, 133}
GAME_TO_GB_NAME =
{'bomberman_max': 'BombermanMax.gbc', 'bomberman_pocket': 'BombermanPocket.gbc', 'bomberman_quest': 'BombermanQuest.gbc'}
STRONGEST_PARSERS: Dict[str, Type[gameboy_worlds.emulation.parser.StateParser]] =
{'bomberman_max': <class 'gameboy_worlds.emulation.bomberman.parsers.BombermanMaxParser'>, 'bomberman_pocket': <class 'gameboy_worlds.emulation.bomberman.parsers.BombermanPocketParser'>, 'bomberman_quest': <class 'gameboy_worlds.emulation.bomberman.parsers.BombermanQuestParser'>}
AVAILABLE_STATE_TRACKERS: Dict[str, Dict[str, Type[gameboy_worlds.emulation.tracker.StateTracker]]] =
{'bomberman_max': {'default': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanMaxOCRTracker'>, 'ocr': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanMaxOCRTracker'>, 'pause_menu_open_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanMaxPauseMenuTestTracker'>, 'stage_select_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanMaxStageSelectTestTracker'>, 'game_over_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanMaxGameOverTestTracker'>, 'charabom_select_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanMaxCharabomSelectTestTracker'>, 'stage_briefing_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanMaxStageBriefingTestTracker'>, 'pickup_bomb_up_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanMaxPickupBombUpTestTracker'>, 'defeat_enemy_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanMaxDefeatEnemyTestTracker'>, 'pickup_fire_up_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanMaxPickupFireUpTestTracker'>, 'pitch_area_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanMaxPitchAreaTestTracker'>}, 'bomberman_pocket': {'default': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanPocketOCRTracker'>, 'ocr': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanPocketOCRTracker'>, 'pause_menu_open_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanPocketPauseMenuTestTracker'>, 'stage_clear_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanPocketForestAreaIntroTestTracker'>, 'forest_stage_clear_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanPocketForestAreaIntroTestTracker'>, 'ocean_stage_clear_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanPocketOceanAreaIntroTestTracker'>, 'world_clear_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanPocketWorldClearTestTracker'>, 'game_over_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanPocketGameOverTestTracker'>, 'jump_level_select_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanPocketJumpLevelSelectTestTracker'>, 'jump_results_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanPocketJumpResultsTestTracker'>, 'jump_ranking_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanPocketJumpRankingTestTracker'>, 'pickup_bomb_up_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanPocketHudChangedTestTracker'>, 'defeat_enemy_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanPocketHudEnemyCountChangedTestTracker'>, 'pickup_bomb_range_up_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanPocketHudBottomRightChangedTestTracker'>, 'pickup_heart_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanPocketHudHeartChangedTestTracker'>}, 'bomberman_quest': {'default': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanQuestOCRTracker'>, 'ocr': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanQuestOCRTracker'>, 'pause_menu_open_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanQuestPauseMenuTestTracker'>, 'game_over_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanQuestGameOverTestTracker'>, 'bomb_select_open_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanQuestBombSelectTestTracker'>, 'npc_dialogue_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanQuestNpcDialogueTestTracker'>, 'sign_read_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanQuestSignDialogueTestTracker'>, 'charabom_battle_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanQuestBattleTestTracker'>, 'shield_select_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanQuestShieldSelectTestTracker'>, 'bomb_component_select_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanQuestBombComponentSelectTestTracker'>, 'button_region_changed_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanQuestButtonRegionChangedTestTracker'>, 'switch_activated_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanQuestSwitchActivatedTestTracker'>, 'box_picked_up_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanQuestBoxPickedUpTestTracker'>, 'cliff_box_picked_up_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanQuestCliffBoxPickedUpTestTracker'>, 'hard_switch_activated_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanQuestHardSwitchActivatedTestTracker'>, 'save_npc_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanQuestSaveNpcTestTracker'>, 'enter_camp_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanQuestEnterCampTestTracker'>, 'enter_cave_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanQuestEnterCaveTestTracker'>, 'enter_room_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanQuestEnterRoomTestTracker'>, 'enter_ruins_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanQuestEnterRuinsTestTracker'>, 'enter_house_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanQuestEnterHouseTestTracker'>, 'book_read_test': <class 'gameboy_worlds.emulation.bomberman.trackers.BombermanQuestBookReadTestTracker'>}}
AVAILABLE_EMULATORS: Dict[str, Dict[str, Type[gameboy_worlds.emulation.emulator.Emulator]]] =
{'bomberman_max': {'default': <class 'gameboy_worlds.emulation.emulator.Emulator'>}, 'bomberman_pocket': {'default': <class 'gameboy_worlds.emulation.emulator.Emulator'>}, 'bomberman_quest': {'default': <class 'gameboy_worlds.emulation.emulator.Emulator'>}}