diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/global.h | 13 | ||||
-rw-r--r-- | include/graphics.h | 27 | ||||
-rw-r--r-- | include/lilycove_lady.h | 2 | ||||
-rw-r--r-- | include/list_menu.h | 23 | ||||
-rw-r--r-- | include/menu.h | 7 | ||||
-rw-r--r-- | include/menu_helpers.h | 13 | ||||
-rw-r--r-- | include/party_menu.h | 4 | ||||
-rw-r--r-- | include/pokeblock.h | 41 | ||||
-rw-r--r-- | include/pokenav.h | 10 | ||||
-rw-r--r-- | include/rom6.h | 2 | ||||
-rw-r--r-- | include/strings.h | 57 | ||||
-rw-r--r-- | include/text_window.h | 4 |
12 files changed, 168 insertions, 35 deletions
diff --git a/include/global.h b/include/global.h index 9fe0d975f..b6a496dd1 100644 --- a/include/global.h +++ b/include/global.h @@ -514,11 +514,12 @@ struct RecordMixingDayCareMail bool16 holdsItem[DAYCARE_MON_COUNT]; }; -#define MAP_OBJECTS_COUNT 16 -#define BERRY_TREES_COUNT 128 -#define FLAGS_COUNT 300 -#define VARS_COUNT 256 -#define MAIL_COUNT 16 +#define POKEBLOCKS_COUNT 40 +#define MAP_OBJECTS_COUNT 16 +#define BERRY_TREES_COUNT 128 +#define FLAGS_COUNT 300 +#define VARS_COUNT 256 +#define MAIL_COUNT 16 enum { @@ -611,7 +612,7 @@ struct SaveBlock1 /*0x650*/ struct ItemSlot bagPocket_PokeBalls[16]; /*0x690*/ struct ItemSlot bagPocket_TMHM[64]; /*0x790*/ struct ItemSlot bagPocket_Berries[46]; - /*0x848*/ struct Pokeblock pokeblocks[40]; + /*0x848*/ struct Pokeblock pokeblocks[POKEBLOCKS_COUNT]; /*0x988*/ u8 seen1[52]; /*0x9BC*/ u16 berryBlenderRecords[3]; /*0x9C2*/ u8 field_9C2[6]; diff --git a/include/graphics.h b/include/graphics.h index aad5c0190..5690eea14 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -1,10 +1,7 @@ -// -// Created by scott on 10/21/2017. -// - #ifndef GUARD_GRAPHICS_H #define GUARD_GRAPHICS_H +// interface pokeballs extern const u8 gInterfaceGfx_PokeBall[]; extern const u8 gInterfacePal_PokeBall[]; extern const u8 gInterfaceGfx_GreatBall[]; @@ -31,6 +28,28 @@ extern const u8 gInterfaceGfx_PremierBall[]; extern const u8 gInterfacePal_PremierBall[]; extern const u8 gOpenPokeballGfx[]; +// pokeblock +extern const u8 gMenuPokeblock_Gfx[]; +extern const u8 gMenuPokeblock_Pal[]; +extern const u8 gMenuPokeblock_Tilemap[]; +extern const u8 gMenuPokeblockDevice_Gfx[]; +extern const u8 gMenuPokeblockDevice_Pal[]; +extern const u8 gPokeblockRed_Pal[]; +extern const u8 gPokeblockBlue_Pal[]; +extern const u8 gPokeblockPink_Pal[]; +extern const u8 gPokeblockGreen_Pal[]; +extern const u8 gPokeblockYellow_Pal[]; +extern const u8 gPokeblockPurple_Pal[]; +extern const u8 gPokeblockIndigo_Pal[]; +extern const u8 gPokeblockBrown_Pal[]; +extern const u8 gPokeblockLiteBlue_Pal[]; +extern const u8 gPokeblockOlive_Pal[]; +extern const u8 gPokeblockGray_Pal[]; +extern const u8 gPokeblockBlack_Pal[]; +extern const u8 gPokeblockWhite_Pal[]; +extern const u8 gPokeblockGold_Pal[]; +extern const u8 gPokeblock_Gfx[]; + extern const u8 gItemIcon_QuestionMark[]; extern const u8 gItemIconPalette_QuestionMark[]; extern const u8 gUnknown_08DB7AA0[]; diff --git a/include/lilycove_lady.h b/include/lilycove_lady.h index c7776131b..084e5722e 100644 --- a/include/lilycove_lady.h +++ b/include/lilycove_lady.h @@ -7,7 +7,7 @@ void sub_818DA78(void); void sub_818DEF4(void); void sub_818E564(void); void sub_818E570(const struct LilycoveLadyQuiz *quiz); -bool8 sub_818E704(struct Pokeblock *pokeblock); +bool8 GivePokeblockToContestLady(struct Pokeblock *pokeblock); void sub_818E7E0(u8 *dest1, u8 *dest2); void sub_818E81C(u8 *dest); void sub_818E848(u8 *dest); diff --git a/include/list_menu.h b/include/list_menu.h index 0249b06af..8b793c0e4 100644 --- a/include/list_menu.h +++ b/include/list_menu.h @@ -1,14 +1,17 @@ #ifndef GUARD_LIST_MENU_H #define GUARD_LIST_MENU_H +#define LIST_NOTHING_CHOSEN -1 +#define LIST_B_PRESSED -2 + // Exported type declarations // Exported RAM declarations struct ListMenuItem { - const u8 *unk_00; - s32 unk_04; + const u8 *name; + s32 id; }; struct ListMenu; @@ -16,7 +19,7 @@ struct ListMenu; struct ListMenuTemplate { const struct ListMenuItem *items; - void (* unk_04)(u32, bool8, struct ListMenu *); + void (* moveCursorFunc)(u32, bool8, struct ListMenu *); void (* unk_08)(u8, s32, u8); u16 totalItems; u16 maxShowed; @@ -32,9 +35,11 @@ struct ListMenuTemplate u32 spaceBetweenItems:6; // x20000, x40000, x80000, x100000, x200000, x400000 = x7E0000 u32 unk_16_7:1; // x800000 u32 unk_17_0:6; // x1000000, x2000000, x4000000, x8000000, x10000000, x20000000 = x3F000000 + u32 cursorKind:2; // x40000000, x80000000 }; -struct ListMenu { +struct ListMenu +{ struct ListMenuTemplate _template; u16 scrollOffset; u16 selectedRow; @@ -44,13 +49,13 @@ struct ListMenu { u8 unk_1F; }; -extern struct ListMenuTemplate gUnknown_03006310; +extern struct ListMenuTemplate gMultiuseListMenuTemplate; // Exported ROM declarations -u8 ListMenuInit(struct ListMenuTemplate *template, u16 a1, u16 a2); -s32 ListMenuHandleInput(u8 id); -void get_coro_args_x18_x1A(u8 a0, u16 *a1, u16 *a2); -void sub_81AE6C8(u8 a0, u16 *a1, u16 *a2); +u8 ListMenuInit(struct ListMenuTemplate *template, u16 cursorPage, u16 cursorPosition); +s32 ListMenuHandleInputGetItemId(u8 listTaskId); +void sub_81AE860(u8 listTaskId, u16 *a1, u16 *a2); +void sub_81AE6C8(u8 listTaskId, u16 *a1, u16 *a2); #endif //GUARD_LIST_MENU_H diff --git a/include/menu.h b/include/menu.h index 99ff35adb..124303570 100644 --- a/include/menu.h +++ b/include/menu.h @@ -4,6 +4,9 @@ #include "text.h" #include "window.h" +#define MENU_NOTHING_CHOSEN -2 +#define MENU_B_PRESSED -1 + struct MenuAction { const u8 *text; @@ -32,7 +35,9 @@ void CreateYesNoMenu(const struct WindowTemplate *windowTemplate, u16 borderFirs s8 ProcessMenuInputNoWrap_(void); void do_scheduled_bg_tilemap_copies_to_vram(void); void clear_scheduled_bg_copies_to_vram(void); -void AddTextPrinterParametrized2(u8 windowId, u8 fontId, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, struct TextColor *color, s8 speed, const u8 *str); +void AddTextPrinterParametrized2(u8 windowId, u8 fontId, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, const struct TextColor *color, s8 speed, const u8 *str); void sub_8197B1C(u8 windowId, bool8 copyToVram, u16 a2, u16 a3); +void sub_81995E4(u8 windowId, u8 optionsNo, const struct MenuAction *actions, const u8 *actionIds); +void sub_8197DF8(u8 windowId, bool8 copyToVram); #endif // GUARD_MENU_H diff --git a/include/menu_helpers.h b/include/menu_helpers.h index f083a10e2..14b6d32ca 100644 --- a/include/menu_helpers.h +++ b/include/menu_helpers.h @@ -3,7 +3,8 @@ // Exported type declarations -struct YesNoFuncTable { +struct YesNoFuncTable +{ TaskFunc yesFunc; TaskFunc noFunc; }; @@ -16,5 +17,15 @@ void sub_812225C(u16 *, u16 *, u8, u8); void sub_8122298(u16 *, u16 *, u8, u8, u8); void sub_8121F68(u8 taskId, const struct YesNoFuncTable *data); bool8 sub_81221AC(void); +void ResetVramOamAndBgCntRegs(void); +void SetVBlankHBlankCallbacksToNull(void); +void ResetAllBgsCoordinates(void); +bool16 RunTextPrintersRetIsActive(u8 textPrinterId); +void sub_8122344(void *arg0, u8 arg1); +void LoadListMenuArrowsGfx(void); +void sub_81223FC(u8 *a0, u8 count, u8 a2); +void sub_8122448(u8 *a0, u8 count, u16 x, u16 y); +void DisplayMessageAndContinueTask(u8 taskId, u8 arg1, u16 arg2, u8 arg3, u8 arg4, u8 textSpeed, const u8 *string, void *taskFunc); +void CreateYesNoMenuWithCallbacks(u8 taskId, const struct WindowTemplate *template, u8 arg2, u8 arg3, u8 arg4, u16 tileStart, u8 palette, const struct YesNoFuncTable *yesNo); #endif //GUARD_MENU_HELPERS_H diff --git a/include/party_menu.h b/include/party_menu.h index c787bafb1..3756ef569 100644 --- a/include/party_menu.h +++ b/include/party_menu.h @@ -1,7 +1,8 @@ #ifndef GUARD_PARTY_MENU_H #define GUARD_PARTY_MENU_H -enum { +enum +{ AILMENT_NONE, AILMENT_PSN, AILMENT_PRZ, @@ -14,5 +15,6 @@ bool8 pokemon_has_move(struct Pokemon *, u16); void sub_81B58A8(void); void DoWallyTutorialBagMenu(void); u8 pokemon_ailments_get_primary(u32 status); +u8 *GetMonNickname(struct Pokemon *mon, u8 *dst); #endif // GUARD_PARTY_MENU_H diff --git a/include/pokeblock.h b/include/pokeblock.h index a145cbada..6dd07b689 100644 --- a/include/pokeblock.h +++ b/include/pokeblock.h @@ -1,6 +1,9 @@ #ifndef GUARD_POKEBLOCK_H #define GUARD_POKEBLOCK_H +#define GFX_TAG_POKEBLOCK 14818 +#define GFX_TAG_POKEBLOCK_CASE 14800 + enum { PBLOCK_CLR_BLACK, @@ -22,12 +25,44 @@ enum PBLOCK_FEEL, }; +enum +{ + PBLOCK_CASE_FIELD, + PBLOCK_CASE_BATTLE, + PBLOCK_CASE_FEEDER, + PBLOCK_CASE_GIVE +}; + +// use pokeblock +extern u8 gPokeblockMonId; +extern s16 gPokeblockGain; + +void ChooseMonToGivePokeblock(struct Pokeblock *pokeblock, void (*callback)(void)); + +// pokeblock feed +void CB2_PreparePokeblockFeedScene(void); + +// pokeblock +extern const s8 gPokeblockFlavorCompatibilityTable[]; +extern const u8 *const gPokeblockNames[]; +extern const struct CompressedSpriteSheet gPokeblockCase_SpriteSheet; +extern const struct CompressedSpritePalette gPokeblockCase_SpritePal; + +void OpenPokeblockCase(u8 caseId, void (*callback)(void)); +void OpenPokeblockCaseInBattle(void); +void OpenPokeblockCaseOnFeeder(void); +void ResetPokeblockScrollPositions(void); +u8 CreatePokeblockCaseSprite(s16 x, s16 y, u8 subpriority); void ClearPokeblocks(void); -s8 GetFirstFreePokeblockSlot(void); -bool32 AddPokeblock(struct Pokeblock *pokeblock); u8 GetHighestPokeblocksFlavorLevel(const struct Pokeblock *pokeblock); u8 GetPokeblocksFeel(const struct Pokeblock *pokeblock); +s8 GetFirstFreePokeblockSlot(void); +bool32 AddPokeblock(const struct Pokeblock *pokeblock); +bool32 TryClearPokeblock(u8 pkblId); +s16 GetPokeblockData(const struct Pokeblock *pokeblock, u8 field); +s16 PokeblockGetGain(u8 nature, const struct Pokeblock *pokeblock); +void PokeblockCopyName(const struct Pokeblock *pokeblock, u8 *dest); +bool8 CopyMonFavoritePokeblockName(u8 nature, u8 *dest); u8 GetPokeblocksFlavor(const struct Pokeblock *pokeblock); -s16 PokeblockGetGain(u8, const struct Pokeblock *); #endif // GUARD_POKEBLOCK_H diff --git a/include/pokenav.h b/include/pokenav.h index 06676610a..8e1ec52bd 100644 --- a/include/pokenav.h +++ b/include/pokenav.h @@ -2,5 +2,15 @@ #define GUARD_POKENAV_H bool8 sub_81D5C18(void); +bool8 sub_81D20BC(void *arg0); +bool8 sub_81D312C(void *arg0); +void sub_81D1ED4(void *arg0); +void sub_81D2108(void *arg0); +void sub_81D20AC(void *arg0); +void sub_81D2230(void *arg0); +void sub_81D3464(void *arg0); +void sub_81D3480(void *arg0, u8 arg1); +void sub_81D2754(void *arg0, void *arg1); +void sub_81D1F84(void *arg0, void *arg1, void *arg2); #endif //GUARD_POKENAV_H diff --git a/include/rom6.h b/include/rom6.h index 6d20752e2..fc33b7d1f 100644 --- a/include/rom6.h +++ b/include/rom6.h @@ -1,7 +1,7 @@ #ifndef GUARD_ROM6_H #define GUARD_ROM6_H -void sub_81357FC(u8, void(void)); +void OpenPokeblockCase(u8, void(void)); u8 GetLeadMonIndex(void); u8 GetSSTidalLocation(u8 *grp, u8 *num, s16 *x, s16 *y); void sub_813BADC(bool8); diff --git a/include/strings.h b/include/strings.h index 84d7084b4..757cc8cac 100644 --- a/include/strings.h +++ b/include/strings.h @@ -1,45 +1,62 @@ #ifndef GUARD_STRINGS_H #define GUARD_STRINGS_H -// Exported type declarations - -// Exported RAM declarations - -// Exported ROM declarations - extern const u8 gText_FromSpace[]; + extern const u8 gText_Lv50[]; extern const u8 gText_OpenLevel[]; + extern const u8 gText_Mom[]; extern const u8 gText_Dad[]; + extern const u8 gText_Cool[]; extern const u8 gText_Beauty[]; extern const u8 gText_Cute[]; extern const u8 gText_Smart[]; extern const u8 gText_Tough[]; + extern const u8 gText_Single[]; extern const u8 gText_Double[]; + +extern const u8 gText_Spicy[]; +extern const u8 gText_Dry[]; +extern const u8 gText_Sweet[]; +extern const u8 gText_Bitter[]; +extern const u8 gText_Sour[]; + +extern const u8 gText_StowCase[]; +extern const u8 gText_LvVar1[]; + extern const u8 gText_Spicy2[]; extern const u8 gText_Dry2[]; extern const u8 gText_Sweet2[]; extern const u8 gText_Bitter2[]; extern const u8 gText_Sour2[]; + extern const u8 gText_Excellent[]; extern const u8 gText_VeryGood[]; extern const u8 gText_Good[]; extern const u8 gText_SoSo[]; extern const u8 gText_Bad[]; extern const u8 gText_TheWorst[]; + extern const u8 gText_Slots[]; extern const u8 gText_Roulette[]; extern const u8 gText_Jackpot[]; + extern const u8 gText_First[]; extern const u8 gText_Second[]; extern const u8 gText_Third[]; + extern const u8 gText_NoDecorations[]; extern const u8 gText_NoDecorationsInUse[]; + extern const u8 gText_Exit[]; extern const u8 gText_Cancel[]; + +extern const u8 gText_ThrowAwayVar1[]; +extern const u8 gText_Var1ThrownAway[]; + extern const u8 gText_Color161Shadow161[]; extern const u8 gText_GoBackPrevMenu[]; extern const u8 gText_CantPlaceInRoom[]; @@ -56,12 +73,14 @@ extern const u8 gText_NoDecorationHere[]; extern const u8 gText_DecorationWillBeDiscarded[]; extern const u8 gText_CantThrowAwayInUse[]; extern const u8 gText_DecorationThrownAway[]; + extern const u8 gText_Desk[]; extern const u8 gText_Chair[]; extern const u8 gText_Plant[]; extern const u8 gText_Ornament[]; extern const u8 gText_Mat[]; extern const u8 gText_Poster[]; + extern const u8 gText_PutOutSelectedDecorItem[]; extern const u8 gText_StoreChosenDecorInPC[]; extern const u8 gText_ThrowAwayUnwantedDecors[]; @@ -89,4 +108,30 @@ extern const u8 gText_IsThisTheCorrectTime[]; extern const u8 gText_PkmnFainted3[]; extern const u8 gText_Coins[]; +extern const u8 gText_Var1AteTheVar2[]; +extern const u8 gText_Var1HappilyAteVar2[]; +extern const u8 gText_Var1DisdainfullyAteVar2[]; + +extern const u8 gText_RedPokeblock[]; +extern const u8 gText_BluePokeblock[]; +extern const u8 gText_PinkPokeblock[]; +extern const u8 gText_GreenPokeblock[]; +extern const u8 gText_YellowPokeblock[]; +extern const u8 gText_PurplePokeblock[]; +extern const u8 gText_IndigoPokeblock[]; +extern const u8 gText_BrownPokeblock[]; +extern const u8 gText_LiteBluePokeblock[]; +extern const u8 gText_OlivePokeblock[]; +extern const u8 gText_GrayPokeblock[]; +extern const u8 gText_BlackPokeblock[]; +extern const u8 gText_WhitePokeblock[]; +extern const u8 gText_GoldPokeblock[]; + +extern const u8 gMenuText_Use[]; +extern const u8 gMenuText_Toss[]; +extern const u8 gMenuText_Give[]; +extern const u8 gMenuText_Give2[]; + +extern const u8 gText_Cancel2[]; + #endif //GUARD_STRINGS_H diff --git a/include/text_window.h b/include/text_window.h index da3fb301e..0af007397 100644 --- a/include/text_window.h +++ b/include/text_window.h @@ -3,8 +3,8 @@ struct TilesPal { - u32* tiles; - u16* pal; + u32 *tiles; + u16 *pal; }; const struct TilesPal* sub_8098758(u8 id); |