Finish decompiling pyramid bag.

This commit is contained in:
DizzyEggg
2018-08-30 20:10:57 +02:00
parent bc9fe72c6e
commit 917b32ffbe
12 changed files with 782 additions and 944 deletions

View File

@@ -0,0 +1,49 @@
#ifndef GUARD_BATTLE_PYRAMID_BAG_H
#define GUARD_BATTLE_PYRAMID_BAG_H
#include "list_menu.h"
struct PyramidBagResources
{
void (*callback2)(void);
u8 tilemapBuffer[0x800];
u8 itemsSpriteIds[PYRAMID_BAG_ITEMS_COUNT + 1];
u8 windowIds[5];
u8 unk814;
u8 unk815;
u8 scrollArrowSpriteId;
const u8 *menuActionIds;
u8 filler81C[0x820 - 0x81C];
u8 menuActionsCount;
u8 listMenuCount;
u8 listMenuMaxShown;
struct ListMenuItem bagListItems[PYRAMID_BAG_ITEMS_COUNT + 1];
u8 itemStrings[PYRAMID_BAG_ITEMS_COUNT + 1][ITEM_NAME_LENGTH + 10];
s16 state;
u8 filler986[0x98C - 0x986];
};
struct PyramidBagCursorData
{
void (*callback)(void);
u8 unk4;
u16 cursorPosition;
u16 scrollPosition;
};
extern struct PyramidBagResources *gPyramidBagResources;
extern struct PyramidBagCursorData gPyramidBagCursorData;
void CB2_PyramidBagMenuFromStartMenu(void);
void sub_81C4F84(void);
void sub_81C5924(void);
void sub_81C59BC(void);
void sub_81C4EFC(void);
void sub_81C4F98(u8 a0, void (*callback)(void));
void sub_81C6714(u8 taskId);
void sub_81C6A94(void);
void sub_81C4F24(void);
void sub_81C5B14(u8 taskId);
void DisplayItemMessageInBattlePyramid(u8 taskId, const u8 *str, void (*callback)(u8 taskId));
#endif // GUARD_BATTLE_PYRAMID_BAG_H

View File

@@ -51,6 +51,5 @@ void ItemUseInBattle_EnigmaBerry(u8);
void ItemUseOutOfBattle_CannotUse(u8);
u8 CheckIfItemIsTMHMOrEvolutionStone(u16 itemId);
void sub_80FDD10(u8);
void DisplayItemMessageInBattlePyramid(u8 taskId, const u8* str, void(*callback)(u8 taskId));
#endif // GUARD_ITEM_USE_H

View File

@@ -32,7 +32,7 @@ struct SaveSectionOffsets
};
// Emerald changes this definition to be the sectors per slot.
#define NUM_SECTORS_PER_SLOT 16 // move to save.h
#define NUM_SECTORS_PER_SLOT 16
#define UNKNOWN_CHECK_VALUE 0x8012025