mirror of
https://github.com/zeldaret/tmc
synced 2026-07-08 14:36:41 -04:00
sorted kinstone and figurine menu
This commit is contained in:
@@ -285,37 +285,4 @@ typedef enum {
|
||||
GAMEMAIN_SUBTASK,
|
||||
} EGameMainState;
|
||||
|
||||
/** Subtasks override the game task for short periods */
|
||||
typedef enum {
|
||||
SUBTASK_EXIT,
|
||||
SUBTASK_PAUSEMENU,
|
||||
SUBTASK_EXIT2,
|
||||
SUBTASK_MAPHINT,
|
||||
SUBTASK_KINSTONEMENU,
|
||||
SUBTASK_AUXCUTSCENE, /* cutscene without presence of player */
|
||||
SUBTASK_PORTALCUTSCENE, /* player "falling" down portal cutscene */
|
||||
SUBTASK_FIGURINEMENU,
|
||||
SUBTASK_WORLDEVENT,
|
||||
SUBTASK_FASTTRAVEL,
|
||||
SUBTASK_LOCALMAPHINT,
|
||||
} ESubtask;
|
||||
|
||||
typedef void(Subtask)(void);
|
||||
|
||||
/** @name Subtask entrypoints */
|
||||
///@{
|
||||
/** Subtask entrypoint. */
|
||||
Subtask Subtask_Exit;
|
||||
Subtask Subtask_PauseMenu;
|
||||
Subtask Subtask_Exit;
|
||||
Subtask Subtask_MapHint;
|
||||
Subtask Subtask_KinstoneMenu;
|
||||
Subtask Subtask_AuxCutscene;
|
||||
Subtask Subtask_PortalCutscene;
|
||||
Subtask Subtask_FigurineMenu;
|
||||
Subtask Subtask_WorldEvent;
|
||||
Subtask Subtask_FastTravel;
|
||||
Subtask Subtask_LocalMapHint;
|
||||
///@}
|
||||
|
||||
#endif // GAME_H
|
||||
|
||||
@@ -27,4 +27,15 @@ typedef struct {
|
||||
static_assert(sizeof(FuseInfo) == 0x10);
|
||||
extern FuseInfo gFuseInfo;
|
||||
|
||||
typedef struct {
|
||||
u8 unk0;
|
||||
u8 unk1;
|
||||
u8 unk2;
|
||||
u8 unk3;
|
||||
u8 evt_type;
|
||||
u8 unk5;
|
||||
u8 _5[2];
|
||||
} struct_080C9CBC;
|
||||
extern struct_080C9CBC gUnk_080C9CBC[];
|
||||
|
||||
#endif // KINSTONE_H
|
||||
|
||||
+31
-1
@@ -82,11 +82,41 @@ typedef struct {
|
||||
static_assert(sizeof(GenericMenu) == 0x30);
|
||||
|
||||
typedef struct {
|
||||
Menu base;
|
||||
/*0x00*/ Menu base;
|
||||
/*0x10*/ union SplitWord unk10;
|
||||
/*0x14*/ u8 filler14[4];
|
||||
/*0x18*/ u16 unk18;
|
||||
/*0x1a*/ u16 unk1a;
|
||||
/*0x1c*/ u8 filler1c[14];
|
||||
/*0x2a*/ u8 unk2a;
|
||||
/*0x2b*/ u8 filler2b[1];
|
||||
/*0x2c*/ s8 unk2c;
|
||||
/*0x2d*/ u8 filler2d[2];
|
||||
/*0x2f*/ s8 unk2f;
|
||||
} KinstoneMenu;
|
||||
|
||||
typedef struct {
|
||||
/*0x00*/ Menu base;
|
||||
/*0x10*/ union {
|
||||
u16 h[2];
|
||||
u8 a[4];
|
||||
} unk10;
|
||||
/*0x14*/ u8 filler14[6];
|
||||
/*0x1a*/ u8 unk1a;
|
||||
/*0x1b*/ u8 filler1b[1];
|
||||
/*0x1c*/ u8 unk1c;
|
||||
/*0x1d*/ u8 unk1d;
|
||||
/*0x1e*/ u8 unk1e;
|
||||
/*0x1f*/ s8 unk1f;
|
||||
/*0x20*/ u8 unk20;
|
||||
/*0x21*/ u8 unk21;
|
||||
/*0x22*/ u8 filler22[0xc];
|
||||
/*0x2e*/ u16 unk2e;
|
||||
} FigurineMenu;
|
||||
|
||||
extern Menu gMenu;
|
||||
#define gGenericMenu (*(GenericMenu*)&gMenu)
|
||||
#define gKinstoneMenu (*(KinstoneMenu*)&gMenu)
|
||||
#define gFigurineMenu (*(FigurineMenu*)&gMenu)
|
||||
|
||||
#endif
|
||||
|
||||
+42
-4
@@ -3,14 +3,52 @@
|
||||
|
||||
#include "global.h"
|
||||
|
||||
/** Subtasks override the game task for short periods */
|
||||
typedef enum {
|
||||
SUBTASK_EXIT,
|
||||
SUBTASK_PAUSEMENU,
|
||||
SUBTASK_EXIT2,
|
||||
SUBTASK_MAPHINT,
|
||||
SUBTASK_KINSTONEMENU,
|
||||
SUBTASK_AUXCUTSCENE, /* cutscene without presence of player */
|
||||
SUBTASK_PORTALCUTSCENE, /* player "falling" down portal cutscene */
|
||||
SUBTASK_FIGURINEMENU,
|
||||
SUBTASK_WORLDEVENT,
|
||||
SUBTASK_FASTTRAVEL,
|
||||
SUBTASK_LOCALMAPHINT,
|
||||
} ESubtask;
|
||||
|
||||
typedef void(Subtask)(void);
|
||||
|
||||
/** @name Subtask entrypoints */
|
||||
///@{
|
||||
/** Subtask entrypoint. */
|
||||
Subtask Subtask_Exit;
|
||||
Subtask Subtask_PauseMenu;
|
||||
Subtask Subtask_Exit;
|
||||
Subtask Subtask_MapHint;
|
||||
Subtask Subtask_KinstoneMenu;
|
||||
Subtask Subtask_AuxCutscene;
|
||||
Subtask Subtask_PortalCutscene;
|
||||
Subtask Subtask_FigurineMenu;
|
||||
Subtask Subtask_WorldEvent;
|
||||
Subtask Subtask_FastTravel;
|
||||
Subtask Subtask_LocalMapHint;
|
||||
///@}
|
||||
|
||||
// todo: separate headers for each subtask?
|
||||
|
||||
extern void sub_080A4528(void);
|
||||
extern void sub_080A4398(void);
|
||||
extern void sub_080A7114(u32);
|
||||
extern void sub_080A3B74(void);
|
||||
extern void sub_080A4054(void);
|
||||
extern void sub_080A4D34(void);
|
||||
extern u32 sub_080A4494(void);
|
||||
extern void sub_080A4E90(u8);
|
||||
extern void sub_080A4E84(u8);
|
||||
|
||||
extern const struct {
|
||||
u8 unk0;
|
||||
u8 unk1;
|
||||
u8 filler[2];
|
||||
void (*func)(void);
|
||||
} gUnk_08128A38[];
|
||||
|
||||
#endif // SUBTASK_H
|
||||
|
||||
Reference in New Issue
Block a user