Merge pull request #475 from AsparagusEduardo/_pret/pr/friendAreas
Some checks failed
GithubCI / build (push) Has been cancelled

Added prefix to Friend Area constants
This commit is contained in:
AnonymousRandomPerson 2026-02-22 19:10:30 -05:00 committed by GitHub
commit 8fbc27c5d8
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
19 changed files with 783 additions and 782 deletions

File diff suppressed because it is too large Load Diff

View File

@ -7,64 +7,65 @@
#define UNLOCK_WONDER_MAIL 2
#define UNLOCK_LEGENDARY_REQUEST 3
#define FRIEND_AREA_NONE 0
#define BOUNTIFUL_SEA 1
#define TREASURE_SEA 2
#define SERENE_SEA 3
#define DEEP_SEA_FLOOR 4
#define DEEP_SEA_CURRENT 5
#define SEAFLOOR_CAVE 6
#define SHALLOW_BEACH 7
#define MT_DEEPGREEN 8
#define MT_CLEFT 9
#define MT_MOONVIEW 10
#define RAINBOW_PEAK 11
#define WILD_PLAINS 12
#define BEAU_PLAINS 13
#define SKY_BLUE_PLAINS 14
#define SAFARI 15
#define SCORCHED_PLAINS 16
#define SACRED_FIELD 17
#define MIST_RISE_FOREST 18
#define FLYAWAY_FOREST 19
#define OVERGROWN_FOREST 20
#define ENERGETIC_FOREST 21
#define MUSHROOM_FOREST 22
#define HEALING_FOREST 23
#define TRANSFORM_FOREST 24
#define SECRETIVE_FOREST 25
#define RUB_A_DUB_RIVER 26
#define TADPOLE_POND 27
#define TURTLESHELL_POND 28
#define MYSTIC_LAKE 29
#define WATERFALL_LAKE 30
#define PEANUT_SWAMP 31
#define POISON_SWAMP 32
#define ECHO_CAVE 33
#define CRYPTIC_CAVE 34
#define DRAGON_CAVE 35
#define BOULDER_CAVE 36
#define JUNGLE 37
#define DECREPIT_LAB 38
#define MT_DISCIPLINE 39
#define THUNDER_MEADOW 40
#define POWER_PLANT 41
#define CRATER 42
#define FURNACE_DESERT 43
#define AGED_CHAMBER_AN 44
#define AGED_CHAMBER_O_EXCLAIM 45
#define ANCIENT_RELIC 46
#define DARKNESS_RIDGE 47
#define FRIGID_CAVERN 48
#define ICE_FLOE_BEACH 49
#define VOLCANIC_PIT 50
#define STRATOS_LOOKOUT 51
#define RAVAGED_FIELD 52
#define MAGNETIC_QUARRY 53
#define LEGENDARY_ISLAND 54
#define SOUTHERN_ISLAND 55
#define ENCLOSED_ISLAND 56
#define FINAL_ISLAND 57
#define NUM_FRIEND_AREAS 58
#define FRIEND_AREA_NONE 0
#define FRIEND_AREA_BOUNTIFUL_SEA 1
#define FRIEND_AREA_TREASURE_SEA 2
#define FRIEND_AREA_SERENE_SEA 3
#define FRIEND_AREA_DEEP_SEA_FLOOR 4
#define FRIEND_AREA_DEEP_SEA_CURRENT 5
#define FRIEND_AREA_SEAFLOOR_CAVE 6
#define FRIEND_AREA_SHALLOW_BEACH 7
#define FRIEND_AREA_MT_DEEPGREEN 8
#define FRIEND_AREA_MT_CLEFT 9
#define FRIEND_AREA_MT_MOONVIEW 10
#define FRIEND_AREA_RAINBOW_PEAK 11
#define FRIEND_AREA_WILD_PLAINS 12
#define FRIEND_AREA_BEAU_PLAINS 13
#define FRIEND_AREA_SKY_BLUE_PLAINS 14
#define FRIEND_AREA_SAFARI 15
#define FRIEND_AREA_SCORCHED_PLAINS 16
#define FRIEND_AREA_SACRED_FIELD 17
#define FRIEND_AREA_MIST_RISE_FOREST 18
#define FRIEND_AREA_FLYAWAY_FOREST 19
#define FRIEND_AREA_OVERGROWN_FOREST 20
#define FRIEND_AREA_ENERGETIC_FOREST 21
#define FRIEND_AREA_MUSHROOM_FOREST 22
#define FRIEND_AREA_HEALING_FOREST 23
#define FRIEND_AREA_TRANSFORM_FOREST 24
#define FRIEND_AREA_SECRETIVE_FOREST 25
#define FRIEND_AREA_RUB_A_DUB_RIVER 26
#define FRIEND_AREA_TADPOLE_POND 27
#define FRIEND_AREA_TURTLESHELL_POND 28
#define FRIEND_AREA_MYSTIC_LAKE 29
#define FRIEND_AREA_WATERFALL_LAKE 30
#define FRIEND_AREA_PEANUT_SWAMP 31
#define FRIEND_AREA_POISON_SWAMP 32
#define FRIEND_AREA_ECHO_CAVE 33
#define FRIEND_AREA_CRYPTIC_CAVE 34
#define FRIEND_AREA_DRAGON_CAVE 35
#define FRIEND_AREA_BOULDER_CAVE 36
#define FRIEND_AREA_JUNGLE 37
#define FRIEND_AREA_DECREPIT_LAB 38
#define FRIEND_AREA_MT_DISCIPLINE 39
#define FRIEND_AREA_THUNDER_MEADOW 40
#define FRIEND_AREA_POWER_PLANT 41
#define FRIEND_AREA_CRATER 42
#define FRIEND_AREA_FURNACE_DESERT 43
#define FRIEND_AREA_AGED_CHAMBER_AN 44
#define FRIEND_AREA_AGED_CHAMBER_O_EXCLAIM 45
#define FRIEND_AREA_ANCIENT_RELIC 46
#define FRIEND_AREA_DARKNESS_RIDGE 47
#define FRIEND_AREA_FRIGID_CAVERN 48
#define FRIEND_AREA_ICE_FLOE_BEACH 49
#define FRIEND_AREA_VOLCANIC_PIT 50
#define FRIEND_AREA_STRATOS_LOOKOUT 51
#define FRIEND_AREA_RAVAGED_FIELD 52
#define FRIEND_AREA_MAGNETIC_QUARRY 53
#define FRIEND_AREA_LEGENDARY_ISLAND 54
#define FRIEND_AREA_SOUTHERN_ISLAND 55
#define FRIEND_AREA_ENCLOSED_ISLAND 56
#define FRIEND_AREA_FINAL_ISLAND 57
#define FRIEND_AREA_COUNT 58
#endif

View File

@ -28,7 +28,7 @@ typedef struct DungeonDataEntry
/* 0xA */ bool8 enterWithoutGameSave; // If false, the dungeon will force a quicksave before entering.
/* 0xB */ u8 HMMask; // HM mask for dungeon entry requirements (Fly, Dive, Waterfall, Surf, Water).
/* 0xC */ s16 turnLimit;
// The chance that a wild Pokémon's moveRandomly flag will be set when spawning,
// The chance that a wild Pokémon's moveRandomly flag will be set when spawning,
// causing them to move randomly inside a room instead of exploring rooms.
/* 0xE */ s16 randomMovementChance;
} DungeonDataEntry;
@ -42,7 +42,7 @@ extern const s32 gReqIQSkillPts[NUM_IQ_SKILLS];
extern const s32 gUnknown_810A3F0[100];
extern const s16 gTypeGummiIQBoost[NUM_TYPES][NUMBER_OF_GUMMIS];
extern const s16 gUnknown_810A808[NUM_TYPES][NUMBER_OF_GUMMIS];
extern const FriendAreaSettings gFriendAreaSettings[NUM_FRIEND_AREAS];
extern const FriendAreaSettings gFriendAreaSettings[FRIEND_AREA_COUNT];
extern const s16 gPowerBandBoost;
extern const s16 gSpecialBandBoost;
extern const s16 gDefScarfBoost;

View File

@ -96,8 +96,8 @@ extern const u8 *const gUnknown_8113990;
extern const u8 *const gUnknown_81139B4;
extern const u8 *const gUnknown_81139B8;
extern const u8 *const gText_ItemAlignedX;
extern const u8 *const gFriendAreaNames[NUM_FRIEND_AREAS];
extern const u8 *const gFriendAreaDescriptions[NUM_FRIEND_AREAS];
extern const u8 *const gFriendAreaNames[FRIEND_AREA_COUNT];
extern const u8 *const gFriendAreaDescriptions[FRIEND_AREA_COUNT];
extern const u8 *const gUnknown_8115718[100];
extern const u8 *const gText_PP_Value0;
extern const u8 *const gText_TooManyMembersToEnterDungeon;

View File

