summaryrefslogtreecommitdiff
path: root/src/region_map.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/region_map.c')
-rw-r--r--src/region_map.c210
1 files changed, 60 insertions, 150 deletions
diff --git a/src/region_map.c b/src/region_map.c
index ab7c5c558..7bd303252 100644
--- a/src/region_map.c
+++ b/src/region_map.c
@@ -1,4 +1,5 @@
#include "global.h"
+#include "constants/region_map_sections.h"
#include "event_data.h"
#include "field_effect.h"
#include "field_specials.h"
@@ -19,97 +20,6 @@
#include "trig.h"
#include "ewram.h"
-// Map Section IDs
-#define MAPSEC_LITTLEROOT_TOWN 0
-#define MAPSEC_OLDALE_TOWN 1
-#define MAPSEC_DEWFORD_TOWN 2
-#define MAPSEC_LAVARIDGE_TOWN 3
-#define MAPSEC_FALLARBOR_TOWN 4
-#define MAPSEC_VERDANTURF_TOWN 5
-#define MAPSEC_PACIFIDLOG_TOWN 6
-#define MAPSEC_PETALBURG_CITY 7
-#define MAPSEC_SLATEPORT_CITY 8
-#define MAPSEC_MAUVILLE_CITY 9
-#define MAPSEC_RUSTBORO_CITY 10
-#define MAPSEC_FORTREE_CITY 11
-#define MAPSEC_LILYCOVE_CITY 12
-#define MAPSEC_MOSSDEEP_CITY 13
-#define MAPSEC_SOOTOPOLIS_CITY 14
-#define MAPSEC_EVER_GRANDE_CITY 15
-#define MAPSEC_ROUTE_101 0x10
-#define MAPSEC_ROUTE_102 0x11
-#define MAPSEC_ROUTE_103 0x12
-#define MAPSEC_ROUTE_104 0x13
-#define MAPSEC_ROUTE_105 0x14
-#define MAPSEC_ROUTE_106 0x15
-#define MAPSEC_ROUTE_107 0x16
-#define MAPSEC_ROUTE_108 0x17
-#define MAPSEC_ROUTE_109 0x18
-#define MAPSEC_ROUTE_110 0x19
-#define MAPSEC_ROUTE_111 0x1A
-#define MAPSEC_ROUTE_112 0x1B
-#define MAPSEC_ROUTE_113 0x1C
-#define MAPSEC_ROUTE_114 0x1D
-#define MAPSEC_ROUTE_115 0x1E
-#define MAPSEC_ROUTE_116 0x1F
-#define MAPSEC_ROUTE_117 0x20
-#define MAPSEC_ROUTE_118 0x21
-#define MAPSEC_ROUTE_119 0x22
-#define MAPSEC_ROUTE_120 0x23
-#define MAPSEC_ROUTE_121 0x24
-#define MAPSEC_ROUTE_122 0x25
-#define MAPSEC_ROUTE_123 0x26
-#define MAPSEC_ROUTE_124 0x27
-#define MAPSEC_ROUTE_125 0x28
-#define MAPSEC_ROUTE_126 0x29
-#define MAPSEC_ROUTE_127 0x2A
-#define MAPSEC_ROUTE_128 0x2B
-#define MAPSEC_ROUTE_129 0x2C
-#define MAPSEC_ROUTE_130 0x2D
-#define MAPSEC_ROUTE_131 0x2E
-#define MAPSEC_ROUTE_132 0x2F
-#define MAPSEC_ROUTE_133 0x30
-#define MAPSEC_ROUTE_134 0x31
-#define MAPSEC_UNDERWATER1 0x32
-#define MAPSEC_UNDERWATER2 0x33
-#define MAPSEC_UNDERWATER3 0x34
-#define MAPSEC_UNDERWATER4 0x35
-#define MAPSEC_UNDERWATER5 0x36
-#define MAPSEC_GRANITE_CAVE 0x37
-#define MAPSEC_MT_CHIMNEY 0x38
-#define MAPSEC_SAFARI_ZONE 0x39
-#define MAPSEC_BATTLE_TOWER 0x3A
-#define MAPSEC_PETALBURG_WOODS 0x3B
-#define MAPSEC_RUSTURF_TUNNEL 0x3C
-#define MAPSEC_ABANDONED_SHIP 0x3D
-#define MAPSEC_NEW_MAUVILLE 0x3E
-#define MAPSEC_METEOR_FALLS_1 0x3F
-#define MAPSEC_METEOR_FALLS_2 0x40
-#define MAPSEC_MT_PYRE 0x41
-#define MAPSEC_EVIL_TEAM_HIDEOUT 0x42
-#define MAPSEC_SHOAL_CAVE 0x43
-#define MAPSEC_SEAFLOOR_CAVERN 0x44
-#define MAPSEC_UNDERWATER6 0x45
-#define MAPSEC_VICTORY_ROAD 0x46
-#define MAPSEC_MIRAGE_ISLAND 0x47
-#define MAPSEC_CAVE_OF_ORIGIN 0x48
-#define MAPSEC_SOUTHERN_ISLAND 0x49
-#define MAPSEC_FIERY_PATH_1 0x4A
-#define MAPSEC_FIERY_PATH_2 0x4B
-#define MAPSEC_JAGGED_PASS_1 0x4C
-#define MAPSEC_JAGGED_PASS_2 0x4D
-#define MAPSEC_SEALED_CHAMBER 0x4E
-#define MAPSEC_UNDERWATER7 0x4F
-#define MAPSEC_SCORCHED_SLAB 0x50
-#define MAPSEC_ISLAND_CAVE 0x51
-#define MAPSEC_DESERT_RUINS 0x52
-#define MAPSEC_ANCIENT_TOMB 0x53
-#define MAPSEC_INSIDE_OF_TRUCK 0x54
-#define MAPSEC_SKY_PILLAR 0x55
-#define MAPSEC_SECRET_BASE 0x56
-#define MAPSEC_UNK_0x57 0x57
-#define MAPSEC_NONE 0x58
-
#define MAP_WIDTH 28
#define MAP_HEIGHT 15
#define MAPCURSOR_X_MIN 1
@@ -243,19 +153,19 @@ const struct RegionMapLocation gRegionMapLocations[] =
static const u16 gUnknown_083E7684[][2] =
{
- {MAPSEC_UNDERWATER1, MAPSEC_ROUTE_124},
- {MAPSEC_UNDERWATER2, MAPSEC_ROUTE_126},
- {MAPSEC_UNDERWATER3, MAPSEC_ROUTE_127},
- {MAPSEC_UNDERWATER4, MAPSEC_ROUTE_128},
- {MAPSEC_UNDERWATER5, MAPSEC_SOOTOPOLIS_CITY},
- {MAPSEC_UNDERWATER6, MAPSEC_ROUTE_128},
- {MAPSEC_EVIL_TEAM_HIDEOUT, MAPSEC_LILYCOVE_CITY},
- {MAPSEC_UNDERWATER7, MAPSEC_ROUTE_134},
- {MAPSEC_PETALBURG_WOODS, MAPSEC_ROUTE_104},
- {MAPSEC_JAGGED_PASS_1, MAPSEC_ROUTE_112},
- {MAPSEC_MT_PYRE, MAPSEC_ROUTE_122},
- {MAPSEC_SKY_PILLAR, MAPSEC_ROUTE_131},
- {MAPSEC_NONE, MAPSEC_NONE},
+ {MAPSEC_Underwater124, MAPSEC_Route124},
+ {MAPSEC_Underwater125, MAPSEC_Route126},
+ {MAPSEC_Underwater126, MAPSEC_Route127},
+ {MAPSEC_Underwater127, MAPSEC_Route128},
+ {MAPSEC_UnderwaterSootopolis, MAPSEC_SootopolisCity},
+ {MAPSEC_Underwater128, MAPSEC_Route128},
+ {MAPSEC_EvilTeamHideout, MAPSEC_LilycoveCity},
+ {MAPSEC_UnderwaterSealedChamber, MAPSEC_Route134},
+ {MAPSEC_PetalburgWoods, MAPSEC_Route104},
+ {MAPSEC_JaggedPass, MAPSEC_Route112},
+ {MAPSEC_MtPyre, MAPSEC_Route122},
+ {MAPSEC_SkyPillar, MAPSEC_Route131},
+ {MAPSEC_Nothing, MAPSEC_Nothing},
};
static u8 sub_80FAB78(void);
@@ -669,7 +579,7 @@ void UpdateRegionMapVideoRegs(void)
}
}
-void sub_80FB2A4(s16 a, s16 b)
+void RegionMapDefaultZoomOffsetPlayerSprite(s16 a, s16 b)
{
CalcZoomScrollParams(a, b, 0x38, 0x48, 0x100, 0x100, 0);
UpdateRegionMapVideoRegs();
@@ -683,7 +593,7 @@ void sub_80FB2A4(s16 a, s16 b)
static u16 GetRegionMapSectionAt(u16 x, u16 y)
{
if (y < MAPCURSOR_Y_MIN || y > MAPCURSOR_Y_MAX || x < MAPCURSOR_X_MIN || x > MAPCURSOR_X_MAX)
- return MAPSEC_NONE;
+ return MAPSEC_Nothing;
y -= MAPCURSOR_Y_MIN;
x -= MAPCURSOR_X_MIN;
return sRegionMapLayout[x + y * 28];
@@ -722,7 +632,7 @@ static void InitializeCursorPosition(void)
mapHeight = gMapHeader.mapData->height;
x = gSaveBlock1.pos.x;
y = gSaveBlock1.pos.y;
- if (gRegionMap->mapSectionId == MAPSEC_UNDERWATER6)
+ if (gRegionMap->mapSectionId == MAPSEC_Underwater128)
gRegionMap->playerIsInCave = TRUE;
break;
case 3:
@@ -749,7 +659,7 @@ static void InitializeCursorPosition(void)
struct WarpData *r4;
gRegionMap->mapSectionId = gMapHeader.regionMapSectionId;
- if (gRegionMap->mapSectionId != MAPSEC_UNK_0x57)
+ if (gRegionMap->mapSectionId != MAPSEC_Dynamic)
{
r4 = &gSaveBlock1.warp4;
mapHeader = Overworld_GetMapHeaderByGroupAndId(r4->mapGroup, r4->mapNum);
@@ -787,12 +697,12 @@ static void InitializeCursorPosition(void)
switch (gRegionMap->mapSectionId)
{
- case MAPSEC_ROUTE_114:
+ case MAPSEC_Route114:
if (y != 0)
x = 0;
break;
- case MAPSEC_ROUTE_126:
- case MAPSEC_UNDERWATER2:
+ case MAPSEC_Route126:
+ case MAPSEC_Underwater125:
x = 0;
if (gSaveBlock1.pos.x > 32)
x = 1;
@@ -804,7 +714,7 @@ static void InitializeCursorPosition(void)
if (gSaveBlock1.pos.y > 0x38)
y++;
break;
- case MAPSEC_ROUTE_121:
+ case MAPSEC_Route121:
x = 0;
if (r9 > 14)
x = 1;
@@ -830,16 +740,16 @@ static void sub_80FB600(void)
switch (GetSSTidalLocation(&mapGroup, &mapNum, &sp2, &sp4))
{
case 1:
- gRegionMap->mapSectionId = MAPSEC_SLATEPORT_CITY;
+ gRegionMap->mapSectionId = MAPSEC_SlateportCity;
break;
case 2:
- gRegionMap->mapSectionId = MAPSEC_LILYCOVE_CITY;
+ gRegionMap->mapSectionId = MAPSEC_LilycoveCity;
break;
case 3:
- gRegionMap->mapSectionId = MAPSEC_ROUTE_124;
+ gRegionMap->mapSectionId = MAPSEC_Route124;
break;
case 4:
- gRegionMap->mapSectionId = MAPSEC_ROUTE_131;
+ gRegionMap->mapSectionId = MAPSEC_Route131;
break;
default:
case 0:
@@ -873,44 +783,44 @@ static u16 sub_80FB758(u16 mapSectionId)
{
switch (mapSectionId)
{
- case MAPSEC_NONE:
+ case MAPSEC_Nothing:
return 0;
- case MAPSEC_LITTLEROOT_TOWN:
+ case MAPSEC_LittlerootTown:
return FlagGet(FLAG_VISITED_LITTLEROOT_TOWN) ? 2 : 3;
- case MAPSEC_OLDALE_TOWN:
+ case MAPSEC_OldaleTown:
return FlagGet(FLAG_VISITED_OLDALE_TOWN) ? 2 : 3;
- case MAPSEC_DEWFORD_TOWN:
+ case MAPSEC_DewfordTown:
return FlagGet(FLAG_VISITED_DEWFORD_TOWN) ? 2 : 3;
- case MAPSEC_LAVARIDGE_TOWN:
+ case MAPSEC_LavaridgeTown:
return FlagGet(FLAG_VISITED_LAVARIDGE_TOWN) ? 2 : 3;
- case MAPSEC_FALLARBOR_TOWN:
+ case MAPSEC_FallarborTown:
return FlagGet(FLAG_VISITED_FALLARBOR_TOWN) ? 2 : 3;
- case MAPSEC_VERDANTURF_TOWN:
+ case MAPSEC_VerdanturfTown:
return FlagGet(FLAG_VISITED_VERDANTURF_TOWN) ? 2 : 3;
- case MAPSEC_PACIFIDLOG_TOWN:
+ case MAPSEC_PacifidlogTown:
return FlagGet(FLAG_VISITED_PACIFIDLOG_TOWN) ? 2 : 3;
- case MAPSEC_PETALBURG_CITY:
+ case MAPSEC_PetalburgCity:
return FlagGet(FLAG_VISITED_PETALBURG_CITY) ? 2 : 3;
- case MAPSEC_SLATEPORT_CITY:
+ case MAPSEC_SlateportCity:
return FlagGet(FLAG_VISITED_SLATEPORT_CITY) ? 2 : 3;
- case MAPSEC_MAUVILLE_CITY:
+ case MAPSEC_MauvilleCity:
return FlagGet(FLAG_VISITED_MAUVILLE_CITY) ? 2 : 3;
- case MAPSEC_RUSTBORO_CITY:
+ case MAPSEC_RustboroCity:
return FlagGet(FLAG_VISITED_RUSTBORO_CITY) ? 2 : 3;
- case MAPSEC_FORTREE_CITY:
+ case MAPSEC_FortreeCity:
return FlagGet(FLAG_VISITED_FORTREE_CITY) ? 2 : 3;
- case MAPSEC_LILYCOVE_CITY:
+ case MAPSEC_LilycoveCity:
return FlagGet(FLAG_VISITED_LILYCOVE_CITY) ? 2 : 3;
- case MAPSEC_MOSSDEEP_CITY:
+ case MAPSEC_MossdeepCity:
return FlagGet(FLAG_VISITED_MOSSDEEP_CITY) ? 2 : 3;
- case MAPSEC_SOOTOPOLIS_CITY:
+ case MAPSEC_SootopolisCity:
return FlagGet(FLAG_VISITED_SOOTOPOLIS_CITY) ? 2 : 3;
- case MAPSEC_EVER_GRANDE_CITY:
+ case MAPSEC_EverGrandeCity:
return FlagGet(FLAG_VISITED_EVER_GRANDE_CITY) ? 2 : 3;
- case MAPSEC_BATTLE_TOWER:
+ case MAPSEC_BattleTower:
return FlagGet(FLAG_LANDMARK_BATTLE_TOWER) ? 4 : 0;
- case MAPSEC_SOUTHERN_ISLAND:
+ case MAPSEC_SouthernIsland:
return FlagGet(FLAG_LANDMARK_SOUTHERN_ISLAND) ? 1 : 0;
default:
return 1;
@@ -926,7 +836,7 @@ static u16 sub_80FB9C0(u16 mapSectionId)
{
u16 i;
- for (i = 0; gUnknown_083E7684[i][0] != MAPSEC_NONE; i++)
+ for (i = 0; gUnknown_083E7684[i][0] != MAPSEC_Nothing; i++)
{
if (gUnknown_083E7684[i][0] == mapSectionId)
return gUnknown_083E7684[i][1];
@@ -945,7 +855,7 @@ static void sub_80FBA18(void)
u16 y;
u16 i;
- if (gRegionMap->mapSectionId == MAPSEC_NONE)
+ if (gRegionMap->mapSectionId == MAPSEC_Nothing)
{
gRegionMap->everGrandeCityArea = 0;
return;
@@ -1298,9 +1208,9 @@ void sub_80FBF94(void)
const u8 *GetMapSectionName(u8 *dest, u16 mapSectionId, u16 length)
{
- if (mapSectionId == MAPSEC_SECRET_BASE)
+ if (mapSectionId == MAPSEC_SecretBase)
return GetSecretBaseMapName(dest);
- if (mapSectionId < MAPSEC_NONE)
+ if (mapSectionId < MAPSEC_Nothing)
return StringCopy(dest, gRegionMapLocations[mapSectionId].regionMapSectionId);
if (length == 0)
length = 18;
@@ -1311,9 +1221,9 @@ const u8 *CopyMapName(u8 *dest, u16 mapSectionId)
{
switch (mapSectionId)
{
- case MAPSEC_UNK_0x57:
+ case MAPSEC_Dynamic:
return StringCopy(dest, gOtherText_Ferry);
- case MAPSEC_SECRET_BASE:
+ case MAPSEC_SecretBase:
return StringCopy(dest, gOtherText_SecretBase);
default:
return GetMapSectionName(dest, mapSectionId, 0);
@@ -1322,7 +1232,7 @@ const u8 *CopyMapName(u8 *dest, u16 mapSectionId)
const u8 *CopyLocationName(u8 *dest, u16 mapSectionId)
{
- if (mapSectionId == MAPSEC_EVIL_TEAM_HIDEOUT)
+ if (mapSectionId == MAPSEC_EvilTeamHideout)
return StringCopy(dest, gOtherText_Hideout);
else
return CopyMapName(dest, mapSectionId);
@@ -1420,7 +1330,7 @@ struct MultiPartMapSection
// Map sections that are divided into multiple parts. Ever Grande City is the only one.
static const struct MultiPartMapSection sMultiPartMapSections[1] =
{
- {sEverGrandeCityAreaNames, MAPSEC_EVER_GRANDE_CITY, FLAG_SYS_POKEMON_LEAGUE_FLY},
+ {sEverGrandeCityAreaNames, MAPSEC_EverGrandeCity, FLAG_SYS_POKEMON_LEAGUE_FLY},
};
static struct UnknownStruct3 *const sFlyDataPtr = (struct UnknownStruct3 *)gSharedMem;
@@ -1431,8 +1341,8 @@ static const struct SpritePalette sFlyTargetIconSpritePalette = {sFlyTargetIcons
static const u16 sSpecialFlyAreas[][2] =
{
// flag, mapSectionId
- {0x848, MAPSEC_BATTLE_TOWER},
- {0xFFFF, MAPSEC_NONE},
+ {0x848, MAPSEC_BattleTower},
+ {0xFFFF, MAPSEC_Nothing},
};
static const struct OamData sFlyTargetOamData =
@@ -1697,7 +1607,7 @@ static void CreateSpecialAreaFlyTargetIcons(void)
{
u16 i;
- for (i = 0; sSpecialFlyAreas[i][1] != MAPSEC_NONE; i++)
+ for (i = 0; sSpecialFlyAreas[i][1] != MAPSEC_Nothing; i++)
{
u16 x;
u16 y;
@@ -1806,16 +1716,16 @@ void sub_80FC69C(void)
{
switch (sFlyDataPtr->regionMap.mapSectionId)
{
- case MAPSEC_SOUTHERN_ISLAND:
+ case MAPSEC_SouthernIsland:
sub_8053538(22);
break;
- case MAPSEC_BATTLE_TOWER:
+ case MAPSEC_BattleTower:
sub_8053538(21);
break;
- case MAPSEC_LITTLEROOT_TOWN:
+ case MAPSEC_LittlerootTown:
sub_8053538((gSaveBlock2.playerGender == MALE) ? 12 : 13);
break;
- case MAPSEC_EVER_GRANDE_CITY:
+ case MAPSEC_EverGrandeCity:
sub_8053538((FlagGet(FLAG_SYS_POKEMON_LEAGUE_FLY) && sFlyDataPtr->regionMap.everGrandeCityArea == 0) ? 20 : 11);
break;
default: