518 lines
28 KiB
Python
518 lines
28 KiB
Python
|
from .data import lname, rname, ename
|
||
|
from typing import List, Union
|
||
|
|
||
|
|
||
|
# # # KEY # # #
|
||
|
# "stage" = What stage the Region is a part of. The Region and its corresponding Locations and Entrances will only be
|
||
|
# put in if its stage is active.
|
||
|
# "locations" = The Locations to add to that Region when putting in said Region (provided their add conditions pass).
|
||
|
# "entrances" = The Entrances to add to that Region when putting in said Region (provided their add conditions pass).
|
||
|
region_info = {
|
||
|
"Menu": {},
|
||
|
|
||
|
rname.forest_start: {"stage": rname.forest_of_silence,
|
||
|
"locations": [lname.forest_pillars_right,
|
||
|
lname.forest_pillars_left,
|
||
|
lname.forest_pillars_top,
|
||
|
lname.forest_king_skeleton,
|
||
|
lname.forest_boss_one,
|
||
|
lname.forest_lgaz_in,
|
||
|
lname.forest_lgaz_top,
|
||
|
lname.forest_hgaz_in,
|
||
|
lname.forest_hgaz_top,
|
||
|
lname.forest_weretiger_sw,
|
||
|
lname.forest_boss_two,
|
||
|
lname.forest_weretiger_gate,
|
||
|
lname.forest_dirge_tomb_l,
|
||
|
lname.forest_dirge_tomb_u,
|
||
|
lname.forest_dirge_plaque,
|
||
|
lname.forest_dirge_ped,
|
||
|
lname.forest_dirge_rock1,
|
||
|
lname.forest_dirge_rock2,
|
||
|
lname.forest_dirge_rock3,
|
||
|
lname.forest_dirge_rock4,
|
||
|
lname.forest_dirge_rock5,
|
||
|
lname.forest_corpse_save,
|
||
|
lname.forest_dbridge_wall,
|
||
|
lname.forest_dbridge_sw],
|
||
|
"entrances": [ename.forest_dbridge_gate]},
|
||
|
|
||
|
rname.forest_mid: {"stage": rname.forest_of_silence,
|
||
|
"locations": [lname.forest_dbridge_gate_l,
|
||
|
lname.forest_dbridge_gate_r,
|
||
|
lname.forest_dbridge_tomb_l,
|
||
|
lname.forest_dbridge_tomb_ur,
|
||
|
lname.forest_dbridge_tomb_uf,
|
||
|
lname.forest_bface_tomb_lf,
|
||
|
lname.forest_bface_tomb_lr,
|
||
|
lname.forest_bface_tomb_u,
|
||
|
lname.forest_ibridge,
|
||
|
lname.forest_bridge_rock1,
|
||
|
lname.forest_bridge_rock2,
|
||
|
lname.forest_bridge_rock3,
|
||
|
lname.forest_bridge_rock4,
|
||
|
lname.forest_werewolf_tomb_lf,
|
||
|
lname.forest_werewolf_tomb_lr,
|
||
|
lname.forest_werewolf_tomb_r,
|
||
|
lname.forest_werewolf_plaque,
|
||
|
lname.forest_werewolf_tree,
|
||
|
lname.forest_werewolf_island,
|
||
|
lname.forest_final_sw],
|
||
|
"entrances": [ename.forest_werewolf_gate]},
|
||
|
|
||
|
rname.forest_end: {"stage": rname.forest_of_silence,
|
||
|
"locations": [lname.forest_boss_three],
|
||
|
"entrances": [ename.forest_end]},
|
||
|
|
||
|
rname.cw_start: {"stage": rname.castle_wall,
|
||
|
"locations": [lname.cwr_bottom,
|
||
|
lname.cw_dragon_sw,
|
||
|
lname.cw_boss,
|
||
|
lname.cw_save_slab1,
|
||
|
lname.cw_save_slab2,
|
||
|
lname.cw_save_slab3,
|
||
|
lname.cw_save_slab4,
|
||
|
lname.cw_save_slab5,
|
||
|
lname.cw_rrampart,
|
||
|
lname.cw_lrampart,
|
||
|
lname.cw_pillar,
|
||
|
lname.cw_shelf_visible,
|
||
|
lname.cw_shelf_sandbags,
|
||
|
lname.cw_shelf_torch],
|
||
|
"entrances": [ename.cw_portcullis_c,
|
||
|
ename.cw_lt_skip,
|
||
|
ename.cw_lt_door]},
|
||
|
|
||
|
rname.cw_exit: {"stage": rname.castle_wall,
|
||
|
"locations": [lname.cw_ground_left,
|
||
|
lname.cw_ground_middle,
|
||
|
lname.cw_ground_right]},
|
||
|
|
||
|
rname.cw_ltower: {"stage": rname.castle_wall,
|
||
|
"locations": [lname.cwl_bottom,
|
||
|
lname.cwl_bridge,
|
||
|
lname.cw_drac_sw,
|
||
|
lname.cw_drac_slab1,
|
||
|
lname.cw_drac_slab2,
|
||
|
lname.cw_drac_slab3,
|
||
|
lname.cw_drac_slab4,
|
||
|
lname.cw_drac_slab5],
|
||
|
"entrances": [ename.cw_end]},
|
||
|
|
||
|
rname.villa_start: {"stage": rname.villa,
|
||
|
"locations": [lname.villafy_outer_gate_l,
|
||
|
lname.villafy_outer_gate_r,
|
||
|
lname.villafy_dog_platform,
|
||
|
lname.villafy_inner_gate],
|
||
|
"entrances": [ename.villa_dog_gates]},
|
||
|
|
||
|
rname.villa_main: {"stage": rname.villa,
|
||
|
"locations": [lname.villafy_gate_marker,
|
||
|
lname.villafy_villa_marker,
|
||
|
lname.villafy_tombstone,
|
||
|
lname.villafy_fountain_fl,
|
||
|
lname.villafy_fountain_fr,
|
||
|
lname.villafy_fountain_ml,
|
||
|
lname.villafy_fountain_mr,
|
||
|
lname.villafy_fountain_rl,
|
||
|
lname.villafy_fountain_rr,
|
||
|
lname.villafo_front_r,
|
||
|
lname.villafo_front_l,
|
||
|
lname.villafo_mid_l,
|
||
|
lname.villafo_mid_r,
|
||
|
lname.villafo_rear_r,
|
||
|
lname.villafo_rear_l,
|
||
|
lname.villafo_pot_r,
|
||
|
lname.villafo_pot_l,
|
||
|
lname.villafo_sofa,
|
||
|
lname.villafo_chandelier1,
|
||
|
lname.villafo_chandelier2,
|
||
|
lname.villafo_chandelier3,
|
||
|
lname.villafo_chandelier4,
|
||
|
lname.villafo_chandelier5,
|
||
|
lname.villala_hallway_stairs,
|
||
|
lname.villala_hallway_l,
|
||
|
lname.villala_hallway_r,
|
||
|
lname.villala_bedroom_chairs,
|
||
|
lname.villala_bedroom_bed,
|
||
|
lname.villala_vincent,
|
||
|
lname.villala_slivingroom_table,
|
||
|
lname.villala_slivingroom_mirror,
|
||
|
lname.villala_diningroom_roses,
|
||
|
lname.villala_llivingroom_pot_r,
|
||
|
lname.villala_llivingroom_pot_l,
|
||
|
lname.villala_llivingroom_painting,
|
||
|
lname.villala_llivingroom_light,
|
||
|
lname.villala_llivingroom_lion,
|
||
|
lname.villala_exit_knight],
|
||
|
"entrances": [ename.villa_snipe_dogs,
|
||
|
ename.villa_renon,
|
||
|
ename.villa_to_storeroom,
|
||
|
ename.villa_to_archives,
|
||
|
ename.villa_to_maze]},
|
||
|
|
||
|
rname.villa_storeroom: {"stage": rname.villa,
|
||
|
"locations": [lname.villala_storeroom_l,
|
||
|
lname.villala_storeroom_r,
|
||
|
lname.villala_storeroom_s],
|
||
|
"entrances": [ename.villa_from_storeroom]},
|
||
|
|
||
|
rname.villa_archives: {"stage": rname.villa,
|
||
|
"locations": [lname.villala_archives_entrance,
|
||
|
lname.villala_archives_table,
|
||
|
lname.villala_archives_rear]},
|
||
|
|
||
|
rname.villa_maze: {"stage": rname.villa,
|
||
|
"locations": [lname.villam_malus_torch,
|
||
|
lname.villam_malus_bush,
|
||
|
lname.villam_fplatform,
|
||
|
lname.villam_frankieturf_l,
|
||
|
lname.villam_frankieturf_r,
|
||
|
lname.villam_frankieturf_ru,
|
||
|
lname.villam_fgarden_f,
|
||
|
lname.villam_fgarden_mf,
|
||
|
lname.villam_fgarden_mr,
|
||
|
lname.villam_fgarden_r,
|
||
|
lname.villam_rplatform,
|
||
|
lname.villam_rplatform_de,
|
||
|
lname.villam_exit_de,
|
||
|
lname.villam_serv_path],
|
||
|
"entrances": [ename.villa_from_maze,
|
||
|
ename.villa_copper_door,
|
||
|
ename.villa_copper_skip]},
|
||
|
|
||
|
rname.villa_servants: {"stage": rname.villa,
|
||
|
"locations": [lname.villafo_serv_ent],
|
||
|
"entrances": [ename.villa_servant_door]},
|
||
|
|
||
|
rname.villa_crypt: {"stage": rname.villa,
|
||
|
"locations": [lname.villam_crypt_ent,
|
||
|
lname.villam_crypt_upstream,
|
||
|
lname.villac_ent_l,
|
||
|
lname.villac_ent_r,
|
||
|
lname.villac_wall_l,
|
||
|
lname.villac_wall_r,
|
||
|
lname.villac_coffin_l,
|
||
|
lname.villac_coffin_r,
|
||
|
lname.villa_boss_one,
|
||
|
lname.villa_boss_two],
|
||
|
"entrances": [ename.villa_bridge_door,
|
||
|
ename.villa_end_r,
|
||
|
ename.villa_end_c]},
|
||
|
|
||
|
rname.tunnel_start: {"stage": rname.tunnel,
|
||
|
"locations": [lname.tunnel_landing,
|
||
|
lname.tunnel_landing_rc,
|
||
|
lname.tunnel_stone_alcove_r,
|
||
|
lname.tunnel_stone_alcove_l,
|
||
|
lname.tunnel_twin_arrows,
|
||
|
lname.tunnel_arrows_rock1,
|
||
|
lname.tunnel_arrows_rock2,
|
||
|
lname.tunnel_arrows_rock3,
|
||
|
lname.tunnel_arrows_rock4,
|
||
|
lname.tunnel_arrows_rock5,
|
||
|
lname.tunnel_lonesome_bucket,
|
||
|
lname.tunnel_lbucket_mdoor_l,
|
||
|
lname.tunnel_lbucket_quag,
|
||
|
lname.tunnel_bucket_quag_rock1,
|
||
|
lname.tunnel_bucket_quag_rock2,
|
||
|
lname.tunnel_bucket_quag_rock3,
|
||
|
lname.tunnel_lbucket_albert,
|
||
|
lname.tunnel_albert_camp,
|
||
|
lname.tunnel_albert_quag,
|
||
|
lname.tunnel_gondola_rc_sdoor_l,
|
||
|
lname.tunnel_gondola_rc_sdoor_m,
|
||
|
lname.tunnel_gondola_rc_sdoor_r,
|
||
|
lname.tunnel_gondola_rc,
|
||
|
lname.tunnel_rgondola_station,
|
||
|
lname.tunnel_gondola_transfer],
|
||
|
"entrances": [ename.tunnel_start_renon,
|
||
|
ename.tunnel_gondolas]},
|
||
|
|
||
|
rname.tunnel_end: {"stage": rname.tunnel,
|
||
|
"locations": [lname.tunnel_corpse_bucket_quag,
|
||
|
lname.tunnel_corpse_bucket_mdoor_l,
|
||
|
lname.tunnel_corpse_bucket_mdoor_r,
|
||
|
lname.tunnel_shovel_quag_start,
|
||
|
lname.tunnel_exit_quag_start,
|
||
|
lname.tunnel_shovel_quag_end,
|
||
|
lname.tunnel_exit_quag_end,
|
||
|
lname.tunnel_shovel,
|
||
|
lname.tunnel_shovel_save,
|
||
|
lname.tunnel_shovel_mdoor_l,
|
||
|
lname.tunnel_shovel_mdoor_r,
|
||
|
lname.tunnel_shovel_sdoor_l,
|
||
|
lname.tunnel_shovel_sdoor_m,
|
||
|
lname.tunnel_shovel_sdoor_r],
|
||
|
"entrances": [ename.tunnel_end_renon,
|
||
|
ename.tunnel_end]},
|
||
|
|
||
|
rname.uw_main: {"stage": rname.underground_waterway,
|
||
|
"locations": [lname.uw_near_ent,
|
||
|
lname.uw_across_ent,
|
||
|
lname.uw_first_ledge1,
|
||
|
lname.uw_first_ledge2,
|
||
|
lname.uw_first_ledge3,
|
||
|
lname.uw_first_ledge4,
|
||
|
lname.uw_first_ledge5,
|
||
|
lname.uw_first_ledge6,
|
||
|
lname.uw_poison_parkour,
|
||
|
lname.uw_boss,
|
||
|
lname.uw_waterfall_alcove,
|
||
|
lname.uw_carrie1,
|
||
|
lname.uw_carrie2,
|
||
|
lname.uw_bricks_save,
|
||
|
lname.uw_above_skel_ledge,
|
||
|
lname.uw_in_skel_ledge1,
|
||
|
lname.uw_in_skel_ledge2,
|
||
|
lname.uw_in_skel_ledge3],
|
||
|
"entrances": [ename.uw_final_waterfall,
|
||
|
ename.uw_renon]},
|
||
|
|
||
|
rname.uw_end: {"stage": rname.underground_waterway,
|
||
|
"entrances": [ename.uw_waterfall_skip,
|
||
|
ename.uw_end]},
|
||
|
|
||
|
rname.cc_main: {"stage": rname.castle_center,
|
||
|
"locations": [lname.ccb_skel_hallway_ent,
|
||
|
lname.ccb_skel_hallway_jun,
|
||
|
lname.ccb_skel_hallway_tc,
|
||
|
lname.ccb_skel_hallway_ba,
|
||
|
lname.ccb_behemoth_l_ff,
|
||
|
lname.ccb_behemoth_l_mf,
|
||
|
lname.ccb_behemoth_l_mr,
|
||
|
lname.ccb_behemoth_l_fr,
|
||
|
lname.ccb_behemoth_r_ff,
|
||
|
lname.ccb_behemoth_r_mf,
|
||
|
lname.ccb_behemoth_r_mr,
|
||
|
lname.ccb_behemoth_r_fr,
|
||
|
lname.ccb_behemoth_crate1,
|
||
|
lname.ccb_behemoth_crate2,
|
||
|
lname.ccb_behemoth_crate3,
|
||
|
lname.ccb_behemoth_crate4,
|
||
|
lname.ccb_behemoth_crate5,
|
||
|
lname.ccelv_near_machine,
|
||
|
lname.ccelv_atop_machine,
|
||
|
lname.ccelv_stand1,
|
||
|
lname.ccelv_stand2,
|
||
|
lname.ccelv_stand3,
|
||
|
lname.ccelv_pipes,
|
||
|
lname.ccelv_switch,
|
||
|
lname.ccelv_staircase,
|
||
|
lname.ccff_redcarpet_knight,
|
||
|
lname.ccff_gears_side,
|
||
|
lname.ccff_gears_mid,
|
||
|
lname.ccff_gears_corner,
|
||
|
lname.ccff_lizard_knight,
|
||
|
lname.ccff_lizard_near_knight,
|
||
|
lname.ccff_lizard_pit,
|
||
|
lname.ccff_lizard_corner,
|
||
|
lname.ccff_lizard_locker_nfr,
|
||
|
lname.ccff_lizard_locker_nmr,
|
||
|
lname.ccff_lizard_locker_nml,
|
||
|
lname.ccff_lizard_locker_nfl,
|
||
|
lname.ccff_lizard_locker_fl,
|
||
|
lname.ccff_lizard_locker_fr,
|
||
|
lname.ccff_lizard_slab1,
|
||
|
lname.ccff_lizard_slab2,
|
||
|
lname.ccff_lizard_slab3,
|
||
|
lname.ccff_lizard_slab4,
|
||
|
lname.ccll_brokenstairs_floor,
|
||
|
lname.ccll_brokenstairs_knight,
|
||
|
lname.ccll_brokenstairs_save,
|
||
|
lname.ccll_glassknight_l,
|
||
|
lname.ccll_glassknight_r,
|
||
|
lname.ccll_butlers_door,
|
||
|
lname.ccll_butlers_side,
|
||
|
lname.ccll_cwhall_butlerflames_past,
|
||
|
lname.ccll_cwhall_flamethrower,
|
||
|
lname.ccll_cwhall_cwflames,
|
||
|
lname.ccll_heinrich,
|
||
|
lname.ccia_nitro_crates,
|
||
|
lname.ccia_nitro_shelf_h,
|
||
|
lname.ccia_stairs_knight,
|
||
|
lname.ccia_maids_vase,
|
||
|
lname.ccia_maids_outer,
|
||
|
lname.ccia_maids_inner,
|
||
|
lname.ccia_inventions_maids,
|
||
|
lname.ccia_inventions_crusher,
|
||
|
lname.ccia_inventions_famicart,
|
||
|
lname.ccia_inventions_zeppelin,
|
||
|
lname.ccia_inventions_round,
|
||
|
lname.ccia_nitrohall_flamethrower,
|
||
|
lname.ccia_nitrohall_torch,
|
||
|
lname.ccia_nitro_shelf_i],
|
||
|
"entrances": [ename.cc_tc_door,
|
||
|
ename.cc_lower_wall,
|
||
|
ename.cc_renon,
|
||
|
ename.cc_upper_wall]},
|
||
|
|
||
|
rname.cc_torture_chamber: {"stage": rname.castle_center,
|
||
|
"locations": [lname.ccb_mandrag_shelf_l,
|
||
|
lname.ccb_mandrag_shelf_r,
|
||
|
lname.ccb_torture_rack,
|
||
|
lname.ccb_torture_rafters]},
|
||
|
|
||
|
rname.cc_library: {"stage": rname.castle_center,
|
||
|
"locations": [lname.ccll_cwhall_wall,
|
||
|
lname.ccl_bookcase]},
|
||
|
|
||
|
rname.cc_crystal: {"stage": rname.castle_center,
|
||
|
"locations": [lname.cc_behind_the_seal,
|
||
|
lname.cc_boss_one,
|
||
|
lname.cc_boss_two],
|
||
|
"entrances": [ename.cc_elevator]},
|
||
|
|
||
|
rname.cc_elev_top: {"stage": rname.castle_center,
|
||
|
"entrances": [ename.cc_exit_r,
|
||
|
ename.cc_exit_c]},
|
||
|
|
||
|
rname.dt_main: {"stage": rname.duel_tower,
|
||
|
"locations": [lname.dt_boss_one,
|
||
|
lname.dt_boss_two,
|
||
|
lname.dt_ibridge_l,
|
||
|
lname.dt_ibridge_r,
|
||
|
lname.dt_stones_start,
|
||
|
lname.dt_stones_end,
|
||
|
lname.dt_werebull_arena,
|
||
|
lname.dt_boss_three,
|
||
|
lname.dt_boss_four],
|
||
|
"entrances": [ename.dt_start,
|
||
|
ename.dt_end]},
|
||
|
|
||
|
rname.toe_main: {"stage": rname.tower_of_execution,
|
||
|
"locations": [lname.toe_ledge1,
|
||
|
lname.toe_ledge2,
|
||
|
lname.toe_ledge3,
|
||
|
lname.toe_ledge4,
|
||
|
lname.toe_ledge5,
|
||
|
lname.toe_midsavespikes_r,
|
||
|
lname.toe_midsavespikes_l,
|
||
|
lname.toe_elec_grate,
|
||
|
lname.toe_ibridge,
|
||
|
lname.toe_top],
|
||
|
"entrances": [ename.toe_start,
|
||
|
ename.toe_gate,
|
||
|
ename.toe_gate_skip,
|
||
|
ename.toe_end]},
|
||
|
|
||
|
rname.toe_ledge: {"stage": rname.tower_of_execution,
|
||
|
"locations": [lname.toe_keygate_l,
|
||
|
lname.toe_keygate_r]},
|
||
|
|
||
|
rname.tosci_start: {"stage": rname.tower_of_science,
|
||
|
"locations": [lname.tosci_elevator,
|
||
|
lname.tosci_plain_sr,
|
||
|
lname.tosci_stairs_sr],
|
||
|
"entrances": [ename.tosci_start,
|
||
|
ename.tosci_key1_door,
|
||
|
ename.tosci_to_key2_door]},
|
||
|
|
||
|
rname.tosci_three_doors: {"stage": rname.tower_of_science,
|
||
|
"locations": [lname.tosci_three_door_hall]},
|
||
|
|
||
|
rname.tosci_conveyors: {"stage": rname.tower_of_science,
|
||
|
"locations": [lname.tosci_ibridge_t,
|
||
|
lname.tosci_ibridge_b1,
|
||
|
lname.tosci_ibridge_b2,
|
||
|
lname.tosci_ibridge_b3,
|
||
|
lname.tosci_ibridge_b4,
|
||
|
lname.tosci_ibridge_b5,
|
||
|
lname.tosci_ibridge_b6,
|
||
|
lname.tosci_conveyor_sr,
|
||
|
lname.tosci_exit],
|
||
|
"entrances": [ename.tosci_from_key2_door,
|
||
|
ename.tosci_key3_door,
|
||
|
ename.tosci_end]},
|
||
|
|
||
|
rname.tosci_key3: {"stage": rname.tower_of_science,
|
||
|
"locations": [lname.tosci_key3_r,
|
||
|
lname.tosci_key3_m,
|
||
|
lname.tosci_key3_l]},
|
||
|
|
||
|
rname.tosor_main: {"stage": rname.tower_of_sorcery,
|
||
|
"locations": [lname.tosor_stained_tower,
|
||
|
lname.tosor_savepoint,
|
||
|
lname.tosor_trickshot,
|
||
|
lname.tosor_yellow_bubble,
|
||
|
lname.tosor_blue_platforms,
|
||
|
lname.tosor_side_isle,
|
||
|
lname.tosor_ibridge],
|
||
|
"entrances": [ename.tosor_start,
|
||
|
ename.tosor_end]},
|
||
|
|
||
|
rname.roc_main: {"stage": rname.room_of_clocks,
|
||
|
"locations": [lname.roc_ent_l,
|
||
|
lname.roc_ent_r,
|
||
|
lname.roc_elev_r,
|
||
|
lname.roc_elev_l,
|
||
|
lname.roc_cont_r,
|
||
|
lname.roc_cont_l,
|
||
|
lname.roc_exit,
|
||
|
lname.roc_boss],
|
||
|
"entrances": [ename.roc_gate]},
|
||
|
|
||
|
rname.ct_start: {"stage": rname.clock_tower,
|
||
|
"locations": [lname.ct_gearclimb_battery_slab1,
|
||
|
lname.ct_gearclimb_battery_slab2,
|
||
|
lname.ct_gearclimb_battery_slab3,
|
||
|
lname.ct_gearclimb_side,
|
||
|
lname.ct_gearclimb_corner,
|
||
|
lname.ct_gearclimb_door_slab1,
|
||
|
lname.ct_gearclimb_door_slab2,
|
||
|
lname.ct_gearclimb_door_slab3],
|
||
|
"entrances": [ename.ct_to_door1]},
|
||
|
|
||
|
rname.ct_middle: {"stage": rname.clock_tower,
|
||
|
"locations": [lname.ct_bp_chasm_fl,
|
||
|
lname.ct_bp_chasm_fr,
|
||
|
lname.ct_bp_chasm_rl,
|
||
|
lname.ct_bp_chasm_k],
|
||
|
"entrances": [ename.ct_from_door1,
|
||
|
ename.ct_to_door2]},
|
||
|
|
||
|
rname.ct_end: {"stage": rname.clock_tower,
|
||
|
"locations": [lname.ct_finalroom_door_slab1,
|
||
|
lname.ct_finalroom_door_slab2,
|
||
|
lname.ct_finalroom_fl,
|
||
|
lname.ct_finalroom_fr,
|
||
|
lname.ct_finalroom_rl,
|
||
|
lname.ct_finalroom_rr,
|
||
|
lname.ct_finalroom_platform,
|
||
|
lname.ct_finalroom_renon_slab1,
|
||
|
lname.ct_finalroom_renon_slab2,
|
||
|
lname.ct_finalroom_renon_slab3,
|
||
|
lname.ct_finalroom_renon_slab4,
|
||
|
lname.ct_finalroom_renon_slab5,
|
||
|
lname.ct_finalroom_renon_slab6,
|
||
|
lname.ct_finalroom_renon_slab7,
|
||
|
lname.ct_finalroom_renon_slab8],
|
||
|
"entrances": [ename.ct_from_door2,
|
||
|
ename.ct_renon,
|
||
|
ename.ct_door_3]},
|
||
|
|
||
|
rname.ck_main: {"stage": rname.castle_keep,
|
||
|
"locations": [lname.ck_boss_one,
|
||
|
lname.ck_boss_two,
|
||
|
lname.ck_flame_l,
|
||
|
lname.ck_flame_r,
|
||
|
lname.ck_behind_drac,
|
||
|
lname.ck_cube],
|
||
|
"entrances": [ename.ck_slope_jump,
|
||
|
ename.ck_drac_door]},
|
||
|
|
||
|
rname.renon: {"locations": [lname.renon1,
|
||
|
lname.renon2,
|
||
|
lname.renon3,
|
||
|
lname.renon4,
|
||
|
lname.renon5,
|
||
|
lname.renon6,
|
||
|
lname.renon7]},
|
||
|
|
||
|
rname.ck_drac_chamber: {"locations": [lname.the_end]}
|
||
|
}
|
||
|
|
||
|
|
||
|
def get_region_info(region: str, info: str) -> Union[str, List[str], None]:
|
||
|
return region_info[region].get(info, None)
|