summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/battle_setup.h3
-rw-r--r--include/flags.h3
-rw-r--r--include/global.h4
-rw-r--r--include/link.h1
-rw-r--r--include/pokeblock.h3
-rw-r--r--include/tv.h1
-rw-r--r--include/vars.h1
-rw-r--r--include/wild_encounter.h44
8 files changed, 56 insertions, 4 deletions
diff --git a/include/battle_setup.h b/include/battle_setup.h
index e4acd8601..0168022cc 100644
--- a/include/battle_setup.h
+++ b/include/battle_setup.h
@@ -4,6 +4,9 @@
void BattleSetup_StartScriptedWildBattle(void);
u8 BattleSetup_GetTerrainId(void);
u8 *BattleSetup_ConfigureTrainerBattle(const u8 *data);
+void BattleSetup_StartBattlePikeWildBattle(void);
+void BattleSetup_StartWildBattle(void);
+void BattleSetup_StartRoamerBattle(void);
u8 HasTrainerAlreadyBeenFought(u16);
void trainer_flag_set(u16);
diff --git a/include/flags.h b/include/flags.h
index 1cb56a7f4..31d634c59 100644
--- a/include/flags.h
+++ b/include/flags.h
@@ -1,8 +1,9 @@
#ifndef GUARD_FLAGS_H
#define GUARD_FLAGS_H
-#define FLAG_PENDING_DAYCARE_EGG 0x86
#define FLAG_340 0x340
+#define FLAG_LEGENDARIES_IN_SOOTOPOLIS 0x53
+#define FLAG_PENDING_DAYCARE_EGG 0x86
#define FLAG_TRAINER_FLAG_START 0x500
diff --git a/include/global.h b/include/global.h
index 62f946c6d..f3ec9ce33 100644
--- a/include/global.h
+++ b/include/global.h
@@ -238,7 +238,9 @@ struct SaveBlock2
/*0xCA9*/ u8 field_CA9_d : 1; // 0x20
/*0xCA9*/ u8 field_CA9_e : 1; // 0x40
/*0xCA9*/ u8 field_CA9_f : 1; // 0x80
- /*0xCAA*/ u16 field_CAA[0x2e];
+ /*0xCAA*/ u16 field_CAA[4];
+ /*0xCB2*/ u16 battlePyramidWildHeaderId;
+ /*0xCB4*/ u8 field_CB4[82];
/*0xD06*/ u8 field_D06;
/*0xD07*/ u8 field_D07;
/*0xD08*/ u8 filler_D08[0x112];
diff --git a/include/link.h b/include/link.h
index a693e80a6..fe5429497 100644
--- a/include/link.h
+++ b/include/link.h
@@ -180,6 +180,7 @@ void LinkVSync(void);
void Timer3Intr(void);
void SerialCB(void);
u8 GetLinkPlayerCount(void);
+bool32 InUnionRoom(void);
void sub_800E0E8(void);
bool8 sub_800A520(void);
diff --git a/include/pokeblock.h b/include/pokeblock.h
index 0247ab2e0..00fbd1e45 100644
--- a/include/pokeblock.h
+++ b/include/pokeblock.h
@@ -22,13 +22,12 @@ enum
PBLOCK_FEEL,
};
-// rom6
void ClearPokeblocks(void);
s8 GetFirstFreePokeblockSlot(void);
-
bool32 AddPokeblock(struct Pokeblock *pokeblock);
u8 GetHighestPokeblocksFlavourLevel(const struct Pokeblock *pokeblock);
u8 GetPokeblocksFeel(const struct Pokeblock *pokeblock);
u8 GetPokeblocksFlavour(const struct Pokeblock *pokeblock);
+s16 PokeblockGetGain(u8, const struct Pokeblock *);
#endif // GUARD_POKEBLOCK_H
diff --git a/include/tv.h b/include/tv.h
index 35b41cef9..75338704f 100644
--- a/include/tv.h
+++ b/include/tv.h
@@ -14,5 +14,6 @@ void sub_80EEA70(void);
void sub_80F14F8(TVShow *shows);
size_t sub_80EF370(int value);
bool8 Put3CheersForPokeblocksOnTheAir(const u8 *partnersName, u8 flavor, u8 unused, u8 sheen, u8 language);
+void SetPokemonAnglerSpecies(u16 species);
#endif //GUARD_TV_H
diff --git a/include/vars.h b/include/vars.h
index f8057d4b5..763b7379d 100644
--- a/include/vars.h
+++ b/include/vars.h
@@ -30,6 +30,7 @@
#define VAR_RESET_RTC_ENABLE 0x402C
#define VAR_0x4037 0x4037
+#define VAR_ALTERING_CAVE_WILD_SET 0x403E
#define VAR_DAYS 0x4040
#define VAR_DEPT_STORE_FLOOR 0x4043
diff --git a/include/wild_encounter.h b/include/wild_encounter.h
new file mode 100644
index 000000000..55bbaa7dd
--- /dev/null
+++ b/include/wild_encounter.h
@@ -0,0 +1,44 @@
+#ifndef GUARD_WILD_ENCOUNTER_H
+#define GUARD_WILD_ENCOUNTER_H
+
+#define LAND_WILD_COUNT 12
+#define WATER_WILD_COUNT 5
+#define ROCK_WILD_COUNT 5
+#define FISH_WILD_COUNT 10
+
+struct WildPokemon
+{
+ u8 minLevel;
+ u8 maxLevel;
+ u16 species;
+};
+
+struct WildPokemonInfo
+{
+ u8 encounterRate;
+ const struct WildPokemon *wildPokemon;
+};
+
+struct WildPokemonHeader
+{
+ u8 mapGroup;
+ u8 mapNum;
+ const struct WildPokemonInfo *landMonsInfo;
+ const struct WildPokemonInfo *waterMonsInfo;
+ const struct WildPokemonInfo *rockSmashMonsInfo;
+ const struct WildPokemonInfo *fishingMonsInfo;
+};
+
+extern const struct WildPokemonHeader gWildMonHeaders[];
+
+void DisableWildEncounters(bool8 disabled);
+bool8 StandardWildEncounter(u16 currMetaTileBehavior, u16 previousMetaTileBehavior);
+void ScrSpecial_RockSmashWildEncounter(void);
+bool8 SweetScentWildEncounter(void);
+bool8 DoesCurrentMapHaveFishingMons(void);
+void FishingWildEncounter(u8 rod);
+u16 GetLocalWildMon(bool8 *isWaterMon);
+u16 GetLocalWaterMon(void);
+bool8 UpdateRepelCounter(void);
+
+#endif // GUARD_WILD_ENCOUNTER_H