Core: move PlandoConnections and PlandoTexts to the options system (#2904)

Co-authored-by: Doug Hoskisson <beauxq@users.noreply.github.com>
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
Co-authored-by: beauxq <beauxq@yahoo.com>
Co-authored-by: alwaysintreble <mmmcheese158@gmail.com>
This commit is contained in:
Silvris
2024-06-01 06:34:41 -05:00
committed by GitHub
parent f40b10dc97
commit 4e5b6bb3d2
19 changed files with 767 additions and 71 deletions

View File

@@ -1289,6 +1289,415 @@ class LargeCreditBottomMapper(CharTextMapper):
class TextTable(object):
SIZE = 0x7355
valid_keys = [
"set_cursor",
"set_cursor2",
"game_over_menu",
"var_test",
"follower_no_enter",
"choice_1_3",
"choice_2_3",
"choice_3_3",
"choice_1_2",
"choice_2_2",
"uncle_leaving_text",
"uncle_dying_sewer",
"tutorial_guard_1",
"tutorial_guard_2",
"tutorial_guard_3",
"tutorial_guard_4",
"tutorial_guard_5",
"tutorial_guard_6",
"tutorial_guard_7",
"priest_sanctuary_before_leave",
"sanctuary_enter",
"zelda_sanctuary_story",
"priest_sanctuary_before_pendants",
"priest_sanctuary_after_pendants_before_master_sword",
"priest_sanctuary_dying",
"zelda_save_sewers",
"priest_info",
"zelda_sanctuary_before_leave",
"telepathic_intro",
"telepathic_reminder",
"zelda_go_to_throne",
"zelda_push_throne",
"zelda_switch_room_pull",
"zelda_save_lets_go",
"zelda_save_repeat",
"zelda_before_pendants",
"zelda_after_pendants_before_master_sword",
"telepathic_zelda_right_after_master_sword",
"zelda_sewers",
"zelda_switch_room",
"kakariko_saharalasa_wife",
"kakariko_saharalasa_wife_sword_story",
"kakariko_saharalasa_wife_closing",
"kakariko_saharalasa_after_master_sword",
"kakariko_alert_guards",
"sahasrahla_quest_have_pendants",
"sahasrahla_quest_have_master_sword",
"sahasrahla_quest_information",
"sahasrahla_bring_courage",
"sahasrahla_have_ice_rod",
"telepathic_sahasrahla_beat_agahnim",
"telepathic_sahasrahla_beat_agahnim_no_pearl",
"sahasrahla_have_boots_no_icerod",
"sahasrahla_have_courage",
"sahasrahla_found",
"sign_rain_north_of_links_house",
"sign_north_of_links_house",
"sign_path_to_death_mountain",
"sign_lost_woods",
"sign_zoras",
"sign_outside_magic_shop",
"sign_death_mountain_cave_back",
"sign_east_of_links_house",
"sign_south_of_lumberjacks",
"sign_east_of_desert",
"sign_east_of_sanctuary",
"sign_east_of_castle",
"sign_north_of_lake",
"sign_desert_thief",
"sign_lumberjacks_house",
"sign_north_kakariko",
"witch_bring_mushroom",
"witch_brewing_the_item",
"witch_assistant_no_bottle",
"witch_assistant_no_empty_bottle",
"witch_assistant_informational",
"witch_assistant_no_bottle_buying",
"potion_shop_no_empty_bottles",
"item_get_lamp",
"item_get_boomerang",
"item_get_bow",
"item_get_shovel",
"item_get_magic_cape",
"item_get_powder",
"item_get_flippers",
"item_get_power_gloves",
"item_get_pendant_courage",
"item_get_pendant_power",
"item_get_pendant_wisdom",
"item_get_mushroom",
"item_get_book",
"item_get_moonpearl",
"item_get_compass",
"item_get_map",
"item_get_ice_rod",
"item_get_fire_rod",
"item_get_ether",
"item_get_bombos",
"item_get_quake",
"item_get_hammer",
"item_get_flute",
"item_get_cane_of_somaria",
"item_get_hookshot",
"item_get_bombs",
"item_get_bottle",
"item_get_big_key",
"item_get_titans_mitts",
"item_get_magic_mirror",
"item_get_fake_mastersword",
"post_item_get_mastersword",
"item_get_red_potion",
"item_get_green_potion",
"item_get_blue_potion",
"item_get_bug_net",
"item_get_blue_mail",
"item_get_red_mail",
"item_get_temperedsword",
"item_get_mirror_shield",
"item_get_cane_of_byrna",
"missing_big_key",
"missing_magic",
"item_get_pegasus_boots",
"talking_tree_info_start",
"talking_tree_info_1",
"talking_tree_info_2",
"talking_tree_info_3",
"talking_tree_info_4",
"talking_tree_other",
"item_get_pendant_power_alt",
"item_get_pendant_wisdom_alt",
"game_shooting_choice",
"game_shooting_yes",
"game_shooting_no",
"game_shooting_continue",
"pond_of_wishing",
"pond_item_select",
"pond_item_test",
"pond_will_upgrade",
"pond_item_test_no",
"pond_item_test_no_no",
"pond_item_boomerang",
"pond_item_shield",
"pond_item_silvers",
"pond_item_bottle_filled",
"pond_item_sword",
"pond_of_wishing_happiness",
"pond_of_wishing_choice",
"pond_of_wishing_bombs",
"pond_of_wishing_arrows",
"pond_of_wishing_full_upgrades",
"mountain_old_man_first",
"mountain_old_man_deadend",
"mountain_old_man_turn_right",
"mountain_old_man_lost_and_alone",
"mountain_old_man_drop_off",
"mountain_old_man_in_his_cave_pre_agahnim",
"mountain_old_man_in_his_cave",
"mountain_old_man_in_his_cave_post_agahnim",
"tavern_old_man_awake",
"tavern_old_man_unactivated_flute",
"tavern_old_man_know_tree_unactivated_flute",
"tavern_old_man_have_flute",
"chicken_hut_lady",
"running_man",
"game_race_sign",
"sign_bumper_cave",
"sign_catfish",
"sign_north_village_of_outcasts",
"sign_south_of_bumper_cave",
"sign_east_of_pyramid",
"sign_east_of_bomb_shop",
"sign_east_of_mire",
"sign_village_of_outcasts",
"sign_before_wishing_pond",
"sign_before_catfish_area",
"castle_wall_guard",
"gate_guard",
"telepathic_tile_eastern_palace",
"telepathic_tile_tower_of_hera_floor_4",
"hylian_text_1",
"mastersword_pedestal_translated",
"telepathic_tile_spectacle_rock",
"telepathic_tile_swamp_entrance",
"telepathic_tile_thieves_town_upstairs",
"telepathic_tile_misery_mire",
"hylian_text_2",
"desert_entry_translated",
"telepathic_tile_under_ganon",
"telepathic_tile_palace_of_darkness",
"telepathic_tile_desert_bonk_torch_room",
"telepathic_tile_castle_tower",
"telepathic_tile_ice_large_room",
"telepathic_tile_turtle_rock",
"telepathic_tile_ice_entrance",
"telepathic_tile_ice_stalfos_knights_room",
"telepathic_tile_tower_of_hera_entrance",
"houlihan_room",
"caught_a_bee",
"caught_a_fairy",
"no_empty_bottles",
"game_race_boy_time",
"game_race_girl",
"game_race_boy_success",
"game_race_boy_failure",
"game_race_boy_already_won",
"game_race_boy_sneaky",
"bottle_vendor_choice",
"bottle_vendor_get",
"bottle_vendor_no",
"bottle_vendor_already_collected",
"bottle_vendor_bee",
"bottle_vendor_fish",
"hobo_item_get_bottle",
"blacksmiths_what_you_want",
"blacksmiths_paywall",
"blacksmiths_extra_okay",
"blacksmiths_tempered_already",
"blacksmiths_temper_no",
"blacksmiths_bogart_sword",
"blacksmiths_get_sword",
"blacksmiths_shop_before_saving",
"blacksmiths_shop_saving",
"blacksmiths_collect_frog",
"blacksmiths_still_working",
"blacksmiths_saving_bows",
"blacksmiths_hammer_anvil",
"dark_flute_boy_storytime",
"dark_flute_boy_get_shovel",
"dark_flute_boy_no_get_shovel",
"dark_flute_boy_flute_not_found",
"dark_flute_boy_after_shovel_get",
"shop_fortune_teller_lw_hint_0",
"shop_fortune_teller_lw_hint_1",
"shop_fortune_teller_lw_hint_2",
"shop_fortune_teller_lw_hint_3",
"shop_fortune_teller_lw_hint_4",
"shop_fortune_teller_lw_hint_5",
"shop_fortune_teller_lw_hint_6",
"shop_fortune_teller_lw_hint_7",
"shop_fortune_teller_lw_no_rupees",
"shop_fortune_teller_lw",
"shop_fortune_teller_lw_post_hint",
"shop_fortune_teller_lw_no",
"shop_fortune_teller_lw_hint_8",
"shop_fortune_teller_lw_hint_9",
"shop_fortune_teller_lw_hint_10",
"shop_fortune_teller_lw_hint_11",
"shop_fortune_teller_lw_hint_12",
"shop_fortune_teller_lw_hint_13",
"shop_fortune_teller_lw_hint_14",
"shop_fortune_teller_lw_hint_15",
"dark_sanctuary",
"dark_sanctuary_hint_0",
"dark_sanctuary_no",
"dark_sanctuary_hint_1",
"dark_sanctuary_yes",
"dark_sanctuary_hint_2",
"sick_kid_no_bottle",
"sick_kid_trade",
"sick_kid_post_trade",
"desert_thief_sitting",
"desert_thief_following",
"desert_thief_question",
"desert_thief_question_yes",
"desert_thief_after_item_get",
"desert_thief_reassure",
"hylian_text_3",
"tablet_ether_book",
"tablet_bombos_book",
"magic_bat_wake",
"magic_bat_give_half_magic",
"intro_main",
"intro_throne_room",
"intro_zelda_cell",
"intro_agahnim",
"pickup_purple_chest",
"bomb_shop",
"bomb_shop_big_bomb",
"bomb_shop_big_bomb_buy",
"item_get_big_bomb",
"kiki_second_extortion",
"kiki_second_extortion_no",
"kiki_second_extortion_yes",
"kiki_first_extortion",
"kiki_first_extortion_yes",
"kiki_first_extortion_no",
"kiki_leaving_screen",
"blind_in_the_cell",
"blind_by_the_light",
"blind_not_that_way",
"aginah_l1sword_no_book",
"aginah_l1sword_with_pendants",
"aginah",
"aginah_need_better_sword",
"aginah_have_better_sword",
"catfish",
"catfish_after_item",
"lumberjack_right",
"lumberjack_left",
"lumberjack_left_post_agahnim",
"fighting_brothers_right",
"fighting_brothers_right_opened",
"fighting_brothers_left",
"maiden_crystal_1",
"maiden_crystal_2",
"maiden_crystal_3",
"maiden_crystal_4",
"maiden_crystal_5",
"maiden_crystal_6",
"maiden_crystal_7",
"maiden_ending",
"maiden_confirm_understood",
"barrier_breaking",
"maiden_crystal_7_again",
"agahnim_zelda_teleport",
"agahnim_magic_running_away",
"agahnim_hide_and_seek_found",
"agahnim_defeated",
"agahnim_final_meeting",
"zora_meeting",
"zora_tells_cost",
"zora_get_flippers",
"zora_no_cash",
"zora_no_buy_item",
"kakariko_saharalasa_grandson",
"kakariko_saharalasa_grandson_next",
"dark_palace_tree_dude",
"fairy_wishing_ponds",
"fairy_wishing_ponds_no",
"pond_of_wishing_no",
"pond_of_wishing_return_item",
"pond_of_wishing_throw",
"pond_pre_item_silvers",
"pond_of_wishing_great_luck",
"pond_of_wishing_good_luck",
"pond_of_wishing_meh_luck",
"pond_of_wishing_bad_luck",
"pond_of_wishing_fortune",
"item_get_14_heart",
"item_get_24_heart",
"item_get_34_heart",
"item_get_whole_heart",
"item_get_sanc_heart",
"fairy_fountain_refill",
"death_mountain_bullied_no_pearl",
"death_mountain_bullied_with_pearl",
"death_mountain_bully_no_pearl",
"death_mountain_bully_with_pearl",
"shop_darkworld_enter",
"game_chest_village_of_outcasts",
"game_chest_no_cash",
"game_chest_not_played",
"game_chest_played",
"game_chest_village_of_outcasts_play",
"shop_first_time",
"shop_already_have",
"shop_buy_shield",
"shop_buy_red_potion",
"shop_buy_arrows",
"shop_buy_bombs",
"shop_buy_bee",
"shop_buy_heart",
"shop_first_no_bottle_buy",
"shop_buy_no_space",
"ganon_fall_in",
"ganon_phase_3",
"lost_woods_thief",
"blinds_hut_dude",
"end_triforce",
"toppi_fallen",
"kakariko_tavern_fisherman",
"thief_money",
"thief_desert_rupee_cave",
"thief_ice_rupee_cave",
"telepathic_tile_south_east_darkworld_cave",
"cukeman",
"cukeman_2",
"potion_shop_no_cash",
"kakariko_powdered_chicken",
"game_chest_south_of_kakariko",
"game_chest_play_yes",
"game_chest_play_no",
"game_chest_lost_woods",
"kakariko_flophouse_man_no_flippers",
"kakariko_flophouse_man",
"menu_start_2",
"menu_start_3",
"menu_pause",
"game_digging_choice",
"game_digging_start",
"game_digging_no_cash",
"game_digging_end_time",
"game_digging_come_back_later",
"game_digging_no_follower",
"menu_start_4",
"ganon_fall_in_alt",
"ganon_phase_3_alt",
"sign_east_death_mountain_bridge",
"fish_money",
"sign_ganons_tower",
"sign_ganon",
"ganon_phase_3_no_bow",
"ganon_phase_3_no_silvers_alt",
"ganon_phase_3_no_silvers",
"ganon_phase_3_silvers",
"murahdahla",
]
def __init__(self):
self._text = OrderedDict()
self.setDefaultText()