@ -8,7 +8,7 @@
typedef struct WigglytuffShop1Work
{
/* 0x0 */ u8 friendAreas[NUM_FRIEND_AREAS];
/* 0x0 */ u8 friendAreas[FRIEND_AREA_COUNT];
/* 0x3C */ u32 mode;
MenuHeaderWindow s40;

View File

@ -158,7 +158,7 @@ bool8 ValidateWonderMail(WonderMail *data)
return FALSE;
// Friend Area Reward
if(data->friendAreaReward > FINAL_ISLAND)
if(data->friendAreaReward > FRIEND_AREA_FINAL_ISLAND)
return FALSE;
if(data->rewardType == FRIEND_AREA)
@ -367,10 +367,10 @@ static u8 sub_8095E78(void)
s32 friendAreaIndex;
s32 counter;
u8 friendAreaStack[NUM_FRIEND_AREAS];
u8 friendAreaStack[FRIEND_AREA_COUNT];
counter = 0;
for(friendAreaIndex = BOUNTIFUL_SEA; friendAreaIndex < NUM_FRIEND_AREAS; friendAreaIndex++)
for(friendAreaIndex = FRIEND_AREA_BOUNTIFUL_SEA; friendAreaIndex < FRIEND_AREA_COUNT; friendAreaIndex++)
{
if ((!gFriendAreas[friendAreaIndex]) &&
(GetFriendAreaUnlockCondition(friendAreaIndex) == UNLOCK_WONDER_MAIL)) {

View File

@ -99,63 +99,63 @@ struct MapIdToFriendAreaIdStruct
u8 friendAreaId;
};
static const struct MapIdToFriendAreaIdStruct sMapIdToFriendAreaIdTable[NUM_FRIEND_AREAS] = {
{MAP_FRIEND_AREA_BOUNTIFUL_SEA, BOUNTIFUL_SEA},
{MAP_FRIEND_AREA_TREASURE_SEA, TREASURE_SEA},
{MAP_FRIEND_AREA_SERENE_SEA, SERENE_SEA},
{MAP_FRIEND_AREA_DEEP_SEA_FLOOR, DEEP_SEA_FLOOR},
{MAP_FRIEND_AREA_DEEP_SEA_CURRENT, DEEP_SEA_CURRENT},
{MAP_FRIEND_AREA_SEAFLOOR_CAVE, SEAFLOOR_CAVE},
{MAP_FRIEND_AREA_SHALLOW_BEACH, SHALLOW_BEACH},
{MAP_FRIEND_AREA_MT_DEEPGREEN, MT_DEEPGREEN},
{MAP_FRIEND_AREA_MT_CLEFT, MT_CLEFT},
{MAP_FRIEND_AREA_MT_MOONVIEW, MT_MOONVIEW},
{MAP_FRIEND_AREA_RAINBOW_PEAK, RAINBOW_PEAK},
{MAP_FRIEND_AREA_WILD_PLAINS, WILD_PLAINS},
{MAP_FRIEND_AREA_BEAU_PLAINS, BEAU_PLAINS},
{MAP_FRIEND_AREA_SKY_BLUE_PLAINS, SKY_BLUE_PLAINS},
{MAP_FRIEND_AREA_SAFARI, SAFARI},
{MAP_FRIEND_AREA_SCORCHED_PLAINS, SCORCHED_PLAINS},
{MAP_FRIEND_AREA_SACRED_FIELD, SACRED_FIELD},
{MAP_FRIEND_AREA_MIST_RISE_FOREST, MIST_RISE_FOREST},
{MAP_FRIEND_AREA_FLYAWAY_FOREST, FLYAWAY_FOREST},
{MAP_FRIEND_AREA_OVERGROWN_FOREST, OVERGROWN_FOREST},
{MAP_FRIEND_AREA_ENERGETIC_FOREST, ENERGETIC_FOREST},
{MAP_FRIEND_AREA_MUSHROOM_FOREST, MUSHROOM_FOREST},
{MAP_FRIEND_AREA_HEALING_FOREST, HEALING_FOREST},
{MAP_FRIEND_AREA_TRANSFORM_FOREST, TRANSFORM_FOREST},
{MAP_FRIEND_AREA_SECRETIVE_FOREST, SECRETIVE_FOREST},
{MAP_FRIEND_AREA_RUB_A_DUB_RIVER, RUB_A_DUB_RIVER},
{MAP_FRIEND_AREA_TADPOLE_POND, TADPOLE_POND},
{MAP_FRIEND_AREA_TURTLESHELL_POND, TURTLESHELL_POND},
{MAP_FRIEND_AREA_MYSTIC_LAKE, MYSTIC_LAKE},
{MAP_FRIEND_AREA_WATERFALL_LAKE, WATERFALL_LAKE},
{MAP_FRIEND_AREA_PEANUT_SWAMP, PEANUT_SWAMP},
{MAP_FRIEND_AREA_POISON_SWAMP, POISON_SWAMP},
{MAP_FRIEND_AREA_ECHO_CAVE, ECHO_CAVE},
{MAP_FRIEND_AREA_CRYPTIC_CAVE, CRYPTIC_CAVE},
{MAP_FRIEND_AREA_DRAGON_CAVE, DRAGON_CAVE},
{MAP_FRIEND_AREA_BOULDER_CAVE, BOULDER_CAVE},
{MAP_FRIEND_AREA_JUNGLE, JUNGLE},
{MAP_FRIEND_AREA_DECREPIT_LAB, DECREPIT_LAB},
{MAP_FRIEND_AREA_MT_DISCIPLINE, MT_DISCIPLINE},
{MAP_FRIEND_AREA_THUNDER_MEADOW, THUNDER_MEADOW},
{MAP_FRIEND_AREA_POWER_PLANT, POWER_PLANT},
{MAP_FRIEND_AREA_CRATER, CRATER},
{MAP_FRIEND_AREA_FURNACE_DESERT, FURNACE_DESERT},
{MAP_FRIEND_AREA_AGED_CHAMBER_AN, AGED_CHAMBER_AN},
{MAP_FRIEND_AREA_AGED_CHAMBER_O_EXCLAIM, AGED_CHAMBER_O_EXCLAIM},
{MAP_FRIEND_AREA_ANCIENT_RELIC, ANCIENT_RELIC},
{MAP_FRIEND_AREA_DARKNESS_RIDGE, DARKNESS_RIDGE},
{MAP_FRIEND_AREA_FRIGID_CAVERN, FRIGID_CAVERN},
{MAP_FRIEND_AREA_ICE_FLOE_BEACH, ICE_FLOE_BEACH},
{MAP_FRIEND_AREA_VOLCANIC_PIT, VOLCANIC_PIT},
{MAP_FRIEND_AREA_STRATOS_LOOKOUT, STRATOS_LOOKOUT},
{MAP_FRIEND_AREA_RAVAGED_FIELD, RAVAGED_FIELD},
{MAP_FRIEND_AREA_MAGNETIC_QUARRY, MAGNETIC_QUARRY},
{MAP_FRIEND_AREA_LEGENDARY_ISLAND, LEGENDARY_ISLAND},
{MAP_FRIEND_AREA_SOUTHERN_ISLAND, SOUTHERN_ISLAND},
{MAP_FRIEND_AREA_ENCLOSED_ISLAND, ENCLOSED_ISLAND},
{MAP_FRIEND_AREA_FINAL_ISLAND, FINAL_ISLAND},
static const struct MapIdToFriendAreaIdStruct sMapIdToFriendAreaIdTable[FRIEND_AREA_COUNT] = {
{MAP_FRIEND_AREA_BOUNTIFUL_SEA, FRIEND_AREA_BOUNTIFUL_SEA},
{MAP_FRIEND_AREA_TREASURE_SEA, FRIEND_AREA_TREASURE_SEA},
{MAP_FRIEND_AREA_SERENE_SEA, FRIEND_AREA_SERENE_SEA},
{MAP_FRIEND_AREA_DEEP_SEA_FLOOR, FRIEND_AREA_DEEP_SEA_FLOOR},
{MAP_FRIEND_AREA_DEEP_SEA_CURRENT, FRIEND_AREA_DEEP_SEA_CURRENT},
{MAP_FRIEND_AREA_SEAFLOOR_CAVE, FRIEND_AREA_SEAFLOOR_CAVE},
{MAP_FRIEND_AREA_SHALLOW_BEACH, FRIEND_AREA_SHALLOW_BEACH},
{MAP_FRIEND_AREA_MT_DEEPGREEN, FRIEND_AREA_MT_DEEPGREEN},
{MAP_FRIEND_AREA_MT_CLEFT, FRIEND_AREA_MT_CLEFT},
{MAP_FRIEND_AREA_MT_MOONVIEW, FRIEND_AREA_MT_MOONVIEW},
{MAP_FRIEND_AREA_RAINBOW_PEAK, FRIEND_AREA_RAINBOW_PEAK},
{MAP_FRIEND_AREA_WILD_PLAINS, FRIEND_AREA_WILD_PLAINS},
{MAP_FRIEND_AREA_BEAU_PLAINS, FRIEND_AREA_BEAU_PLAINS},
{MAP_FRIEND_AREA_SKY_BLUE_PLAINS, FRIEND_AREA_SKY_BLUE_PLAINS},
{MAP_FRIEND_AREA_SAFARI, FRIEND_AREA_SAFARI},
{MAP_FRIEND_AREA_SCORCHED_PLAINS, FRIEND_AREA_SCORCHED_PLAINS},
{MAP_FRIEND_AREA_SACRED_FIELD, FRIEND_AREA_SACRED_FIELD},
{MAP_FRIEND_AREA_MIST_RISE_FOREST, FRIEND_AREA_MIST_RISE_FOREST},
{MAP_FRIEND_AREA_FLYAWAY_FOREST, FRIEND_AREA_FLYAWAY_FOREST},
{MAP_FRIEND_AREA_OVERGROWN_FOREST, FRIEND_AREA_OVERGROWN_FOREST},
{MAP_FRIEND_AREA_ENERGETIC_FOREST, FRIEND_AREA_ENERGETIC_FOREST},
{MAP_FRIEND_AREA_MUSHROOM_FOREST, FRIEND_AREA_MUSHROOM_FOREST},
{MAP_FRIEND_AREA_HEALING_FOREST, FRIEND_AREA_HEALING_FOREST},
{MAP_FRIEND_AREA_TRANSFORM_FOREST, FRIEND_AREA_TRANSFORM_FOREST},
{MAP_FRIEND_AREA_SECRETIVE_FOREST, FRIEND_AREA_SECRETIVE_FOREST},
{MAP_FRIEND_AREA_RUB_A_DUB_RIVER, FRIEND_AREA_RUB_A_DUB_RIVER},
{MAP_FRIEND_AREA_TADPOLE_POND, FRIEND_AREA_TADPOLE_POND},
{MAP_FRIEND_AREA_TURTLESHELL_POND, FRIEND_AREA_TURTLESHELL_POND},
{MAP_FRIEND_AREA_MYSTIC_LAKE, FRIEND_AREA_MYSTIC_LAKE},
{MAP_FRIEND_AREA_WATERFALL_LAKE, FRIEND_AREA_WATERFALL_LAKE},
{MAP_FRIEND_AREA_PEANUT_SWAMP, FRIEND_AREA_PEANUT_SWAMP},
{MAP_FRIEND_AREA_POISON_SWAMP, FRIEND_AREA_POISON_SWAMP},
{MAP_FRIEND_AREA_ECHO_CAVE, FRIEND_AREA_ECHO_CAVE},
{MAP_FRIEND_AREA_CRYPTIC_CAVE, FRIEND_AREA_CRYPTIC_CAVE},
{MAP_FRIEND_AREA_DRAGON_CAVE, FRIEND_AREA_DRAGON_CAVE},
{MAP_FRIEND_AREA_BOULDER_CAVE, FRIEND_AREA_BOULDER_CAVE},
{MAP_FRIEND_AREA_JUNGLE, FRIEND_AREA_JUNGLE},
{MAP_FRIEND_AREA_DECREPIT_LAB, FRIEND_AREA_DECREPIT_LAB},
{MAP_FRIEND_AREA_MT_DISCIPLINE, FRIEND_AREA_MT_DISCIPLINE},
{MAP_FRIEND_AREA_THUNDER_MEADOW, FRIEND_AREA_THUNDER_MEADOW},
{MAP_FRIEND_AREA_POWER_PLANT, FRIEND_AREA_POWER_PLANT},
{MAP_FRIEND_AREA_CRATER, FRIEND_AREA_CRATER},
{MAP_FRIEND_AREA_FURNACE_DESERT, FRIEND_AREA_FURNACE_DESERT},
{MAP_FRIEND_AREA_AGED_CHAMBER_AN, FRIEND_AREA_AGED_CHAMBER_AN},
{MAP_FRIEND_AREA_AGED_CHAMBER_O_EXCLAIM, FRIEND_AREA_AGED_CHAMBER_O_EXCLAIM},
{MAP_FRIEND_AREA_ANCIENT_RELIC, FRIEND_AREA_ANCIENT_RELIC},
{MAP_FRIEND_AREA_DARKNESS_RIDGE, FRIEND_AREA_DARKNESS_RIDGE},
{MAP_FRIEND_AREA_FRIGID_CAVERN, FRIEND_AREA_FRIGID_CAVERN},
{MAP_FRIEND_AREA_ICE_FLOE_BEACH, FRIEND_AREA_ICE_FLOE_BEACH},
{MAP_FRIEND_AREA_VOLCANIC_PIT, FRIEND_AREA_VOLCANIC_PIT},
{MAP_FRIEND_AREA_STRATOS_LOOKOUT, FRIEND_AREA_STRATOS_LOOKOUT},
{MAP_FRIEND_AREA_RAVAGED_FIELD, FRIEND_AREA_RAVAGED_FIELD},
{MAP_FRIEND_AREA_MAGNETIC_QUARRY, FRIEND_AREA_MAGNETIC_QUARRY},
{MAP_FRIEND_AREA_LEGENDARY_ISLAND, FRIEND_AREA_LEGENDARY_ISLAND},
{MAP_FRIEND_AREA_SOUTHERN_ISLAND, FRIEND_AREA_SOUTHERN_ISLAND},
{MAP_FRIEND_AREA_ENCLOSED_ISLAND, FRIEND_AREA_ENCLOSED_ISLAND},
{MAP_FRIEND_AREA_FINAL_ISLAND, FRIEND_AREA_FINAL_ISLAND},
{ -1, FRIEND_AREA_NONE},
};

View File

@ -1,4 +1,4 @@
#define NO_AREA NUM_FRIEND_AREAS + 5
#define NO_AREA FRIEND_AREA_COUNT + 5
// ななし means 'without name'
#define DUMMY_LOCATION \
@ -17,7 +17,7 @@ static const struct FriendAreaLocationInfo sFriendAreaLocations[2][NUM_FRIEND_AR
{
.name = "Mountain Range",
.pos = {0x1C5, 0x71},
.areasIds = {MT_DEEPGREEN, MT_CLEFT, MT_MOONVIEW, MT_DISCIPLINE, DARKNESS_RIDGE, RAINBOW_PEAK, NO_AREA, NO_AREA},
.areasIds = {FRIEND_AREA_MT_DEEPGREEN, FRIEND_AREA_MT_CLEFT, FRIEND_AREA_MT_MOONVIEW, FRIEND_AREA_MT_DISCIPLINE, FRIEND_AREA_DARKNESS_RIDGE, FRIEND_AREA_RAINBOW_PEAK, NO_AREA, NO_AREA},
.adjacentLocations = {
[DIRECTION_SOUTH] = LOCATION_EASTERN_FOREST,
[DIRECTION_SOUTHEAST] = -1,
@ -33,7 +33,7 @@ static const struct FriendAreaLocationInfo sFriendAreaLocations[2][NUM_FRIEND_AR
{
.name = "Glacier",
.pos = {0x1CD, 0x1C},
.areasIds = {FRIGID_CAVERN, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.areasIds = {FRIEND_AREA_FRIGID_CAVERN, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.adjacentLocations = {
[DIRECTION_SOUTH] = -1,
[DIRECTION_SOUTHEAST] = -1,
@ -49,7 +49,7 @@ static const struct FriendAreaLocationInfo sFriendAreaLocations[2][NUM_FRIEND_AR
{
.name = "Plains",
.pos = {0x161, 0x78},
.areasIds = {BEAU_PLAINS, SKY_BLUE_PLAINS, SACRED_FIELD, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.areasIds = {FRIEND_AREA_BEAU_PLAINS, FRIEND_AREA_SKY_BLUE_PLAINS, FRIEND_AREA_SACRED_FIELD, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.adjacentLocations = {
[DIRECTION_SOUTH] = LOCATION_TEAM_BASE,
[DIRECTION_SOUTHEAST] = LOCATION_RIVER,
@ -65,7 +65,7 @@ static const struct FriendAreaLocationInfo sFriendAreaLocations[2][NUM_FRIEND_AR
{
.name = "South Plains",
.pos = {0x162, 0x12D},
.areasIds = {SAFARI, WILD_PLAINS, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.areasIds = {FRIEND_AREA_SAFARI, FRIEND_AREA_WILD_PLAINS, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.adjacentLocations = {
[DIRECTION_SOUTH] = -1,
[DIRECTION_SOUTHEAST] = -1,
@ -81,7 +81,7 @@ static const struct FriendAreaLocationInfo sFriendAreaLocations[2][NUM_FRIEND_AR
{
.name = "Badlands",
.pos = {0x194, 0x102},
.areasIds = {RAVAGED_FIELD, MAGNETIC_QUARRY, THUNDER_MEADOW, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.areasIds = {FRIEND_AREA_RAVAGED_FIELD, FRIEND_AREA_MAGNETIC_QUARRY, FRIEND_AREA_THUNDER_MEADOW, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.adjacentLocations = {
[DIRECTION_SOUTH] = -1,
[DIRECTION_SOUTHEAST] = LOCATION_DESERT,
@ -97,7 +97,7 @@ static const struct FriendAreaLocationInfo sFriendAreaLocations[2][NUM_FRIEND_AR
{
.name = "Eastern Forest",
.pos = {0x1C7, 0x9D},
.areasIds = {MIST_RISE_FOREST, FLYAWAY_FOREST, OVERGROWN_FOREST, ENERGETIC_FOREST, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.areasIds = {FRIEND_AREA_MIST_RISE_FOREST, FRIEND_AREA_FLYAWAY_FOREST, FRIEND_AREA_OVERGROWN_FOREST, FRIEND_AREA_ENERGETIC_FOREST, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.adjacentLocations = {
[DIRECTION_SOUTH] = LOCATION_EASTERN_LAKES,
[DIRECTION_SOUTHEAST] = -1,
@ -113,7 +113,7 @@ static const struct FriendAreaLocationInfo sFriendAreaLocations[2][NUM_FRIEND_AR
{
.name = "Western Forest",
.pos = {0x108, 0x9D},
.areasIds = {MUSHROOM_FOREST, HEALING_FOREST, TRANSFORM_FOREST, SECRETIVE_FOREST, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.areasIds = {FRIEND_AREA_MUSHROOM_FOREST, FRIEND_AREA_HEALING_FOREST, FRIEND_AREA_TRANSFORM_FOREST, FRIEND_AREA_SECRETIVE_FOREST, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.adjacentLocations = {
[DIRECTION_SOUTH] = LOCATION_VOLCANO,
[DIRECTION_SOUTHEAST] = -1,
@ -129,7 +129,7 @@ static const struct FriendAreaLocationInfo sFriendAreaLocations[2][NUM_FRIEND_AR
{
.name = "River",
.pos = {0x197, 0xA0},
.areasIds = {RUB_A_DUB_RIVER, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.areasIds = {FRIEND_AREA_RUB_A_DUB_RIVER, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.adjacentLocations = {
[DIRECTION_SOUTH] = LOCATION_EASTERN_PONDS,
[DIRECTION_SOUTHEAST] = LOCATION_EASTERN_LAKES,
@ -145,7 +145,7 @@ static const struct FriendAreaLocationInfo sFriendAreaLocations[2][NUM_FRIEND_AR
{
.name = "Eastern Ponds",
.pos = {0x198, 0xCF},
.areasIds = {TADPOLE_POND, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.areasIds = {FRIEND_AREA_TADPOLE_POND, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.adjacentLocations = {
[DIRECTION_SOUTH] = LOCATION_BADLANDS,
[DIRECTION_SOUTHEAST] = -1,
@ -161,7 +161,7 @@ static const struct FriendAreaLocationInfo sFriendAreaLocations[2][NUM_FRIEND_AR
{
.name = "Pond",
.pos = {0x133, 0x79},
.areasIds = {TURTLESHELL_POND, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.areasIds = {FRIEND_AREA_TURTLESHELL_POND, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.adjacentLocations = {
[DIRECTION_SOUTH] = -1,
[DIRECTION_SOUTHEAST] = LOCATION_TEAM_BASE,
@ -177,7 +177,7 @@ static const struct FriendAreaLocationInfo sFriendAreaLocations[2][NUM_FRIEND_AR
{
.name = "Northern Lakes",
.pos = {0x182, 0x1D},
.areasIds = {MYSTIC_LAKE, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.areasIds = {FRIEND_AREA_MYSTIC_LAKE, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.adjacentLocations = {
[DIRECTION_SOUTH] = -1,
[DIRECTION_SOUTHEAST] = LOCATION_MARSH,
@ -193,7 +193,7 @@ static const struct FriendAreaLocationInfo sFriendAreaLocations[2][NUM_FRIEND_AR
{
.name = "Eastern Lakes",
.pos = {0x1C6, 0xD0},
.areasIds = {WATERFALL_LAKE, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.areasIds = {FRIEND_AREA_WATERFALL_LAKE, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.adjacentLocations = {
[DIRECTION_SOUTH] = -1,
[DIRECTION_SOUTHEAST] = -1,
@ -209,7 +209,7 @@ static const struct FriendAreaLocationInfo sFriendAreaLocations[2][NUM_FRIEND_AR
{
.name = "Marsh",
.pos = {0x1A2, 0x46},
.areasIds = {PEANUT_SWAMP, POISON_SWAMP, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.areasIds = {FRIEND_AREA_PEANUT_SWAMP, FRIEND_AREA_POISON_SWAMP, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.adjacentLocations = {
[DIRECTION_SOUTH] = LOCATION_RIVER,
[DIRECTION_SOUTHEAST] = LOCATION_MOUNTAIN_RANGE,
@ -225,7 +225,7 @@ static const struct FriendAreaLocationInfo sFriendAreaLocations[2][NUM_FRIEND_AR
{
.name = "Cave",
.pos = {0x160, 0x47},
.areasIds = {ECHO_CAVE, DRAGON_CAVE, BOULDER_CAVE, CRYPTIC_CAVE, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.areasIds = {FRIEND_AREA_ECHO_CAVE, FRIEND_AREA_DRAGON_CAVE, FRIEND_AREA_BOULDER_CAVE, FRIEND_AREA_CRYPTIC_CAVE, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.adjacentLocations = {
[DIRECTION_SOUTH] = LOCATION_PLAINS,
[DIRECTION_SOUTHEAST] = -1,
@ -241,7 +241,7 @@ static const struct FriendAreaLocationInfo sFriendAreaLocations[2][NUM_FRIEND_AR
{
.name = "Jungle",
.pos = {0x163, 0x104},
.areasIds = {JUNGLE, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.areasIds = {FRIEND_AREA_JUNGLE, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.adjacentLocations = {
[DIRECTION_SOUTH] = LOCATION_SOUTH_PLAINS,
[DIRECTION_SOUTHEAST] = -1,
@ -257,7 +257,7 @@ static const struct FriendAreaLocationInfo sFriendAreaLocations[2][NUM_FRIEND_AR
{
.name = "Ruins",
.pos = {0x136, 0x1C},
.areasIds = {DECREPIT_LAB, POWER_PLANT, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.areasIds = {FRIEND_AREA_DECREPIT_LAB, FRIEND_AREA_POWER_PLANT, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.adjacentLocations = {
[DIRECTION_SOUTH] = LOCATION_POND,
[DIRECTION_SOUTHEAST] = LOCATION_CAVE,
@ -273,7 +273,7 @@ static const struct FriendAreaLocationInfo sFriendAreaLocations[2][NUM_FRIEND_AR
{
.name = "Volcano",
.pos = {0x107, 0xCB},
.areasIds = {SCORCHED_PLAINS, CRATER, VOLCANIC_PIT, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.areasIds = {FRIEND_AREA_SCORCHED_PLAINS, FRIEND_AREA_CRATER, FRIEND_AREA_VOLCANIC_PIT, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.adjacentLocations = {
[DIRECTION_SOUTH] = -1,
[DIRECTION_SOUTHEAST] = LOCATION_RELICS,
@ -289,7 +289,7 @@ static const struct FriendAreaLocationInfo sFriendAreaLocations[2][NUM_FRIEND_AR
{
.name = "Desert",
.pos = {0x1C4, 0x12D},
.areasIds = {FURNACE_DESERT, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.areasIds = {FRIEND_AREA_FURNACE_DESERT, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.adjacentLocations = {
[DIRECTION_SOUTH] = -1,
[DIRECTION_SOUTHEAST] = -1,
@ -305,7 +305,7 @@ static const struct FriendAreaLocationInfo sFriendAreaLocations[2][NUM_FRIEND_AR
{
.name = "Relics",
.pos = {0x131, 0x105},
.areasIds = {ANCIENT_RELIC, AGED_CHAMBER_AN, AGED_CHAMBER_O_EXCLAIM, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.areasIds = {FRIEND_AREA_ANCIENT_RELIC, FRIEND_AREA_AGED_CHAMBER_AN, FRIEND_AREA_AGED_CHAMBER_O_EXCLAIM, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.adjacentLocations = {
[DIRECTION_SOUTH] = -1,
[DIRECTION_SOUTHEAST] = LOCATION_SOUTH_PLAINS,
@ -321,7 +321,7 @@ static const struct FriendAreaLocationInfo sFriendAreaLocations[2][NUM_FRIEND_AR
{
.name = "Sky",
.pos = {0x2F, 0x15},
.areasIds = {STRATOS_LOOKOUT, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.areasIds = {FRIEND_AREA_STRATOS_LOOKOUT, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.adjacentLocations = {
[DIRECTION_SOUTH] = LOCATION_WESTERN_ISLES,
[DIRECTION_SOUTHEAST] = LOCATION_BEACH,
@ -337,7 +337,7 @@ static const struct FriendAreaLocationInfo sFriendAreaLocations[2][NUM_FRIEND_AR
{
.name = "Northern Isles",
.pos = {0x107, 0x47},
.areasIds = {LEGENDARY_ISLAND, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.areasIds = {FRIEND_AREA_LEGENDARY_ISLAND, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.adjacentLocations = {
[DIRECTION_SOUTH] = 6,
[DIRECTION_SOUTHEAST] = 9,
@ -353,7 +353,7 @@ static const struct FriendAreaLocationInfo sFriendAreaLocations[2][NUM_FRIEND_AR
{
.name = "Southern Isles",
.pos = {0x5D, 0x10C},
.areasIds = {SOUTHERN_ISLAND, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.areasIds = {FRIEND_AREA_SOUTHERN_ISLAND, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.adjacentLocations = {
[DIRECTION_SOUTH] = -1,
[DIRECTION_SOUTHEAST] = -1,
@ -369,7 +369,7 @@ static const struct FriendAreaLocationInfo sFriendAreaLocations[2][NUM_FRIEND_AR
{
.name = "Southwest Isles",
.pos = {0x2D, 0xCB},
.areasIds = {ENCLOSED_ISLAND, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.areasIds = {FRIEND_AREA_ENCLOSED_ISLAND, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.adjacentLocations = {
[DIRECTION_SOUTH] = -1,
[DIRECTION_SOUTHEAST] = LOCATION_SOUTHERN_ISLES,
@ -385,7 +385,7 @@ static const struct FriendAreaLocationInfo sFriendAreaLocations[2][NUM_FRIEND_AR
{
.name = "Western Isles",
.pos = {0x2D, 0x70},
.areasIds = {FINAL_ISLAND, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.areasIds = {FRIEND_AREA_FINAL_ISLAND, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.adjacentLocations = {
[DIRECTION_SOUTH] = LOCATION_SOUTHWEST_ISLES,
[DIRECTION_SOUTHEAST] = -1,
@ -401,7 +401,7 @@ static const struct FriendAreaLocationInfo sFriendAreaLocations[2][NUM_FRIEND_AR
{
.name = "Northern Sea",
.pos = {0xD0, 0x16},
.areasIds = {BOUNTIFUL_SEA, SERENE_SEA, DEEP_SEA_CURRENT, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.areasIds = {FRIEND_AREA_BOUNTIFUL_SEA, FRIEND_AREA_SERENE_SEA, FRIEND_AREA_DEEP_SEA_CURRENT, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.adjacentLocations = {
[DIRECTION_SOUTH] = -1,
[DIRECTION_SOUTHEAST] = LOCATION_NORTHERN_ISLES,
@ -417,7 +417,7 @@ static const struct FriendAreaLocationInfo sFriendAreaLocations[2][NUM_FRIEND_AR
{
.name = "Southern Sea",
.pos = {0xB2, 0x10D},
.areasIds = {TREASURE_SEA, DEEP_SEA_FLOOR, SEAFLOOR_CAVE, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.areasIds = {FRIEND_AREA_TREASURE_SEA, FRIEND_AREA_DEEP_SEA_FLOOR, FRIEND_AREA_SEAFLOOR_CAVE, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.adjacentLocations = {
[DIRECTION_SOUTH] = -1,
[DIRECTION_SOUTHEAST] = -1,
@ -433,7 +433,7 @@ static const struct FriendAreaLocationInfo sFriendAreaLocations[2][NUM_FRIEND_AR
{
.name = "Beach",
.pos = {0x81, 0x42},
.areasIds = {SHALLOW_BEACH, ICE_FLOE_BEACH, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.areasIds = {FRIEND_AREA_SHALLOW_BEACH, FRIEND_AREA_ICE_FLOE_BEACH, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA, NO_AREA},
.adjacentLocations = {
[DIRECTION_SOUTH] = -1,
[DIRECTION_SOUTHEAST] = LOCATION_WESTERN_FOREST,

View File

@ -133,7 +133,7 @@ static void sub_803A3BC(void)
s32 sp_0x80;
s32 i;
for (i = 1; i < NUM_FRIEND_AREAS; i++) {
for (i = 1; i < FRIEND_AREA_COUNT; i++) {
UnlockFriendArea(i);
}

View File

@ -264,7 +264,7 @@ static void JirachiWish_Async(void)
{
// A Friend Area
s32 friendArea = JirachiFriendAreaSearch();
if (friendArea == NUM_FRIEND_AREAS)
if (friendArea == FRIEND_AREA_COUNT)
{
// You want a friend area? But you already have many friend areas...
DisplayDungeonDialogue_Async(&gUnknown_8105A08);
@ -501,13 +501,13 @@ static u8 JirachiFriendAreaSearch(void)
u8 unlockCondition;
s32 friendAreaCounter;
s32 numUnlockableAreas;
u8 friendAreas[NUM_FRIEND_AREAS];
u8 friendAreas[FRIEND_AREA_COUNT];
u32 friendAreaIndex;
// Build a copy of friend area list and keep track of
// how many are only Story Unlockable
numUnlockableAreas = 0;
for(friendAreaCounter = 1; friendAreaCounter < NUM_FRIEND_AREAS; friendAreaCounter++){
for(friendAreaCounter = 1; friendAreaCounter < FRIEND_AREA_COUNT; friendAreaCounter++){
unlockCondition = GetFriendAreaUnlockCondition(friendAreaCounter);
if (!(unlockCondition == UNLOCK_LEGENDARY_REQUEST)){
if (!(unlockCondition == UNLOCK_WONDER_MAIL)){
@ -520,7 +520,7 @@ static u8 JirachiFriendAreaSearch(void)
}
if (numUnlockableAreas == 0) {
return NUM_FRIEND_AREAS;
return FRIEND_AREA_COUNT;
}
else {
// Randomly pick 1

View File

@ -166,294 +166,294 @@ const s16 gUnknown_810A808[NUM_TYPES][NUMBER_OF_GUMMIS] =
[TYPE_STEEL] = {0x00, 0x14, 0x1e, 0x19, 0x14, 0x19, 0x14, 0x1e, 0x05, 0x1e, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x3c},
};
const FriendAreaSettings gFriendAreaSettings[NUM_FRIEND_AREAS] =
const FriendAreaSettings gFriendAreaSettings[FRIEND_AREA_COUNT] =
{
[FRIEND_AREA_NONE] = {
.num_pokemon = 0,
.unlock_condition = UNLOCK_SHOP_STORY,
.price = 0,
},
[BOUNTIFUL_SEA] = {
[FRIEND_AREA_BOUNTIFUL_SEA] = {
.num_pokemon = 9,
.unlock_condition = UNLOCK_SHOP_POST_GAME,
.price = 5500,
},
[TREASURE_SEA] = {
[FRIEND_AREA_TREASURE_SEA] = {
.num_pokemon = 10,
.unlock_condition = UNLOCK_SHOP_POST_GAME,
.price = 4500,
},
[SERENE_SEA] = {
[FRIEND_AREA_SERENE_SEA] = {
.num_pokemon = 4,
.unlock_condition = UNLOCK_SHOP_POST_GAME,
.price = 8000,
},
[DEEP_SEA_FLOOR] = {
[FRIEND_AREA_DEEP_SEA_FLOOR] = {
.num_pokemon = 12,
.unlock_condition = UNLOCK_SHOP_POST_GAME,
.price = 5500,
},
[DEEP_SEA_CURRENT] = {
[FRIEND_AREA_DEEP_SEA_CURRENT] = {
.num_pokemon = 1,
.unlock_condition = UNLOCK_LEGENDARY_REQUEST,
.price = 0,
},
[SEAFLOOR_CAVE] = {
[FRIEND_AREA_SEAFLOOR_CAVE] = {
.num_pokemon = 1,
.unlock_condition = UNLOCK_LEGENDARY_REQUEST,
.price = 0,
},
[SHALLOW_BEACH] = {
[FRIEND_AREA_SHALLOW_BEACH] = {
.num_pokemon = 5,
.unlock_condition = UNLOCK_SHOP_POST_GAME,
.price = 5000,
},
[MT_DEEPGREEN] = {
[FRIEND_AREA_MT_DEEPGREEN] = {
.num_pokemon = 12,
.unlock_condition = UNLOCK_SHOP_STORY,
.price = 130,
},
[MT_CLEFT] = {
[FRIEND_AREA_MT_CLEFT] = {
.num_pokemon = 9,
.unlock_condition = UNLOCK_SHOP_POST_GAME,
.price = 5000,
},
[MT_MOONVIEW] = {
[FRIEND_AREA_MT_MOONVIEW] = {
.num_pokemon = 6,
.unlock_condition = UNLOCK_WONDER_MAIL,
.price = 0,
},
[RAINBOW_PEAK] = {
[FRIEND_AREA_RAINBOW_PEAK] = {
.num_pokemon = 1,
.unlock_condition = UNLOCK_SHOP_POST_GAME,
.price = 6500,
},
[WILD_PLAINS] = {
[FRIEND_AREA_WILD_PLAINS] = {
.num_pokemon = 13,
.unlock_condition = UNLOCK_SHOP_STORY,
.price = 100,
},
[BEAU_PLAINS] = {
[FRIEND_AREA_BEAU_PLAINS] = {
.num_pokemon = 12,
.unlock_condition = UNLOCK_SHOP_STORY,
.price = 600,
},
[SKY_BLUE_PLAINS] = {
[FRIEND_AREA_SKY_BLUE_PLAINS] = {
.num_pokemon = 13,
.unlock_condition = UNLOCK_WONDER_MAIL,
.price = 0,
},
[SAFARI] = {
[FRIEND_AREA_SAFARI] = {
.num_pokemon = 15,
.unlock_condition = UNLOCK_SHOP_STORY,
.price = 700,
},
[SCORCHED_PLAINS] = {
[FRIEND_AREA_SCORCHED_PLAINS] = {
.num_pokemon = 10,
.unlock_condition = UNLOCK_SHOP_POST_GAME,
.price = 5000,
},
[SACRED_FIELD] = {
[FRIEND_AREA_SACRED_FIELD] = {
.num_pokemon = 3,
.unlock_condition = UNLOCK_SHOP_POST_GAME,
.price = 6500
},
[MIST_RISE_FOREST] = {
[FRIEND_AREA_MIST_RISE_FOREST] = {
.num_pokemon = 14,
.unlock_condition = UNLOCK_SHOP_STORY,
.price = 150
},
[FLYAWAY_FOREST] = {
[FRIEND_AREA_FLYAWAY_FOREST] = {
.num_pokemon = 12,
.unlock_condition = UNLOCK_SHOP_STORY,
.price = 550
},
[OVERGROWN_FOREST] = {
[FRIEND_AREA_OVERGROWN_FOREST] = {
.num_pokemon = 9,
.unlock_condition = UNLOCK_SHOP_STORY,
.price = 600
},
[ENERGETIC_FOREST] = {
[FRIEND_AREA_ENERGETIC_FOREST] = {
.num_pokemon = 15,
.unlock_condition = UNLOCK_SHOP_POST_GAME,
.price = 5000
},
[MUSHROOM_FOREST] = {
[FRIEND_AREA_MUSHROOM_FOREST] = {
.num_pokemon = 7,
.unlock_condition = UNLOCK_SHOP_STORY,
.price = 500
},
[HEALING_FOREST] = {
[FRIEND_AREA_HEALING_FOREST] = {
.num_pokemon = 1,
.unlock_condition = UNLOCK_LEGENDARY_REQUEST,
.price = 0
},
[TRANSFORM_FOREST] = {
[FRIEND_AREA_TRANSFORM_FOREST] = {
.num_pokemon = 6,
.unlock_condition = UNLOCK_SHOP_STORY,
.price = 500
},
[SECRETIVE_FOREST] = {
[FRIEND_AREA_SECRETIVE_FOREST] = {
.num_pokemon = 9,
.unlock_condition = UNLOCK_SHOP_POST_GAME,
.price = 6500
},
[RUB_A_DUB_RIVER] = {
[FRIEND_AREA_RUB_A_DUB_RIVER] = {
.num_pokemon = 7,
.unlock_condition = UNLOCK_SHOP_STORY,
.price = 500
},
[TADPOLE_POND] = {
[FRIEND_AREA_TADPOLE_POND] = {
.num_pokemon = 9,
.unlock_condition = UNLOCK_SHOP_STORY,
.price = 500
},
[TURTLESHELL_POND] = {
[FRIEND_AREA_TURTLESHELL_POND] = {
.num_pokemon = 10,
.unlock_condition = UNLOCK_SHOP_POST_GAME,
.price = 5500
},
[MYSTIC_LAKE] = {
[FRIEND_AREA_MYSTIC_LAKE] = {
.num_pokemon = 4,
.unlock_condition = UNLOCK_SHOP_POST_GAME,
.price = 2500
},
[WATERFALL_LAKE] = {
[FRIEND_AREA_WATERFALL_LAKE] = {
.num_pokemon = 4,
.unlock_condition = UNLOCK_SHOP_POST_GAME,
.price = 3500
},
[PEANUT_SWAMP] = {
[FRIEND_AREA_PEANUT_SWAMP] = {
.num_pokemon = 7,
.unlock_condition = UNLOCK_SHOP_STORY,
.price = 2500
},
[POISON_SWAMP] = {
[FRIEND_AREA_POISON_SWAMP] = {
.num_pokemon = 6,
.unlock_condition = UNLOCK_SHOP_POST_GAME,
.price = 8500
},
[ECHO_CAVE] = {
[FRIEND_AREA_ECHO_CAVE] = {
.num_pokemon = 11,
.unlock_condition = UNLOCK_SHOP_POST_GAME,
.price = 7500
},
[CRYPTIC_CAVE] = {
[FRIEND_AREA_CRYPTIC_CAVE] = {
.num_pokemon = 1,
.unlock_condition = UNLOCK_SHOP_POST_GAME,
.price = 6500
},
[DRAGON_CAVE] = {
[FRIEND_AREA_DRAGON_CAVE] = {
.num_pokemon = 3,
.unlock_condition = UNLOCK_WONDER_MAIL,
.price = 0
},
[BOULDER_CAVE] = {
[FRIEND_AREA_BOULDER_CAVE] = {
.num_pokemon = 4,
.unlock_condition = UNLOCK_WONDER_MAIL,
.price = 0
},
[JUNGLE] = {
[FRIEND_AREA_JUNGLE] = {
.num_pokemon = 13,
.unlock_condition = UNLOCK_SHOP_STORY,
.price = 800
},
[DECREPIT_LAB] = {
[FRIEND_AREA_DECREPIT_LAB] = {
.num_pokemon = 7,
.unlock_condition = UNLOCK_SHOP_STORY,
.price = 1000
},
[MT_DISCIPLINE] = {
[FRIEND_AREA_MT_DISCIPLINE] = {
.num_pokemon = 11,
.unlock_condition = UNLOCK_SHOP_STORY,
.price = 1200
},
[THUNDER_MEADOW] = {
[FRIEND_AREA_THUNDER_MEADOW] = {
.num_pokemon = 11,
.unlock_condition = UNLOCK_SHOP_STORY,
.price = 1000
},
[POWER_PLANT] = {
[FRIEND_AREA_POWER_PLANT] = {
.num_pokemon = 6,
.unlock_condition = UNLOCK_SHOP_STORY,
.price = 600
},
[CRATER] = {
[FRIEND_AREA_CRATER] = {
.num_pokemon = 7,
.unlock_condition = UNLOCK_SHOP_POST_GAME,
.price = 7500
},
[FURNACE_DESERT] = {
[FRIEND_AREA_FURNACE_DESERT] = {
.num_pokemon = 7,
.unlock_condition = UNLOCK_SHOP_POST_GAME,
.price = 8500
},
[AGED_CHAMBER_AN] = {
[FRIEND_AREA_AGED_CHAMBER_AN] = {
.num_pokemon = 14,
.unlock_condition = UNLOCK_SHOP_POST_GAME,
.price = 5500
},
[AGED_CHAMBER_O_EXCLAIM] = {
[FRIEND_AREA_AGED_CHAMBER_O_EXCLAIM] = {
.num_pokemon = 14,
.unlock_condition = UNLOCK_SHOP_POST_GAME,
.price = 5500
},
[ANCIENT_RELIC] = {
[FRIEND_AREA_ANCIENT_RELIC] = {
.num_pokemon = 6,
.unlock_condition = UNLOCK_SHOP_POST_GAME,
.price = 8000
},
[DARKNESS_RIDGE] = {
[FRIEND_AREA_DARKNESS_RIDGE] = {
.num_pokemon = 13,
.unlock_condition = UNLOCK_LEGENDARY_REQUEST,
.price = 0
},
[FRIGID_CAVERN] = {
[FRIEND_AREA_FRIGID_CAVERN] = {
.num_pokemon = 7,
.unlock_condition = UNLOCK_SHOP_POST_GAME,
.price = 9000
},
[ICE_FLOE_BEACH] = {
[FRIEND_AREA_ICE_FLOE_BEACH] = {
.num_pokemon = 5,
.unlock_condition = UNLOCK_SHOP_POST_GAME,
.price = 9500
},
[VOLCANIC_PIT] = {
[FRIEND_AREA_VOLCANIC_PIT] = {
.num_pokemon = 1,
.unlock_condition = UNLOCK_LEGENDARY_REQUEST,
.price = 0
},
[STRATOS_LOOKOUT] = {
[FRIEND_AREA_STRATOS_LOOKOUT] = {
.num_pokemon = 1,
.unlock_condition = UNLOCK_LEGENDARY_REQUEST,
.price = 0
},
[RAVAGED_FIELD] = {
[FRIEND_AREA_RAVAGED_FIELD] = {
.num_pokemon = 5,
.unlock_condition = UNLOCK_SHOP_STORY,
.price = 1000
},
[MAGNETIC_QUARRY] = {
[FRIEND_AREA_MAGNETIC_QUARRY] = {
.num_pokemon = 3,
.unlock_condition = UNLOCK_SHOP_STORY,
.price = 1000
},
[LEGENDARY_ISLAND] = {
[FRIEND_AREA_LEGENDARY_ISLAND] = {
.num_pokemon = 3,
.unlock_condition = UNLOCK_LEGENDARY_REQUEST,
.price = 7500
},
[SOUTHERN_ISLAND] = {
[FRIEND_AREA_SOUTHERN_ISLAND] = {
.num_pokemon = 2,
.unlock_condition = UNLOCK_SHOP_POST_GAME,
.price = 9500
},
[ENCLOSED_ISLAND] = {
[FRIEND_AREA_ENCLOSED_ISLAND] = {
.num_pokemon = 1,
.unlock_condition = UNLOCK_LEGENDARY_REQUEST,
.price = 0
},
[FINAL_ISLAND] = {
[FRIEND_AREA_FINAL_ISLAND] = {
.num_pokemon = 1,
.unlock_condition = UNLOCK_SHOP_POST_GAME,
.price = 8500

View File

@ -292,14 +292,14 @@ static inline bool8 IsUnkDungeon(u8 joinedDungeon)
void sub_8068BDC(bool8 a0)
{
bool8 spArr[NUM_FRIEND_AREAS];
bool8 spArr[FRIEND_AREA_COUNT];
Pokemon *monPointers[21];
Pokemon mon1Structs[MAX_TEAM_MEMBERS];
u16 arr2[18];
FriendAreaCapacity areaCapacity;
s32 i, j, id;
for (i = 0; i < NUM_FRIEND_AREAS; i++) {
for (i = 0; i < FRIEND_AREA_COUNT; i++) {
spArr[i] = FALSE;
}
@ -337,7 +337,7 @@ void sub_8068BDC(bool8 a0)
}
}
for (i = 0; i < NUM_FRIEND_AREAS; i++) {
for (i = 0; i < FRIEND_AREA_COUNT; i++) {
u8 friendAreaId = i;
if (!spArr[friendAreaId])
continue;

View File

@ -570,7 +570,7 @@ void sub_8001D88(void)
}
}
}
if ((ScriptVarScenarioEqual(SCENARIO_SUB1,0x1f,0)) && (GetFriendAreaStatus(SKY_BLUE_PLAINS))) {
if ((ScriptVarScenarioEqual(SCENARIO_SUB1,0x1f,0)) && (GetFriendAreaStatus(FRIEND_AREA_SKY_BLUE_PLAINS))) {
ScenarioCalc(SCENARIO_SUB1,0x1f,1);
sub_809733C(RESCUE_DUNGEON_HOWLING_FOREST, TRUE);
}
@ -579,23 +579,23 @@ void sub_8001D88(void)
if (FindItemInInventory(ITEM_HM_DIVE) != -1 || gTeamInventoryRef->teamStorage[ITEM_HM_DIVE] != 0 || ScriptVarScenarioAfter(SCENARIO_SUB2,0x21,3)) {
sub_80973A8(RESCUE_DUNGEON_SOLAR_CAVE, TRUE);
}
if (GetFriendAreaStatus(FURNACE_DESERT) != 0) {
if (GetFriendAreaStatus(FRIEND_AREA_FURNACE_DESERT) != 0) {
sub_80973A8(RESCUE_DUNGEON_DESERT_REGION, TRUE);
}
if (GetFriendAreaStatus(BOULDER_CAVE)) {
if (GetFriendAreaStatus(FRIEND_AREA_BOULDER_CAVE)) {
sub_80973A8(RESCUE_DUNGEON_SOUTHERN_CAVERN, TRUE);
}
if (GetFriendAreaStatus(DRAGON_CAVE)) {
if (GetFriendAreaStatus(FRIEND_AREA_DRAGON_CAVE)) {
sub_80973A8(RESCUE_DUNGEON_WYVERN_HILL, TRUE);
}
if (GetFriendAreaStatus(SECRETIVE_FOREST)) {
if (GetFriendAreaStatus(FRIEND_AREA_SECRETIVE_FOREST)) {
sub_80973A8(RESCUE_DUNGEON_DARKNIGHT_RELIC, TRUE);
}
if (GetFriendAreaStatus(SERENE_SEA)) {
if (GetFriendAreaStatus(FRIEND_AREA_SERENE_SEA)) {
sub_80973A8(RESCUE_DUNGEON_GRAND_SEA, TRUE);
sub_80973A8(RESCUE_DUNGEON_FAR_OFF_SEA, TRUE);
}
if (GetFriendAreaStatus(AGED_CHAMBER_AN) && GetFriendAreaStatus(AGED_CHAMBER_O_EXCLAIM)) {
if (GetFriendAreaStatus(FRIEND_AREA_AGED_CHAMBER_AN) && GetFriendAreaStatus(FRIEND_AREA_AGED_CHAMBER_O_EXCLAIM)) {
sub_80973A8(RESCUE_DUNGEON_UNOWN_RELIC, TRUE);
}
if (ScriptVarScenarioEqual(SCENARIO_SUB2,0,0)) {
@ -605,7 +605,7 @@ void sub_8001D88(void)
if (ScriptVarScenarioEqual(SCENARIO_SUB4,0,0)) {
ScenarioCalc(SCENARIO_SUB4,0x26,1);
}
if ((ScriptVarScenarioEqual(SCENARIO_SUB6,0,0)) && (GetFriendAreaStatus(SOUTHERN_ISLAND))) {
if ((ScriptVarScenarioEqual(SCENARIO_SUB6,0,0)) && (GetFriendAreaStatus(FRIEND_AREA_SOUTHERN_ISLAND))) {
ScenarioCalc(SCENARIO_SUB6,0x2e,1);
}
}
@ -614,13 +614,13 @@ void sub_8001D88(void)
ScenarioCalc(SCENARIO_SUB2,0x22,1);
}
if ((ScriptVarScenarioEqual(SCENARIO_SUB8,0,0) && (ScriptVarScenarioAfter(SCENARIO_SUB2,0x21,3))) &&
(GetFriendAreaStatus(SKY_BLUE_PLAINS))) {
(GetFriendAreaStatus(FRIEND_AREA_SKY_BLUE_PLAINS))) {
ScenarioCalc(SCENARIO_SUB8,0x33,1);
}
if (GetFriendAreaStatus(SKY_BLUE_PLAINS)) {
if (GetFriendAreaStatus(FRIEND_AREA_SKY_BLUE_PLAINS)) {
sub_80973A8(RESCUE_DUNGEON_JOYOUS_TOWER, TRUE);
}
if (GetFriendAreaStatus(SKY_BLUE_PLAINS)) {
if (GetFriendAreaStatus(FRIEND_AREA_SKY_BLUE_PLAINS)) {
sub_80973A8(RESCUE_DUNGEON_PURITY_FOREST, TRUE);
}
}

View File

@ -10,7 +10,7 @@
#include "strings.h"
#include "dungeon_data.h"
EWRAM_DATA static bool8 sBoughtFriendAreas[NUM_FRIEND_AREAS] = {0};
EWRAM_DATA static bool8 sBoughtFriendAreas[FRIEND_AREA_COUNT] = {0};
EWRAM_INIT bool8 *gFriendAreas = {NULL};
@ -28,7 +28,7 @@ void InitializeFriendAreas(void)
{
s32 i;
for (i = 0; i < NUM_FRIEND_AREAS; i++)
for (i = 0; i < FRIEND_AREA_COUNT; i++)
gFriendAreas[i] = FALSE;
}
@ -37,7 +37,7 @@ u8 sub_80923D4(s32 target)
s32 i;
s32 sum = 0;
for (i = 0; i < NUM_FRIEND_AREAS; i++) {
for (i = 0; i < FRIEND_AREA_COUNT; i++) {
sum += gFriendAreaSettings[i].num_pokemon;
if (sum > target)
return i;
@ -142,7 +142,7 @@ bool8 HasAllFriendAreas(void)
{
s32 i;
for (i = 1; i < NUM_FRIEND_AREAS; i++) {
for (i = 1; i < FRIEND_AREA_COUNT; i++) {
if (!gFriendAreas[i])
return FALSE;
}
@ -228,7 +228,7 @@ u32 SaveFriendAreas(u8 *r0, u32 size)
InitBitWriter(&unk, r0, size);
for (i = 0; i < NUM_FRIEND_AREAS; i++) {
for (i = 0; i < FRIEND_AREA_COUNT; i++) {
if (gFriendAreas[i] != 0)
temp = -1;
else
@ -248,7 +248,7 @@ u32 ReadSavedFriendAreas(u8 *r0, s32 size)
InitBitReader(&unk, r0, size);
for (i = 0; i < NUM_FRIEND_AREAS; i++) {
for (i = 0; i < FRIEND_AREA_COUNT; i++) {
ReadBits(&unk, &temp, 1);
// It's setting whether we have the friend area or not
if (temp & 1)

View File

@ -334,7 +334,7 @@ static void InitMapLocations(u8 startingFriendAreaId)
bool8 IsFriendAreaShownOnMap(u8 friendAreaId)
{
if (friendAreaId >= NUM_FRIEND_AREAS) return FALSE;
if (friendAreaId >= FRIEND_AREA_COUNT) return FALSE;
if (friendAreaId == 0) return TRUE;
if (gFriendAreas[friendAreaId]) return TRUE;

View File

@ -3477,8 +3477,8 @@ static s32 sub_80A14E8(Action *action, u8 idx, u32 r2, s32 r3)
}
return 0;
case 0x17:
UnlockFriendArea(WILD_PLAINS);
UnlockFriendArea(MIST_RISE_FOREST);
UnlockFriendArea(FRIEND_AREA_WILD_PLAINS);
UnlockFriendArea(FRIEND_AREA_MIST_RISE_FOREST);
return 0;
case 0x18:
sub_80A8F50(sPokeNameBuffer, 0x3C, POKEMON_NAME_LENGTH);

View File

@ -576,7 +576,7 @@ static u32 RunGameMode_Async(u32 a0)
friendAreasSetup.unk5 = CheckQuest(QUEST_CAN_DEPOSIT_PARTNER);
ShowFriendAreasMap_Async(&friendAreasSetup);
MemoryFree(friendAreasSetup.friendAreasMapPtr);
if (friendAreasSetup.chosenAreaId != NUM_FRIEND_AREAS) {
if (friendAreasSetup.chosenAreaId != FRIEND_AREA_COUNT) {
s32 mapId;
u32 areaId = friendAreasSetup.chosenAreaId;
if (areaId != FRIEND_AREA_NONE) {

View File

@ -935,126 +935,126 @@ const u8 *const gUnknown_8113990 = _("Sp. Atk.{UNK_MACRO_3E M3E_42}{color RED}{V
const u8 *const gUnknown_81139B4 = _("{UNK_MACRO_3E M3E_80}Sp. Def.{UNK_MACRO_3E M3E_128}{color RED}{VALUE_1}{reset} ");
const u8 *const gUnknown_81139B8 = _("None");
const u8 *const gText_ItemAlignedX = _("Item:{UNK_MACRO_3E M3E_42}{MOVE_ITEM_0} ");
const u8 *const gFriendAreaNames[NUM_FRIEND_AREAS] = {
[FRIEND_AREA_NONE] = _("None"),
[BOUNTIFUL_SEA] = _("Bountiful Sea"),
[TREASURE_SEA] = _("Treasure Sea"),
[SERENE_SEA] = _("Serene Sea"),
[DEEP_SEA_FLOOR] = _("Deep-Sea Floor"),
[DEEP_SEA_CURRENT] = _("Deep-Sea Current"),
[SEAFLOOR_CAVE] = _("Seafloor Cave"),
[SHALLOW_BEACH] = _("Shallow Beach"),
[MT_DEEPGREEN] = _("Mt. Deepgreen"),
[MT_CLEFT] = _("Mt. Cleft"),
[MT_MOONVIEW] = _("Mt. Moonview"),
[RAINBOW_PEAK] = _("Rainbow Peak"),
[WILD_PLAINS] = _("Wild Plains"),
[BEAU_PLAINS] = _("Beau Plains"),
[SKY_BLUE_PLAINS] = _("Sky Blue Plains"),
[SAFARI] = _("Safari"),
[SCORCHED_PLAINS] = _("Scorched Plains"),
[SACRED_FIELD] = _("Sacred Field"),
[MIST_RISE_FOREST] = _("Mist-Rise Forest"),
[FLYAWAY_FOREST] = _("Flyaway Forest"),
[OVERGROWN_FOREST] = _("Overgrown Forest"),
[ENERGETIC_FOREST] = _("Energetic Forest"),
[MUSHROOM_FOREST] = _("Mushroom Forest"),
[HEALING_FOREST] = _("Healing Forest"),
[TRANSFORM_FOREST] = _("Transform Forest"),
[SECRETIVE_FOREST] = _("Secretive Forest"),
[RUB_A_DUB_RIVER] = _("Rub-a-Dub River"),
[TADPOLE_POND] = _("Tadpole Pond"),
[TURTLESHELL_POND] = _("Turtleshell Pond"),
[MYSTIC_LAKE] = _("Mystic Lake"),
[WATERFALL_LAKE] = _("Waterfall Lake"),
[PEANUT_SWAMP] = _("Peanut Swamp"),
[POISON_SWAMP] = _("Poison Swamp"),
[ECHO_CAVE] = _("Echo Cave"),
[CRYPTIC_CAVE] = _("Cryptic Cave"),
[DRAGON_CAVE] = _("Dragon Cave"),
[BOULDER_CAVE] = _("Boulder Cave"),
[JUNGLE] = _("Jungle"),
[DECREPIT_LAB] = _("Decrepit Lab"),
[MT_DISCIPLINE] = _("Mt. Discipline"),
[THUNDER_MEADOW] = _("Thunder Meadow"),
[POWER_PLANT] = _("Power Plant"),
[CRATER] = _("Crater"),
[FURNACE_DESERT] = _("Furnace Desert"),
[AGED_CHAMBER_AN] = _("Aged Chamber AN"),
[AGED_CHAMBER_O_EXCLAIM] = _("Aged Chamber O?"),
[ANCIENT_RELIC] = _("Ancient Relic"),
[DARKNESS_RIDGE] = _("Darkness Ridge"),
[FRIGID_CAVERN] = _("Frigid Cavern"),
[ICE_FLOE_BEACH] = _("Ice Floe Beach"),
[VOLCANIC_PIT] = _("Volcanic Pit"),
[STRATOS_LOOKOUT] = _("Stratos Lookout"),
[RAVAGED_FIELD] = _("Ravaged Field"),
[MAGNETIC_QUARRY] = _("Magnetic Quarry"),
[LEGENDARY_ISLAND] = _("Legendary Island"),
[SOUTHERN_ISLAND] = _("Southern Island"),
[ENCLOSED_ISLAND] = _("Enclosed Island"),
[FINAL_ISLAND] = _("Final Island"),
const u8 *const gFriendAreaNames[FRIEND_AREA_COUNT] = {
[FRIEND_AREA_NONE] = _("None"),
[FRIEND_AREA_BOUNTIFUL_SEA] = _("Bountiful Sea"),
[FRIEND_AREA_TREASURE_SEA] = _("Treasure Sea"),
[FRIEND_AREA_SERENE_SEA] = _("Serene Sea"),
[FRIEND_AREA_DEEP_SEA_FLOOR] = _("Deep-Sea Floor"),
[FRIEND_AREA_DEEP_SEA_CURRENT] = _("Deep-Sea Current"),
[FRIEND_AREA_SEAFLOOR_CAVE] = _("Seafloor Cave"),
[FRIEND_AREA_SHALLOW_BEACH] = _("Shallow Beach"),
[FRIEND_AREA_MT_DEEPGREEN] = _("Mt. Deepgreen"),
[FRIEND_AREA_MT_CLEFT] = _("Mt. Cleft"),
[FRIEND_AREA_MT_MOONVIEW] = _("Mt. Moonview"),
[FRIEND_AREA_RAINBOW_PEAK] = _("Rainbow Peak"),
[FRIEND_AREA_WILD_PLAINS] = _("Wild Plains"),
[FRIEND_AREA_BEAU_PLAINS] = _("Beau Plains"),
[FRIEND_AREA_SKY_BLUE_PLAINS] = _("Sky Blue Plains"),
[FRIEND_AREA_SAFARI] = _("Safari"),
[FRIEND_AREA_SCORCHED_PLAINS] = _("Scorched Plains"),
[FRIEND_AREA_SACRED_FIELD] = _("Sacred Field"),
[FRIEND_AREA_MIST_RISE_FOREST] = _("Mist-Rise Forest"),
[FRIEND_AREA_FLYAWAY_FOREST] = _("Flyaway Forest"),
[FRIEND_AREA_OVERGROWN_FOREST] = _("Overgrown Forest"),
[FRIEND_AREA_ENERGETIC_FOREST] = _("Energetic Forest"),
[FRIEND_AREA_MUSHROOM_FOREST] = _("Mushroom Forest"),
[FRIEND_AREA_HEALING_FOREST] = _("Healing Forest"),
[FRIEND_AREA_TRANSFORM_FOREST] = _("Transform Forest"),
[FRIEND_AREA_SECRETIVE_FOREST] = _("Secretive Forest"),
[FRIEND_AREA_RUB_A_DUB_RIVER] = _("Rub-a-Dub River"),
[FRIEND_AREA_TADPOLE_POND] = _("Tadpole Pond"),
[FRIEND_AREA_TURTLESHELL_POND] = _("Turtleshell Pond"),
[FRIEND_AREA_MYSTIC_LAKE] = _("Mystic Lake"),
[FRIEND_AREA_WATERFALL_LAKE] = _("Waterfall Lake"),
[FRIEND_AREA_PEANUT_SWAMP] = _("Peanut Swamp"),
[FRIEND_AREA_POISON_SWAMP] = _("Poison Swamp"),
[FRIEND_AREA_ECHO_CAVE] = _("Echo Cave"),
[FRIEND_AREA_CRYPTIC_CAVE] = _("Cryptic Cave"),
[FRIEND_AREA_DRAGON_CAVE] = _("Dragon Cave"),
[FRIEND_AREA_BOULDER_CAVE] = _("Boulder Cave"),
[FRIEND_AREA_JUNGLE] = _("Jungle"),
[FRIEND_AREA_DECREPIT_LAB] = _("Decrepit Lab"),
[FRIEND_AREA_MT_DISCIPLINE] = _("Mt. Discipline"),
[FRIEND_AREA_THUNDER_MEADOW] = _("Thunder Meadow"),
[FRIEND_AREA_POWER_PLANT] = _("Power Plant"),
[FRIEND_AREA_CRATER] = _("Crater"),
[FRIEND_AREA_FURNACE_DESERT] = _("Furnace Desert"),
[FRIEND_AREA_AGED_CHAMBER_AN] = _("Aged Chamber AN"),
[FRIEND_AREA_AGED_CHAMBER_O_EXCLAIM] = _("Aged Chamber O?"),
[FRIEND_AREA_ANCIENT_RELIC] = _("Ancient Relic"),
[FRIEND_AREA_DARKNESS_RIDGE] = _("Darkness Ridge"),
[FRIEND_AREA_FRIGID_CAVERN] = _("Frigid Cavern"),
[FRIEND_AREA_ICE_FLOE_BEACH] = _("Ice Floe Beach"),
[FRIEND_AREA_VOLCANIC_PIT] = _("Volcanic Pit"),
[FRIEND_AREA_STRATOS_LOOKOUT] = _("Stratos Lookout"),
[FRIEND_AREA_RAVAGED_FIELD] = _("Ravaged Field"),
[FRIEND_AREA_MAGNETIC_QUARRY] = _("Magnetic Quarry"),
[FRIEND_AREA_LEGENDARY_ISLAND] = _("Legendary Island"),
[FRIEND_AREA_SOUTHERN_ISLAND] = _("Southern Island"),
[FRIEND_AREA_ENCLOSED_ISLAND] = _("Enclosed Island"),
[FRIEND_AREA_FINAL_ISLAND] = _("Final Island"),
};
const u8 *const gFriendAreaDescriptions[NUM_FRIEND_AREAS] = {
const u8 *const gFriendAreaDescriptions[FRIEND_AREA_COUNT] = {
[FRIEND_AREA_NONE] = _("None"),
[BOUNTIFUL_SEA] = _("A sea where warm and cold currents\ncome together. It is bursting with\nmarine life and is also rich in minerals."),
[TREASURE_SEA] = _("It is said that on its floor lie treasures of\npirate ships sunken long ago."),
[SERENE_SEA] = _("An infinitely calm sea without waves.\nLarge Pokémon live luxuriantly here."),
[DEEP_SEA_FLOOR] = _("It is said there is an exquisitely beautiful\nspot at the bottom of this deep sea.\nThe water is blue and eternally clear."),
[DEEP_SEA_CURRENT] = _("Legend says this deep, dark place, where\na current flows, is home to the\nguardian of the sea."),
[SEAFLOOR_CAVE] = _("It is said that a mythological Pokémon,\nspoken of through the ages, lives inside\nthis unexplored cavern."),
[SHALLOW_BEACH] = _("A white, sandy beach with a beautiful sea.\nThe weather is temperate and perfect for\nbeachgoers, especially near water's edge."),
[MT_DEEPGREEN] = _("A mountainous area with lush plant life\nand deliciously fresh air. Pokémon are\nhappy to live in this bountiful area."),
[MT_CLEFT] = _("This area, deep among the craggy\nmountains, is a gathering spot for\nphysically tough Pokémon."),
[MT_MOONVIEW] = _("An area where the moon looks its most\nbeautiful, especially when it is full.\nThe very sight brings serenity."),
[RAINBOW_PEAK] = _("This legendary place atop a forbidding\nmountain towers above the clouds.\nA fabulous rainbow can be seen here."),
[WILD_PLAINS] = _("A wild and lush savanna full of life.\nThe air is clean and swept along by a\npleasant breeze."),
[BEAU_PLAINS] = _("A lovely area with a fantastic view.\nFlowers bloom in profusion around fresh\nsprings. Grass-type Pokémon will adore it!"),
[SKY_BLUE_PLAINS] = _("A grassy plain under a vivid blue sky.\nMany Pokémon gather here. The large tree\nin the center is the area's symbol."),
[SAFARI] = _("An expansive savanna that spreads to\nthe south. Pokémon powerfully race\nthrough blazing heat."),
[SCORCHED_PLAINS] = _("The tremendously hot ground of this\ngrassy field of fire spouts flames. It is\na treasure trove of Fire-type Pokémon."),
[SACRED_FIELD] = _("There is hallowed ground somewhere\nwithin these plains. Three legendary\nPokémon are said to live here."),
[MIST_RISE_FOREST] = _("Mist-Rise Forest, deep inside the Eastern\nForest, looks ideal for many Bug-type\nPokémon."),
[FLYAWAY_FOREST] = _("This thick forest, dominated by a gigantic\ntree, is favored mostly by Flying-type\nPokémon."),
[OVERGROWN_FOREST] = _("This densely overgrown grotto of trees\nattracts Pokémon that love such\na lush, congested setting."),
[ENERGETIC_FOREST] = _("A vibrant area where elemental energy--\nthe life force for all things--rises from\nthe earth. Unique Pokémon are found here."),
[MUSHROOM_FOREST] = _("A dank forest sprouting with\nmushrooms. It attracts Pokémon that\nlike humidity."),
[HEALING_FOREST] = _("An ethereally beautiful forest.\nThe guardian of forests is said to appear\nhere."),
[TRANSFORM_FOREST] = _("A boulder, shining with different colors,\nlies in the center of this extraordinary,\nslowly transforming forest."),
[SECRETIVE_FOREST] = _("Covered in dense undergrowth, no light\npenetrates this forest. In its permanent\ndarkness lurk Bug-type Pokémon."),
[RUB_A_DUB_RIVER] = _("Pokémon that love to frolic in water\ngather at this beautiful river where\npure water flows."),
[TADPOLE_POND] = _("Broad leaves float on the surface of this\npond. It is the perfect home for tadpole\nPokémon. Water-type Pokémon like it, too."),
[TURTLESHELL_POND] = _("A small pond with a turtle-shell pattern.\nPokémon that gather here love to play in\nthe water and rest on the island."),
[MYSTIC_LAKE] = _("A mystical lake north of Pokémon Square.\nRare Pokémon--even one called a mirage--\nare said to live here."),
[WATERFALL_LAKE] = _("A lake with a towering waterfall.\nThe fall's spray refreshes and invigorates!"),
[PEANUT_SWAMP] = _("A peanut-shaped swamp with green, soupy\nwater. It is home to Pokémon categories\nlike Mud Fish, Whiskers, and Water Fish."),
[POISON_SWAMP] = _("A horrid swamp that spews toxic gases.\nIt is literally a utopia for Poison-type\nPokémon."),
[ECHO_CAVE] = _("Pokémon enjoy the echoey quality of this\nsmall limestone cavern. Many Pokémon\nthat use ultrasonic waves live here."),
[CRYPTIC_CAVE] = _("This very mysterious spot, said to be deep\ninside a dungeon, is the perfect place to\nstore energy without expending any effort."),
[DRAGON_CAVE] = _("Cracks between boulders are the only\nwindows to the outside in this cavern.\nThe Pokémon here dream of flying."),
[BOULDER_CAVE] = _("A cave surrounded by craggy boulders.\nPokémon that are capable of digging\nthrough even sheets of rock live here."),
[JUNGLE] = _("Deep in this overgrown tropical area\nlive many Grass-type Pokémon.\nThe swampy ground is rich in nutrients."),
[DECREPIT_LAB] = _("An abandoned lab built by humans long\nago. Left to fall into disrepair, it is\nnow home to Pokémon."),
[MT_DISCIPLINE] = _("A forbidding mountainous area where\nFighting-type Pokémon gather to\nhone their skills."),
[THUNDER_MEADOW] = _("A meadow covered in thunderclouds.\nBesides Electric-type Pokémon, a startling\nvariety of other Pokémon live here."),
[POWER_PLANT] = _("Machinery still runs in this long-deserted\npower plant. Electric-type Pokémon like\nto gather here."),
[CRATER] = _("The sight of this crater spouting\nspectacular plumes of lava greatly\nsatisfies fire-loving Pokémon."),
[FURNACE_DESERT] = _("The sun bears down ruthlessly on the\nburning-hot sand. Desert-dwelling Pokémon\nthrive in this area."),
[AGED_CHAMBER_AN] = _("This chamber lies deep inside an ancient\nruin. It is said that runes on stone tablets\nmove about in this enigmatic place."),
[AGED_CHAMBER_O_EXCLAIM] = _("One of two chambers in an ancient ruin.\nOne is named “AN” and\nthe other “O?”. Odd..."),
[ANCIENT_RELIC] = _("The remains of a long-forgotten\ncivilization. Prehistoric Pokémon are said\nto have lived here in ancient times."),
[DARKNESS_RIDGE] = _("This mountainous area may be inhabited by\nmischievous Pokémon who can suddenly\nturn the area dark to cause trouble."),
[FRIGID_CAVERN] = _("A cavern where ice shattered by wind\nmakes huge drifts. There are Pokémon\nthat thrive in this bitterly cold place."),
[ICE_FLOE_BEACH] = _("A frigid sea where ice sheets drift about\nimpressively. Even in the subzero waters,\nsome Pokémon swim about."),
[VOLCANIC_PIT] = _("It is said that in the bowels of the earth,\nwhere magma cascades in fiery streams,\nlives a Pokémon from mythical times."),
[STRATOS_LOOKOUT] = _("An area in the ozone layer far above\nthe clouds. It is home to a legendary\nPokémon of the stratosphere."),
[RAVAGED_FIELD] = _("A harsh and forbidding place of utter\ndesolation. Even here, there exist\nhardy Pokémon."),
[MAGNETIC_QUARRY] = _("The powerful magnetic forces imbued in\nthis quarry bind the nerves of certain\nPokémon, creating psychic power."),
[LEGENDARY_ISLAND] = _("An intriguing island with a complex\nweather pattern. With the power of fire,\nlightning, and ice, it awaits its masters."),
[SOUTHERN_ISLAND] = _("A gorgeous island in the southern seas.\nIt is said to be visited often by Eon\nPokémon."),
[ENCLOSED_ISLAND] = _("An eerie light encloses this rocky island,\nkeeping out the sea. It is as if the\nisland is in another dimension."),
[FINAL_ISLAND] = _("This legendary island may not even exist.\nIt hovers on the horizon and disappears\nsuddenly as if it were a mirage."),
[FRIEND_AREA_BOUNTIFUL_SEA] = _("A sea where warm and cold currents\ncome together. It is bursting with\nmarine life and is also rich in minerals."),
[FRIEND_AREA_TREASURE_SEA] = _("It is said that on its floor lie treasures of\npirate ships sunken long ago."),
[FRIEND_AREA_SERENE_SEA] = _("An infinitely calm sea without waves.\nLarge Pokémon live luxuriantly here."),
[FRIEND_AREA_DEEP_SEA_FLOOR] = _("It is said there is an exquisitely beautiful\nspot at the bottom of this deep sea.\nThe water is blue and eternally clear."),
[FRIEND_AREA_DEEP_SEA_CURRENT] = _("Legend says this deep, dark place, where\na current flows, is home to the\nguardian of the sea."),
[FRIEND_AREA_SEAFLOOR_CAVE] = _("It is said that a mythological Pokémon,\nspoken of through the ages, lives inside\nthis unexplored cavern."),
[FRIEND_AREA_SHALLOW_BEACH] = _("A white, sandy beach with a beautiful sea.\nThe weather is temperate and perfect for\nbeachgoers, especially near water's edge."),
[FRIEND_AREA_MT_DEEPGREEN] = _("A mountainous area with lush plant life\nand deliciously fresh air. Pokémon are\nhappy to live in this bountiful area."),
[FRIEND_AREA_MT_CLEFT] = _("This area, deep among the craggy\nmountains, is a gathering spot for\nphysically tough Pokémon."),
[FRIEND_AREA_MT_MOONVIEW] = _("An area where the moon looks its most\nbeautiful, especially when it is full.\nThe very sight brings serenity."),
[FRIEND_AREA_RAINBOW_PEAK] = _("This legendary place atop a forbidding\nmountain towers above the clouds.\nA fabulous rainbow can be seen here."),
[FRIEND_AREA_WILD_PLAINS] = _("A wild and lush savanna full of life.\nThe air is clean and swept along by a\npleasant breeze."),
[FRIEND_AREA_BEAU_PLAINS] = _("A lovely area with a fantastic view.\nFlowers bloom in profusion around fresh\nsprings. Grass-type Pokémon will adore it!"),
[FRIEND_AREA_SKY_BLUE_PLAINS] = _("A grassy plain under a vivid blue sky.\nMany Pokémon gather here. The large tree\nin the center is the area's symbol."),
[FRIEND_AREA_SAFARI] = _("An expansive savanna that spreads to\nthe south. Pokémon powerfully race\nthrough blazing heat."),
[FRIEND_AREA_SCORCHED_PLAINS] = _("The tremendously hot ground of this\ngrassy field of fire spouts flames. It is\na treasure trove of Fire-type Pokémon."),
[FRIEND_AREA_SACRED_FIELD] = _("There is hallowed ground somewhere\nwithin these plains. Three legendary\nPokémon are said to live here."),
[FRIEND_AREA_MIST_RISE_FOREST] = _("Mist-Rise Forest, deep inside the Eastern\nForest, looks ideal for many Bug-type\nPokémon."),
[FRIEND_AREA_FLYAWAY_FOREST] = _("This thick forest, dominated by a gigantic\ntree, is favored mostly by Flying-type\nPokémon."),
[FRIEND_AREA_OVERGROWN_FOREST] = _("This densely overgrown grotto of trees\nattracts Pokémon that love such\na lush, congested setting."),
[FRIEND_AREA_ENERGETIC_FOREST] = _("A vibrant area where elemental energy--\nthe life force for all things--rises from\nthe earth. Unique Pokémon are found here."),
[FRIEND_AREA_MUSHROOM_FOREST] = _("A dank forest sprouting with\nmushrooms. It attracts Pokémon that\nlike humidity."),
[FRIEND_AREA_HEALING_FOREST] = _("An ethereally beautiful forest.\nThe guardian of forests is said to appear\nhere."),
[FRIEND_AREA_TRANSFORM_FOREST] = _("A boulder, shining with different colors,\nlies in the center of this extraordinary,\nslowly transforming forest."),
[FRIEND_AREA_SECRETIVE_FOREST] = _("Covered in dense undergrowth, no light\npenetrates this forest. In its permanent\ndarkness lurk Bug-type Pokémon."),
[FRIEND_AREA_RUB_A_DUB_RIVER] = _("Pokémon that love to frolic in water\ngather at this beautiful river where\npure water flows."),
[FRIEND_AREA_TADPOLE_POND] = _("Broad leaves float on the surface of this\npond. It is the perfect home for tadpole\nPokémon. Water-type Pokémon like it, too."),
[FRIEND_AREA_TURTLESHELL_POND] = _("A small pond with a turtle-shell pattern.\nPokémon that gather here love to play in\nthe water and rest on the island."),
[FRIEND_AREA_MYSTIC_LAKE] = _("A mystical lake north of Pokémon Square.\nRare Pokémon--even one called a mirage--\nare said to live here."),
[FRIEND_AREA_WATERFALL_LAKE] = _("A lake with a towering waterfall.\nThe fall's spray refreshes and invigorates!"),
[FRIEND_AREA_PEANUT_SWAMP] = _("A peanut-shaped swamp with green, soupy\nwater. It is home to Pokémon categories\nlike Mud Fish, Whiskers, and Water Fish."),
[FRIEND_AREA_POISON_SWAMP] = _("A horrid swamp that spews toxic gases.\nIt is literally a utopia for Poison-type\nPokémon."),
[FRIEND_AREA_ECHO_CAVE] = _("Pokémon enjoy the echoey quality of this\nsmall limestone cavern. Many Pokémon\nthat use ultrasonic waves live here."),
[FRIEND_AREA_CRYPTIC_CAVE] = _("This very mysterious spot, said to be deep\ninside a dungeon, is the perfect place to\nstore energy without expending any effort."),
[FRIEND_AREA_DRAGON_CAVE] = _("Cracks between boulders are the only\nwindows to the outside in this cavern.\nThe Pokémon here dream of flying."),
[FRIEND_AREA_BOULDER_CAVE] = _("A cave surrounded by craggy boulders.\nPokémon that are capable of digging\nthrough even sheets of rock live here."),
[FRIEND_AREA_JUNGLE] = _("Deep in this overgrown tropical area\nlive many Grass-type Pokémon.\nThe swampy ground is rich in nutrients."),
[FRIEND_AREA_DECREPIT_LAB] = _("An abandoned lab built by humans long\nago. Left to fall into disrepair, it is\nnow home to Pokémon."),
[FRIEND_AREA_MT_DISCIPLINE] = _("A forbidding mountainous area where\nFighting-type Pokémon gather to\nhone their skills."),
[FRIEND_AREA_THUNDER_MEADOW] = _("A meadow covered in thunderclouds.\nBesides Electric-type Pokémon, a startling\nvariety of other Pokémon live here."),
[FRIEND_AREA_POWER_PLANT] = _("Machinery still runs in this long-deserted\npower plant. Electric-type Pokémon like\nto gather here."),
[FRIEND_AREA_CRATER] = _("The sight of this crater spouting\nspectacular plumes of lava greatly\nsatisfies fire-loving Pokémon."),
[FRIEND_AREA_FURNACE_DESERT] = _("The sun bears down ruthlessly on the\nburning-hot sand. Desert-dwelling Pokémon\nthrive in this area."),
[FRIEND_AREA_AGED_CHAMBER_AN] = _("This chamber lies deep inside an ancient\nruin. It is said that runes on stone tablets\nmove about in this enigmatic place."),
[FRIEND_AREA_AGED_CHAMBER_O_EXCLAIM] = _("One of two chambers in an ancient ruin.\nOne is named “AN” and\nthe other “O?”. Odd..."),
[FRIEND_AREA_ANCIENT_RELIC] = _("The remains of a long-forgotten\ncivilization. Prehistoric Pokémon are said\nto have lived here in ancient times."),
[FRIEND_AREA_DARKNESS_RIDGE] = _("This mountainous area may be inhabited by\nmischievous Pokémon who can suddenly\nturn the area dark to cause trouble."),
[FRIEND_AREA_FRIGID_CAVERN] = _("A cavern where ice shattered by wind\nmakes huge drifts. There are Pokémon\nthat thrive in this bitterly cold place."),
[FRIEND_AREA_ICE_FLOE_BEACH] = _("A frigid sea where ice sheets drift about\nimpressively. Even in the subzero waters,\nsome Pokémon swim about."),
[FRIEND_AREA_VOLCANIC_PIT] = _("It is said that in the bowels of the earth,\nwhere magma cascades in fiery streams,\nlives a Pokémon from mythical times."),
[FRIEND_AREA_STRATOS_LOOKOUT] = _("An area in the ozone layer far above\nthe clouds. It is home to a legendary\nPokémon of the stratosphere."),
[FRIEND_AREA_RAVAGED_FIELD] = _("A harsh and forbidding place of utter\ndesolation. Even here, there exist\nhardy Pokémon."),
[FRIEND_AREA_MAGNETIC_QUARRY] = _("The powerful magnetic forces imbued in\nthis quarry bind the nerves of certain\nPokémon, creating psychic power."),
[FRIEND_AREA_LEGENDARY_ISLAND] = _("An intriguing island with a complex\nweather pattern. With the power of fire,\nlightning, and ice, it awaits its masters."),
[FRIEND_AREA_SOUTHERN_ISLAND] = _("A gorgeous island in the southern seas.\nIt is said to be visited often by Eon\nPokémon."),
[FRIEND_AREA_ENCLOSED_ISLAND] = _("An eerie light encloses this rocky island,\nkeeping out the sea. It is as if the\nisland is in another dimension."),
[FRIEND_AREA_FINAL_ISLAND] = _("This legendary island may not even exist.\nIt hovers on the horizon and disappears\nsuddenly as if it were a mirage."),
};
const u8 *const gUnknown_8115718[100] = {

View File

@ -174,13 +174,13 @@ static s32 sub_8021664(void)
switch (sWigglytuffShop1Work->mode) {
case 0:
for (i = BOUNTIFUL_SEA; i < NUM_FRIEND_AREAS; i++) {
for (i = FRIEND_AREA_BOUNTIFUL_SEA; i < FRIEND_AREA_COUNT; i++) {
sWigglytuffShop1Work->friendAreas[counter] = i;
counter++;
}
break;
case 1:
for (i = BOUNTIFUL_SEA; i < NUM_FRIEND_AREAS; i++) {
for (i = FRIEND_AREA_BOUNTIFUL_SEA; i < FRIEND_AREA_COUNT; i++) {
if (gFriendAreas[i]) {
sWigglytuffShop1Work->friendAreas[counter] = i;
counter++;
@ -188,7 +188,7 @@ static s32 sub_8021664(void)
}
break;
case 2:
for (i = BOUNTIFUL_SEA; i < NUM_FRIEND_AREAS; i++) {
for (i = FRIEND_AREA_BOUNTIFUL_SEA; i < FRIEND_AREA_COUNT; i++) {
if (gFriendAreas[i])
continue;
@ -219,13 +219,13 @@ bool8 sub_8021700(u32 kind)
case 0:
return FALSE;
case 1:
for (i = BOUNTIFUL_SEA; i < NUM_FRIEND_AREAS; i++) {
for (i = FRIEND_AREA_BOUNTIFUL_SEA; i < FRIEND_AREA_COUNT; i++) {
if (gFriendAreas[i])
return FALSE;
}
break;
case 2:
for (i = BOUNTIFUL_SEA; i < NUM_FRIEND_AREAS; i++) {
for (i = FRIEND_AREA_BOUNTIFUL_SEA; i < FRIEND_AREA_COUNT; i++) {
if (gFriendAreas[i])
continue;