33from .Options import CrystalProjectOptions
44from .Locations import LocationData
55from .rules import CrystalProjectLogic
6- from .Constants import *
6+ from .Keys import *
7+ from .KeyItems import *
78
89class CrystalProjectLocation (Location ):
910 game : str = "CrystalProject"
@@ -61,6 +62,7 @@ def init_areas(world: MultiWorld, locations: List[LocationData], options: Crysta
6162 create_region (world , player , locations_per_region , "Greenshire Reprise" , excluded ),
6263 create_region (world , player , locations_per_region , "Salmon Pass" , excluded ),
6364 create_region (world , player , locations_per_region , "Salmon River" , excluded ),
65+ create_region (world , player , locations_per_region , "Shoudu Waterfront" , excluded ), #moved Shoudu Waterfront from Expert to Advanced
6466 create_region (world , player , locations_per_region , "Poko Poko Desert" , excluded ),
6567 create_region (world , player , locations_per_region , "Sara Sara Bazaar" , excluded ),
6668 create_region (world , player , locations_per_region , "Sara Sara Beach" , excluded ),
@@ -76,7 +78,6 @@ def init_areas(world: MultiWorld, locations: List[LocationData], options: Crysta
7678
7779 expert_regions = [
7880 create_region (world , player , locations_per_region , "The Open Sea" , excluded ),
79- create_region (world , player , locations_per_region , "Shoudu Waterfront" , excluded ),
8081 create_region (world , player , locations_per_region , "Shoudu Province" , excluded ),
8182 create_region (world , player , locations_per_region , "The Undercity" , excluded ),
8283 create_region (world , player , locations_per_region , "Ganymede Shrine" , excluded ),
@@ -211,7 +212,7 @@ def init_areas(world: MultiWorld, locations: List[LocationData], options: Crysta
211212 {"Ancient Reservoir" : lambda state : logic .has_key (state , PYRAMID_KEY ) and logic .is_area_in_level_range (state , 3 ),
212213 "Lake Delende" : lambda state : logic .has_vertical_movement and logic .is_area_in_level_range (state , 3 ),
213214 "Salmon Bay" : logic .has_horizontal_movement and logic .has_vertical_movement ,
214- "Ancient Labyrinth" : lambda state : logic .has_vertical_movement and logic .has_glide and logic .is_area_in_level_range (state , 5 )})
215+ "Ancient Labyrinth" : lambda state : state . has ( ANCIENT_TABLET_A , player ) and logic .has_vertical_movement and logic .has_glide and logic .is_area_in_level_range (state , 5 )})
215216 multiworld .get_region ("Sara Sara Bazaar" , player ).add_exits (["Poko Poko Desert" , "Sara Sara Beach" , "Shoudu Province" , "The Open Sea" , "Continental Tram" ],
216217 {"Poko Poko Desert" : lambda state : logic .is_area_in_level_range (state , 2 ),
217218 "Sara Sara Beach" : lambda state : logic .has_horizontal_movement and logic .is_area_in_level_range (state , 3 ),
0 commit comments