Start documenting region map

This commit is contained in:
GriffinR committed 2020-04-01 17:32:22 -04:00
1 parent 200c82e01a
commit 250f955ae6
31 files changed
+1920 -1888

No files matched your search

File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
+5 -5
View File
@@ -3,14 +3,14 @@
#define MAP_TYPE_NONE 0
#define MAP_TYPE_TOWN 1
#define MAP_TYPE_CITY 2 // Unused. RSE use this map type to distinguish Town and City. FRLG make no distinction
#define MAP_TYPE_CITY 2 // Not used by any map. RSE use this map type to distinguish Town and City. FRLG make no distinction
#define MAP_TYPE_ROUTE 3
#define MAP_TYPE_UNDERGROUND 4
#define MAP_TYPE_UNDERWATER 5 // Unused
#define MAP_TYPE_OCEAN_ROUTE 6 // Unused
#define MAP_TYPE_UNKNOWN 7 // Unused
#define MAP_TYPE_UNDERWATER 5 // Not used by any map.
#define MAP_TYPE_OCEAN_ROUTE 6 // Not used by any map.
#define MAP_TYPE_UNKNOWN 7 // Not used by any map.
#define MAP_TYPE_INDOOR 8
#define MAP_TYPE_SECRET_BASE 9 // Unused
#define MAP_TYPE_SECRET_BASE 9 // Not used by any map.
#define MAP_BATTLE_SCENE_NORMAL 0
#define MAP_BATTLE_SCENE_GYM 1
+3 -2
View File
@@ -103,8 +103,8 @@
#define MAPSEC_CINNABAR_ISLAND 0x60
#define MAPSEC_INDIGO_PLATEAU 0x61
#define MAPSEC_SAFFRON_CITY 0x62
#define MAPSEC_ROUTE_4_FLYDUP 0x63
#define MAPSEC_ROUTE_10_FLYDUP 0x64
#define MAPSEC_ROUTE_4_POKECENTER 0x63
#define MAPSEC_ROUTE_10_POKECENTER 0x64
#define MAPSEC_ROUTE_1 0x65
#define MAPSEC_ROUTE_2 0x66
#define MAPSEC_ROUTE_3 0x67
@@ -205,6 +205,7 @@
#define MAPSEC_EMBER_SPA 0xC3
#define MAPSEC_SPECIAL_AREA 0xC4
#define MAPSEC_NONE 0xC5
#define MAPSEC_COUNT 0xC6
#define METLOC_SPECIAL_EGG 0xFD
#define METLOC_IN_GAME_TRADE 0xFE
+35 -19
View File
@@ -7,35 +7,51 @@
// Exported type declarations
enum
{
INPUT_EVENT_NONE,
INPUT_EVENT_MOVE_START,
INPUT_EVENT_MOVE_CONT,
INPUT_EVENT_MOVE_END,
INPUT_EVENT_A_BUTTON,
INPUT_EVENT_B_BUTTON,
enum {
MAP_INPUT_NONE,
MAP_INPUT_MOVE_START,
MAP_INPUT_MOVE_CONT,
MAP_INPUT_MOVE_END,
MAP_INPUT_A_BUTTON,
MAP_INPUT_SWITCH,
MAP_INPUT_CANCEL
};
enum {
MAPSECTYPE_NONE,
MAPSECTYPE_PLAIN,
MAPSECTYPE_CITY_CANFLY,
MAPSECTYPE_CITY_CANTFLY,
MAPSECTYPE_ROUTE,
MAPSECTYPE_VISITED,
MAPSECTYPE_NOT_VISITED,
MAPSECTYPE_UNKNOWN, // Checked but never used
};
enum {
MAPPERM_0,
MAPPERM_1,
MAPPERM_2,
MAPPERM_3
LAYER_MAP,
LAYER_DUNGEON,
LAYER_COUNT
};
enum {
MAPPERM_HAS_SWITCH_BUTTON,
MAPPERM_HAS_MAP_PREVIEW,
MAPPERM_HAS_OPEN_ANIM,
MAPPERM_HAS_FLY_DESTINATIONS,
MAPPERM_COUNT
};
enum {
REGIONMAP_KANTO,
REGIONMAP_SEVII123,
REGIONMAP_SEVII45,
REGIONMAP_SEVII67
REGIONMAP_SEVII67,
REGIONMAP_COUNT
};
enum {
REGIONMAP_TYPE_NORMAL,
REGIONMAP_TYPE_WALL,
REGIONMAP_TYPE_FLY,
REGIONMAP_TYPE_COUNT
};
// Exported RAM declarations
@@ -43,7 +59,7 @@ enum {
// Exported ROM declarations
u8 *GetMapName(u8 *dest, u16 mapsec, u16 fill);
u8 *GetMapNameGeneric(u8 *dest, u16 mapsec);
void sub_80BFF50(u8 a0, void (*a1)(void));
void MCB2_FlyMap(void);
void InitRegionMapWithExitCB(u8 a0, void (*a1)(void));
void CB2_OpenFlyMap(void);
#endif //GUARD_REGION_MAP_H
#endif // GUARD_REGION_MAP_H
+1 -1
View File
@@ -188,7 +188,7 @@ u8 GetLeadMonFriendship(void)
void ShowTownMap(void)
{
sub_8112364();
sub_80BFF50(1, CB2_ReturnToFieldContinueScriptPlayMapMusic);
InitRegionMapWithExitCB(REGIONMAP_TYPE_WALL, CB2_ReturnToFieldContinueScriptPlayMapMusic);
}
bool8 PlayerHasGrassPokemonInParty(void)
+2 -2
View File
@@ -668,7 +668,7 @@ void FieldUseFunc_TownMap(u8 taskId)
static void sub_80A1CAC(void)
{
sub_80BFF50(0, CB2_BagMenuFromStartMenu);
InitRegionMapWithExitCB(REGIONMAP_TYPE_NORMAL, CB2_BagMenuFromStartMenu);
}
static void sub_80A1CC0(u8 taskId)
@@ -677,7 +677,7 @@ static void sub_80A1CC0(u8 taskId)
{
CleanupOverworldWindowsAndTilemaps();
sub_80A1184();
sub_80BFF50(0, CB2_ReturnToField);
InitRegionMapWithExitCB(REGIONMAP_TYPE_NORMAL, CB2_ReturnToField);
DestroyTask(taskId);
}
}
+1 -1
View File
@@ -3970,7 +3970,7 @@ static void CursorCB_FieldMove(u8 taskId)
sPartyMenuInternal->data[0] = fieldMove;
break;
case FIELD_MOVE_FLY:
gPartyMenu.exitCallback = MCB2_FlyMap;
gPartyMenu.exitCallback = CB2_OpenFlyMap;
Task_ClosePartyMenu(taskId);
break;
default:
+1818 -1803
View File
File diff suppressed because it is too large. Load diff
+55 -55
View File
@@ -29,61 +29,61 @@ static u16 GetMapSecIdFromWildMonHeader(const struct WildPokemonHeader * header)
static bool32 TryGetMapSecPokedexAreaEntry(u16 mapSecId, const u16 (*lut)[2], s32 count, s32 * lutIdx_p, u16 * tableIdx_p);
static const u16 sDexAreas_Kanto[][2] = {
{ MAPSEC_PALLET_TOWN, 1 },
{ MAPSEC_VIRIDIAN_CITY, 2 },
{ MAPSEC_PEWTER_CITY, 3 },
{ MAPSEC_CERULEAN_CITY, 4 },
{ MAPSEC_LAVENDER_TOWN, 5 },
{ MAPSEC_VERMILION_CITY, 6 },
{ MAPSEC_CELADON_CITY, 7 },
{ MAPSEC_FUCHSIA_CITY, 8 },
{ MAPSEC_CINNABAR_ISLAND, 9 },
{ MAPSEC_INDIGO_PLATEAU, 10 },
{ MAPSEC_SAFFRON_CITY, 11 },
{ MAPSEC_ROUTE_4_FLYDUP, 15 },
{ MAPSEC_ROUTE_10_FLYDUP, 21 },
{ MAPSEC_ROUTE_1, 12 },
{ MAPSEC_ROUTE_2, 13 },
{ MAPSEC_ROUTE_3, 14 },
{ MAPSEC_ROUTE_4, 15 },
{ MAPSEC_ROUTE_5, 16 },
{ MAPSEC_ROUTE_6, 17 },
{ MAPSEC_ROUTE_7, 18 },
{ MAPSEC_ROUTE_8, 19 },
{ MAPSEC_ROUTE_9, 20 },
{ MAPSEC_ROUTE_10, 21 },
{ MAPSEC_ROUTE_11, 22 },
{ MAPSEC_ROUTE_12, 23 },
{ MAPSEC_ROUTE_13, 24 },
{ MAPSEC_ROUTE_14, 25 },
{ MAPSEC_ROUTE_15, 26 },
{ MAPSEC_ROUTE_16, 27 },
{ MAPSEC_ROUTE_17, 28 },
{ MAPSEC_ROUTE_18, 29 },
{ MAPSEC_ROUTE_19, 30 },
{ MAPSEC_ROUTE_20, 31 },
{ MAPSEC_ROUTE_21, 32 },
{ MAPSEC_ROUTE_22, 33 },
{ MAPSEC_ROUTE_23, 34 },
{ MAPSEC_ROUTE_24, 35 },
{ MAPSEC_ROUTE_25, 36 },
{ MAPSEC_VIRIDIAN_FOREST, 37 },
{ MAPSEC_MT_MOON, 39 },
{ MAPSEC_S_S_ANNE, 6 },
{ MAPSEC_UNDERGROUND_PATH, 11 },
{ MAPSEC_UNDERGROUND_PATH_2, 11 },
{ MAPSEC_DIGLETTS_CAVE, 38 },
{ MAPSEC_KANTO_VICTORY_ROAD, 47 },
{ MAPSEC_ROCKET_HIDEOUT, 7 },
{ MAPSEC_SILPH_CO, 11 },
{ MAPSEC_POKEMON_MANSION, 46 },
{ MAPSEC_KANTO_SAFARI_ZONE, 44 },
{ MAPSEC_POKEMON_LEAGUE, 47 },
{ MAPSEC_ROCK_TUNNEL, 41 },
{ MAPSEC_SEAFOAM_ISLANDS, 45 },
{ MAPSEC_POKEMON_TOWER, 43 },
{ MAPSEC_CERULEAN_CAVE, 40 },
{ MAPSEC_POWER_PLANT, 42 }
{ MAPSEC_PALLET_TOWN, 1 },
{ MAPSEC_VIRIDIAN_CITY, 2 },
{ MAPSEC_PEWTER_CITY, 3 },
{ MAPSEC_CERULEAN_CITY, 4 },
{ MAPSEC_LAVENDER_TOWN, 5 },
{ MAPSEC_VERMILION_CITY, 6 },
{ MAPSEC_CELADON_CITY, 7 },
{ MAPSEC_FUCHSIA_CITY, 8 },
{ MAPSEC_CINNABAR_ISLAND, 9 },
{ MAPSEC_INDIGO_PLATEAU, 10 },
{ MAPSEC_SAFFRON_CITY, 11 },
{ MAPSEC_ROUTE_4_POKECENTER, 15 },
{ MAPSEC_ROUTE_10_POKECENTER, 21 },
{ MAPSEC_ROUTE_1, 12 },
{ MAPSEC_ROUTE_2, 13 },
{ MAPSEC_ROUTE_3, 14 },
{ MAPSEC_ROUTE_4, 15 },
{ MAPSEC_ROUTE_5, 16 },
{ MAPSEC_ROUTE_6, 17 },
{ MAPSEC_ROUTE_7, 18 },
{ MAPSEC_ROUTE_8, 19 },
{ MAPSEC_ROUTE_9, 20 },
{ MAPSEC_ROUTE_10, 21 },
{ MAPSEC_ROUTE_11, 22 },
{ MAPSEC_ROUTE_12, 23 },
{ MAPSEC_ROUTE_13, 24 },
{ MAPSEC_ROUTE_14, 25 },
{ MAPSEC_ROUTE_15, 26 },
{ MAPSEC_ROUTE_16, 27 },
{ MAPSEC_ROUTE_17, 28 },
{ MAPSEC_ROUTE_18, 29 },
{ MAPSEC_ROUTE_19, 30 },
{ MAPSEC_ROUTE_20, 31 },
{ MAPSEC_ROUTE_21, 32 },
{ MAPSEC_ROUTE_22, 33 },
{ MAPSEC_ROUTE_23, 34 },
{ MAPSEC_ROUTE_24, 35 },
{ MAPSEC_ROUTE_25, 36 },
{ MAPSEC_VIRIDIAN_FOREST, 37 },
{ MAPSEC_MT_MOON, 39 },
{ MAPSEC_S_S_ANNE, 6 },
{ MAPSEC_UNDERGROUND_PATH, 11 },
{ MAPSEC_UNDERGROUND_PATH_2, 11 },
{ MAPSEC_DIGLETTS_CAVE, 38 },
{ MAPSEC_KANTO_VICTORY_ROAD, 47 },
{ MAPSEC_ROCKET_HIDEOUT, 7 },
{ MAPSEC_SILPH_CO, 11 },
{ MAPSEC_POKEMON_MANSION, 46 },
{ MAPSEC_KANTO_SAFARI_ZONE, 44 },
{ MAPSEC_POKEMON_LEAGUE, 47 },
{ MAPSEC_ROCK_TUNNEL, 41 },
{ MAPSEC_SEAFOAM_ISLANDS, 45 },
{ MAPSEC_POKEMON_TOWER, 43 },
{ MAPSEC_CERULEAN_CAVE, 40 },
{ MAPSEC_POWER_PLANT, 42 }
};
static const u16 sDexAreas_Sevii1[][2] = {