Pokemon Emerald: Fix incorrect access to slateport water encounters (#3243)

This commit is contained in:
Bryce Wilson 2024-05-07 04:43:35 -06:00 committed by GitHub
parent e04db57dce
commit 76962b8b3b
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
4 changed files with 23 additions and 5 deletions

View File

@ -1269,7 +1269,7 @@
"REGION_SLATEPORT_CITY/MAIN": {
"parent_map": "MAP_SLATEPORT_CITY",
"has_grass": false,
"has_water": true,
"has_water": false,
"has_fishing": true,
"locations": [
"NPC_GIFT_RECEIVED_POWDER_JAR"
@ -1279,9 +1279,9 @@
"EVENT_VISITED_SLATEPORT_CITY"
],
"exits": [
"REGION_SLATEPORT_CITY/WATER",
"REGION_ROUTE109/BEACH",
"REGION_ROUTE110/SOUTH",
"REGION_ROUTE134/WEST"
"REGION_ROUTE110/SOUTH"
],
"warps": [
"MAP_SLATEPORT_CITY:0/MAP_SLATEPORT_CITY_POKEMON_CENTER_1F:0",
@ -1296,6 +1296,19 @@
"MAP_SLATEPORT_CITY:10/MAP_SLATEPORT_CITY_HOUSE:0"
]
},
"REGION_SLATEPORT_CITY/WATER": {
"parent_map": "MAP_SLATEPORT_CITY",
"has_grass": false,
"has_water": true,
"has_fishing": true,
"locations": [],
"events": [],
"exits": [
"REGION_SLATEPORT_CITY/MAIN",
"REGION_ROUTE134/WEST"
],
"warps": []
},
"REGION_SLATEPORT_CITY_POKEMON_CENTER_2F/MAIN": {
"parent_map": "MAP_SLATEPORT_CITY_POKEMON_CENTER_2F",
"has_grass": false,

View File

@ -3294,7 +3294,7 @@
"locations": [],
"events": [],
"exits": [
"REGION_SLATEPORT_CITY/MAIN"
"REGION_SLATEPORT_CITY/WATER"
],
"warps": []
},

View File

@ -464,7 +464,7 @@ def set_rules(world: "PokemonEmeraldWorld") -> None:
# Slateport City
set_rule(
get_entrance("REGION_SLATEPORT_CITY/MAIN -> REGION_ROUTE134/WEST"),
get_entrance("REGION_SLATEPORT_CITY/MAIN -> REGION_SLATEPORT_CITY/WATER"),
hm_rules["HM03 Surf"]
)
set_rule(

View File

@ -59,6 +59,10 @@ class TestSurf(PokemonEmeraldTestBase):
self.assertFalse(self.can_reach_entrance("REGION_ROUTE119/UPPER -> REGION_FORTREE_CITY/MAIN"))
self.assertFalse(self.can_reach_entrance("MAP_FORTREE_CITY:3/MAP_FORTREE_CITY_MART:0"))
# Slateport Access
self.collect_by_name(["HM06 Rock Smash", "Dynamo Badge", "Mach Bike"])
self.assertFalse(self.can_reach_region("MAP_SLATEPORT_CITY_WATER_ENCOUNTERS"))
def test_accessible_with_surf_only(self) -> None:
self.collect_by_name(["HM03 Surf", "Balance Badge"])
self.assertTrue(self.can_reach_location(location_name_to_label("ITEM_PETALBURG_CITY_ETHER")))
@ -70,6 +74,7 @@ class TestSurf(PokemonEmeraldTestBase):
self.assertTrue(self.can_reach_entrance("REGION_ROUTE119/UPPER -> REGION_FORTREE_CITY/MAIN"))
self.assertTrue(self.can_reach_entrance("MAP_FORTREE_CITY:3/MAP_FORTREE_CITY_MART:0"))
self.assertTrue(self.can_reach_location(location_name_to_label("BADGE_4")))
self.assertTrue(self.can_reach_region("MAP_SLATEPORT_CITY_WATER_ENCOUNTERS"))
class TestFreeFly(PokemonEmeraldTestBase):