summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/constants/songs.h2
-rw-r--r--include/daycare.h6
-rw-r--r--include/decompress.h1
-rw-r--r--include/field_fadetransition.h1
-rw-r--r--include/global.h8
-rw-r--r--include/graphics.h7
-rw-r--r--include/map_obj_80688E4.h1
-rw-r--r--include/map_obj_lock.h1
-rw-r--r--include/menu.h6
-rw-r--r--include/new_menu_helpers.h2
-rw-r--r--include/overworld.h8
-rw-r--r--include/pokemon.h3
-rw-r--r--include/text_window.h2
-rw-r--r--include/unk_810c3a4.h19
14 files changed, 56 insertions, 11 deletions
diff --git a/include/constants/songs.h b/include/constants/songs.h
index fc42af3fc..dd9335761 100644
--- a/include/constants/songs.h
+++ b/include/constants/songs.h
@@ -257,7 +257,9 @@
#define MUS_ME_BACHI 260
#define MUS_ME_WAZA 261
#define MUS_ME_KINOMI 262
+#define MUS_ME_SHINKA 263
#define BGM_FRLG_SAFARI_ZONE 264
+#define MUS_SHINKA BGM_FRLG_SAFARI_ZONE
#define MUS_ME_B_BIG 268
#define MUS_ME_B_SMALL 269
#define MUS_ME_WASURE 270
diff --git a/include/daycare.h b/include/daycare.h
index 6544ba21a..08ca11187 100644
--- a/include/daycare.h
+++ b/include/daycare.h
@@ -26,4 +26,10 @@ bool8 NameHasGenderSymbol(const u8 *name, u8 genderRatio);
void ShowDaycareLevelMenu(void);
void ChooseSendDaycareMon(void);
+void ScriptHatchMon(void);
+bool8 sub_8071614(void);
+void EggHatch(void);
+u8 GetEggStepsToSubtract(void);
+u16 sub_80722E0(void);
+
#endif // GUARD_DAYCARE_H
diff --git a/include/decompress.h b/include/decompress.h
index c2c4f0e1c..9a2093b9f 100644
--- a/include/decompress.h
+++ b/include/decompress.h
@@ -27,6 +27,7 @@ void DecompressPicFromTable_DontHandleDeoxys(const struct CompressedSpriteSheet
void HandleLoadSpecialPokePic(const struct CompressedSpriteSheet *src, void *dest, s32 species, u32 personality);
void HandleLoadSpecialPokePic_2(const struct CompressedSpriteSheet *src, void *dest, s32 species, u32 personality);
void HandleLoadSpecialPokePic_DontHandleDeoxys(const struct CompressedSpriteSheet *src, void *dest, s32 species, u32 personality);
+void sub_800ECC4(const struct CompressedSpriteSheet *src, void *dest, s32 species, u32 personality);
void LoadSpecialPokePic(const struct CompressedSpriteSheet *src, void *dest, s32 species, u32 personality, bool8 isFrontPic);
void LoadSpecialPokePic_2(const struct CompressedSpriteSheet *src, void *dest, s32 species, u32 personality, bool8 isFrontPic);
diff --git a/include/field_fadetransition.h b/include/field_fadetransition.h
index 228ff3bfb..d0856c84c 100644
--- a/include/field_fadetransition.h
+++ b/include/field_fadetransition.h
@@ -13,5 +13,6 @@ void sub_807E59C(void);
void sub_807E500(void);
void sub_807DF64(void);
void sub_807DC18(void);
+void FieldCallback_ReturnToEventScript2(void);
#endif // GUARD_FIELD_FADETRANSITION_H
diff --git a/include/global.h b/include/global.h
index 60185af00..461402f1f 100644
--- a/include/global.h
+++ b/include/global.h
@@ -692,6 +692,12 @@ struct TrainerTowerLog
u8 unkA_6:2;
};
+struct TrainerRematchState
+{
+ u16 stepCounter;
+ u8 rematches[100];
+};
+
struct SaveBlock1
{
/*0x0000*/ struct Coords16 pos;
@@ -719,7 +725,7 @@ struct SaveBlock1
/*0x05F8*/ u8 seen1[DEX_FLAGS_NO];
/*0x062C*/ u16 berryBlenderRecords[3]; // unused
/*0x0632*/ u8 field_632[6]; // unused?
- /*0x0638*/ u8 trainerRematchStepCounter;
+ /*0x0638*/ u16 trainerRematchStepCounter;
/*0x063A*/ u8 ALIGNED(2) trainerRematches[100];
/*0x06A0*/ struct MapObject mapObjects[MAP_OBJECTS_COUNT];
/*0x08E0*/ struct MapObjectTemplate mapObjectTemplates[64];
diff --git a/include/graphics.h b/include/graphics.h
index 83cc19bb3..04d05da2b 100644
--- a/include/graphics.h
+++ b/include/graphics.h
@@ -161,4 +161,11 @@ extern const u32 gUnknown_8E84F20[];
extern const u32 gUnknown_8E85068[];
extern const u8 gUnknown_8E99118[];
+// egg_hatch
+extern const u32 gBattleTextboxTiles[];
+extern const u32 gFile_graphics_interface_menu_map_tilemap[];
+extern const u32 gBattleTextboxPalette[];
+extern const u32 gTradeGba2_Pal[];
+extern const u32 gTradeGba_Gfx[];
+
#endif //GUARD_GRAPHICS_H
diff --git a/include/map_obj_80688E4.h b/include/map_obj_80688E4.h
index 9ab76646d..de871fd64 100644
--- a/include/map_obj_80688E4.h
+++ b/include/map_obj_80688E4.h
@@ -4,5 +4,6 @@
#include "global.h"
void player_bitmagic(void);
+void FreezeMapObject(struct MapObject *);
#endif //GUARD_MAP_OBJ_80688E4_H
diff --git a/include/map_obj_lock.h b/include/map_obj_lock.h
index 2927ca26d..0d130973b 100644
--- a/include/map_obj_lock.h
+++ b/include/map_obj_lock.h
@@ -10,5 +10,6 @@ void LockSelectedMapObject(void);
void sub_8098630(void);
bool8 sub_8098734(void);
void sub_80696C0(void);
+bool8 walkrun_is_standing_still(void);
#endif // GUARD_MAP_OBJ_LOCK_H
diff --git a/include/menu.h b/include/menu.h
index 4a5bd8a2c..40c7ffc12 100644
--- a/include/menu.h
+++ b/include/menu.h
@@ -30,8 +30,8 @@ void reset_temp_tile_data_buffers(void);
int decompress_and_copy_tile_data_to_vram(u8 bg_id, const void *src, int size, u16 offset, u8 mode);
bool8 free_temp_tile_data_buffers_if_possible(void);
u64 sub_8198A50(struct WindowTemplate*, u8, u8, u8, u8, u8, u8, u16); // returns something but it isn't used, fix when menu.s is decomp'd
-void CreateYesNoMenu(const struct WindowTemplate *windowTemplate, u16 borderFirstTileNum, u8 borderPalette, u8 initialCursorPos);
-s8 ProcessMenuInputNoWrap_(void);
+//void CreateYesNoMenu(const struct WindowTemplate *windowTemplate, u16 borderFirstTileNum, u8 borderPalette, u8 initialCursorPos);
+s8 Menu_ProcessInputNoWrapClearOnChoose(void);
void do_scheduled_bg_tilemap_copies_to_vram(void);
void clear_scheduled_bg_copies_to_vram(void);
void AddTextPrinterParametrized2(u8 windowId, u8 fontId, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, const struct TextColor *color, s8 speed, const u8 *str);
@@ -44,7 +44,7 @@ void PrintTextOnRightSnappedWindow(const u8 *, u32, u8);
void sub_810F71C(void);
void sub_810F740(void);
u8 ProgramAndPlaceMenuCursorOnWindow(u8 windowId, u8 fontId, u8 left, u8 top, u8 cursorHeight, u8 numChoices, u8 initialCursorPosition);
-void sub_810FF60(const struct WindowTemplate *, u8, u8, u8, u16, u8, u8);
+void CreateYesNoMenu(const struct WindowTemplate *, u8, u8, u8, u16, u8, u8);
void StartBlendTask(u8 eva_start, u8 evb_start, u8 eva_end, u8 evb_end, u8 ev_step, u8 priority);
bool8 IsBlendTaskActive(void);
diff --git a/include/new_menu_helpers.h b/include/new_menu_helpers.h
index d24b7e3e5..b3daf43c6 100644
--- a/include/new_menu_helpers.h
+++ b/include/new_menu_helpers.h
@@ -30,7 +30,7 @@ void Menu_LoadStdPalAt(u16);
void * malloc_and_decompress(const void * src, u32 * size);
u16 sub_80F796C(void);
void sub_80F6B08(u8 bgId, u8 left, u8 top, u8 width, u8 height, u8 palette);
-void sub_80F696C(u8 bgId, const void * gfx, u32 size, u16 a3, u8 a4);
+void DecompressAndLoadBgGfxUsingHeap(u8 bgId, const void * gfx, u32 size, u16 a3, u8 a4);
void ClearStdWindowAndFrame(u8 taskId, bool8 copyNow);
#endif // GUARD_NEW_MENU_HELPERS_H
diff --git a/include/overworld.h b/include/overworld.h
index ac3d5283f..f03db2a3a 100644
--- a/include/overworld.h
+++ b/include/overworld.h
@@ -63,7 +63,7 @@ void strange_npc_table_clear(void);
const struct MapHeader *get_mapheader_by_bank_and_number(u16, u16);
void FieldObjectMoveDestCoords(struct MapObject *, u32, s16 *, s16 *);
void sub_8086230(void);
-void c2_exit_to_overworld_2_switch(void);
+void CB2_ReturnToField(void);
bool32 sub_8087598(void);
void c2_exit_to_overworld_1_continue_scripts_restart_music(void);
void warp_in(void);
@@ -84,19 +84,19 @@ void sub_805726C(void);
void sub_8057430(void);
void sub_8055DC4(void);
-u8 sav1_map_get_name(void);
+u8 GetCurrentRegionMapSectionId(void);
void SetCurrentMapLayout(u16 mapDataId);
void SetWarpDestinationToFixedHoleWarp(s16 x, s16 y);
void ResetInitialPlayerAvatarState(void);
void sub_8055D40(u16 mapDataId);
-void sub_80563F0(void);
+void CleanupOverworldWindowsAndTilemaps(void);
extern u8 gUnknown_2031DD8;
extern u8 gUnknown_2036E28;
-extern void (*gUnknown_3005020)(void);
+extern void (*gFieldCallback)(void);
extern bool8 (* gFieldCallback2)(void);
void SetLastHealLocationWarp(u8 healLocaionId);
diff --git a/include/pokemon.h b/include/pokemon.h
index bf2326ff8..a6dd9931b 100644
--- a/include/pokemon.h
+++ b/include/pokemon.h
@@ -633,6 +633,7 @@ void SetWildMonHeldItem(void);
u16 GetMonEVCount(struct Pokemon *);
const struct CompressedSpritePalette *sub_806E794(struct Pokemon *mon);
+const struct CompressedSpritePalette *GetMonSpritePalStruct(struct Pokemon *mon);
const struct CompressedSpritePalette *GetMonSpritePalStructFromOtIdPersonality(u16 species, u32 otId , u32 personality);
bool32 IsHMMove2(u16 move);
bool8 IsPokeSpriteNotFlipped(u16 species);
@@ -675,6 +676,6 @@ void BattleAnimateBackSprite(struct Sprite* sprite, u16 species);
void PlayMapChosenOrBattleBGM(u16 songId);
u8 GetMonsStateToDoubles(void);
void sub_803E0A4(struct Pokemon *mon, struct BattleTowerPokemon *src);
-void sub_803F7D4(u16 trainerSpriteId, u8 battlerPosition);
+void SetMultiuseSpriteTemplateToPokemon(u16 trainerSpriteId, u8 battlerPosition);
#endif // GUARD_POKEMON_H
diff --git a/include/text_window.h b/include/text_window.h
index 9fbc90799..c384ca1bb 100644
--- a/include/text_window.h
+++ b/include/text_window.h
@@ -23,7 +23,7 @@ void sub_8098C6C(u8 bg, u16 destOffset, u8 palOffset);
void sub_814FEAC(u8 windowId, u16 tileStart, u8 palette);
void sub_814FF2C(u8 windowId, u16 tileStart, u8 palette);
void sub_815001C(u8 windowId, u16 tileStart, u8 palette);
-void sub_814FE40(u8 windowId, u16 tileStart, u8 palette);
+void LoadUserWindowBorderGfx(u8 windowId, u16 tileStart, u8 palette);
void sub_814FDA0(u8 windowId, u16 tileStart, u8 palette);
void DrawTextBorderOuter(u8 windowId, u16 tileStart, u8 palette);
diff --git a/include/unk_810c3a4.h b/include/unk_810c3a4.h
index 3f85ab00f..11a91b5ef 100644
--- a/include/unk_810c3a4.h
+++ b/include/unk_810c3a4.h
@@ -1,6 +1,25 @@
#ifndef GUARD_UNK_810C3A4_H
#define GUARD_UNK_810C3A4_H
+#define GET_VS_SEEKER_COUNTER_0() (gSaveBlock1Ptr->trainerRematch.stepCounter & 0xFF)
+#define GET_VS_SEEKER_COUNTER_1() (gSaveBlock1Ptr->trainerRematch.stepCounter >> 8)
+#define SET_VS_SEEKER_COUNTER_0(x) ({\
+ gSaveBlock1Ptr->trainerRematch.stepCounter &= 0xFF00;\
+ gSaveBlock1Ptr->trainerRematch.stepCounter |= (x);\
+})
+#define SET_VS_SEEKER_COUNTER_1(x) ({\
+ gSaveBlock1Ptr->trainerRematch.stepCounter &= 0x00FF;\
+ gSaveBlock1Ptr->trainerRematch.stepCounter |= ((x) << 8);\
+})
+#define INC_VS_SEEKER_COUNTER_0() ({\
+ u8 x = GET_VS_SEEKER_COUNTER_0();\
+ if (x < 100) gSaveBlock1Ptr->trainerRematch.stepCounter++;\
+})
+#define INC_VS_SEEKER_COUNTER_1() ({\
+ u8 x = GET_VS_SEEKER_COUNTER_1();\
+ if (x < 100) {x++; SET_VS_SEEKER_COUNTER_1(x);}\
+})
+
void sub_810C604(void);
void sub_810C640(void);