summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGriffinR <griffin.g.richards@gmail.com>2020-03-19 19:06:49 -0400
committerGriffinR <griffin.g.richards@gmail.com>2020-03-19 19:32:13 -0400
commit9c1a8011d91fa2b0704abc5e7e7318212dc375c1 (patch)
tree604a81e46ef936ee5b6816fea759b000377b8db4
parent33b65b547000387fcdce9fe497da9b217544ece6 (diff)
Move heal location data
-rw-r--r--asm/overworld.s2
-rw-r--r--data/event_scripts.s2
-rw-r--r--include/constants/heal_locations.h25
-rw-r--r--include/constants/spawn_points.h26
-rw-r--r--include/heal_location.h14
-rw-r--r--src/data/heal_locations.h71
-rw-r--r--src/heal_location.c107
-rw-r--r--src/post_battle_event_funcs.c2
-rw-r--r--src/region_map.c2
9 files changed, 126 insertions, 125 deletions
diff --git a/asm/overworld.s b/asm/overworld.s
index c6dad9fa7..ba9b03930 100644
--- a/asm/overworld.s
+++ b/asm/overworld.s
@@ -1178,7 +1178,7 @@ _080554B8: .4byte gSaveBlock1Ptr
sub_80554BC: @ 80554BC
push {lr}
ldr r0, _080554C8 @ =gUnknown_2031DBC
- bl SetBlackoutRespawnWarpAndHealerNpc
+ bl SetWhiteoutRespawnWarpAndHealerNpc
pop {r0}
bx r0
.align 2, 0
diff --git a/data/event_scripts.s b/data/event_scripts.s
index a4dbd9854..0a54d8e1a 100644
--- a/data/event_scripts.s
+++ b/data/event_scripts.s
@@ -14,7 +14,7 @@
#include "constants/trainer_classes.h"
#include "constants/vars.h"
#include "constants/battle.h"
-#include "constants/spawn_points.h"
+#include "constants/heal_locations.h"
#include "constants/field_effects.h"
#include "constants/trainers.h"
#include "constants/trainer_tower.h"
diff --git a/include/constants/heal_locations.h b/include/constants/heal_locations.h
new file mode 100644
index 000000000..1c613d464
--- /dev/null
+++ b/include/constants/heal_locations.h
@@ -0,0 +1,25 @@
+#ifndef GUARD_CONSTANTS_HEAL_LOCATIONS_H
+#define GUARD_CONSTANTS_HEAL_LOCATIONS_H
+
+#define SPAWN_PALLET_TOWN 1
+#define SPAWN_VIRIDIAN_CITY 2
+#define SPAWN_PEWTER_CITY 3
+#define SPAWN_CERULEAN_CITY 4
+#define SPAWN_LAVENDER_TOWN 5
+#define SPAWN_VERMILION_CITY 6
+#define SPAWN_CELADON_CITY 7
+#define SPAWN_FUCHSIA_CITY 8
+#define SPAWN_CINNABAR_ISLAND 9
+#define SPAWN_INDIGO_PLATEAU 10
+#define SPAWN_SAFFRON_CITY 11
+#define SPAWN_ROUTE4 12
+#define SPAWN_ROUTE10 13
+#define SPAWN_ONE_ISLAND 14
+#define SPAWN_TWO_ISLAND 15
+#define SPAWN_THREE_ISLAND 16
+#define SPAWN_FOUR_ISLAND 17
+#define SPAWN_FIVE_ISLAND 18
+#define SPAWN_SEVEN_ISLAND 19
+#define SPAWN_SIX_ISLAND 20
+
+#endif // GUARD_CONSTANTS_HEAL_LOCATIONS_H
diff --git a/include/constants/spawn_points.h b/include/constants/spawn_points.h
deleted file mode 100644
index eea133bd1..000000000
--- a/include/constants/spawn_points.h
+++ /dev/null
@@ -1,26 +0,0 @@
-#ifndef GUARD_CONSTANTS_SPAWN_POINTS_H
-#define GUARD_CONSTANTS_SPAWN_POINTS_H
-
-#define SPAWN_PALLET_TOWN 1
-#define SPAWN_VIRIDIAN_CITY 2
-#define SPAWN_PEWTER_CITY 3
-#define SPAWN_CERULEAN_CITY 4
-#define SPAWN_LAVENDER_TOWN 5
-#define SPAWN_VERMILION_CITY 6
-#define SPAWN_CELADON_CITY 7
-#define SPAWN_FUCHSIA_CITY 8
-#define SPAWN_CINNABAR_ISLAND 9
-#define SPAWN_INDIGO_PLATEAU 10
-#define SPAWN_SAFFRON_CITY 11
-#define SPAWN_ROUTE4 12
-#define SPAWN_ROUTE10 13
-#define SPAWN_ONE_ISLAND 14
-#define SPAWN_TWO_ISLAND 15
-#define SPAWN_THREE_ISLAND 16
-#define SPAWN_FOUR_ISLAND 17
-#define SPAWN_FIVE_ISLAND 18
-#define SPAWN_SEVEN_ISLAND 19
-#define SPAWN_SIX_ISLAND 20
-#define NUM_SPAWN_POINTS 20
-
-#endif //GUARD_CONSTANTS_SPAWN_POINTS_H
diff --git a/include/heal_location.h b/include/heal_location.h
index aaa2178c6..9680f8fdd 100644
--- a/include/heal_location.h
+++ b/include/heal_location.h
@@ -3,13 +3,6 @@
#include "global.h"
-// Exported type declarations
-
-struct UnkStruct_0859F534 {
- const union AffineAnimCmd *const *const affineAnims;
- void (* callback)(struct Sprite *sprite);
-};
-
struct HealLocation
{
s8 group;
@@ -18,10 +11,7 @@ struct HealLocation
s16 y;
};
-// Exported RAM declarations
-
-// Exported ROM declarations
-
const struct HealLocation *GetHealLocationPointer(u32 loc);
+void SetWhiteoutRespawnWarpAndHealerNpc(struct WarpData * warp);
-#endif //GUARD_HEAL_LOCATION_H
+#endif // GUARD_HEAL_LOCATION_H
diff --git a/src/data/heal_locations.h b/src/data/heal_locations.h
new file mode 100644
index 000000000..7e7388a1d
--- /dev/null
+++ b/src/data/heal_locations.h
@@ -0,0 +1,71 @@
+static const struct HealLocation sSpawnPoints[] =
+{
+ [SPAWN_PALLET_TOWN - 1] = {MAP_GROUP(PALLET_TOWN), MAP_NUM(PALLET_TOWN), 6, 8},
+ [SPAWN_VIRIDIAN_CITY - 1] = {MAP_GROUP(VIRIDIAN_CITY), MAP_NUM(VIRIDIAN_CITY), 26, 27},
+ [SPAWN_PEWTER_CITY - 1] = {MAP_GROUP(PEWTER_CITY), MAP_NUM(PEWTER_CITY), 17, 26},
+ [SPAWN_CERULEAN_CITY - 1] = {MAP_GROUP(CERULEAN_CITY), MAP_NUM(CERULEAN_CITY), 22, 20},
+ [SPAWN_LAVENDER_TOWN - 1] = {MAP_GROUP(LAVENDER_TOWN), MAP_NUM(LAVENDER_TOWN), 6, 6},
+ [SPAWN_VERMILION_CITY - 1] = {MAP_GROUP(VERMILION_CITY), MAP_NUM(VERMILION_CITY), 15, 7},
+ [SPAWN_CELADON_CITY - 1] = {MAP_GROUP(CELADON_CITY), MAP_NUM(CELADON_CITY), 48, 12},
+ [SPAWN_FUCHSIA_CITY - 1] = {MAP_GROUP(FUCHSIA_CITY), MAP_NUM(FUCHSIA_CITY), 25, 32},
+ [SPAWN_CINNABAR_ISLAND - 1] = {MAP_GROUP(CINNABAR_ISLAND), MAP_NUM(CINNABAR_ISLAND), 14, 12},
+ [SPAWN_INDIGO_PLATEAU - 1] = {MAP_GROUP(INDIGO_PLATEAU_EXTERIOR), MAP_NUM(INDIGO_PLATEAU_EXTERIOR), 11, 7},
+ [SPAWN_SAFFRON_CITY - 1] = {MAP_GROUP(SAFFRON_CITY), MAP_NUM(SAFFRON_CITY), 24, 39},
+ [SPAWN_ROUTE4 - 1] = {MAP_GROUP(ROUTE4), MAP_NUM(ROUTE4), 12, 6},
+ [SPAWN_ROUTE10 - 1] = {MAP_GROUP(ROUTE10), MAP_NUM(ROUTE10), 13, 21},
+ [SPAWN_ONE_ISLAND - 1] = {MAP_GROUP(ONE_ISLAND), MAP_NUM(ONE_ISLAND), 14, 6},
+ [SPAWN_TWO_ISLAND - 1] = {MAP_GROUP(TWO_ISLAND), MAP_NUM(TWO_ISLAND), 21, 8},
+ [SPAWN_THREE_ISLAND - 1] = {MAP_GROUP(THREE_ISLAND), MAP_NUM(THREE_ISLAND), 14, 28},
+ [SPAWN_FOUR_ISLAND - 1] = {MAP_GROUP(FOUR_ISLAND), MAP_NUM(FOUR_ISLAND), 18, 21},
+ [SPAWN_FIVE_ISLAND - 1] = {MAP_GROUP(FIVE_ISLAND), MAP_NUM(FIVE_ISLAND), 18, 7},
+ [SPAWN_SEVEN_ISLAND - 1] = {MAP_GROUP(SEVEN_ISLAND), MAP_NUM(SEVEN_ISLAND), 12, 4},
+ [SPAWN_SIX_ISLAND - 1] = {MAP_GROUP(SIX_ISLAND), MAP_NUM(SIX_ISLAND), 11, 12},
+};
+
+static const u16 sWhiteoutRespawnHealCenterMapIdxs[][2] =
+{
+ [SPAWN_PALLET_TOWN - 1] = {MAP_GROUP(PALLET_TOWN_PLAYERS_HOUSE_1F), MAP_NUM(PALLET_TOWN_PLAYERS_HOUSE_1F)},
+ [SPAWN_VIRIDIAN_CITY - 1] = {MAP_GROUP(VIRIDIAN_CITY_POKEMON_CENTER_1F), MAP_NUM(VIRIDIAN_CITY_POKEMON_CENTER_1F)},
+ [SPAWN_PEWTER_CITY - 1] = {MAP_GROUP(PEWTER_CITY_POKEMON_CENTER_1F), MAP_NUM(PEWTER_CITY_POKEMON_CENTER_1F)},
+ [SPAWN_CERULEAN_CITY - 1] = {MAP_GROUP(CERULEAN_CITY_POKEMON_CENTER_1F), MAP_NUM(CERULEAN_CITY_POKEMON_CENTER_1F)},
+ [SPAWN_LAVENDER_TOWN - 1] = {MAP_GROUP(LAVENDER_TOWN_POKEMON_CENTER_1F), MAP_NUM(LAVENDER_TOWN_POKEMON_CENTER_1F)},
+ [SPAWN_VERMILION_CITY - 1] = {MAP_GROUP(VERMILION_CITY_POKEMON_CENTER_1F), MAP_NUM(VERMILION_CITY_POKEMON_CENTER_1F)},
+ [SPAWN_CELADON_CITY - 1] = {MAP_GROUP(CELADON_CITY_POKEMON_CENTER_1F), MAP_NUM(CELADON_CITY_POKEMON_CENTER_1F)},
+ [SPAWN_FUCHSIA_CITY - 1] = {MAP_GROUP(FUCHSIA_CITY_POKEMON_CENTER_1F), MAP_NUM(FUCHSIA_CITY_POKEMON_CENTER_1F)},
+ [SPAWN_CINNABAR_ISLAND - 1] = {MAP_GROUP(CINNABAR_ISLAND_POKEMON_CENTER_1F), MAP_NUM(CINNABAR_ISLAND_POKEMON_CENTER_1F)},
+ [SPAWN_INDIGO_PLATEAU - 1] = {MAP_GROUP(INDIGO_PLATEAU_POKEMON_CENTER_1F), MAP_NUM(INDIGO_PLATEAU_POKEMON_CENTER_1F)},
+ [SPAWN_SAFFRON_CITY - 1] = {MAP_GROUP(SAFFRON_CITY_POKEMON_CENTER_1F), MAP_NUM(SAFFRON_CITY_POKEMON_CENTER_1F)},
+ [SPAWN_ROUTE4 - 1] = {MAP_GROUP(ROUTE4_POKEMON_CENTER_1F), MAP_NUM(ROUTE4_POKEMON_CENTER_1F)},
+ [SPAWN_ROUTE10 - 1] = {MAP_GROUP(ROUTE10_POKEMON_CENTER_1F), MAP_NUM(ROUTE10_POKEMON_CENTER_1F)},
+ [SPAWN_ONE_ISLAND - 1] = {MAP_GROUP(ONE_ISLAND_POKEMON_CENTER_1F), MAP_NUM(ONE_ISLAND_POKEMON_CENTER_1F)},
+ [SPAWN_TWO_ISLAND - 1] = {MAP_GROUP(TWO_ISLAND_POKEMON_CENTER_1F), MAP_NUM(TWO_ISLAND_POKEMON_CENTER_1F)},
+ [SPAWN_THREE_ISLAND - 1] = {MAP_GROUP(THREE_ISLAND_POKEMON_CENTER_1F), MAP_NUM(THREE_ISLAND_POKEMON_CENTER_1F)},
+ [SPAWN_FOUR_ISLAND - 1] = {MAP_GROUP(FOUR_ISLAND_POKEMON_CENTER_1F), MAP_NUM(FOUR_ISLAND_POKEMON_CENTER_1F)},
+ [SPAWN_FIVE_ISLAND - 1] = {MAP_GROUP(FIVE_ISLAND_POKEMON_CENTER_1F), MAP_NUM(FIVE_ISLAND_POKEMON_CENTER_1F)},
+ [SPAWN_SEVEN_ISLAND - 1] = {MAP_GROUP(SEVEN_ISLAND_POKEMON_CENTER_1F), MAP_NUM(SEVEN_ISLAND_POKEMON_CENTER_1F)},
+ [SPAWN_SIX_ISLAND - 1] = {MAP_GROUP(SIX_ISLAND_POKEMON_CENTER_1F), MAP_NUM(SIX_ISLAND_POKEMON_CENTER_1F)},
+};
+
+static const u8 sWhiteoutRespawnHealerNpcIds[] =
+{
+ [SPAWN_PALLET_TOWN - 1] = 1,
+ [SPAWN_VIRIDIAN_CITY - 1] = 1,
+ [SPAWN_PEWTER_CITY - 1] = 3,
+ [SPAWN_CERULEAN_CITY - 1] = 1,
+ [SPAWN_LAVENDER_TOWN - 1] = 1,
+ [SPAWN_VERMILION_CITY - 1] = 1,
+ [SPAWN_CELADON_CITY - 1] = 1,
+ [SPAWN_FUCHSIA_CITY - 1] = 1,
+ [SPAWN_CINNABAR_ISLAND - 1] = 1,
+ [SPAWN_INDIGO_PLATEAU - 1] = 2,
+ [SPAWN_SAFFRON_CITY - 1] = 1,
+ [SPAWN_ROUTE4 - 1] = 1,
+ [SPAWN_ROUTE10 - 1] = 1,
+ [SPAWN_ONE_ISLAND - 1] = 1,
+ [SPAWN_TWO_ISLAND - 1] = 1,
+ [SPAWN_THREE_ISLAND - 1] = 1,
+ [SPAWN_FOUR_ISLAND - 1] = 1,
+ [SPAWN_FIVE_ISLAND - 1] = 1,
+ [SPAWN_SEVEN_ISLAND - 1] = 1,
+ [SPAWN_SIX_ISLAND - 1] = 1,
+};
diff --git a/src/heal_location.c b/src/heal_location.c
index 5c31e2df3..a8ac8cb46 100644
--- a/src/heal_location.c
+++ b/src/heal_location.c
@@ -3,90 +3,31 @@
#include "event_data.h"
#include "constants/vars.h"
#include "constants/maps.h"
-#include "constants/spawn_points.h"
+#include "constants/heal_locations.h"
-void SetBlackoutRespawnHealerNpcAsLastTalked(u32 healLocationIdx);
+static void SetWhiteoutRespawnHealerNpcAsLastTalked(u32 healLocationIdx);
+// Arrays described here because porymap will overrwrite the below data file
+
+// sSpawnPoints
// This array defines the fly points for unlocked spawns.
-static const struct HealLocation sSpawnPoints[] = {
- [SPAWN_PALLET_TOWN - 1] = {MAP_GROUP(PALLET_TOWN), MAP_NUM(PALLET_TOWN), 0x06, 0x08},
- [SPAWN_VIRIDIAN_CITY - 1] = {MAP_GROUP(VIRIDIAN_CITY), MAP_NUM(VIRIDIAN_CITY), 0x1a, 0x1b},
- [SPAWN_PEWTER_CITY - 1] = {MAP_GROUP(PEWTER_CITY), MAP_NUM(PEWTER_CITY), 0x11, 0x1a},
- [SPAWN_CERULEAN_CITY - 1] = {MAP_GROUP(CERULEAN_CITY), MAP_NUM(CERULEAN_CITY), 0x16, 0x14},
- [SPAWN_LAVENDER_TOWN - 1] = {MAP_GROUP(LAVENDER_TOWN), MAP_NUM(LAVENDER_TOWN), 0x06, 0x06},
- [SPAWN_VERMILION_CITY - 1] = {MAP_GROUP(VERMILION_CITY), MAP_NUM(VERMILION_CITY), 0x0f, 0x07},
- [SPAWN_CELADON_CITY - 1] = {MAP_GROUP(CELADON_CITY), MAP_NUM(CELADON_CITY), 0x30, 0x0c},
- [SPAWN_FUCHSIA_CITY - 1] = {MAP_GROUP(FUCHSIA_CITY), MAP_NUM(FUCHSIA_CITY), 0x19, 0x20},
- [SPAWN_CINNABAR_ISLAND - 1] = {MAP_GROUP(CINNABAR_ISLAND), MAP_NUM(CINNABAR_ISLAND), 0x0e, 0x0c},
- [SPAWN_INDIGO_PLATEAU - 1] = {MAP_GROUP(INDIGO_PLATEAU_EXTERIOR), MAP_NUM(INDIGO_PLATEAU_EXTERIOR), 0x0b, 0x07},
- [SPAWN_SAFFRON_CITY - 1] = {MAP_GROUP(SAFFRON_CITY), MAP_NUM(SAFFRON_CITY), 0x18, 0x27},
- [SPAWN_ROUTE4 - 1] = {MAP_GROUP(ROUTE4), MAP_NUM(ROUTE4), 0x0c, 0x06},
- [SPAWN_ROUTE10 - 1] = {MAP_GROUP(ROUTE10), MAP_NUM(ROUTE10), 0x0d, 0x15},
- [SPAWN_ONE_ISLAND - 1] = {MAP_GROUP(ONE_ISLAND), MAP_NUM(ONE_ISLAND), 0x0e, 0x06},
- [SPAWN_TWO_ISLAND - 1] = {MAP_GROUP(TWO_ISLAND), MAP_NUM(TWO_ISLAND), 0x15, 0x08},
- [SPAWN_THREE_ISLAND - 1] = {MAP_GROUP(THREE_ISLAND), MAP_NUM(THREE_ISLAND), 0x0e, 0x1c},
- [SPAWN_FOUR_ISLAND - 1] = {MAP_GROUP(FOUR_ISLAND), MAP_NUM(FOUR_ISLAND), 0x12, 0x15},
- [SPAWN_FIVE_ISLAND - 1] = {MAP_GROUP(FIVE_ISLAND), MAP_NUM(FIVE_ISLAND), 0x12, 0x07},
- [SPAWN_SEVEN_ISLAND - 1] = {MAP_GROUP(SEVEN_ISLAND), MAP_NUM(SEVEN_ISLAND), 0x0c, 0x04},
- [SPAWN_SIX_ISLAND - 1] = {MAP_GROUP(SIX_ISLAND), MAP_NUM(SIX_ISLAND), 0x0b, 0x0c},
-};
-
-// This array defines the map where you actually respawn when you black out,
+
+// sWhiteoutRespawnHealCenterMapIdxs
+// This array defines the map where you actually respawn when you white out,
// based on where you last checkpointed.
// This is either the player's house or a Pokémon Center.
// The data are u16 instead of u8 for reasons unknown.
-const u16 sBlackoutRespawnHealCenterMapIdxs[][2] = {
- [SPAWN_PALLET_TOWN - 1] = {MAP_GROUP(PALLET_TOWN_PLAYERS_HOUSE_1F), MAP_NUM(PALLET_TOWN_PLAYERS_HOUSE_1F)},
- [SPAWN_VIRIDIAN_CITY - 1] = {MAP_GROUP(VIRIDIAN_CITY_POKEMON_CENTER_1F), MAP_NUM(VIRIDIAN_CITY_POKEMON_CENTER_1F)},
- [SPAWN_PEWTER_CITY - 1] = {MAP_GROUP(PEWTER_CITY_POKEMON_CENTER_1F), MAP_NUM(PEWTER_CITY_POKEMON_CENTER_1F)},
- [SPAWN_CERULEAN_CITY - 1] = {MAP_GROUP(CERULEAN_CITY_POKEMON_CENTER_1F), MAP_NUM(CERULEAN_CITY_POKEMON_CENTER_1F)},
- [SPAWN_LAVENDER_TOWN - 1] = {MAP_GROUP(LAVENDER_TOWN_POKEMON_CENTER_1F), MAP_NUM(LAVENDER_TOWN_POKEMON_CENTER_1F)},
- [SPAWN_VERMILION_CITY - 1] = {MAP_GROUP(VERMILION_CITY_POKEMON_CENTER_1F), MAP_NUM(VERMILION_CITY_POKEMON_CENTER_1F)},
- [SPAWN_CELADON_CITY - 1] = {MAP_GROUP(CELADON_CITY_POKEMON_CENTER_1F), MAP_NUM(CELADON_CITY_POKEMON_CENTER_1F)},
- [SPAWN_FUCHSIA_CITY - 1] = {MAP_GROUP(FUCHSIA_CITY_POKEMON_CENTER_1F), MAP_NUM(FUCHSIA_CITY_POKEMON_CENTER_1F)},
- [SPAWN_CINNABAR_ISLAND - 1] = {MAP_GROUP(CINNABAR_ISLAND_POKEMON_CENTER_1F), MAP_NUM(CINNABAR_ISLAND_POKEMON_CENTER_1F)},
- [SPAWN_INDIGO_PLATEAU - 1] = {MAP_GROUP(INDIGO_PLATEAU_POKEMON_CENTER_1F), MAP_NUM(INDIGO_PLATEAU_POKEMON_CENTER_1F)},
- [SPAWN_SAFFRON_CITY - 1] = {MAP_GROUP(SAFFRON_CITY_POKEMON_CENTER_1F), MAP_NUM(SAFFRON_CITY_POKEMON_CENTER_1F)},
- [SPAWN_ROUTE4 - 1] = {MAP_GROUP(ROUTE4_POKEMON_CENTER_1F), MAP_NUM(ROUTE4_POKEMON_CENTER_1F)},
- [SPAWN_ROUTE10 - 1] = {MAP_GROUP(ROUTE10_POKEMON_CENTER_1F), MAP_NUM(ROUTE10_POKEMON_CENTER_1F)},
- [SPAWN_ONE_ISLAND - 1] = {MAP_GROUP(ONE_ISLAND_POKEMON_CENTER_1F), MAP_NUM(ONE_ISLAND_POKEMON_CENTER_1F)},
- [SPAWN_TWO_ISLAND - 1] = {MAP_GROUP(TWO_ISLAND_POKEMON_CENTER_1F), MAP_NUM(TWO_ISLAND_POKEMON_CENTER_1F)},
- [SPAWN_THREE_ISLAND - 1] = {MAP_GROUP(THREE_ISLAND_POKEMON_CENTER_1F), MAP_NUM(THREE_ISLAND_POKEMON_CENTER_1F)},
- [SPAWN_FOUR_ISLAND - 1] = {MAP_GROUP(FOUR_ISLAND_POKEMON_CENTER_1F), MAP_NUM(FOUR_ISLAND_POKEMON_CENTER_1F)},
- [SPAWN_FIVE_ISLAND - 1] = {MAP_GROUP(FIVE_ISLAND_POKEMON_CENTER_1F), MAP_NUM(FIVE_ISLAND_POKEMON_CENTER_1F)},
- [SPAWN_SEVEN_ISLAND - 1] = {MAP_GROUP(SEVEN_ISLAND_POKEMON_CENTER_1F), MAP_NUM(SEVEN_ISLAND_POKEMON_CENTER_1F)},
- [SPAWN_SIX_ISLAND - 1] = {MAP_GROUP(SIX_ISLAND_POKEMON_CENTER_1F), MAP_NUM(SIX_ISLAND_POKEMON_CENTER_1F)}
-};
+// sWhiteoutRespawnHealerNpcIds
// When you respawn, your character scurries back to either their house
// or a Pokémon Center, and hands their fainted Pokémon to their mother
// or the Nurse for healing.
// This array defines the index of the NPC on the map defined above
// with whom your character interacts in this cutscene.
-static const u8 sBlackoutRespawnHealerNpcIds[] = {
- [SPAWN_PALLET_TOWN - 1] = 1,
- [SPAWN_VIRIDIAN_CITY - 1] = 1,
- [SPAWN_PEWTER_CITY - 1] = 3,
- [SPAWN_CERULEAN_CITY - 1] = 1,
- [SPAWN_LAVENDER_TOWN - 1] = 1,
- [SPAWN_VERMILION_CITY - 1] = 1,
- [SPAWN_CELADON_CITY - 1] = 1,
- [SPAWN_FUCHSIA_CITY - 1] = 1,
- [SPAWN_CINNABAR_ISLAND - 1] = 1,
- [SPAWN_INDIGO_PLATEAU - 1] = 2,
- [SPAWN_SAFFRON_CITY - 1] = 1,
- [SPAWN_ROUTE4 - 1] = 1,
- [SPAWN_ROUTE10 - 1] = 1,
- [SPAWN_ONE_ISLAND - 1] = 1,
- [SPAWN_TWO_ISLAND - 1] = 1,
- [SPAWN_THREE_ISLAND - 1] = 1,
- [SPAWN_FOUR_ISLAND - 1] = 1,
- [SPAWN_FIVE_ISLAND - 1] = 1,
- [SPAWN_SEVEN_ISLAND - 1] = 1,
- [SPAWN_SIX_ISLAND - 1] = 1
-};
-
-u32 GetHealLocationIndexFromMapGroupAndNum(u16 mapGroup, u16 mapNum)
+
+#include "data/heal_locations.h"
+
+static u32 GetHealLocationIndexFromMapGroupAndNum(u16 mapGroup, u16 mapNum)
{
u32 i;
@@ -100,7 +41,7 @@ u32 GetHealLocationIndexFromMapGroupAndNum(u16 mapGroup, u16 mapNum)
return 0;
}
-const struct HealLocation * GetHealLocationPointerFromMapGroupAndNum(u16 mapGroup, u16 mapNum)
+static const struct HealLocation * GetHealLocationPointerFromMapGroupAndNum(u16 mapGroup, u16 mapNum)
{
u32 i = GetHealLocationIndexFromMapGroupAndNum(mapGroup, mapNum);
if (i == 0)
@@ -118,7 +59,7 @@ const struct HealLocation * GetHealLocationPointer(u32 idx)
return &sSpawnPoints[idx - 1];
}
-void SetBlackoutRespawnWarpAndHealerNpc(struct WarpData * warp)
+void SetWhiteoutRespawnWarpAndHealerNpc(struct WarpData * warp)
{
u32 healLocationIdx;
@@ -136,26 +77,26 @@ void SetBlackoutRespawnWarpAndHealerNpc(struct WarpData * warp)
else
{
healLocationIdx = GetHealLocationIndexFromMapGroupAndNum(gSaveBlock1Ptr->lastHealLocation.mapGroup, gSaveBlock1Ptr->lastHealLocation.mapNum);
- warp->mapGroup = sBlackoutRespawnHealCenterMapIdxs[healLocationIdx - 1][0];
- warp->mapNum = sBlackoutRespawnHealCenterMapIdxs[healLocationIdx - 1][1];
+ warp->mapGroup = sWhiteoutRespawnHealCenterMapIdxs[healLocationIdx - 1][0];
+ warp->mapNum = sWhiteoutRespawnHealCenterMapIdxs[healLocationIdx - 1][1];
warp->warpId = 0xFF;
- if (sBlackoutRespawnHealCenterMapIdxs[healLocationIdx - 1][0] == MAP_GROUP(PALLET_TOWN_PLAYERS_HOUSE_1F) && sBlackoutRespawnHealCenterMapIdxs[healLocationIdx - 1][1] == MAP_NUM(PALLET_TOWN_PLAYERS_HOUSE_1F))
+ if (sWhiteoutRespawnHealCenterMapIdxs[healLocationIdx - 1][0] == MAP_GROUP(PALLET_TOWN_PLAYERS_HOUSE_1F) && sWhiteoutRespawnHealCenterMapIdxs[healLocationIdx - 1][1] == MAP_NUM(PALLET_TOWN_PLAYERS_HOUSE_1F))
{
warp->x = 8;
warp->y = 5;
}
- else if (sBlackoutRespawnHealCenterMapIdxs[healLocationIdx - 1][0] == MAP_GROUP(INDIGO_PLATEAU_POKEMON_CENTER_1F) && sBlackoutRespawnHealCenterMapIdxs[healLocationIdx - 1][1] == MAP_NUM(INDIGO_PLATEAU_POKEMON_CENTER_1F))
+ else if (sWhiteoutRespawnHealCenterMapIdxs[healLocationIdx - 1][0] == MAP_GROUP(INDIGO_PLATEAU_POKEMON_CENTER_1F) && sWhiteoutRespawnHealCenterMapIdxs[healLocationIdx - 1][1] == MAP_NUM(INDIGO_PLATEAU_POKEMON_CENTER_1F))
{
warp->x = 13;
warp->y = 12;
}
- else if (sBlackoutRespawnHealCenterMapIdxs[healLocationIdx - 1][0] == MAP_GROUP(ONE_ISLAND_POKEMON_CENTER_1F) && sBlackoutRespawnHealCenterMapIdxs[healLocationIdx - 1][1] == MAP_NUM(ONE_ISLAND_POKEMON_CENTER_1F))
+ else if (sWhiteoutRespawnHealCenterMapIdxs[healLocationIdx - 1][0] == MAP_GROUP(ONE_ISLAND_POKEMON_CENTER_1F) && sWhiteoutRespawnHealCenterMapIdxs[healLocationIdx - 1][1] == MAP_NUM(ONE_ISLAND_POKEMON_CENTER_1F))
{
warp->x = 5;
warp->y = 4;
}
- else if (sBlackoutRespawnHealCenterMapIdxs[healLocationIdx - 1][0] == MAP_GROUP(TRAINER_TOWER_LOBBY) && sBlackoutRespawnHealCenterMapIdxs[healLocationIdx - 1][1] == MAP_NUM(TRAINER_TOWER_LOBBY))
+ else if (sWhiteoutRespawnHealCenterMapIdxs[healLocationIdx - 1][0] == MAP_GROUP(TRAINER_TOWER_LOBBY) && sWhiteoutRespawnHealCenterMapIdxs[healLocationIdx - 1][1] == MAP_NUM(TRAINER_TOWER_LOBBY))
{
warp->x = 4;
warp->y = 11;
@@ -166,11 +107,11 @@ void SetBlackoutRespawnWarpAndHealerNpc(struct WarpData * warp)
warp->x = 7;
warp->y = 4;
}
- SetBlackoutRespawnHealerNpcAsLastTalked(healLocationIdx);
+ SetWhiteoutRespawnHealerNpcAsLastTalked(healLocationIdx);
}
}
-void SetBlackoutRespawnHealerNpcAsLastTalked(u32 healLocationIdx)
+static void SetWhiteoutRespawnHealerNpcAsLastTalked(u32 healLocationIdx)
{
- gSpecialVar_LastTalked = sBlackoutRespawnHealerNpcIds[healLocationIdx - 1];
+ gSpecialVar_LastTalked = sWhiteoutRespawnHealerNpcIds[healLocationIdx - 1];
}
diff --git a/src/post_battle_event_funcs.c b/src/post_battle_event_funcs.c
index b564e74ce..86406fa2a 100644
--- a/src/post_battle_event_funcs.c
+++ b/src/post_battle_event_funcs.c
@@ -6,7 +6,7 @@
#include "hall_of_fame.h"
#include "load_save.h"
#include "constants/flags.h"
-#include "constants/spawn_points.h"
+#include "constants/heal_locations.h"
bool8 EnterHallOfFame(void)
{
diff --git a/src/region_map.c b/src/region_map.c
index b49c3c31a..3a902ec0e 100644
--- a/src/region_map.c
+++ b/src/region_map.c
@@ -20,7 +20,7 @@
#include "constants/flags.h"
#include "constants/songs.h"
#include "constants/region_map_sections.h"
-#include "constants/spawn_points.h"
+#include "constants/heal_locations.h"
#include "constants/maps.h"
#define FREE_IF_NOT_NULL(ptr) ({ \