From a4f5f41e2496a4c2b91cd0643dc44d98faed0c89 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Thu, 16 Jan 2020 17:06:34 -0500 Subject: Document static mon scripts --- include/constants/layouts.h | 4 ++-- include/constants/metatile_labels.h | 6 ++++++ 2 files changed, 8 insertions(+), 2 deletions(-) (limited to 'include') diff --git a/include/constants/layouts.h b/include/constants/layouts.h index a9d40220f..26893ac0c 100644 --- a/include/constants/layouts.h +++ b/include/constants/layouts.h @@ -260,8 +260,8 @@ #define LAYOUT_ROUTE5_POKEMON_DAY_CARE 275 #define LAYOUT_VIRIDIAN_CITY_HOUSE1 276 #define LAYOUT_FOUR_ISLAND_POKEMON_DAY_CARE 277 -#define LAYOUT_UNUSED_LAYOUT_833B6EC 278 -#define LAYOUT_UNUSED_LAYOUT_833BE30 279 +#define LAYOUT_SEAFOAM_ISLANDS_B3F_CURRENT_STOPPED 278 +#define LAYOUT_SEAFOAM_ISLANDS_B4F_CURRENT_STOPPED 279 #define LAYOUT_MT_EMBER_EXTERIOR 280 #define LAYOUT_MT_EMBER_SUMMIT 281 #define LAYOUT_MT_EMBER_SUMMIT_PATH_1F 282 diff --git a/include/constants/metatile_labels.h b/include/constants/metatile_labels.h index c664290d5..f2bf4b865 100644 --- a/include/constants/metatile_labels.h +++ b/include/constants/metatile_labels.h @@ -1,6 +1,9 @@ #ifndef GUARD_METATILE_LABELS_H #define GUARD_METATILE_LABELS_H +// General +#define METATILE_General_CalmWater 0x12B + // Pokemon Mansion #define METATILE_PokemonMansion_Floor 0x284 #define METATILE_PokemonMansion_Floor_ShadeFull 0x285 @@ -34,4 +37,7 @@ #define METATILE_PokemonMansion_Statue_RedEyes_Shade 0x34E #define METATILE_PokemonMansion_Statue_RedEyes_Basement 0x34F +// gTileset_82D504C. Below metatile probably needs generic name +#define METATILE_MtEmber_CaveEntrance 0x346 + #endif // GUARD_METATILE_LABELS_H -- cgit v1.2.3 From f6e050cf354a6ca3f5ea3a57496cc0ae2aac49dd Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Fri, 17 Jan 2020 15:11:46 -0500 Subject: through sub_81081AC --- include/bag.h | 2 ++ include/battle_controllers.h | 1 + include/item_menu.h | 4 ++-- 3 files changed, 5 insertions(+), 2 deletions(-) (limited to 'include') diff --git a/include/bag.h b/include/bag.h index f82531778..8c085a211 100644 --- a/include/bag.h +++ b/include/bag.h @@ -1,6 +1,8 @@ #ifndef GUARD_BAG_H #define GUARD_BAG_H +#include "menu_helpers.h" + void sub_810B858(void); void sub_810B8F0(u8 windowId, u8 fontId, const u8 * str, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, s8 speed, u8 colorIdx); void sub_810B958(const u8 * str); diff --git a/include/battle_controllers.h b/include/battle_controllers.h index 06a0e2957..412856353 100644 --- a/include/battle_controllers.h +++ b/include/battle_controllers.h @@ -2,6 +2,7 @@ #define GUARD_BATTLE_CONTROLLERS_H #include "global.h" +#include "battle.h" enum { diff --git a/include/item_menu.h b/include/item_menu.h index 187674e83..d141c6601 100644 --- a/include/item_menu.h +++ b/include/item_menu.h @@ -14,8 +14,8 @@ struct BagStruct u8 location; u8 pocket; u16 unk6; - u8 cursorPosition[6]; - u8 scrollPosition[6]; + u16 itemsAbove[3]; + u16 cursorPos[3]; }; extern struct BagStruct gUnknown_203ACFC; -- cgit v1.2.3 From dbf3ac402d94be993839bddd109e3cfaef8e3dea Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Fri, 17 Jan 2020 16:40:53 -0500 Subject: through sub_8108560 --- include/gflib.h | 18 ++++++++++++++++++ include/graphics.h | 11 +++++++---- include/item_menu.h | 4 ++-- 3 files changed, 27 insertions(+), 6 deletions(-) create mode 100644 include/gflib.h (limited to 'include') diff --git a/include/gflib.h b/include/gflib.h new file mode 100644 index 000000000..a6dfc62df --- /dev/null +++ b/include/gflib.h @@ -0,0 +1,18 @@ +#ifndef GUARD_GFLIB_H +#define GUARD_GFLIB_H + +#include "global.h" + +#include "bg.h" +#include "palette.h" +#include "gpu_regs.h" +#include "dma3.h" +#include "malloc.h" +#include "sound.h" +#include "text.h" +#include "sprite.h" +#include "window.h" +#include "blit.h" +#include "string_util.h" + +#endif //GUARD_GFLIB_H diff --git a/include/graphics.h b/include/graphics.h index a668364bd..eb9a9a20d 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -1,7 +1,3 @@ -// -// Created by scott on 10/21/2017. -// - #ifndef GUARD_GRAPHICS_H #define GUARD_GRAPHICS_H @@ -4861,4 +4857,11 @@ extern const u16 gBattleInterface_BallStatusBarPal[]; extern const u16 gBattleInterface_BallDisplayPal[]; extern const u16 gUnknown_8D12404[]; +// item_menu +extern const u32 gUnknown_8E830CC[]; +extern const u32 gUnknown_8E832C0[]; +extern const u32 gUnknown_8E83444[]; +extern const u32 gUnknown_8E835B4[]; +extern const u32 gUnknown_8E83604[]; + #endif //GUARD_GRAPHICS_H diff --git a/include/item_menu.h b/include/item_menu.h index d141c6601..343fae393 100644 --- a/include/item_menu.h +++ b/include/item_menu.h @@ -12,8 +12,8 @@ struct BagStruct { void (*bagCallback)(void); u8 location; - u8 pocket; - u16 unk6; + u8 unk5; + u16 pocket; u16 itemsAbove[3]; u16 cursorPos[3]; }; -- cgit v1.2.3 From 881199142ccac48aa975d0b59be07dfd78ad70af Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Fri, 17 Jan 2020 22:23:20 -0500 Subject: through bag_menu_print_cursor --- include/bag.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'include') diff --git a/include/bag.h b/include/bag.h index 8c085a211..321a48ab0 100644 --- a/include/bag.h +++ b/include/bag.h @@ -4,7 +4,7 @@ #include "menu_helpers.h" void sub_810B858(void); -void sub_810B8F0(u8 windowId, u8 fontId, const u8 * str, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, s8 speed, u8 colorIdx); +void sub_810B8F0(u8 windowId, u8 fontId, const u8 * str, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, u8 speed, u8 colorIdx); void sub_810B958(const u8 * str); void sub_810B994(void); u8 sub_810B9DC(u8 a0, u8 a1); -- cgit v1.2.3 From 2ce545fc216cc07ac9b9bf833a6ed410d90ab420 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sat, 18 Jan 2020 09:23:48 -0500 Subject: through sub_810899C --- include/bag.h | 2 +- include/strings.h | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) (limited to 'include') diff --git a/include/bag.h b/include/bag.h index 321a48ab0..c48940173 100644 --- a/include/bag.h +++ b/include/bag.h @@ -5,7 +5,7 @@ void sub_810B858(void); void sub_810B8F0(u8 windowId, u8 fontId, const u8 * str, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, u8 speed, u8 colorIdx); -void sub_810B958(const u8 * str); +void sub_810B958(const u8 * str, u8 unused); void sub_810B994(void); u8 sub_810B9DC(u8 a0, u8 a1); void sub_810BA3C(u8 a0); diff --git a/include/strings.h b/include/strings.h index eace8d67e..2e74d7b38 100644 --- a/include/strings.h +++ b/include/strings.h @@ -1038,4 +1038,7 @@ extern const u8 gText_SaveFailedScreen_CheckingBackupMemory[]; extern const u8 gText_SaveFailedScreen_BackupMemoryDamaged[]; extern const u8 gText_SaveFailedScreen_SaveCompleted[]; +// item_menu +extern const u8 gUnknown_84162F5[]; + #endif //GUARD_STRINGS_H -- cgit v1.2.3 From 1c3f865acf9e957e8f6ba4daf7f0cfa093893074 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sat, 18 Jan 2020 09:36:16 -0500 Subject: through ItemMenu_StartFadeToExitCallback --- include/strings.h | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'include') diff --git a/include/strings.h b/include/strings.h index 2e74d7b38..809007409 100644 --- a/include/strings.h +++ b/include/strings.h @@ -1039,6 +1039,14 @@ extern const u8 gText_SaveFailedScreen_BackupMemoryDamaged[]; extern const u8 gText_SaveFailedScreen_SaveCompleted[]; // item_menu +extern const u8 gUnknown_84161A9[]; +extern const u8 gUnknown_84161BC[]; +extern const u8 gUnknown_84161E9[]; +extern const u8 gUnknown_84161F4[]; +extern const u8 gUnknown_84161F9[]; +extern const u8 gUnknown_84162CD[]; +extern const u8 gUnknown_84162D3[]; +extern const u8 gUnknown_84162DE[]; extern const u8 gUnknown_84162F5[]; #endif //GUARD_STRINGS_H -- cgit v1.2.3 From dfcfe6d8e1942349adfefc8e79255dcd8befca0a Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sat, 18 Jan 2020 11:52:32 -0500 Subject: through MoveItemSlotInList --- include/constants/item_menu.h | 17 +++++++++++++++++ include/item_menu.h | 3 ++- include/strings.h | 16 ++++++++-------- 3 files changed, 27 insertions(+), 9 deletions(-) create mode 100644 include/constants/item_menu.h (limited to 'include') diff --git a/include/constants/item_menu.h b/include/constants/item_menu.h new file mode 100644 index 000000000..8e91d2a17 --- /dev/null +++ b/include/constants/item_menu.h @@ -0,0 +1,17 @@ +#ifndef GUARD_CONSTANTS_ITEM_MENU_H +#define GUARD_CONSTANTS_ITEM_MENU_H + +#define ITEMMENUACTION_USE 0 +#define ITEMMENUACTION_TOSS 1 +#define ITEMMENUACTION_REGISTER 2 +#define ITEMMENUACTION_GIVE 3 +#define ITEMMENUACTION_CANCEL 4 +#define ITEMMENUACTION_BATTLE_USE 5 +#define ITEMMENUACTION_CHECK 6 +#define ITEMMENUACTION_OPEN 7 +#define ITEMMENUACTION_OPEN_BERRIES 8 +#define ITEMMENUACTION_WALK 9 +#define ITEMMENUACTION_DESELECT 10 +#define ITEMMENUACTION_DUMMY 11 + +#endif //GUARD_CONSTANTS_ITEM_MENU_H diff --git a/include/item_menu.h b/include/item_menu.h index 343fae393..e7337ffc4 100644 --- a/include/item_menu.h +++ b/include/item_menu.h @@ -3,6 +3,7 @@ #include "global.h" #include "task.h" +#include "constants/item_menu.h" // Exported type declarations @@ -29,7 +30,7 @@ void CB2_SetUpReshowBattleScreenAfterMenu(void); void sub_81089BC(void); void sub_810B108(u8); void CB2_BagMenuFromStartMenu(void); -void ItemMenu_MoveItemSlotToNewPositionInArray(struct ItemSlot * slots, int pos1, int pos2); +void MoveItemSlotInList(struct ItemSlot * itemSlots_, u32 from, u32 to_); void ItemMenu_StartFadeToExitCallback(u8 taskId); void sub_8108CB4(void); void ItemMenu_SetExitCallback(void (*)(void)); diff --git a/include/strings.h b/include/strings.h index 809007409..8dba28b3c 100644 --- a/include/strings.h +++ b/include/strings.h @@ -1039,14 +1039,14 @@ extern const u8 gText_SaveFailedScreen_BackupMemoryDamaged[]; extern const u8 gText_SaveFailedScreen_SaveCompleted[]; // item_menu -extern const u8 gUnknown_84161A9[]; -extern const u8 gUnknown_84161BC[]; -extern const u8 gUnknown_84161E9[]; -extern const u8 gUnknown_84161F4[]; -extern const u8 gUnknown_84161F9[]; -extern const u8 gUnknown_84162CD[]; -extern const u8 gUnknown_84162D3[]; -extern const u8 gUnknown_84162DE[]; +extern const u8 gOtherText_Register[]; +extern const u8 gOtherText_Walk[]; +extern const u8 gOtherText_Check[]; +extern const u8 gOtherText_Open[]; +extern const u8 gOtherText_Deselect[]; +extern const u8 gText_Items2[]; +extern const u8 gText_PokeBalls2[]; +extern const u8 gText_KeyItems2[]; extern const u8 gUnknown_84162F5[]; #endif //GUARD_STRINGS_H -- cgit v1.2.3 From 24e199fdfdce8e17f65578b7446c2a8368b3a0be Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sat, 18 Jan 2020 12:59:26 -0500 Subject: through sub_81090DC --- include/item_menu.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'include') diff --git a/include/item_menu.h b/include/item_menu.h index e7337ffc4..43159401a 100644 --- a/include/item_menu.h +++ b/include/item_menu.h @@ -34,7 +34,7 @@ void MoveItemSlotInList(struct ItemSlot * itemSlots_, u32 from, u32 to_); void ItemMenu_StartFadeToExitCallback(u8 taskId); void sub_8108CB4(void); void ItemMenu_SetExitCallback(void (*)(void)); -void DisplayItemMessageInBag(u8 taskId, u8 bgId, const u8 * string, TaskFunc followUpFunc); +void DisplayItemMessageInBag(u8 taskId, u8 fontId, const u8 * string, TaskFunc followUpFunc); void sub_810A1F8(u8 taskId); void sub_8107ECC(void); void sub_810AF74(void); -- cgit v1.2.3 From 0ed743a582a04f178d138d51159426179c969288 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sat, 18 Jan 2020 19:54:25 -0500 Subject: through sub_810A554 --- include/menu_helpers.h | 2 +- include/strings.h | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) (limited to 'include') diff --git a/include/menu_helpers.h b/include/menu_helpers.h index 1e75b336c..90aeb95f6 100644 --- a/include/menu_helpers.h +++ b/include/menu_helpers.h @@ -27,7 +27,7 @@ void CreateYesNoMenuWithCallbacks(u8 taskId, const struct WindowTemplate *templa u8 GetLRKeysState(void); u8 GetLRKeysPressedAndHeld(void); bool8 itemid_link_can_give_berry(u16 itemId); -bool8 itemid_80BF6D8_mail_related(u16 itemId); +bool8 CanWriteMailHere(u16 itemId); void ResetVramOamAndBgCntRegs(void); #endif //GUARD_MENU_HELPERS_H diff --git a/include/strings.h b/include/strings.h index 8dba28b3c..0d70d9e19 100644 --- a/include/strings.h +++ b/include/strings.h @@ -1047,6 +1047,7 @@ extern const u8 gOtherText_Deselect[]; extern const u8 gText_Items2[]; extern const u8 gText_PokeBalls2[]; extern const u8 gText_KeyItems2[]; -extern const u8 gUnknown_84162F5[]; +extern const u8 gText_CloseBag[]; +extern const u8 gText_CantWriteMailHere[]; #endif //GUARD_STRINGS_H -- cgit v1.2.3 From 4c62d0f35f58cd5720997ffb1241d5a08dd90620 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sat, 18 Jan 2020 22:14:54 -0500 Subject: through InitTutorialBag --- include/event_scripts.h | 2 ++ include/item_menu.h | 2 +- include/map_name_popup.h | 1 + include/strings.h | 3 +++ 4 files changed, 7 insertions(+), 1 deletion(-) (limited to 'include') diff --git a/include/event_scripts.h b/include/event_scripts.h index b5e355484..dcbe2c137 100644 --- a/include/event_scripts.h +++ b/include/event_scripts.h @@ -1195,4 +1195,6 @@ extern const u8 Text_1A5D31[]; extern const u8 Text_1A5D6E[]; extern const u8 Text_1A5DB1[]; +extern const u8 gUnknown_81A77A0[]; + #endif //GUARD_EVENT_SCRIPTS_H diff --git a/include/item_menu.h b/include/item_menu.h index 43159401a..d8257ccf1 100644 --- a/include/item_menu.h +++ b/include/item_menu.h @@ -37,7 +37,7 @@ void ItemMenu_SetExitCallback(void (*)(void)); void DisplayItemMessageInBag(u8 taskId, u8 fontId, const u8 * string, TaskFunc followUpFunc); void sub_810A1F8(u8 taskId); void sub_8107ECC(void); -void sub_810AF74(void); +void InitTutorialBag(void); void sub_8108DC8(u8 pocketId); void sub_81089F4(u8 pocketId); void GoToBagMenu(u8 menuType, u8 pocket, MainCallback callback); diff --git a/include/map_name_popup.h b/include/map_name_popup.h index c8ce02c30..a7c1234c6 100644 --- a/include/map_name_popup.h +++ b/include/map_name_popup.h @@ -4,5 +4,6 @@ #include "global.h" void CreateMapNamePopupIfNotAlreadyRunning(bool32 palIntoFadedBuffer); +void DismissMapNamePopup(void); #endif //GUARD_MAP_NAME_POPUP_H diff --git a/include/strings.h b/include/strings.h index 0d70d9e19..852e88a5c 100644 --- a/include/strings.h +++ b/include/strings.h @@ -1049,5 +1049,8 @@ extern const u8 gText_PokeBalls2[]; extern const u8 gText_KeyItems2[]; extern const u8 gText_CloseBag[]; extern const u8 gText_CantWriteMailHere[]; +extern const u8 gText_DepositHowManyStrVars1[]; +extern const u8 gText_DepositedStrVar2StrVar1s[]; +extern const u8 gText_NoRoomToStoreItems[]; #endif //GUARD_STRINGS_H -- cgit v1.2.3 From 6e41dd7b2120f8024bb0cfff7a5ef25f0dce0366 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sun, 19 Jan 2020 14:47:23 -0500 Subject: Document item_menu --- include/bag.h | 26 +++++++++++++------------- include/constants/item_menu.h | 18 ++++++++++++++++++ include/event_scripts.h | 2 +- include/graphics.h | 4 ++-- include/item_menu.h | 20 ++++++++++---------- include/item_menu_icons.h | 18 ++++++++---------- include/menu_helpers.h | 2 +- include/strings.h | 3 +++ include/teachy_tv.h | 10 ++++++++++ include/tm_case.h | 10 ++++++++++ 10 files changed, 76 insertions(+), 37 deletions(-) (limited to 'include') diff --git a/include/bag.h b/include/bag.h index c48940173..fec9f67bf 100644 --- a/include/bag.h +++ b/include/bag.h @@ -3,18 +3,18 @@ #include "menu_helpers.h" -void sub_810B858(void); -void sub_810B8F0(u8 windowId, u8 fontId, const u8 * str, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, u8 speed, u8 colorIdx); -void sub_810B958(const u8 * str, u8 unused); -void sub_810B994(void); -u8 sub_810B9DC(u8 a0, u8 a1); -void sub_810BA3C(u8 a0); -u8 sub_810BA70(u8 a0); -void sub_810BA9C(u8 a0); -u8 sub_810BAD8(u8 a0); -void sub_810BAE8(u8 taskId, const struct YesNoFuncTable * ptrs); -void sub_810BB14(u8 taskId, const struct YesNoFuncTable * ptrs); -void sub_810BB40(void); -void sub_810BB74(u8 windowId); +void InitBagWindows(void); +void BagPrintTextOnWindow(u8 windowId, u8 fontId, const u8 * str, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, u8 speed, u8 colorIdx); +void BagPrintTextOnWin1CenteredColor0(const u8 * str, u8 unused); +void BagDrawDepositItemTextBox(void); +u8 ShowBagWindow(u8 whichWindow, u8 nItems); +void HideBagWindow(u8 whichWindow); +u8 OpenBagWindow(u8 whichWindow); +void CloseBagWindow(u8 whichWindow); +u8 GetBagWindow(u8 whichWindow); +void BagCreateYesNoMenuBottomRight(u8 taskId, const struct YesNoFuncTable * ptrs); +void BagCreateYesNoMenuTopRight(u8 taskId, const struct YesNoFuncTable * ptrs); +void BagPrintMoneyAmount(void); +void BagDrawTextBoxOnWindow(u8 windowId); #endif //GUARD_BAG_H diff --git a/include/constants/item_menu.h b/include/constants/item_menu.h index 8e91d2a17..2a51b8c1b 100644 --- a/include/constants/item_menu.h +++ b/include/constants/item_menu.h @@ -1,6 +1,24 @@ #ifndef GUARD_CONSTANTS_ITEM_MENU_H #define GUARD_CONSTANTS_ITEM_MENU_H +#define OPEN_BAG_ITEMS 0 +#define OPEN_BAG_KEYITEMS 1 +#define OPEN_BAG_POKEBALLS 2 +#define OPEN_BAG_LAST 3 + +#define ITEMMENULOCATION_FIELD 0 +#define ITEMMENULOCATION_PARTY 1 +#define ITEMMENULOCATION_SHOP 2 +#define ITEMMENULOCATION_ITEMPC 3 +#define ITEMMENULOCATION_PCBOX 4 +#define ITEMMENULOCATION_BATTLE 5 +#define ITEMMENULOCATION_OLDMAN 6 +#define ITEMMENULOCATION_TTVSCR_STATUS 7 +#define ITEMMENULOCATION_TTVSCR_CATCHING 8 +#define ITEMMENULOCATION_TTVSCR_REGISTER 9 +#define ITEMMENULOCATION_TTVSCR_TMS 10 +#define ITEMMENULOCATION_LAST 11 + #define ITEMMENUACTION_USE 0 #define ITEMMENUACTION_TOSS 1 #define ITEMMENUACTION_REGISTER 2 diff --git a/include/event_scripts.h b/include/event_scripts.h index dcbe2c137..a597868b9 100644 --- a/include/event_scripts.h +++ b/include/event_scripts.h @@ -1195,6 +1195,6 @@ extern const u8 Text_1A5D31[]; extern const u8 Text_1A5D6E[]; extern const u8 Text_1A5DB1[]; -extern const u8 gUnknown_81A77A0[]; +extern const u8 EventScript_BagItemCanBeRegistered[]; #endif //GUARD_EVENT_SCRIPTS_H diff --git a/include/graphics.h b/include/graphics.h index eb9a9a20d..296dee465 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -4861,7 +4861,7 @@ extern const u16 gUnknown_8D12404[]; extern const u32 gUnknown_8E830CC[]; extern const u32 gUnknown_8E832C0[]; extern const u32 gUnknown_8E83444[]; -extern const u32 gUnknown_8E835B4[]; -extern const u32 gUnknown_8E83604[]; +extern const u32 gBagBgPalette[]; +extern const u32 gBagBgPalette_FemaleOverride[]; #endif //GUARD_GRAPHICS_H diff --git a/include/item_menu.h b/include/item_menu.h index d8257ccf1..4720080da 100644 --- a/include/item_menu.h +++ b/include/item_menu.h @@ -13,13 +13,13 @@ struct BagStruct { void (*bagCallback)(void); u8 location; - u8 unk5; + u8 bagOpen; u16 pocket; u16 itemsAbove[3]; u16 cursorPos[3]; }; -extern struct BagStruct gUnknown_203ACFC; +extern struct BagStruct gBagMenuState; extern u16 gSpecialVar_ItemId; @@ -27,19 +27,19 @@ extern u16 gSpecialVar_ItemId; void sub_81AAC50(void); void sub_81AAC70(void); void CB2_SetUpReshowBattleScreenAfterMenu(void); -void sub_81089BC(void); -void sub_810B108(u8); +void ResetBagCursorPositions(void); +void InitPokeDudeBag(u8); void CB2_BagMenuFromStartMenu(void); void MoveItemSlotInList(struct ItemSlot * itemSlots_, u32 from, u32 to_); void ItemMenu_StartFadeToExitCallback(u8 taskId); -void sub_8108CB4(void); +void Bag_BeginCloseWin0Animation(void); void ItemMenu_SetExitCallback(void (*)(void)); void DisplayItemMessageInBag(u8 taskId, u8 fontId, const u8 * string, TaskFunc followUpFunc); -void sub_810A1F8(u8 taskId); -void sub_8107ECC(void); -void InitTutorialBag(void); -void sub_8108DC8(u8 pocketId); -void sub_81089F4(u8 pocketId); +void Task_ReturnToBagFromContextMenu(u8 taskId); +void CB2_BagMenuFromBattle(void); +void InitOldManBag(void); +void Pocket_CalculateNItemsAndMaxShowed(u8 pocketId); +void PocketCalculateInitialCursorPosAndItemsAbove(u8 pocketId); void GoToBagMenu(u8 menuType, u8 pocket, MainCallback callback); #endif //GUARD_ITEM_MENU_H diff --git a/include/item_menu_icons.h b/include/item_menu_icons.h index b5b5c6b0b..fd66a9375 100644 --- a/include/item_menu_icons.h +++ b/include/item_menu_icons.h @@ -3,28 +3,26 @@ #include "global.h" -extern void * gUnknown_2039884; - -extern const struct CompressedSpriteSheet gUnknown_83D41E4; -extern const struct CompressedSpriteSheet gUnknown_83D41EC; -extern const struct CompressedSpritePalette gUnknown_83D41F4; +extern const struct CompressedSpriteSheet gSpriteSheet_Backpack; +extern const struct CompressedSpriteSheet gSpriteSheet_Satchel; +extern const struct CompressedSpritePalette gSpritePalette_BagOrSatchel; extern const struct CompressedSpriteSheet gBagSwapSpriteSheet; extern const struct CompressedSpritePalette gBagSwapSpritePalette; void ResetItemMenuIconState(void); -void sub_80985E4(void); +void ItemMenuIcons_CreateInsertIndicatorBarHidden(void); void DestroyItemMenuIcon(bool8 a0); void CreateItemMenuIcon(u16 itemId, bool8 a0); void CopyItemIconPicTo4x4Buffer(const void *src, void *dest); u8 AddItemIconObject(u16 tilesTag, u16 paletteTag, u16 itemId); u8 AddItemIconObjectWithCustomObjectTemplate(const struct SpriteTemplate * origTemplate, u16 tilesTag, u16 paletteTag, u16 itemId); void sub_80989A0(u16 itemId, u8 idx); -void sub_80986A8(s16 x, u16 y); -void sub_8098660(u8); +void ItemMenuIcons_MoveInsertIndicatorBar(s16 x, u16 y); +void ItemMenuIcons_ToggleInsertIndicatorBarVisibility(bool8 invisible); void sub_8098528(u8); void sub_8098580(void); -const void * sub_8098974(u16 itemId, u8 ptrId); -void sub_80984FC(u8 animNum); +const void * GetItemIconGfxPtr(u16 itemId, u8 ptrId); +void CreateBagOrSatchelSprite(u8 animNum); #endif // GUARD_ITEM_MENU_ICONS diff --git a/include/menu_helpers.h b/include/menu_helpers.h index 90aeb95f6..d26f50483 100644 --- a/include/menu_helpers.h +++ b/include/menu_helpers.h @@ -20,7 +20,7 @@ bool8 sub_80BF748(void); bool8 MenuHelpers_LinkSomething(void); void SetVBlankHBlankCallbacksToNull(void); void ResetAllBgsCoordinatesAndBgCntRegs(void); -u8 sub_80BF8E4(void); +u8 GetDialogBoxFontId(void); bool8 AdjustQuantityAccordingToDPadInput(s16 *arg0, u16 arg1); void DisplayMessageAndContinueTask(u8 taskId, u8 windowId, u16 tileNum, u8 paletteNum, u8 fontId, u8 textSpeed, const u8 *string, void *taskFunc); void CreateYesNoMenuWithCallbacks(u8 taskId, const struct WindowTemplate *template, u8 fontId, u8 left, u8 top, u16 tileStart, u8 palette, const struct YesNoFuncTable *yesNo); diff --git a/include/strings.h b/include/strings.h index 852e88a5c..6241bd8a9 100644 --- a/include/strings.h +++ b/include/strings.h @@ -1038,6 +1038,9 @@ extern const u8 gText_SaveFailedScreen_CheckingBackupMemory[]; extern const u8 gText_SaveFailedScreen_BackupMemoryDamaged[]; extern const u8 gText_SaveFailedScreen_SaveCompleted[]; +// bag +extern const u8 gText_DepositItem[]; + // item_menu extern const u8 gOtherText_Register[]; extern const u8 gOtherText_Walk[]; diff --git a/include/teachy_tv.h b/include/teachy_tv.h index 36bac6a67..3484f88c1 100644 --- a/include/teachy_tv.h +++ b/include/teachy_tv.h @@ -1,6 +1,16 @@ #ifndef GUARD_TEACHY_TV_H #define GUARD_TEACHY_TV_H +enum TeachyTvScript +{ + TTVSCR_BATTLE, + TTVSCR_STATUS, + TTVSCR_MATCHUPS, + TTVSCR_CATCHING, + TTVSCR_TMS, + TTVSCR_REGISTER +}; + void InitTeachyTvController(u8 mode, void (*cb)()); void CB2_ReturnToTeachyTV(void); void SetTeachyTvControllerModeToResume(void); diff --git a/include/tm_case.h b/include/tm_case.h index f77eae457..bb88fc4d1 100644 --- a/include/tm_case.h +++ b/include/tm_case.h @@ -1,6 +1,16 @@ #ifndef GUARD_TM_CASE_H #define GUARD_TM_CASE_H +enum TmCaseType +{ + TMCASE_FROMFIELD, + TMCASE_FROMPARTYGIVE, + TMCASE_FROMMARTSELL, + TMCASE_FROMPOKEMONSTORAGEPC, + TMCASE_FROMBATTLE, + TMCASE_NA +}; + void InitTMCase(u8 a0, void (* a1)(void), u8 a2); void ResetTMCaseCursorPos(void); void PokeDude_InitTMCase(void); -- cgit v1.2.3 From c365f58833d60606b2a759b190b1f35f09f7ee66 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sun, 19 Jan 2020 16:19:35 -0500 Subject: Address review comments --- include/constants/item_menu.h | 2 +- include/data.h | 2 +- include/graphics.h | 4 ++-- include/item_menu.h | 6 +++--- include/strings.h | 6 +++--- include/tm_case.h | 2 +- 6 files changed, 11 insertions(+), 11 deletions(-) (limited to 'include') diff --git a/include/constants/item_menu.h b/include/constants/item_menu.h index 2a51b8c1b..d173b9212 100644 --- a/include/constants/item_menu.h +++ b/include/constants/item_menu.h @@ -12,7 +12,7 @@ #define ITEMMENULOCATION_ITEMPC 3 #define ITEMMENULOCATION_PCBOX 4 #define ITEMMENULOCATION_BATTLE 5 -#define ITEMMENULOCATION_OLDMAN 6 +#define ITEMMENULOCATION_OLD_MAN 6 #define ITEMMENULOCATION_TTVSCR_STATUS 7 #define ITEMMENULOCATION_TTVSCR_CATCHING 8 #define ITEMMENULOCATION_TTVSCR_REGISTER 9 diff --git a/include/data.h b/include/data.h index 72e6b66fc..f308b044c 100644 --- a/include/data.h +++ b/include/data.h @@ -57,7 +57,7 @@ extern const struct SpriteFrameImage gUnknown_82346D8[]; extern const struct SpriteFrameImage gUnknown_82346F8[]; extern const struct SpriteFrameImage gTrainerBackPicTable_Red[]; extern const struct SpriteFrameImage gTrainerBackPicTable_Leaf[]; -extern const struct SpriteFrameImage gTrainerBackPicTable_PokeDude[]; +extern const struct SpriteFrameImage gTrainerBackPicTable_Pokedude[]; extern const struct SpriteFrameImage gTrainerBackPicTable_OldMan[]; extern const struct SpriteFrameImage gTrainerBackPicTable_RSBrendan[]; extern const struct SpriteFrameImage gTrainerBackPicTable_RSMay[]; diff --git a/include/graphics.h b/include/graphics.h index 296dee465..e87acb556 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -2652,7 +2652,7 @@ extern const u32 gTrainerPalette_RSBrendan1[]; extern const u32 gTrainerPalette_RSMay1[]; extern const u32 gTrainerPalette_LeafBackPic[]; extern const u32 gTrainerPalette_RedBackPic[]; -extern const u32 gTrainerPalette_PokeDudeBackPic[]; +extern const u32 gTrainerPalette_PokedudeBackPic[]; extern const u32 gTrainerPalette_OldManBackPic[]; extern const u32 gTrainerPalette_PokemonBreederM[]; extern const u32 gTrainerPalette_RSPokemonBreederF[]; @@ -4354,7 +4354,7 @@ extern const u8 gBerryPouchBg1Tilemap[]; extern const u8 gTrainerBackPic_Red[]; extern const u8 gTrainerBackPic_Leaf[]; -extern const u8 gTrainerBackPic_PokeDude[]; +extern const u8 gTrainerBackPic_Pokedude[]; extern const u8 gTrainerBackPic_OldMan[]; extern const u8 gTrainerBackPic_RSBrendan[]; extern const u8 gTrainerBackPic_RSMay[]; diff --git a/include/item_menu.h b/include/item_menu.h index 4720080da..27bd73e72 100644 --- a/include/item_menu.h +++ b/include/item_menu.h @@ -11,9 +11,9 @@ struct BagStruct { - void (*bagCallback)(void); + MainCallback bagCallback; u8 location; - u8 bagOpen; + bool8 bagOpen; u16 pocket; u16 itemsAbove[3]; u16 cursorPos[3]; @@ -28,7 +28,7 @@ void sub_81AAC50(void); void sub_81AAC70(void); void CB2_SetUpReshowBattleScreenAfterMenu(void); void ResetBagCursorPositions(void); -void InitPokeDudeBag(u8); +void InitPokedudeBag(u8); void CB2_BagMenuFromStartMenu(void); void MoveItemSlotInList(struct ItemSlot * itemSlots_, u32 from, u32 to_); void ItemMenu_StartFadeToExitCallback(u8 taskId); diff --git a/include/strings.h b/include/strings.h index 6241bd8a9..7e8a4fbb4 100644 --- a/include/strings.h +++ b/include/strings.h @@ -112,8 +112,8 @@ extern const u8 gText_OhNoICantBuyThat[]; extern const u8 gText_HowManyWouldYouLikeToSell[]; extern const u8 gText_ICanPayThisMuch_WouldThatBeOkay[]; extern const u8 gText_TurnedOverItemsWorthYen[]; -extern const u8 gPokeDudeText_TMTypes[]; -extern const u8 gPokeDudeText_ReadTMDescription[]; +extern const u8 gPokedudeText_TMTypes[]; +extern const u8 gPokedudeText_ReadTMDescription[]; extern const u8 gFameCheckerText_Cancel[]; extern const u8 gFameCheckerText_ListMenuCursor[]; extern const u8 gFameCheckerText_FameCheckerWillBeClosed[]; @@ -134,7 +134,7 @@ extern const u8 gTeachyTvString_CatchPkmn[]; extern const u8 gTeachyTvString_AboutTMs[]; extern const u8 gTeachyTvString_RegisterItem[]; extern const u8 gTeachyTvString_Cancel[]; -extern const u8 gTeachyTvText_PokeDudeSaysHello[]; +extern const u8 gTeachyTvText_PokedudeSaysHello[]; extern const u8 gTeachyTvText_BattleScript1[]; extern const u8 gTeachyTvText_StatusScript1[]; extern const u8 gTeachyTvText_MatchupsScript1[]; diff --git a/include/tm_case.h b/include/tm_case.h index bb88fc4d1..22fb021e0 100644 --- a/include/tm_case.h +++ b/include/tm_case.h @@ -13,6 +13,6 @@ enum TmCaseType void InitTMCase(u8 a0, void (* a1)(void), u8 a2); void ResetTMCaseCursorPos(void); -void PokeDude_InitTMCase(void); +void Pokedude_InitTMCase(void); #endif //GUARD_TM_CASE_H -- cgit v1.2.3 From 2cd1460cc5910a78cd25929692cf12646fd7d4b7 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Sun, 19 Jan 2020 21:48:48 -0500 Subject: Document Fuchsia City scripts --- include/battle.h | 1 - include/constants/flags.h | 2 +- include/constants/global.h | 2 ++ include/constants/layouts.h | 4 ++-- include/constants/map_groups.h | 4 ++-- include/event_scripts.h | 8 ++++---- 6 files changed, 11 insertions(+), 10 deletions(-) (limited to 'include') diff --git a/include/battle.h b/include/battle.h index bed12204f..c9534745d 100644 --- a/include/battle.h +++ b/include/battle.h @@ -45,7 +45,6 @@ #define B_ACTION_NONE 0xFF #define MAX_TRAINER_ITEMS 4 -#define MAX_MON_MOVES 4 // array entries for battle communication #define MULTIUSE_STATE 0x0 diff --git a/include/constants/flags.h b/include/constants/flags.h index 982c90fcc..2f03573ab 100644 --- a/include/constants/flags.h +++ b/include/constants/flags.h @@ -450,7 +450,7 @@ #define FLAG_HIDE_CERULEAN_CAVE_2F_ULTRA_BALL 0x1B6 #define FLAG_HIDE_CERULEAN_CAVE_B1F_MAX_REVIVE 0x1B7 #define FLAG_HIDE_CERULEAN_CAVE_B1F_ULTRA_BALL 0x1B8 -#define FLAG_HIDE_FUCHSIA_CITY_BUILDING1_RARE_CANDY 0x1B9 +#define FLAG_HIDE_FUCHSIA_CITY_WARDENS_HOUSE_RARE_CANDY 0x1B9 #define FLAG_HIDE_TWO_ISLAND_REVIVE 0x1BA #define FLAG_HIDE_THREE_ISLAND_ZINC 0x1BB #define FLAG_0x1BC 0x1BC diff --git a/include/constants/global.h b/include/constants/global.h index 420a9da71..9aee27d8e 100644 --- a/include/constants/global.h +++ b/include/constants/global.h @@ -59,6 +59,8 @@ #define NUM_BAG_POCKETS 5 +#define MAX_MON_MOVES 4 + #define PARTY_SIZE 6 #define MULTI_PARTY_SIZE (PARTY_SIZE / 2) diff --git a/include/constants/layouts.h b/include/constants/layouts.h index a9d40220f..d0454a0ad 100644 --- a/include/constants/layouts.h +++ b/include/constants/layouts.h @@ -182,8 +182,8 @@ #define LAYOUT_CELADON_CITY_DEPARTMENT_STORE_ROOF 197 #define LAYOUT_SAFARI_ZONE_BUILDING 198 #define LAYOUT_SAFARI_ZONE_SECRET_HOUSE 199 -#define LAYOUT_FUCHSIA_CITY_ZOO_BUILDING 200 -#define LAYOUT_FUCHSIA_CITY_BUILDING1 201 +#define LAYOUT_FUCHSIA_CITY_SAFARI_ZONE_OFFICE 200 +#define LAYOUT_FUCHSIA_CITY_WARDENS_HOUSE 201 #define LAYOUT_FUCHSIA_CITY_HOUSE2 202 #define LAYOUT_CINNABAR_ISLAND_POKEMON_LAB_ENTRANCE 203 #define LAYOUT_CINNABAR_ISLAND_POKEMON_LAB_LOUNGE 204 diff --git a/include/constants/map_groups.h b/include/constants/map_groups.h index 4d37b0dc8..a43ae78d0 100644 --- a/include/constants/map_groups.h +++ b/include/constants/map_groups.h @@ -342,12 +342,12 @@ // Map Group 11 #define MAP_FUCHSIA_CITY_SAFARI_ZONE_ENTRANCE (0 | (11 << 8)) #define MAP_FUCHSIA_CITY_MART (1 | (11 << 8)) -#define MAP_FUCHSIA_CITY_ZOO_BUILDING (2 | (11 << 8)) +#define MAP_FUCHSIA_CITY_SAFARI_ZONE_OFFICE (2 | (11 << 8)) #define MAP_FUCHSIA_CITY_GYM (3 | (11 << 8)) #define MAP_FUCHSIA_CITY_HOUSE1 (4 | (11 << 8)) #define MAP_FUCHSIA_CITY_POKEMON_CENTER_1F (5 | (11 << 8)) #define MAP_FUCHSIA_CITY_POKEMON_CENTER_2F (6 | (11 << 8)) -#define MAP_FUCHSIA_CITY_BUILDING1 (7 | (11 << 8)) +#define MAP_FUCHSIA_CITY_WARDENS_HOUSE (7 | (11 << 8)) #define MAP_FUCHSIA_CITY_HOUSE2 (8 | (11 << 8)) #define MAP_FUCHSIA_CITY_HOUSE3 (9 | (11 << 8)) diff --git a/include/event_scripts.h b/include/event_scripts.h index b5e355484..468b965d0 100644 --- a/include/event_scripts.h +++ b/include/event_scripts.h @@ -1148,10 +1148,10 @@ extern const u8 EventScript_FldEffStrength[]; extern const u8 EventScript_FailSweetScent[]; extern const u8 EventScript_FldEffRockSmash[]; -extern const u8 EventScript_SafariTimesUp[]; -extern const u8 EventScript_SafariRetire[]; -extern const u8 EventScript_SafariWarpOut[]; -extern const u8 EventScript_SafariOutOfBalls[]; +extern const u8 SafariZone_EventScript_TimesUp[]; +extern const u8 SafariZone_EventScript_RetirePrompt[]; +extern const u8 SafariZone_EventScript_OutOfBallsMidBattle[]; +extern const u8 SafariZone_EventScript_OutOfBalls[]; extern const u8 EventScript_ItemfinderDigUpUnderfootItem[]; -- cgit v1.2.3 From 5b27d3d2683251977873976f7774e352e3fd4e23 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 20 Jan 2020 01:32:25 -0500 Subject: Document Safari Zone scripts --- include/constants/layouts.h | 2 +- include/constants/map_groups.h | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) (limited to 'include') diff --git a/include/constants/layouts.h b/include/constants/layouts.h index d0454a0ad..ef3cfe126 100644 --- a/include/constants/layouts.h +++ b/include/constants/layouts.h @@ -180,7 +180,7 @@ #define LAYOUT_CELADON_CITY_DEPARTMENT_STORE_4F 195 #define LAYOUT_CELADON_CITY_DEPARTMENT_STORE_5F 196 #define LAYOUT_CELADON_CITY_DEPARTMENT_STORE_ROOF 197 -#define LAYOUT_SAFARI_ZONE_BUILDING 198 +#define LAYOUT_SAFARI_ZONE_REST_HOUSE 198 #define LAYOUT_SAFARI_ZONE_SECRET_HOUSE 199 #define LAYOUT_FUCHSIA_CITY_SAFARI_ZONE_OFFICE 200 #define LAYOUT_FUCHSIA_CITY_WARDENS_HOUSE 201 diff --git a/include/constants/map_groups.h b/include/constants/map_groups.h index a43ae78d0..0cc1c27fb 100644 --- a/include/constants/map_groups.h +++ b/include/constants/map_groups.h @@ -76,10 +76,10 @@ #define MAP_SAFARI_ZONE_EAST (64 | (1 << 8)) #define MAP_SAFARI_ZONE_NORTH (65 | (1 << 8)) #define MAP_SAFARI_ZONE_WEST (66 | (1 << 8)) -#define MAP_SAFARI_ZONE_BUILDING1 (67 | (1 << 8)) -#define MAP_SAFARI_ZONE_BUILDING2 (68 | (1 << 8)) -#define MAP_SAFARI_ZONE_BUILDING3 (69 | (1 << 8)) -#define MAP_SAFARI_ZONE_BUILDING4 (70 | (1 << 8)) +#define MAP_SAFARI_ZONE_CENTER_REST_HOUSE (67 | (1 << 8)) +#define MAP_SAFARI_ZONE_EAST_REST_HOUSE (68 | (1 << 8)) +#define MAP_SAFARI_ZONE_NORTH_REST_HOUSE (69 | (1 << 8)) +#define MAP_SAFARI_ZONE_WEST_REST_HOUSE (70 | (1 << 8)) #define MAP_SAFARI_ZONE_SECRET_HOUSE (71 | (1 << 8)) #define MAP_CERULEAN_CAVE_1F (72 | (1 << 8)) #define MAP_CERULEAN_CAVE_2F (73 | (1 << 8)) -- cgit v1.2.3 From cedebf15ee3595228d6fa212b74e1c5aa6fac3f1 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 20 Jan 2020 09:09:02 -0500 Subject: sub_8115A68 --- include/link_rfu.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'include') diff --git a/include/link_rfu.h b/include/link_rfu.h index bde20c555..fd77688f2 100644 --- a/include/link_rfu.h +++ b/include/link_rfu.h @@ -295,6 +295,18 @@ void sub_80FEB3C(void); void sub_80FAFE0(u8 a0); bool32 sub_80FA44C(u32 a0); bool8 sub_80FC1B0(void); +bool8 sub_80F8F40(void); +void sub_80F8F5C(void); +bool32 sub_80FA5D4(void); +bool32 sub_80FC1CC(void); +bool32 sub_80F8F7C(bool32 a0); +bool32 sub_80FA634(u16 a0, const u8 *a1); +void sub_80FA670(u8 a0, u16 a1, const u8 *a2); +u32 sub_80FA6FC(u16 a0, const u8 *a1); +void sub_80FAF58(u8 a0, u32 a1, u32 a2); +void sub_80FBB8C(u32 a0); +void sub_80FBD4C(const u8 *ptr, u16 a1); +void LinkRfu3_SetGnameUnameFromStaticBuffers(struct GFtgtGname *gname, u8 *uname); #include "mevent_server.h" extern const struct mevent_server_cmd gMEventSrvScript_OtherTrainerCanceled[]; -- cgit v1.2.3 From 8d5af5332934f47f022907d2acb2e71d96b04449 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 20 Jan 2020 12:14:55 -0500 Subject: through sub_8116738 --- include/link_rfu.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'include') diff --git a/include/link_rfu.h b/include/link_rfu.h index fd77688f2..a0db0a425 100644 --- a/include/link_rfu.h +++ b/include/link_rfu.h @@ -307,6 +307,8 @@ void sub_80FAF58(u8 a0, u32 a1, u32 a2); void sub_80FBB8C(u32 a0); void sub_80FBD4C(const u8 *ptr, u16 a1); void LinkRfu3_SetGnameUnameFromStaticBuffers(struct GFtgtGname *gname, u8 *uname); +void sub_80FBBD8(void); +void sub_80FA6BC(void); #include "mevent_server.h" extern const struct mevent_server_cmd gMEventSrvScript_OtherTrainerCanceled[]; -- cgit v1.2.3 From ac5bfcf1ce9c0f1dfe240dca3aeb0f3fcaa83280 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 20 Jan 2020 14:46:01 -0500 Subject: through sub_8117A0C --- include/berry_crush.h | 6 ++++++ include/cable_club.h | 1 + include/dodrio_berry_picking.h | 6 ++++++ include/field_control_avatar.h | 1 + include/field_weather.h | 2 +- include/link.h | 1 + include/link_rfu.h | 8 +++++++- include/mevent.h | 3 +++ include/mystery_gift_menu.h | 3 +++ include/overworld.h | 3 ++- include/pokemon_jump.h | 1 + include/save_location.h | 1 + include/union_room.h | 2 +- include/union_room_chat.h | 1 + include/union_room_player_avatar.h | 6 ++++++ 15 files changed, 41 insertions(+), 4 deletions(-) create mode 100644 include/berry_crush.h create mode 100644 include/dodrio_berry_picking.h create mode 100644 include/union_room_player_avatar.h (limited to 'include') diff --git a/include/berry_crush.h b/include/berry_crush.h new file mode 100644 index 000000000..2583aba61 --- /dev/null +++ b/include/berry_crush.h @@ -0,0 +1,6 @@ +#ifndef GUARD_BERRY_CRUSH_H +#define GUARD_BERRY_CRUSH_H + +void sub_814B754(MainCallback callback); + +#endif //GUARD_BERRY_CRUSH_H diff --git a/include/cable_club.h b/include/cable_club.h index 5375c2210..c1dbab1a5 100644 --- a/include/cable_club.h +++ b/include/cable_club.h @@ -10,5 +10,6 @@ // Exported ROM declarations void sub_8081A90(u8 taskId); u8 sub_8081150(void); +void sub_8081668(void); #endif //GUARD_CABLE_CLUB_H diff --git a/include/dodrio_berry_picking.h b/include/dodrio_berry_picking.h new file mode 100644 index 000000000..59736ba7a --- /dev/null +++ b/include/dodrio_berry_picking.h @@ -0,0 +1,6 @@ +#ifndef GUARD_DODRIO_BERRY_PICKING_H +#define GUARD_DODRIO_BERRY_PICKING_H + +void sub_81507FC(u16 species, MainCallback callback); + +#endif //GUARD_DODRIO_BERRY_PICKING_H diff --git a/include/field_control_avatar.h b/include/field_control_avatar.h index ecb622de5..57a2fab66 100644 --- a/include/field_control_avatar.h +++ b/include/field_control_avatar.h @@ -7,5 +7,6 @@ extern u32 gUnknown_3005078; void RestartWildEncounterImmunitySteps(void); void ClearPoisonStepCounter(void); +void SetCableClubWarp(void); #endif //GUARD_FIELD_CONTROL_AVATAR_H diff --git a/include/field_weather.h b/include/field_weather.h index 2709a7298..de2543edb 100644 --- a/include/field_weather.h +++ b/include/field_weather.h @@ -3,7 +3,7 @@ #include "global.h" -void fade_screen(u8, s8); +void FadeScreen(u8, s8); void SetSav1Weather(u32); u8 GetSav1Weather(void); diff --git a/include/link.h b/include/link.h index 4175ac97f..770a60f44 100644 --- a/include/link.h +++ b/include/link.h @@ -278,5 +278,6 @@ bool8 HandleLinkConnection(void); void sub_800B0B4(void); void sub_800B110(u32 who); void sub_800ACBC(u32 status, u8 lastSendQueueCount, u8 lastRecvQueueCount, u8 unk_06); +u8 sub_800A8D4(void); #endif // GUARD_LINK_H diff --git a/include/link_rfu.h b/include/link_rfu.h index a0db0a425..6f7e01678 100644 --- a/include/link_rfu.h +++ b/include/link_rfu.h @@ -235,7 +235,7 @@ bool8 IsLinkRfuTaskFinished(void); void DestroyWirelessStatusIndicatorSprite(void); void MEvent_CreateTask_CardOrNewsWithFriend(u8); void MEvent_CreateTask_CardOrNewsOverWireless(u8); -void MEvent_CreateTask_Leader(u8); +void MEvent_CreateTask_Leader(u32 arg0); void sub_80F9E2C(void * data); u8 sub_8116DE0(void); void sub_80FBB4C(void); @@ -309,6 +309,12 @@ void sub_80FBD4C(const u8 *ptr, u16 a1); void LinkRfu3_SetGnameUnameFromStaticBuffers(struct GFtgtGname *gname, u8 *uname); void sub_80FBBD8(void); void sub_80FA6BC(void); +void sub_80FBF54(const u8 *src, u16 trainerId); +void sub_80FB008(u8 a0, u32 a1, u32 a2); +void RecordMixTrainerNames(void); +void sub_80F8CFC(); +void sub_80F8D14(); +void sub_80FAF74(bool32 a0, bool32 a1); #include "mevent_server.h" extern const struct mevent_server_cmd gMEventSrvScript_OtherTrainerCanceled[]; diff --git a/include/mevent.h b/include/mevent.h index 81caeb42f..eb7cf77f3 100644 --- a/include/mevent.h +++ b/include/mevent.h @@ -70,5 +70,8 @@ void sub_8143D24(void); u16 sub_81445C0(u32 command); void sub_8144714(u32 a0, u32 a1); u16 *GetMEventProfileECWordsMaybe(void); +void sub_81446C4(void); +bool32 sub_81446D0(u16 a0); +u16 GetWonderCardFlagID(void); #endif //GUARD_MEVENT_H diff --git a/include/mystery_gift_menu.h b/include/mystery_gift_menu.h index 32624d602..bd790b36e 100644 --- a/include/mystery_gift_menu.h +++ b/include/mystery_gift_menu.h @@ -7,5 +7,8 @@ void MainCB_FreeAllBuffersAndReturnToInitTitleScreen(void); void PrintMysteryGiftOrEReaderTopMenu(bool8, bool32); void c2_mystery_gift(void); void c2_mystery_gift_e_reader_run(void); +s8 mevent_message_print_and_prompt_yes_no(u8 * textState, u16 * windowId, bool8 yesNoBoxPlacement, const u8 * str); +void MG_DrawTextBorder(u8 windowId); +u16 GetMysteryGiftBaseBlock(void); #endif //GUARD_MYSTERY_GIFT_MENU_H diff --git a/include/overworld.h b/include/overworld.h index c24b63cf9..a7031e56d 100644 --- a/include/overworld.h +++ b/include/overworld.h @@ -62,7 +62,8 @@ extern struct WarpData gUnknown_2031DB4; extern struct WarpData gUnknown_2031DBC; extern u8 gUnknown_2031DE0; -extern u8 gUnknown_300502C; +extern u8 gFieldLinkPlayerCount; +extern u8 gLocalLinkPlayerId; void IncrementGameStat(u8 index); diff --git a/include/pokemon_jump.h b/include/pokemon_jump.h index 8623b223a..0e9094752 100644 --- a/include/pokemon_jump.h +++ b/include/pokemon_jump.h @@ -5,5 +5,6 @@ void ResetPokeJumpResults(void); bool32 IsSpeciesAllowedInPokemonJump(u16 species); +void sub_8147AA8(u16 species, MainCallback callback); #endif // GUARD_POKEMON_JUMP_H diff --git a/include/save_location.h b/include/save_location.h index fb71ab728..c8e362231 100644 --- a/include/save_location.h +++ b/include/save_location.h @@ -6,6 +6,7 @@ #define POKECENTER_SAVEWARP (1 << 1) #define LOBBY_SAVEWARP (1 << 2) #define UNK_SPECIAL_SAVE_WARP_FLAG_3 (1 << 3) +#define CHAMPION_SAVEWARP (1 << 7) void TrySetMapSaveWarpStatus(void); bool32 IsCurMapPokeCenter(void); diff --git a/include/union_room.h b/include/union_room.h index d57683a8a..9221b6bf5 100644 --- a/include/union_room.h +++ b/include/union_room.h @@ -134,7 +134,7 @@ union UnkUnion_Main struct UnkStruct_URoom *uRoom; }; -struct TradeUnkStruct +struct UnionRoomTrade { u16 field_0; u16 type; diff --git a/include/union_room_chat.h b/include/union_room_chat.h index 17e482525..66daac376 100644 --- a/include/union_room_chat.h +++ b/include/union_room_chat.h @@ -2,6 +2,7 @@ #define GUARD_UNION_ROOM_CHAT_H void sub_801DD98(void); +void sub_8128420(void); void copy_strings_to_sav1(void); #endif // GUARD_UNION_ROOM_CHAT_H diff --git a/include/union_room_player_avatar.h b/include/union_room_player_avatar.h new file mode 100644 index 000000000..12b7773e7 --- /dev/null +++ b/include/union_room_player_avatar.h @@ -0,0 +1,6 @@ +#ifndef GUARD_UNION_ROOM_PLAYER_AVATAR_H +#define GUARD_UNION_ROOM_PLAYER_AVATAR_H + +void sub_811C1C8(void); + +#endif //GUARD_UNION_ROOM_PLAYER_AVATAR_H -- cgit v1.2.3 From 2908c9fa954b2e4b6afa70f3686853ea69cf8569 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Mon, 20 Jan 2020 15:17:34 -0500 Subject: Document some misc small scripts --- include/constants/daycare.h | 27 +++++++++++++++++++++++++++ include/constants/flags.h | 16 ++++++++-------- include/constants/global.h | 1 + include/constants/menu.h | 31 +++++++++++++++++++++++++++++++ include/constants/pokemon.h | 2 ++ include/constants/region_map.h | 4 +++- include/daycare.h | 2 -- include/event_scripts.h | 2 +- 8 files changed, 73 insertions(+), 12 deletions(-) create mode 100644 include/constants/daycare.h (limited to 'include') diff --git a/include/constants/daycare.h b/include/constants/daycare.h new file mode 100644 index 000000000..103f920f2 --- /dev/null +++ b/include/constants/daycare.h @@ -0,0 +1,27 @@ +#ifndef GUARD_DAYCARE_CONSTANTS_H +#define GUARD_DAYCARE_CONSTANTS_H + +// Parent compatability scores +#define PARENTS_INCOMPATIBLE 0 +#define PARENTS_LOW_COMPATIBILITY 20 +#define PARENTS_MED_COMPATABILITY 50 +#define PARENTS_MAX_COMPATABILITY 70 + +// Daycare state +#define DAYCARE_NO_MONS 0 +#define DAYCARE_EGG_WAITING 1 +#define DAYCARE_ONE_MON 2 +#define DAYCARE_TWO_MONS 3 + +#define INHERITED_IV_COUNT 3 +#define EGG_HATCH_LEVEL 5 +#define EGG_GENDER_MALE 0x8000 // used to create a male egg from a female-only parent species (e.g. Nidoran) + +#define DAYCARE_LEVEL_MENU_EXIT 5 +#define DAYCARE_EXITED_LEVEL_MENU 2 // would be redundant with above if GF had used the same value + +// Array buffers +#define EGG_MOVES_ARRAY_COUNT 10 +#define EGG_LVL_UP_MOVES_ARRAY_COUNT 50 + +#endif //GUARD_DAYCARE_CONSTANTS_H diff --git a/include/constants/flags.h b/include/constants/flags.h index 982c90fcc..cc65cffa2 100644 --- a/include/constants/flags.h +++ b/include/constants/flags.h @@ -104,14 +104,14 @@ #define FLAG_HIDE_DOJO_HITMONLEE_BALL 0x060 #define FLAG_HIDE_DOJO_HITMONCHAN_BALL 0x061 #define FLAG_HIDE_CINNABAR_BILL 0x062 -#define FLAG_HIDE_UNION_ROOM_1 0x063 -#define FLAG_HIDE_UNION_ROOM_2 0x064 -#define FLAG_HIDE_UNION_ROOM_3 0x065 -#define FLAG_HIDE_UNION_ROOM_4 0x066 -#define FLAG_HIDE_UNION_ROOM_5 0x067 -#define FLAG_HIDE_UNION_ROOM_6 0x068 -#define FLAG_HIDE_UNION_ROOM_7 0x069 -#define FLAG_HIDE_UNION_ROOM_8 0x06A +#define FLAG_HIDE_UNION_ROOM_PLAYER_1 0x063 +#define FLAG_HIDE_UNION_ROOM_PLAYER_2 0x064 +#define FLAG_HIDE_UNION_ROOM_PLAYER_3 0x065 +#define FLAG_HIDE_UNION_ROOM_PLAYER_4 0x066 +#define FLAG_HIDE_UNION_ROOM_PLAYER_5 0x067 +#define FLAG_HIDE_UNION_ROOM_PLAYER_6 0x068 +#define FLAG_HIDE_UNION_ROOM_PLAYER_7 0x069 +#define FLAG_HIDE_UNION_ROOM_PLAYER_8 0x06A #define FLAG_HIDE_CINNABAR_SEAGALLOP 0x06B #define FLAG_HIDE_SAFFRON_FAN_CLUB_BLACKBELT 0x06C #define FLAG_HIDE_SAFFRON_FAN_CLUB_ROCKER 0x06D diff --git a/include/constants/global.h b/include/constants/global.h index 420a9da71..24a61a1e6 100644 --- a/include/constants/global.h +++ b/include/constants/global.h @@ -36,6 +36,7 @@ #define MALE 0 #define FEMALE 1 +#define GENDER_COUNT 2 #define OPTIONS_BUTTON_MODE_HELP 0 #define OPTIONS_BUTTON_MODE_LR 1 diff --git a/include/constants/menu.h b/include/constants/menu.h index 6d72787dc..aed98dec4 100644 --- a/include/constants/menu.h +++ b/include/constants/menu.h @@ -78,4 +78,35 @@ #define LISTMENU_BERRY_POWDER 5 #define LISTMENU_TRAINER_TOWER_FLOORS 6 +// Std String Ids +#define STDSTRING_COOL 0 +#define STDSTRING_BEAUTY 1 +#define STDSTRING_CUTE 2 +#define STDSTRING_SMART 3 +#define STDSTRING_TOUGH 4 +#define STDSTRING_COOL2 5 +#define STDSTRING_BEAUTY2 6 +#define STDSTRING_CUTE2 7 +#define STDSTRING_SMART2 8 +#define STDSTRING_TOUGH2 9 +#define STDSTRING_ITEMS 10 +#define STDSTRING_KEY_ITEMS 11 +#define STDSTRING_POKEBALLS 12 +#define STDSTRING_TMHMS 13 +#define STDSTRING_BERRIES 14 +#define STDSTRING_BOULDER_BADGE 15 +#define STDSTRING_CASCADE_BADGE 16 +#define STDSTRING_THUNDER_BADGE 17 +#define STDSTRING_RAINBOW_BADGE 18 +#define STDSTRING_SOUL_BADGE 19 +#define STDSTRING_MARSH_BADGE 20 +#define STDSTRING_VOLCANO_BADGE 21 +#define STDSTRING_EARTH_BADGE 22 +#define STDSTRING_COINS 23 +#define STDSTRING_ITEMS_POCKET 24 +#define STDSTRING_KEY_ITEMS_POCKET 25 +#define STDSTRING_POKEBALLS_POCKET 26 +#define STDSTRING_TM_CASE 27 +#define STDSTRING_BERRY_POUCH 28 + #endif //GUARD_CONSTANTS_MENU_H diff --git a/include/constants/pokemon.h b/include/constants/pokemon.h index c6fc55003..dfbba41d9 100644 --- a/include/constants/pokemon.h +++ b/include/constants/pokemon.h @@ -40,6 +40,8 @@ #define EGG_GROUP_DRAGON 14 #define EGG_GROUP_UNDISCOVERED 15 +#define EGG_GROUPS_PER_MON 2 + // Pokemon natures #define NATURE_HARDY 0 #define NATURE_LONELY 1 diff --git a/include/constants/region_map.h b/include/constants/region_map.h index bd087bd60..78dab242c 100644 --- a/include/constants/region_map.h +++ b/include/constants/region_map.h @@ -206,6 +206,8 @@ #define MAPSEC_SPECIAL_AREA 0xC4 #define MAPSEC_NONE 0xC5 -#define MAPSEC_IN_GAME_TRADE 0xFE +#define METLOC_SPECIAL_EGG 0xFD +#define METLOC_IN_GAME_TRADE 0xFE +#define METLOC_FATEFUL_ENCOUNTER 0xFF #endif //GUARD_CONSTANTS_REGION_MAP_H diff --git a/include/daycare.h b/include/daycare.h index 08ca11187..71eada93e 100644 --- a/include/daycare.h +++ b/include/daycare.h @@ -3,8 +3,6 @@ #include "global.h" -#define EGG_HATCH_LEVEL 5 - u8 *GetMonNick(struct Pokemon *mon, u8 *dest); u8 *GetBoxMonNick(struct BoxPokemon *mon, u8 *dest); u8 CountPokemonInDaycare(struct DayCare *daycare); diff --git a/include/event_scripts.h b/include/event_scripts.h index b5e355484..c826fabae 100644 --- a/include/event_scripts.h +++ b/include/event_scripts.h @@ -1162,7 +1162,7 @@ extern const u8 EventScript_TryDoNormalTrainerBattle[]; extern const u8 EventScript_TryDoDoubleRematchBattle[]; extern const u8 EventScript_TryDoRematchBattle[]; extern const u8 gUnknown_81A4EB4[]; -extern const u8 EventScript_1C555B[]; +extern const u8 Test_EventScript_Sign[]; // new_game extern const u8 EventScript_ResetAllMapFlags[]; -- cgit v1.2.3 From a083f0f57f684eba3bb0f9ae3aeb09edb41f2fc2 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 20 Jan 2020 15:24:36 -0500 Subject: through sub_81186C8 --- include/link_rfu.h | 5 +++-- include/union_room.h | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) (limited to 'include') diff --git a/include/link_rfu.h b/include/link_rfu.h index 6f7e01678..35e5d46ff 100644 --- a/include/link_rfu.h +++ b/include/link_rfu.h @@ -233,8 +233,8 @@ void MG_DrawCheckerboardPattern(void); void task_add_05_task_del_08FA224_when_no_RfuFunc(void); bool8 IsLinkRfuTaskFinished(void); void DestroyWirelessStatusIndicatorSprite(void); -void MEvent_CreateTask_CardOrNewsWithFriend(u8); -void MEvent_CreateTask_CardOrNewsOverWireless(u8); +void MEvent_CreateTask_CardOrNewsWithFriend(u32 arg0); +void MEvent_CreateTask_CardOrNewsOverWireless(u32 arg0); void MEvent_CreateTask_Leader(u32 arg0); void sub_80F9E2C(void * data); u8 sub_8116DE0(void); @@ -315,6 +315,7 @@ void RecordMixTrainerNames(void); void sub_80F8CFC(); void sub_80F8D14(); void sub_80FAF74(bool32 a0, bool32 a1); +void ClearAndInitHostRFUtgtGname(void); #include "mevent_server.h" extern const struct mevent_server_cmd gMEventSrvScript_OtherTrainerCanceled[]; diff --git a/include/union_room.h b/include/union_room.h index 9221b6bf5..b485d2035 100644 --- a/include/union_room.h +++ b/include/union_room.h @@ -124,7 +124,7 @@ struct UnkStruct_URoom struct UnkStruct_8019BA8 field_A0[8]; u8 field_C0[12][15]; u8 field_174[48]; - u8 field_1A4[200]; + u8 field_1A4[180]; }; union UnkUnion_Main -- cgit v1.2.3 From 1fd20be8e10d9b810095186903acf9a405ce97c4 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 20 Jan 2020 17:08:24 -0500 Subject: sub_81186E0 --- include/field_fadetransition.h | 2 ++ include/link_rfu.h | 7 +++++ include/party_menu.h | 2 +- include/union_room.h | 60 +++++++++++++++++++------------------- include/union_room_player_avatar.h | 7 +++++ 5 files changed, 47 insertions(+), 31 deletions(-) (limited to 'include') diff --git a/include/field_fadetransition.h b/include/field_fadetransition.h index 22849a37d..d27d0e54a 100644 --- a/include/field_fadetransition.h +++ b/include/field_fadetransition.h @@ -17,6 +17,8 @@ void FieldCallback_ReturnToEventScript2(void); void sub_807DC00(void); void FadeTransition_FadeInOnReturnToStartMenu(void); +void sub_807DCE4(void); + bool32 sub_807E418(void); #endif // GUARD_FIELD_FADETRANSITION_H diff --git a/include/link_rfu.h b/include/link_rfu.h index 35e5d46ff..3869ba000 100644 --- a/include/link_rfu.h +++ b/include/link_rfu.h @@ -316,6 +316,13 @@ void sub_80F8CFC(); void sub_80F8D14(); void sub_80FAF74(bool32 a0, bool32 a1); void ClearAndInitHostRFUtgtGname(void); +void sub_80F8FA0(void); +void sub_80FAFA0(u32 type, u32 species, u32 level); +bool32 sub_80FBB0C(void); +void sub_80FBC00(void); +void sub_80FBD6C(u32 a0); +void sub_80FC114(const u8 *name, struct GFtgtGname *structPtr, u8 a2); +bool32 sub_80FD338(u16 id, u8 *name); #include "mevent_server.h" extern const struct mevent_server_cmd gMEventSrvScript_OtherTrainerCanceled[]; diff --git a/include/party_menu.h b/include/party_menu.h index cc8889137..a1b85e059 100644 --- a/include/party_menu.h +++ b/include/party_menu.h @@ -68,7 +68,7 @@ void CB2_ChooseMonToGiveItem(void); void ChooseMonToGiveMailFromMailbox(void); void InitChooseHalfPartyForBattle(u8 a1); void ClearSelectedPartyOrder(void); -void sub_81277F4(u8 menuType, MainCallback callback); +void ChooseMonForTradingBoard(u8 menuType, MainCallback callback); void ChooseMonForMoveTutor(void); void ChooseMonForWirelessMinigame(void); void OpenPartyMenuInTutorialBattle(u8 partyAction); diff --git a/include/union_room.h b/include/union_room.h index b485d2035..fa3ead8dc 100644 --- a/include/union_room.h +++ b/include/union_room.h @@ -95,36 +95,36 @@ struct UnkStruct_8019BA8 struct UnkStruct_URoom { - struct UnkStruct_Main0 *field_0; - struct UnkStruct_Main4 *field_4; - struct UnkStruct_Main0 *field_8; - struct UnkStruct_Main4 *field_C; - u16 field_10; - u16 field_12; - u8 state; - u8 stateAfterPrint; - u8 textState; - u8 field_17; - u8 field_18; - u8 field_19; - u8 field_1A; - u8 field_1B; - u8 field_1C; - u8 field_1D; - u8 field_1E; - u8 field_1F; - u8 field_20; - u8 spriteIds[40]; - u8 field_49; - u8 field_4A; - u16 field_4C[6]; - u8 field_58[0x98 - 0x58]; - u16 field_98; - u16 field_9A[3]; - struct UnkStruct_8019BA8 field_A0[8]; - u8 field_C0[12][15]; - u8 field_174[48]; - u8 field_1A4[180]; + /* 0x000 */ struct UnkStruct_Main0 *field_0; + /* 0x004 */ struct UnkStruct_Main4 *field_4; + /* 0x008 */ struct UnkStruct_Main0 *field_8; + /* 0x00C */ struct UnkStruct_Main4 *field_C; + /* 0x010 */ u16 field_10; + /* 0x012 */ u16 field_12; + /* 0x014 */ u8 state; + /* 0x015 */ u8 stateAfterPrint; + /* 0x016 */ u8 textState; + /* 0x017 */ u8 field_17; + /* 0x018 */ u8 field_18; + /* 0x019 */ u8 field_19; + /* 0x01A */ u8 field_1A; + /* 0x01B */ u8 field_1B; + /* 0x01C */ u8 field_1C; + /* 0x01D */ u8 field_1D; + /* 0x01E */ u8 field_1E; + /* 0x01F */ u8 field_1F; + /* 0x020 */ u8 field_20; + /* 0x021 */ u8 spriteIds[40]; + /* 0x049 */ u8 field_49; + /* 0x04A */ u8 field_4A; + /* 0x04C */ u16 field_4C[6]; + /* 0x058 */ u8 field_58[0x84 - 0x58]; + /* 0x084 */ u16 field_98; + /* 0x086 */ u16 field_9A[3]; + /* 0x08C */ struct UnkStruct_8019BA8 field_A0[8]; + /* 0x08C */ u8 field_C0[12][15]; + /* 0x08C */ u8 field_174[48]; + /* 0x08C */ u8 field_1A4[200]; }; union UnkUnion_Main diff --git a/include/union_room_player_avatar.h b/include/union_room_player_avatar.h index 12b7773e7..68d64736d 100644 --- a/include/union_room_player_avatar.h +++ b/include/union_room_player_avatar.h @@ -2,5 +2,12 @@ #define GUARD_UNION_ROOM_PLAYER_AVATAR_H void sub_811C1C8(void); +void sub_811BAAC(u8 *spriteIds, s32 arg1); +void sub_811BB40(u8 *spriteIds); +void sub_811BB68(void); +void sub_811BECC(struct UnkStruct_URoom *arg0); +void sub_811BEDC(struct UnkStruct_URoom *arg0); +bool32 sub_811BF00(struct UnkStruct_Main0 *arg0, s16 *arg1, s16 *arg2, u8 *arg3); +void sub_811C028(u32 arg0, u32 arg1, struct UnkStruct_Main0 *arg2); #endif //GUARD_UNION_ROOM_PLAYER_AVATAR_H -- cgit v1.2.3 From 5e0a845fc491590a7bf7d9e9cb99cf1f57733665 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 20 Jan 2020 20:21:58 -0500 Subject: finish union_room.s code decomp --- include/event_object_lock.h | 1 + include/global.fieldmap.h | 6 +++--- include/link_rfu.h | 2 ++ include/union_room.h | 2 +- 4 files changed, 7 insertions(+), 4 deletions(-) (limited to 'include') diff --git a/include/event_object_lock.h b/include/event_object_lock.h index c5c32857b..5c65585b5 100644 --- a/include/event_object_lock.h +++ b/include/event_object_lock.h @@ -11,5 +11,6 @@ void sub_8098630(void); bool8 sub_8098734(void); void sub_80696C0(void); bool8 walkrun_is_standing_still(void); +void sub_80696F0(void); #endif // GUARD_EVENT_OBJECT_LOCK_H diff --git a/include/global.fieldmap.h b/include/global.fieldmap.h index 4402d5042..01cd992ec 100644 --- a/include/global.fieldmap.h +++ b/include/global.fieldmap.h @@ -275,9 +275,9 @@ enum struct PlayerAvatar /* 0x202E858 */ { /*0x00*/ u8 flags; - /*0x01*/ u8 bike; - /*0x02*/ u8 running2; - /*0x03*/ u8 running1; + /*0x01*/ u8 unk1; // used to be bike, but it's not that in Emerald and probably isn't here either. maybe transition flags? + /*0x02*/ u8 runningState; // this is a static running state. 00 is not moving, 01 is turn direction, 02 is moving. + /*0x03*/ u8 tileTransitionState; // this is a transition running state: 00 is not moving, 01 is transition between tiles, 02 means you are on the frame in which you have centered on a tile but are about to keep moving, even if changing directions. 2 is also used for a ledge hop, since you are transitioning. /*0x04*/ u8 spriteId; /*0x05*/ u8 objectEventId; /*0x06*/ u8 unk6; diff --git a/include/link_rfu.h b/include/link_rfu.h index 3869ba000..874f62511 100644 --- a/include/link_rfu.h +++ b/include/link_rfu.h @@ -323,6 +323,8 @@ void sub_80FBC00(void); void sub_80FBD6C(u32 a0); void sub_80FC114(const u8 *name, struct GFtgtGname *structPtr, u8 a2); bool32 sub_80FD338(u16 id, u8 *name); +bool8 sub_80FCC3C(struct GFtgtGname *gname, u8 *uname, u8 idx); +bool8 sub_80FCCF4(struct GFtgtGname *gname, u8 *uname, u8 idx); #include "mevent_server.h" extern const struct mevent_server_cmd gMEventSrvScript_OtherTrainerCanceled[]; diff --git a/include/union_room.h b/include/union_room.h index fa3ead8dc..fcd970f7d 100644 --- a/include/union_room.h +++ b/include/union_room.h @@ -118,7 +118,7 @@ struct UnkStruct_URoom /* 0x049 */ u8 field_49; /* 0x04A */ u8 field_4A; /* 0x04C */ u16 field_4C[6]; - /* 0x058 */ u8 field_58[0x84 - 0x58]; + /* 0x058 */ u8 field_58[4][11]; /* 0x084 */ u16 field_98; /* 0x086 */ u16 field_9A[3]; /* 0x08C */ struct UnkStruct_8019BA8 field_A0[8]; -- cgit v1.2.3 From 9f9b4dd13dfdbb2367059df09a15ba877ecd84e7 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Tue, 21 Jan 2020 14:36:13 -0500 Subject: Data through gUnknown_84570C8 --- include/constants/pokemon.h | 130 +++++++++++++++++++++++++++++++ include/pokemon.h | 184 +------------------------------------------- 2 files changed, 131 insertions(+), 183 deletions(-) (limited to 'include') diff --git a/include/constants/pokemon.h b/include/constants/pokemon.h index c6fc55003..2c8eeb3ea 100644 --- a/include/constants/pokemon.h +++ b/include/constants/pokemon.h @@ -1,6 +1,97 @@ #ifndef GUARD_CONSTANTS_POKEMON_H #define GUARD_CONSTANTS_POKEMON_H +// For (Set|Get)(Box)?MonData +#define MON_DATA_PERSONALITY 0 +#define MON_DATA_OT_ID 1 +#define MON_DATA_NICKNAME 2 +#define MON_DATA_LANGUAGE 3 +#define MON_DATA_SANITY_IS_BAD_EGG 4 +#define MON_DATA_SANITY_HAS_SPECIES 5 +#define MON_DATA_SANITY_IS_EGG 6 +#define MON_DATA_OT_NAME 7 +#define MON_DATA_MARKINGS 8 +#define MON_DATA_CHECKSUM 9 +#define MON_DATA_ENCRYPT_SEPARATOR 10 +#define MON_DATA_SPECIES 11 +#define MON_DATA_HELD_ITEM 12 +#define MON_DATA_MOVE1 13 +#define MON_DATA_MOVE2 14 +#define MON_DATA_MOVE3 15 +#define MON_DATA_MOVE4 16 +#define MON_DATA_PP1 17 +#define MON_DATA_PP2 18 +#define MON_DATA_PP3 19 +#define MON_DATA_PP4 20 +#define MON_DATA_PP_BONUSES 21 +#define MON_DATA_COOL 22 +#define MON_DATA_BEAUTY 23 +#define MON_DATA_CUTE 24 +#define MON_DATA_EXP 25 +#define MON_DATA_HP_EV 26 +#define MON_DATA_ATK_EV 27 +#define MON_DATA_DEF_EV 28 +#define MON_DATA_SPEED_EV 29 +#define MON_DATA_SPATK_EV 30 +#define MON_DATA_SPDEF_EV 31 +#define MON_DATA_FRIENDSHIP 32 +#define MON_DATA_SMART 33 +#define MON_DATA_POKERUS 34 +#define MON_DATA_MET_LOCATION 35 +#define MON_DATA_MET_LEVEL 36 +#define MON_DATA_MET_GAME 37 +#define MON_DATA_POKEBALL 38 +#define MON_DATA_HP_IV 39 +#define MON_DATA_ATK_IV 40 +#define MON_DATA_DEF_IV 41 +#define MON_DATA_SPEED_IV 42 +#define MON_DATA_SPATK_IV 43 +#define MON_DATA_SPDEF_IV 44 +#define MON_DATA_IS_EGG 45 +#define MON_DATA_ABILITY_NUM 46 +#define MON_DATA_TOUGH 47 +#define MON_DATA_SHEEN 48 +#define MON_DATA_OT_GENDER 49 +#define MON_DATA_COOL_RIBBON 50 +#define MON_DATA_BEAUTY_RIBBON 51 +#define MON_DATA_CUTE_RIBBON 52 +#define MON_DATA_SMART_RIBBON 53 +#define MON_DATA_TOUGH_RIBBON 54 +#define MON_DATA_STATUS 55 +#define MON_DATA_LEVEL 56 +#define MON_DATA_HP 57 +#define MON_DATA_MAX_HP 58 +#define MON_DATA_ATK 59 +#define MON_DATA_DEF 60 +#define MON_DATA_SPEED 61 +#define MON_DATA_SPATK 62 +#define MON_DATA_SPDEF 63 +#define MON_DATA_MAIL 64 +#define MON_DATA_SPECIES2 65 +#define MON_DATA_IVS 66 +#define MON_DATA_CHAMPION_RIBBON 67 +#define MON_DATA_WINNING_RIBBON 68 +#define MON_DATA_VICTORY_RIBBON 69 +#define MON_DATA_ARTIST_RIBBON 70 +#define MON_DATA_EFFORT_RIBBON 71 +#define MON_DATA_GIFT_RIBBON_1 72 +#define MON_DATA_GIFT_RIBBON_2 73 +#define MON_DATA_GIFT_RIBBON_3 74 +#define MON_DATA_GIFT_RIBBON_4 75 +#define MON_DATA_GIFT_RIBBON_5 76 +#define MON_DATA_GIFT_RIBBON_6 77 +#define MON_DATA_GIFT_RIBBON_7 78 +#define MON_DATA_FATEFUL_ENCOUNTER 79 +#define MON_DATA_OBEDIENCE 80 +#define MON_DATA_KNOWN_MOVES 81 +#define MON_DATA_RIBBON_COUNT 82 +#define MON_DATA_RIBBONS 83 +#define MON_DATA_ATK2 84 +#define MON_DATA_DEF2 85 +#define MON_DATA_SPEED2 86 +#define MON_DATA_SPATK2 87 +#define MON_DATA_SPDEF2 88 + // Pokemon types #define TYPE_NORMAL 0x00 #define TYPE_FIGHTING 0x01 @@ -77,6 +168,16 @@ #define STAT_ACC 6 // only in battles #define STAT_EVASION 7 // only in battles +// TODO: Why do we need these as separate defines? +#define STAT_STAGE_HP 0 +#define STAT_STAGE_ATK 1 +#define STAT_STAGE_DEF 2 +#define STAT_STAGE_SPEED 3 +#define STAT_STAGE_SPATK 4 +#define STAT_STAGE_SPDEF 5 +#define STAT_STAGE_ACC 6 +#define STAT_STAGE_EVASION 7 + #define NUM_STATS 6 #define NUM_BATTLE_STATS 8 @@ -91,4 +192,33 @@ #define PLAYER_HAS_ONE_MON 0x1 #define PLAYER_HAS_ONE_USABLE_MON 0x2 +#define MAX_LEVEL 100 + +#define OT_ID_RANDOM_NO_SHINY 2 +#define OT_ID_PRESET 1 +#define OT_ID_PLAYER_ID 0 + +#define MON_GIVEN_TO_PARTY 0x0 +#define MON_GIVEN_TO_PC 0x1 +#define MON_CANT_GIVE 0x2 + +#define MON_MALE 0x00 +#define MON_FEMALE 0xFE +#define MON_GENDERLESS 0xFF + +#define FRIENDSHIP_EVENT_GROW_LEVEL 0x0 +#define FRIENDSHIP_EVENT_VITAMIN 0x1 +#define FRIENDSHIP_EVENT_BATTLE_ITEM 0x2 +#define FRIENDSHIP_EVENT_LEAGUE_BATTLE 0x3 +#define FRIENDSHIP_EVENT_LEARN_TMHM 0x4 +#define FRIENDSHIP_EVENT_WALKING 0x5 +#define FRIENDSHIP_EVENT_FAINT_SMALL 0x6 +#define FRIENDSHIP_EVENT_FAINT_OUTSIDE_BATTLE 0x7 +#define FRIENDSHIP_EVENT_FAINT_LARGE 0x8 + +#define PARTY_SIZE 6 +#define MAX_TOTAL_EVS 510 +#define UNOWN_FORM_COUNT 28 +#define MAX_MON_LEVEL 100 + #endif // GUARD_CONSTANTS_POKEMON_H diff --git a/include/pokemon.h b/include/pokemon.h index ae909018c..be0a35877 100644 --- a/include/pokemon.h +++ b/include/pokemon.h @@ -3,167 +3,7 @@ #include "global.h" #include "sprite.h" - -#define MON_DATA_PERSONALITY 0 -#define MON_DATA_OT_ID 1 -#define MON_DATA_NICKNAME 2 -#define MON_DATA_LANGUAGE 3 -#define MON_DATA_SANITY_IS_BAD_EGG 4 -#define MON_DATA_SANITY_HAS_SPECIES 5 -#define MON_DATA_SANITY_IS_EGG 6 -#define MON_DATA_OT_NAME 7 -#define MON_DATA_MARKINGS 8 -#define MON_DATA_CHECKSUM 9 -#define MON_DATA_ENCRYPT_SEPARATOR 10 -#define MON_DATA_SPECIES 11 -#define MON_DATA_HELD_ITEM 12 -#define MON_DATA_MOVE1 13 -#define MON_DATA_MOVE2 14 -#define MON_DATA_MOVE3 15 -#define MON_DATA_MOVE4 16 -#define MON_DATA_PP1 17 -#define MON_DATA_PP2 18 -#define MON_DATA_PP3 19 -#define MON_DATA_PP4 20 -#define MON_DATA_PP_BONUSES 21 -#define MON_DATA_COOL 22 -#define MON_DATA_BEAUTY 23 -#define MON_DATA_CUTE 24 -#define MON_DATA_EXP 25 -#define MON_DATA_HP_EV 26 -#define MON_DATA_ATK_EV 27 -#define MON_DATA_DEF_EV 28 -#define MON_DATA_SPEED_EV 29 -#define MON_DATA_SPATK_EV 30 -#define MON_DATA_SPDEF_EV 31 -#define MON_DATA_FRIENDSHIP 32 -#define MON_DATA_SMART 33 -#define MON_DATA_POKERUS 34 -#define MON_DATA_MET_LOCATION 35 -#define MON_DATA_MET_LEVEL 36 -#define MON_DATA_MET_GAME 37 -#define MON_DATA_POKEBALL 38 -#define MON_DATA_HP_IV 39 -#define MON_DATA_ATK_IV 40 -#define MON_DATA_DEF_IV 41 -#define MON_DATA_SPEED_IV 42 -#define MON_DATA_SPATK_IV 43 -#define MON_DATA_SPDEF_IV 44 -#define MON_DATA_IS_EGG 45 -#define MON_DATA_ABILITY_NUM 46 -#define MON_DATA_TOUGH 47 -#define MON_DATA_SHEEN 48 -#define MON_DATA_OT_GENDER 49 -#define MON_DATA_COOL_RIBBON 50 -#define MON_DATA_BEAUTY_RIBBON 51 -#define MON_DATA_CUTE_RIBBON 52 -#define MON_DATA_SMART_RIBBON 53 -#define MON_DATA_TOUGH_RIBBON 54 -#define MON_DATA_STATUS 55 -#define MON_DATA_LEVEL 56 -#define MON_DATA_HP 57 -#define MON_DATA_MAX_HP 58 -#define MON_DATA_ATK 59 -#define MON_DATA_DEF 60 -#define MON_DATA_SPEED 61 -#define MON_DATA_SPATK 62 -#define MON_DATA_SPDEF 63 -#define MON_DATA_MAIL 64 -#define MON_DATA_SPECIES2 65 -#define MON_DATA_IVS 66 -#define MON_DATA_CHAMPION_RIBBON 67 -#define MON_DATA_WINNING_RIBBON 68 -#define MON_DATA_VICTORY_RIBBON 69 -#define MON_DATA_ARTIST_RIBBON 70 -#define MON_DATA_EFFORT_RIBBON 71 -#define MON_DATA_GIFT_RIBBON_1 72 -#define MON_DATA_GIFT_RIBBON_2 73 -#define MON_DATA_GIFT_RIBBON_3 74 -#define MON_DATA_GIFT_RIBBON_4 75 -#define MON_DATA_GIFT_RIBBON_5 76 -#define MON_DATA_GIFT_RIBBON_6 77 -#define MON_DATA_GIFT_RIBBON_7 78 -#define MON_DATA_FATEFUL_ENCOUNTER 79 -#define MON_DATA_OBEDIENCE 80 -#define MON_DATA_KNOWN_MOVES 81 -#define MON_DATA_RIBBON_COUNT 82 -#define MON_DATA_RIBBONS 83 -#define MON_DATA_ATK2 84 -#define MON_DATA_DEF2 85 -#define MON_DATA_SPEED2 86 -#define MON_DATA_SPATK2 87 -#define MON_DATA_SPDEF2 88 - -#define MAX_LEVEL 100 - -#define OT_ID_RANDOM_NO_SHINY 2 -#define OT_ID_PRESET 1 -#define OT_ID_PLAYER_ID 0 - -#define MON_GIVEN_TO_PARTY 0x0 -#define MON_GIVEN_TO_PC 0x1 -#define MON_CANT_GIVE 0x2 - -#define MON_MALE 0x00 -#define MON_FEMALE 0xFE -#define MON_GENDERLESS 0xFF - -#define FRIENDSHIP_EVENT_GROW_LEVEL 0x0 -#define FRIENDSHIP_EVENT_VITAMIN 0x1 -#define FRIENDSHIP_EVENT_BATTLE_ITEM 0x2 -#define FRIENDSHIP_EVENT_LEAGUE_BATTLE 0x3 -#define FRIENDSHIP_EVENT_LEARN_TMHM 0x4 -#define FRIENDSHIP_EVENT_WALKING 0x5 -#define FRIENDSHIP_EVENT_FAINT_SMALL 0x6 -#define FRIENDSHIP_EVENT_FAINT_OUTSIDE_BATTLE 0x7 -#define FRIENDSHIP_EVENT_FAINT_LARGE 0x8 - -#define TYPE_NORMAL 0x00 -#define TYPE_FIGHTING 0x01 -#define TYPE_FLYING 0x02 -#define TYPE_POISON 0x03 -#define TYPE_GROUND 0x04 -#define TYPE_ROCK 0x05 -#define TYPE_BUG 0x06 -#define TYPE_GHOST 0x07 -#define TYPE_STEEL 0x08 -#define TYPE_MYSTERY 0x09 -#define TYPE_FIRE 0x0a -#define TYPE_WATER 0x0b -#define TYPE_GRASS 0x0c -#define TYPE_ELECTRIC 0x0d -#define TYPE_PSYCHIC 0x0e -#define TYPE_ICE 0x0f -#define TYPE_DRAGON 0x10 -#define TYPE_DARK 0x11 - -#define NUMBER_OF_MON_TYPES 0x12 - -#define PARTY_SIZE 6 -#define MAX_TOTAL_EVS 510 -#define NUM_STATS 6 -#define UNOWN_FORM_COUNT 28 -#define MAX_MON_LEVEL 100 - -enum -{ - EGG_GROUP_NONE, - EGG_GROUP_MONSTER, - EGG_GROUP_WATER_1, - EGG_GROUP_BUG, - EGG_GROUP_FLYING, - EGG_GROUP_FIELD, - EGG_GROUP_FAIRY, - EGG_GROUP_GRASS, - EGG_GROUP_HUMAN_LIKE, - EGG_GROUP_WATER_3, - EGG_GROUP_MINERAL, - EGG_GROUP_AMORPHOUS, - EGG_GROUP_WATER_2, - EGG_GROUP_DITTO, - EGG_GROUP_DRAGON, - EGG_GROUP_UNDISCOVERED -}; +#include "constants/pokemon.h" struct PokemonSubstruct0 { @@ -357,28 +197,6 @@ struct BattlePokemon /*0x54*/ u32 otId; }; -enum -{ - STAT_STAGE_HP, // 0 - STAT_STAGE_ATK, // 1 - STAT_STAGE_DEF, // 2 - STAT_STAGE_SPEED, // 3 - STAT_STAGE_SPATK, // 4 - STAT_STAGE_SPDEF, // 5 - STAT_STAGE_ACC, // 6 - STAT_STAGE_EVASION, // 7 -}; - -enum -{ - STAT_HP, // 0 - STAT_ATK, // 1 - STAT_DEF, // 2 - STAT_SPD, // 3 - STAT_SPATK, // 4 - STAT_SPDEF, // 5 -}; - struct BaseStats { /* 0x00 */ u8 baseHP; -- cgit v1.2.3 From 26716a87337370a56e59b206a4e7767384797235 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Wed, 22 Jan 2020 10:13:34 -0500 Subject: Split remaining union room data --- include/union_room_message.h | 107 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 107 insertions(+) create mode 100644 include/union_room_message.h (limited to 'include') diff --git a/include/union_room_message.h b/include/union_room_message.h new file mode 100644 index 000000000..82e0dd955 --- /dev/null +++ b/include/union_room_message.h @@ -0,0 +1,107 @@ +extern const u8 gUnknown_84571AC[]; +extern const u8 gUnknown_84571B0[]; +extern const u8 gUnknown_84571B4[]; +extern const u8 gUnknown_84571B8[]; +extern const u8 gUnknown_84571E0[]; +extern const u8 gUnknown_8457234[]; +extern const u8 gUnknown_8457264[]; +extern const u8 *const gUnknown_845742C[][5]; +extern const u8 gUnknown_845747C[]; +extern const u8 gUnknown_84574A0[]; +extern const u8 gUnknown_84574C4[]; +extern const u8 gUnknown_84574EC[]; +extern const u8 gUnknown_8457514[]; +extern const u8 gUnknown_8457530[]; +extern const u8 gUnknown_8457554[]; +extern const u8 *const gUnknown_8457608[]; +extern const u8 gUnknown_8457610[]; +extern const u8 *const gUnknown_845767C[]; +extern const u8 gUnknown_84576AC[]; +extern const u8 gUnknown_84576C4[]; +extern const u8 gUnknown_8457700[]; +extern const u8 gUnknown_845771C[]; +extern const u8 *const gUnknown_8457754[]; +extern const u8 gUnknown_845777C[]; +extern const u8 gUnknown_84577BC[]; +extern const u8 gUnknown_84577F8[]; +extern const u8 *const gUnknown_8457838[]; +extern const u8 gUnknown_84578BC[]; +extern const u8 *const gUnknown_8457A34[]; +extern const u8 *const gUnknown_8457B04[][2]; +extern const u8 *const gUnknown_8457BCC[]; +extern const u8 *const gUnknown_8457C20[]; +extern const u8 gUnknown_8457C48[]; +extern const u8 gUnknown_8457CA4[]; +extern const u8 gUnknown_8457CF8[]; +extern const u8 gUnknown_8457D44[]; +extern const u8 gUnknown_8457DB8[]; +extern const u8 gUnknown_8457E0C[]; +extern const u8 gUnknown_8457E28[]; +extern const u8 gUnknown_8457E44[]; +extern const u8 gUnknown_8457E60[]; +extern const u8 *const gUnknown_8457F80[][2]; +extern const u8 gUnknown_8457F90[]; +extern const u8 *const gUnknown_84580F4[][4]; +extern const u8 *const gUnknown_8458230[][2][3]; +extern const u8 *const gUnknown_8458314[]; +extern const u8 *const gUnknown_84583B4[]; +extern const u8 *const gUnknown_845842C[]; +extern const u8 gUnknown_8458434[]; +extern const u8 gUnknown_845847C[]; +extern const u8 gUnknown_84584C0[]; +extern const u8 *const gUnknown_8458548[]; +extern const u8 *const gUnknown_84585E8[]; +extern const u8 *const gUnknown_8458758[2][4]; +extern const u8 *const gUnknown_84588BC[2][4]; +extern const u8 *const gUnknown_84589AC[2][2]; +extern const u8 *const gUnknown_8458A78[2][4]; +extern const u8 gUnknown_8458A98[]; +extern const u8 gUnknown_8458AB8[]; +extern const u8 gUnknown_8458B44[]; +extern const u8 gUnknown_8458CD4[]; +extern const u8 gUnknown_8458D1C[]; +extern const u8 gUnknown_8458D54[]; +extern const u8 gUnknown_8458D78[]; +extern const u8 gUnknown_8458D9C[]; +extern const u8 gUnknown_8458DBC[]; +extern const u8 gUnknown_8458DE8[]; +extern const u8 gUnknown_8458E10[]; +extern const u8 gUnknown_8458E70[]; +extern const u8 gUnknown_8458ED0[]; +extern const u8 gUnknown_8458F04[]; +extern const u8 gUnknown_8458F9C[]; +extern const u8 gUnknown_8458FBC[]; +extern const u8 gUnknown_8458FC8[]; +extern const u8 gUnknown_8458FE4[]; +extern const u8 gUnknown_84591DC[]; +extern const u8 *const gUnknown_84591B8[]; +extern const u8 gUnknown_8459238[]; +extern const u8 gUnknown_8459250[]; +extern const u8 gUnknown_845928C[]; +extern const u8 *const gUnknown_845933C[]; +extern const u8 gUnknown_8459344[]; +extern const u8 gUnknown_845934C[]; +extern const u8 gUnknown_8459354[]; +extern const u8 gUnknown_8459360[]; +extern const u8 gUnknown_8459368[]; +extern const u8 gUnknown_8459370[]; +extern const u8 gUnknown_8459378[]; +extern const u8 gUnknown_8459394[]; +extern const u8 gUnknown_84593A4[]; +extern const u8 gUnknown_84593B4[]; +extern const u8 gUnknown_84593C4[]; +extern const u8 gUnknown_84593D4[]; +extern const u8 gUnknown_84593E4[]; +extern const u8 gUnknown_84593F4[]; +extern const u8 gUnknown_84593DC[]; +extern const u8 gUnknown_8459400[]; +extern const u8 gUnknown_8459410[]; +extern const u8 gUnknown_845941C[]; +extern const u8 gUnknown_845942C[]; +extern const u8 gUnknown_8459434[]; +extern const u8 gUnknown_8459440[]; +extern const u8 *const gUnknown_84594B0[]; +extern const u8 gUnknown_84594C4[]; +extern const u8 gUnknown_8459504[]; +extern const u8 *const gUnknown_8459580[]; +extern const u8 gUnknown_8459588[]; -- cgit v1.2.3 From 944f150b5ed0cccf30763f05f669f6210b10e2c1 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Wed, 22 Jan 2020 10:19:58 -0500 Subject: Static methods in union_room.c; remove src/data/union_room.h --- include/union_room_player_avatar.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'include') diff --git a/include/union_room_player_avatar.h b/include/union_room_player_avatar.h index 68d64736d..46e448e83 100644 --- a/include/union_room_player_avatar.h +++ b/include/union_room_player_avatar.h @@ -9,5 +9,7 @@ void sub_811BECC(struct UnkStruct_URoom *arg0); void sub_811BEDC(struct UnkStruct_URoom *arg0); bool32 sub_811BF00(struct UnkStruct_Main0 *arg0, s16 *arg1, s16 *arg2, u8 *arg3); void sub_811C028(u32 arg0, u32 arg1, struct UnkStruct_Main0 *arg2); +u8 sub_811B754(struct UnkStruct_8019BA8 * ptr); +void sub_811BA78(void); #endif //GUARD_UNION_ROOM_PLAYER_AVATAR_H -- cgit v1.2.3 From 1e7df548fe6e0957efc8c0a5c1146eae7a203963 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Wed, 22 Jan 2020 10:31:14 -0500 Subject: Fix struct offset comments --- include/union_room.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'include') diff --git a/include/union_room.h b/include/union_room.h index fcd970f7d..f9abd3d9f 100644 --- a/include/union_room.h +++ b/include/union_room.h @@ -122,9 +122,9 @@ struct UnkStruct_URoom /* 0x084 */ u16 field_98; /* 0x086 */ u16 field_9A[3]; /* 0x08C */ struct UnkStruct_8019BA8 field_A0[8]; - /* 0x08C */ u8 field_C0[12][15]; - /* 0x08C */ u8 field_174[48]; - /* 0x08C */ u8 field_1A4[200]; + /* 0x0AC */ u8 field_C0[12][15]; + /* 0x160 */ u8 field_174[48]; + /* 0x190 */ u8 field_1A4[200]; }; union UnkUnion_Main -- cgit v1.2.3 From 70bb1a99e2211f7856f301827f11b7faec334a02 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Wed, 22 Jan 2020 10:35:47 -0500 Subject: union_room_player_avatar --> rfu_union_tool (by assert statements) --- include/rfu_union_tool.h | 15 +++++++++++++++ include/union_room_player_avatar.h | 15 --------------- 2 files changed, 15 insertions(+), 15 deletions(-) create mode 100644 include/rfu_union_tool.h delete mode 100644 include/union_room_player_avatar.h (limited to 'include') diff --git a/include/rfu_union_tool.h b/include/rfu_union_tool.h new file mode 100644 index 000000000..46e448e83 --- /dev/null +++ b/include/rfu_union_tool.h @@ -0,0 +1,15 @@ +#ifndef GUARD_UNION_ROOM_PLAYER_AVATAR_H +#define GUARD_UNION_ROOM_PLAYER_AVATAR_H + +void sub_811C1C8(void); +void sub_811BAAC(u8 *spriteIds, s32 arg1); +void sub_811BB40(u8 *spriteIds); +void sub_811BB68(void); +void sub_811BECC(struct UnkStruct_URoom *arg0); +void sub_811BEDC(struct UnkStruct_URoom *arg0); +bool32 sub_811BF00(struct UnkStruct_Main0 *arg0, s16 *arg1, s16 *arg2, u8 *arg3); +void sub_811C028(u32 arg0, u32 arg1, struct UnkStruct_Main0 *arg2); +u8 sub_811B754(struct UnkStruct_8019BA8 * ptr); +void sub_811BA78(void); + +#endif //GUARD_UNION_ROOM_PLAYER_AVATAR_H diff --git a/include/union_room_player_avatar.h b/include/union_room_player_avatar.h deleted file mode 100644 index 46e448e83..000000000 --- a/include/union_room_player_avatar.h +++ /dev/null @@ -1,15 +0,0 @@ -#ifndef GUARD_UNION_ROOM_PLAYER_AVATAR_H -#define GUARD_UNION_ROOM_PLAYER_AVATAR_H - -void sub_811C1C8(void); -void sub_811BAAC(u8 *spriteIds, s32 arg1); -void sub_811BB40(u8 *spriteIds); -void sub_811BB68(void); -void sub_811BECC(struct UnkStruct_URoom *arg0); -void sub_811BEDC(struct UnkStruct_URoom *arg0); -bool32 sub_811BF00(struct UnkStruct_Main0 *arg0, s16 *arg1, s16 *arg2, u8 *arg3); -void sub_811C028(u32 arg0, u32 arg1, struct UnkStruct_Main0 *arg2); -u8 sub_811B754(struct UnkStruct_8019BA8 * ptr); -void sub_811BA78(void); - -#endif //GUARD_UNION_ROOM_PLAYER_AVATAR_H -- cgit v1.2.3 From 0495cce90418b84dc53b5d5c9f3b2bfe46f0ed62 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Wed, 22 Jan 2020 12:38:17 -0500 Subject: start decomping rfu_union_tool --- include/rfu_union_tool.h | 2 ++ include/union_room.h | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) (limited to 'include') diff --git a/include/rfu_union_tool.h b/include/rfu_union_tool.h index 46e448e83..4672d8c61 100644 --- a/include/rfu_union_tool.h +++ b/include/rfu_union_tool.h @@ -1,6 +1,8 @@ #ifndef GUARD_UNION_ROOM_PLAYER_AVATAR_H #define GUARD_UNION_ROOM_PLAYER_AVATAR_H +#include "union_room.h" + void sub_811C1C8(void); void sub_811BAAC(u8 *spriteIds, s32 arg1); void sub_811BB40(u8 *spriteIds); diff --git a/include/union_room.h b/include/union_room.h index f9abd3d9f..00ed90a14 100644 --- a/include/union_room.h +++ b/include/union_room.h @@ -2,7 +2,7 @@ #define GUARD_UNION_ROOM_H #include "global.h" -#include "librfu.h" +#include "link_rfu.h" struct UnkStruct_Shared { -- cgit v1.2.3 From 401276242af6e911104742ec6f34b54925b4c4b6 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Wed, 22 Jan 2020 13:39:36 -0500 Subject: through sub_811BDA8 --- include/constants/event_object_movement.h | 7 +++++-- include/event_object_80688E4.h | 4 ++++ include/event_object_8097404.h | 2 +- include/event_object_movement.h | 4 ++-- include/field_player_avatar.h | 1 + include/fieldmap.h | 1 + include/rfu_union_tool.h | 2 +- include/union_room.h | 4 ++-- 8 files changed, 17 insertions(+), 8 deletions(-) (limited to 'include') diff --git a/include/constants/event_object_movement.h b/include/constants/event_object_movement.h index 6a4405b65..bf75a47cc 100644 --- a/include/constants/event_object_movement.h +++ b/include/constants/event_object_movement.h @@ -1,6 +1,7 @@ #ifndef GUARD_CONSTANTS_EVENT_OBJECT_MOVEMENT_H #define GUARD_CONSTANTS_EVENT_OBJECT_MOVEMENT_H +// FIXME: Different in FRLG #define MOVEMENT_TYPE_NONE 0x0 #define MOVEMENT_TYPE_LOOK_AROUND 0x1 #define MOVEMENT_TYPE_WANDER_AROUND 0x2 @@ -239,8 +240,10 @@ #define MOVEMENT_ACTION_STOP_LEVITATE 0x99 #define MOVEMENT_ACTION_DESTROY_EXTRA_TASK_IF_AT_TOP 0x9A #define MOVEMENT_ACTION_FIGURE_8 0x9B -#define MOVEMENT_ACTION_FLY_UP 0x9C -#define MOVEMENT_ACTION_FLY_DOWN 0x9D + +// These two are verified correct in FRLG +#define MOVEMENT_ACTION_FLY_UP 0xA4 +#define MOVEMENT_ACTION_FLY_DOWN 0xA5 #define MOVEMENT_ACTION_STEP_END 0xFE diff --git a/include/event_object_80688E4.h b/include/event_object_80688E4.h index cee8ff707..611a57e00 100644 --- a/include/event_object_80688E4.h +++ b/include/event_object_80688E4.h @@ -6,5 +6,9 @@ void FreezeObjectEvents(void); void FreezeObjectEvent(struct ObjectEvent *); void FreezeObjectEventsExceptOne(u8 objEventId); +void sub_8069124(u8 a0, bool8 a1); +u32 sub_806916C(u8 a0); +void sub_80691A4(u8 a0, u8 a1); +void sub_8069094(u8 a0, u8 a1); #endif // GUARD_EVENT_OBJECT_80688E4_H diff --git a/include/event_object_8097404.h b/include/event_object_8097404.h index 77781943e..23fce9576 100644 --- a/include/event_object_8097404.h +++ b/include/event_object_8097404.h @@ -14,7 +14,7 @@ extern void *gUnknown_020375B8; // Exported ROM declarations void sub_8097AC8(struct Sprite *); -void npc_sync_anim_pause_bits(struct ObjectEvent *); +void UnfreezeObjectEvent(struct ObjectEvent *); void oamt_npc_ministep_reset(struct Sprite *, u8, u8); u8 sub_8097F78(struct ObjectEvent *); bool8 obj_npc_ministep(struct Sprite *sprite); diff --git a/include/event_object_movement.h b/include/event_object_movement.h index b81a61664..1b4c9e365 100644 --- a/include/event_object_movement.h +++ b/include/event_object_movement.h @@ -47,7 +47,7 @@ void ObjectEventClearAnimIfSpecialAnimActive(struct ObjectEvent *); void SpawnObjectEventsInView(s16, s16); u8 sprite_new(u8, u8, s16, s16, u8, u8); u8 AddPseudoObjectEvent(u16, SpriteCallback, s16, s16, u8); -u8 show_sprite(u8, u8, u8); +u8 TrySpawnObjectEvent(u8, u8, u8); u8 SpawnSpecialObjectEventParameterized(u8, u8, u8, s16, s16, u8); u8 SpawnSpecialObjectEvent(struct ObjectEventTemplate *); void sub_8093038(s16, s16, s16 *, s16 *); @@ -82,7 +82,7 @@ bool8 ObjectEventIsSpecialAnimActive(struct ObjectEvent *); u8 ObjectEventClearHeldMovementIfFinished(struct ObjectEvent *); u8 GetObjectEventIdByXYZ(u16 x, u16 y, u8 z); void sub_8063E28(struct ObjectEvent *, struct Sprite *); -void ObjectEventSetHeldMovement(struct ObjectEvent *, u8); +bool8 ObjectEventSetHeldMovement(struct ObjectEvent *, u8); void npc_coords_shift_still(struct ObjectEvent *); void sub_805FE7C(struct ObjectEvent *, u8); void SetTrainerMovementType(struct ObjectEvent *, u8); diff --git a/include/field_player_avatar.h b/include/field_player_avatar.h index ec1a077be..a69ec6155 100644 --- a/include/field_player_avatar.h +++ b/include/field_player_avatar.h @@ -35,5 +35,6 @@ bool32 sub_805DAD0(void); bool32 sub_805DC24(void); bool8 PartyHasMonWithSurf(void); bool8 IsPlayerSurfingNorth(void); +void player_get_pos_including_state_based_drift(s16 *x, s16 *y); #endif //GUARD_FIELD_PLAYER_AVATAR_H diff --git a/include/fieldmap.h b/include/fieldmap.h index 1560a0841..91a45d8c5 100644 --- a/include/fieldmap.h +++ b/include/fieldmap.h @@ -31,5 +31,6 @@ void sub_8059948(u8 a0, u8 a1); void save_serialize_map(void); u32 sub_8058F1C(u32 original, u8 bit); u32 sub_8058F48(s16 x, s16 y, u8 z); +void sub_8059024(s32 x, s32 y, bool32 arg2); #endif //GUARD_FIELDMAP_H diff --git a/include/rfu_union_tool.h b/include/rfu_union_tool.h index 4672d8c61..e7895d25f 100644 --- a/include/rfu_union_tool.h +++ b/include/rfu_union_tool.h @@ -11,7 +11,7 @@ void sub_811BECC(struct UnkStruct_URoom *arg0); void sub_811BEDC(struct UnkStruct_URoom *arg0); bool32 sub_811BF00(struct UnkStruct_Main0 *arg0, s16 *arg1, s16 *arg2, u8 *arg3); void sub_811C028(u32 arg0, u32 arg1, struct UnkStruct_Main0 *arg2); -u8 sub_811B754(struct UnkStruct_8019BA8 * ptr); +u8 sub_811B754(struct UnionObj * ptr); void sub_811BA78(void); #endif //GUARD_UNION_ROOM_PLAYER_AVATAR_H diff --git a/include/union_room.h b/include/union_room.h index 00ed90a14..4730dfb18 100644 --- a/include/union_room.h +++ b/include/union_room.h @@ -85,7 +85,7 @@ struct UnkStruct_Group u8 field_15; }; -struct UnkStruct_8019BA8 +struct UnionObj { u8 field_0; u8 field_1; @@ -121,7 +121,7 @@ struct UnkStruct_URoom /* 0x058 */ u8 field_58[4][11]; /* 0x084 */ u16 field_98; /* 0x086 */ u16 field_9A[3]; - /* 0x08C */ struct UnkStruct_8019BA8 field_A0[8]; + /* 0x08C */ struct UnionObj field_A0[8]; /* 0x0AC */ u8 field_C0[12][15]; /* 0x160 */ u8 field_174[48]; /* 0x190 */ u8 field_1A4[200]; -- cgit v1.2.3 From c4626ec2966d8d31140fc3cd26fee505d7f817d2 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Wed, 22 Jan 2020 13:47:30 -0500 Subject: Finish rfu_union_tool decomp --- include/event_object_80688E4.h | 1 + 1 file changed, 1 insertion(+) (limited to 'include') diff --git a/include/event_object_80688E4.h b/include/event_object_80688E4.h index 611a57e00..36040e0a5 100644 --- a/include/event_object_80688E4.h +++ b/include/event_object_80688E4.h @@ -10,5 +10,6 @@ void sub_8069124(u8 a0, bool8 a1); u32 sub_806916C(u8 a0); void sub_80691A4(u8 a0, u8 a1); void sub_8069094(u8 a0, u8 a1); +bool32 sub_8069294(u8 a0); #endif // GUARD_EVENT_OBJECT_80688E4_H -- cgit v1.2.3 From 48f7bbe6f6521d2f62dabbc162c46da4848661bb Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Wed, 22 Jan 2020 14:29:37 -0500 Subject: Some documentation of rfu_union_tool --- include/event_object_movement.h | 2 +- include/link_rfu.h | 2 +- include/rfu_union_tool.h | 2 +- include/union_room.h | 18 +++++++++--------- 4 files changed, 12 insertions(+), 12 deletions(-) (limited to 'include') diff --git a/include/event_object_movement.h b/include/event_object_movement.h index 1b4c9e365..f2e7bd325 100644 --- a/include/event_object_movement.h +++ b/include/event_object_movement.h @@ -47,7 +47,7 @@ void ObjectEventClearAnimIfSpecialAnimActive(struct ObjectEvent *); void SpawnObjectEventsInView(s16, s16); u8 sprite_new(u8, u8, s16, s16, u8, u8); u8 AddPseudoObjectEvent(u16, SpriteCallback, s16, s16, u8); -u8 TrySpawnObjectEvent(u8, u8, u8); +u8 TrySpawnObjectEvent(u8 localId, u8 mapNum, u8 mapGroup); u8 SpawnSpecialObjectEventParameterized(u8, u8, u8, s16, s16, u8); u8 SpawnSpecialObjectEvent(struct ObjectEventTemplate *); void sub_8093038(s16, s16, s16 *, s16 *); diff --git a/include/link_rfu.h b/include/link_rfu.h index 874f62511..985c260ef 100644 --- a/include/link_rfu.h +++ b/include/link_rfu.h @@ -303,7 +303,7 @@ bool32 sub_80F8F7C(bool32 a0); bool32 sub_80FA634(u16 a0, const u8 *a1); void sub_80FA670(u8 a0, u16 a1, const u8 *a2); u32 sub_80FA6FC(u16 a0, const u8 *a1); -void sub_80FAF58(u8 a0, u32 a1, u32 a2); +void SetHostRFUtgtGname(u8 a0, u32 a1, u32 a2); void sub_80FBB8C(u32 a0); void sub_80FBD4C(const u8 *ptr, u16 a1); void LinkRfu3_SetGnameUnameFromStaticBuffers(struct GFtgtGname *gname, u8 *uname); diff --git a/include/rfu_union_tool.h b/include/rfu_union_tool.h index e7895d25f..b8b5cd664 100644 --- a/include/rfu_union_tool.h +++ b/include/rfu_union_tool.h @@ -11,7 +11,7 @@ void sub_811BECC(struct UnkStruct_URoom *arg0); void sub_811BEDC(struct UnkStruct_URoom *arg0); bool32 sub_811BF00(struct UnkStruct_Main0 *arg0, s16 *arg1, s16 *arg2, u8 *arg3); void sub_811C028(u32 arg0, u32 arg1, struct UnkStruct_Main0 *arg2); -u8 sub_811B754(struct UnionObj * ptr); +u8 ZeroUnionObjWork(struct UnionObj * ptr); void sub_811BA78(void); #endif //GUARD_UNION_ROOM_PLAYER_AVATAR_H diff --git a/include/union_room.h b/include/union_room.h index 4730dfb18..0ad5e920e 100644 --- a/include/union_room.h +++ b/include/union_room.h @@ -87,10 +87,10 @@ struct UnkStruct_Group struct UnionObj { - u8 field_0; - u8 field_1; - s8 field_2; - u8 field_3; + u8 state; + u8 gfxId; + s8 animState; + u8 schedAnim; }; struct UnkStruct_URoom @@ -121,17 +121,17 @@ struct UnkStruct_URoom /* 0x058 */ u8 field_58[4][11]; /* 0x084 */ u16 field_98; /* 0x086 */ u16 field_9A[3]; - /* 0x08C */ struct UnionObj field_A0[8]; - /* 0x0AC */ u8 field_C0[12][15]; + /* 0x08C */ struct UnionObj unionObjs[8]; + /* 0x0AC */ u8 trainerCardStrbufs[12][15]; /* 0x160 */ u8 field_174[48]; /* 0x190 */ u8 field_1A4[200]; }; union UnkUnion_Main { - struct UnkStruct_Leader *leader; - struct UnkStruct_Group *group; - struct UnkStruct_URoom *uRoom; + struct UnkStruct_Leader * leader; + struct UnkStruct_Group * group; + struct UnkStruct_URoom * uRoom; }; struct UnionRoomTrade -- cgit v1.2.3 From 2037045ab0dadd4566b4ba123672ab533ee50197 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Wed, 22 Jan 2020 14:42:18 -0500 Subject: UnkStruct_Shared.gname --- include/link_rfu.h | 4 ++-- include/union_room.h | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) (limited to 'include') diff --git a/include/link_rfu.h b/include/link_rfu.h index 985c260ef..790429870 100644 --- a/include/link_rfu.h +++ b/include/link_rfu.h @@ -288,7 +288,7 @@ bool8 sub_80FC6E8(struct UnkRfuStruct_2_Sub_124 * a0, u8 *a1); void sub_80FC63C(struct UnkRfuStruct_2_Sub_9e8 * a0, u8 *a1); u8 sub_80FEA34(u8 a0, u16 a1); void sub_80FDA30(u32 a0); -void InitHostRFUtgtGname(struct GFtgtGname *data, u8 r9, bool32 r2, s32 r3); +void InitHostRFUtgtGname(struct GFtgtGname *data, u8 activity, bool32 r2, s32 r3); void LinkRfu_syncVBlank_(void); s32 sub_80FD430(void (*func1)(u8, u8), void (*func2)(u16)); void sub_80FEB3C(void); @@ -322,7 +322,7 @@ bool32 sub_80FBB0C(void); void sub_80FBC00(void); void sub_80FBD6C(u32 a0); void sub_80FC114(const u8 *name, struct GFtgtGname *structPtr, u8 a2); -bool32 sub_80FD338(u16 id, u8 *name); +bool32 PlayerHasMetTrainerBefore(u16 id, u8 *name); bool8 sub_80FCC3C(struct GFtgtGname *gname, u8 *uname, u8 idx); bool8 sub_80FCCF4(struct GFtgtGname *gname, u8 *uname, u8 idx); diff --git a/include/union_room.h b/include/union_room.h index 0ad5e920e..8441a6707 100644 --- a/include/union_room.h +++ b/include/union_room.h @@ -6,7 +6,7 @@ struct UnkStruct_Shared { - struct GFtgtGname field_0; + struct GFtgtGname gname; u8 ALIGNED(4) playerName[PLAYER_NAME_LENGTH]; }; -- cgit v1.2.3 From 12d12e70a170896844f3280d6968e1e2d6cf1cba Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Wed, 22 Jan 2020 15:46:48 -0500 Subject: union_room_battle --- include/strings.h | 5 +++++ include/union_room.h | 2 ++ 2 files changed, 7 insertions(+) (limited to 'include') diff --git a/include/strings.h b/include/strings.h index 7e8a4fbb4..a57493a9b 100644 --- a/include/strings.h +++ b/include/strings.h @@ -1056,4 +1056,9 @@ extern const u8 gText_DepositHowManyStrVars1[]; extern const u8 gText_DepositedStrVar2StrVar1s[]; extern const u8 gText_NoRoomToStoreItems[]; +// union_room_battle +extern const u8 gText_CommStandbyAwaitingOtherPlayer[]; +extern const u8 gText_RefusedBattle[]; +extern const u8 gText_BattleWasRefused[]; + #endif //GUARD_STRINGS_H diff --git a/include/union_room.h b/include/union_room.h index 8441a6707..60103dad7 100644 --- a/include/union_room.h +++ b/include/union_room.h @@ -153,4 +153,6 @@ extern struct GFtgtGnameSub gUnknown_203B064; extern u16 gUnionRoomOfferedSpecies; extern u8 gUnionRoomRequestedMonType; +void sub_81173C0(u16 battleFlags); + #endif //GUARD_UNION_ROOM_H -- cgit v1.2.3 From 390d7975b3e68251dad231365338556ff2ffe5bb Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Wed, 22 Jan 2020 15:59:08 -0500 Subject: Resolve review comments, 1 --- include/mevent.h | 2 +- include/union_room_message.h | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) (limited to 'include') diff --git a/include/mevent.h b/include/mevent.h index eb7cf77f3..85782f20a 100644 --- a/include/mevent.h +++ b/include/mevent.h @@ -72,6 +72,6 @@ void sub_8144714(u32 a0, u32 a1); u16 *GetMEventProfileECWordsMaybe(void); void sub_81446C4(void); bool32 sub_81446D0(u16 a0); -u16 GetWonderCardFlagID(void); +u16 GetWonderCardFlagId(void); #endif //GUARD_MEVENT_H diff --git a/include/union_room_message.h b/include/union_room_message.h index 82e0dd955..b7de673ba 100644 --- a/include/union_room_message.h +++ b/include/union_room_message.h @@ -1,3 +1,8 @@ +#ifndef GUARD_UNION_ROOM_MESSAGE_H +#define GUARD_UNION_ROOM_MESSAGE_H + +#include "global.h" + extern const u8 gUnknown_84571AC[]; extern const u8 gUnknown_84571B0[]; extern const u8 gUnknown_84571B4[]; @@ -105,3 +110,5 @@ extern const u8 gUnknown_84594C4[]; extern const u8 gUnknown_8459504[]; extern const u8 *const gUnknown_8459580[]; extern const u8 gUnknown_8459588[]; + +#endif //GUARD_UNION_ROOM_MESSAGE_H -- cgit v1.2.3 From 90c99d1ce2233b775b26d743bbdb187a2071c42d Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Wed, 22 Jan 2020 20:10:46 -0500 Subject: union_room_message --- include/mevent_server.h | 1 + 1 file changed, 1 insertion(+) (limited to 'include') diff --git a/include/mevent_server.h b/include/mevent_server.h index b691e9e1f..1e9ef7bef 100644 --- a/include/mevent_server.h +++ b/include/mevent_server.h @@ -86,6 +86,7 @@ struct mevent_server_cmd #define SRV_SEND_NEWS {.instr = 14} #define SRV_BUFFER_SEND {.instr = 15} #define SRV_SEND(x, y) {.instr = 18, .flag = x, .parameter = (void *)y} +#define SRV_SENDSTR(x, y) {.instr = 20, .flag = x, .parameter = (void *)y} #define SRV_BUFFER_CARD {.instr = 26} #define SRV_BUFFER_NEWS {.instr = 27} #define SRV_RAM_SCRIPT_IF_VALID {.instr = 28} -- cgit v1.2.3 From 7824a413dea43f2c0c99c2b86af17c33378139fa Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Thu, 23 Jan 2020 10:10:57 -0500 Subject: Normalize union room UnkStruct arrays; remove STAT_STAGE_ defines --- include/constants/pokemon.h | 10 ---------- include/union_room.h | 33 +++++++++++++++++---------------- 2 files changed, 17 insertions(+), 26 deletions(-) (limited to 'include') diff --git a/include/constants/pokemon.h b/include/constants/pokemon.h index 3ab2c0524..a8009f1ff 100644 --- a/include/constants/pokemon.h +++ b/include/constants/pokemon.h @@ -170,16 +170,6 @@ #define STAT_ACC 6 // only in battles #define STAT_EVASION 7 // only in battles -// TODO: Why do we need these as separate defines? -#define STAT_STAGE_HP 0 -#define STAT_STAGE_ATK 1 -#define STAT_STAGE_DEF 2 -#define STAT_STAGE_SPEED 3 -#define STAT_STAGE_SPATK 4 -#define STAT_STAGE_SPDEF 5 -#define STAT_STAGE_ACC 6 -#define STAT_STAGE_EVASION 7 - #define NUM_STATS 6 #define NUM_BATTLE_STATS 8 diff --git a/include/union_room.h b/include/union_room.h index 60103dad7..3cb8eb84a 100644 --- a/include/union_room.h +++ b/include/union_room.h @@ -28,26 +28,27 @@ struct UnkStruct_x20 u8 field_1F; }; +// These arrays are dynamically allocated but must be +// represented as structs to match. +// Don't ask me why. + +// FIXME: Find a way around this. + struct UnkStruct_Main0 { - struct UnkStruct_x20 arr[8]; + struct UnkStruct_x20 arr[0]; }; struct UnkStruct_Main4 { - struct UnkStruct_x1C arr[5]; -}; - -struct UnkStruct_Main8 -{ - struct UnkStruct_x20 arr[5]; + struct UnkStruct_x1C arr[0]; }; struct UnkStruct_Leader { - struct UnkStruct_Main0 *field_0; - struct UnkStruct_Main4 *field_4; - struct UnkStruct_Main8 *field_8; + struct UnkStruct_Main0 * field_0; + struct UnkStruct_Main4 * field_4; + struct UnkStruct_Main0 * field_8; u8 state; u8 textState; u8 field_E; @@ -67,8 +68,8 @@ struct UnkStruct_Leader struct UnkStruct_Group { - struct UnkStruct_Main0 *field_0; - struct UnkStruct_Main4 *field_4; + struct UnkStruct_Main0 * field_0; + struct UnkStruct_Main4 * field_4; u8 state; u8 textState; u8 field_A; @@ -95,10 +96,10 @@ struct UnionObj struct UnkStruct_URoom { - /* 0x000 */ struct UnkStruct_Main0 *field_0; - /* 0x004 */ struct UnkStruct_Main4 *field_4; - /* 0x008 */ struct UnkStruct_Main0 *field_8; - /* 0x00C */ struct UnkStruct_Main4 *field_C; + /* 0x000 */ struct UnkStruct_Main0 * field_0; + /* 0x004 */ struct UnkStruct_Main4 * field_4; + /* 0x008 */ struct UnkStruct_Main0 * field_8; + /* 0x00C */ struct UnkStruct_Main4 * field_C; /* 0x010 */ u16 field_10; /* 0x012 */ u16 field_12; /* 0x014 */ u8 state; -- cgit v1.2.3