106 lines
3.6 KiB
C
106 lines
3.6 KiB
C
#ifndef INGAME_MENU_H
|
|
#define INGAME_MENU_H
|
|
|
|
#include "types.h"
|
|
|
|
#define MENU_MTX_PUSH 1
|
|
#define MENU_MTX_NOPUSH 2
|
|
|
|
#define MENU_SCROLL_VERTICAL 1
|
|
#define MENU_SCROLL_HORIZONTAL 2
|
|
|
|
extern s8 D_80330534;
|
|
extern s8 D_803305CC;
|
|
|
|
struct DialogEntry
|
|
{
|
|
/*0x00*/ u32 unk00; // unused
|
|
/*0x04*/ s8 linesPerBox;
|
|
/*0x06*/ s16 leftOffset;
|
|
/*0x08*/ s16 width;
|
|
/*0x0C*/ u8 *str;
|
|
};
|
|
|
|
enum HudFontType {
|
|
FONT_JAPANESE = 1,
|
|
FONT_ENGLISH
|
|
};
|
|
|
|
extern s32 gDialogResponse;
|
|
extern u16 D_80360080;
|
|
extern s8 gLastDialogLineNum;
|
|
extern s32 gDialogVariable;
|
|
extern u16 D_80360088;
|
|
extern s16 gCutsceneMsgXOffset;
|
|
extern s16 gCutsceneMsgYOffset;
|
|
extern s8 D_8036008E;
|
|
|
|
extern void func_802D6440(void);
|
|
extern void dl_add_new_translation_matrix(s8 pushOp, f32 x, f32 y, f32 z);
|
|
extern void dl_add_new_rotation_matrix(s8 pushOp, f32 a, f32 x, f32 y, f32 z);
|
|
extern void dl_add_new_scale_matrix(s8 pushOp, f32 x, f32 y, f32 z);
|
|
extern void dl_add_new_ortho_matrix(void);
|
|
extern void func_802D6AFC(u8 c);
|
|
extern void PrintGenericText(s16 x, s16 y, const u8 *str);
|
|
extern void PutString(s8 font, s16 x, s16 y, const u8 *str);
|
|
extern void PrintRegularText(s16 x, s16 y, const u8 *str);
|
|
extern void print_credits_str_dialog(s16 x, s16 y, const u8 *str);
|
|
extern void handleMenuScrolling(s8 scrollDirection, s8 *currentIndex, s8 minIndex, s8 maxIndex);
|
|
#if defined(VERSION_US) || defined(VERSION_EU)
|
|
extern s16 get_str_x_pos_from_center(s16 centerPos, u8 *str, f32 scale);
|
|
#endif
|
|
#if defined(VERSION_JP) || defined(VERSION_EU)
|
|
#ifdef VERSION_JP
|
|
// remap JP get_str_x_pos_from_center() calls to get_str_x_pos_from_center_scale()
|
|
#define get_str_x_pos_from_center get_str_x_pos_from_center_scale
|
|
#endif
|
|
extern s16 get_str_x_pos_from_center_scale(s16 centerPos, u8 *str, f32 scale);
|
|
#endif
|
|
extern void ShowCoins(s32 useCourseCoinScore, s8 sp27, s8 sp2b, s16 x, s16 y);
|
|
extern void ShowStars(s8 sp2b, s8 sp2f, s16 x, s16 y);
|
|
extern void Int2Str(s32 num, u8 *dst);
|
|
extern s16 get_dialog_id(void);
|
|
extern void func_802D7F90(s16 a0);
|
|
extern void func_802D7FCC(s16 a0, s32 a1);
|
|
extern void CreateTextBox(s16 a0);
|
|
extern void func_802D8050(s16 a0);
|
|
extern void func_802D8098(void);
|
|
extern void func_802D8134(struct DialogEntry *sp40, s8 sp47);
|
|
extern void func_802D8450(s8 a0, s8 a1);
|
|
extern void func_802D875C(s8 *sp20, s16 *sp24);
|
|
extern u32 func_802D8954(s16 a0);
|
|
extern void func_802D8ED4(void);
|
|
extern void func_802D9030(s8 sp3b);
|
|
extern void func_802D91C0(s16 sp4a);
|
|
extern void func_802D93E0(void);
|
|
extern void func_802D9A14(s16);
|
|
extern void reset_cutscene_msg_fade(void);
|
|
extern void func_802D9A60(void);
|
|
extern void func_802D9AE8(void);
|
|
extern void print_credits_str_ascii(s16 x, s16 y, const char *str);
|
|
extern void set_cutscene_message(s16 xOffset, s16 yOffset, s16 msgIndex, s16 msgDuration);
|
|
extern void do_cutscene_handler(void);
|
|
extern void RenderHudCannonReticle(void);
|
|
extern void func_802DA4DC(void);
|
|
extern void func_802DA4F4(void);
|
|
extern void ShadeScreen(void);
|
|
extern void PrintAnimatedRedCoin(s16 sp4a, s16 sp4e);
|
|
extern void func_802DA874(void);
|
|
extern void func_802DA8EC(void);
|
|
extern void PauseScreenCameraMenu(s16 sp72, s16 sp76, s8 *sp78, s16 sp7e);
|
|
extern void PauseScreen2(s16 sp62, s16 sp66, s8 *sp68, s16 sp6e);
|
|
extern void PauseCastleMenuBox(s16 sp42, s16 sp46);
|
|
extern void func_802DB540(void);
|
|
extern void PauseScreen1(void);
|
|
extern void func_802DB698(s16 sp4a, s16 sp4e, s16 sp52, s16 sp56);
|
|
extern void func_802DB840(s16 sp52, s16 sp56);
|
|
extern s16 func_802DBBB0(void);
|
|
extern void func_802DBE2C(s8 sp43);
|
|
extern void func_802DC050(s16 sp32, s16 sp36);
|
|
extern void func_802DC2B4(s32 sp18, u8 sp1f);
|
|
extern void func_802DC330(void);
|
|
extern s16 func_802DCBD4(void);
|
|
extern s16 func_802DCD98(void);
|
|
|
|
#endif /* INGAME_MENU_H */
|