mirror of
https://github.com/ACreTeam/ac-decomp
synced 2026-07-08 12:16:19 -04:00
Implement & link m_calendar_ovl
This commit is contained in:
@@ -196,6 +196,9 @@ typedef enum audio_sound_effects {
|
||||
NA_SE_UCHIWA = 0x167,
|
||||
NA_SE_LAWNMOWER = 0x177,
|
||||
|
||||
NA_SE_17C = 0x17C,
|
||||
NA_SE_17D = 0x17D,
|
||||
|
||||
NA_SE_207 = 0x207,
|
||||
|
||||
NA_SE_SCOOP_SHIGEMI = 0x401,
|
||||
|
||||
@@ -723,6 +723,18 @@ do { \
|
||||
gsDPSetTextureImage_Dolphin(fmt, G_IM_SIZ_4b, w, h, timg), \
|
||||
gsDPSetTile_Dolphin(G_DOLPHIN_TLUT_DEFAULT_MODE, 0, pal, ws, wt, ss, st)
|
||||
|
||||
#define gDPLoadTextureBlock_4b_Dolphin(pkt, timg, fmt, w, h, pal, ws, wt, ss, st) \
|
||||
do { \
|
||||
gDPSetTextureImage_Dolphin(pkt, fmt, G_IM_SIZ_4b, w, h, timg); \
|
||||
gDPSetTile_Dolphin(pkt, G_DOLPHIN_TLUT_DEFAULT_MODE, 0, pal, ws, wt, ss, st); \
|
||||
} while (0)
|
||||
|
||||
#define gDPLoadTextureBlock_8b_Dolphin(pkt, timg, fmt, w, h, pal, ws, wt, ss, st) \
|
||||
do { \
|
||||
gDPSetTextureImage_Dolphin(pkt, fmt, G_IM_SIZ_8b, w, h, timg); \
|
||||
gDPSetTile_Dolphin(pkt, G_DOLPHIN_TLUT_DEFAULT_MODE, 0, pal, ws, wt, ss, st); \
|
||||
} while (0)
|
||||
|
||||
#define gDPLoadTextureTile_4b_Dolphin(pkt, timg, fmt, w, h) \
|
||||
do { \
|
||||
gDPSetTextureImage_Dolphin(pkt, fmt, G_IM_SIZ_4b, h, w, timg); \
|
||||
|
||||
@@ -2,11 +2,87 @@
|
||||
#define M_CALENDAR_OVL_H
|
||||
|
||||
#include "types.h"
|
||||
#include "m_calendar_ovl_h.h"
|
||||
#include "m_submenu_ovl.h"
|
||||
#include "m_calendar.h"
|
||||
#include "m_string.h"
|
||||
#include "m_font.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#define mCD_YEARS_SHOWN 3
|
||||
#define mCD_EVENT_NAME_STR_LEN 16
|
||||
|
||||
enum {
|
||||
mCD_STICK_AREA_LEFT,
|
||||
mCD_STICK_AREA_TOP_LEFT,
|
||||
mCD_STICK_AREA_TOP,
|
||||
mCD_STICK_AREA_TOP_RIGHT,
|
||||
mCD_STICK_AREA_RIGHT,
|
||||
mCD_STICK_AREA_BOTTOM_RIGHT,
|
||||
mCD_STICK_AREA_BOTTOM,
|
||||
mCD_STICK_AREA_BOTTOM_LEFT,
|
||||
mCD_STICK_AREA_CENTER,
|
||||
|
||||
mCD_STICK_AREA_NUM
|
||||
};
|
||||
|
||||
enum {
|
||||
mCD_MVPL_SELECT,
|
||||
mCD_MVPL_MV0,
|
||||
mCD_MVPL_MV1,
|
||||
mCD_MVPL_CHG0,
|
||||
mCD_MVPL_CHG1,
|
||||
mCD_MVPL_DAY,
|
||||
mCD_MVPL_ESCAPE,
|
||||
mCD_MVPL_ENTRANCE,
|
||||
|
||||
mCD_MVPL_NUM
|
||||
};
|
||||
|
||||
#define mCD_DAY_NONE (0) // day panel not enabled, part of previous or next month
|
||||
#define mCD_DAY_NORMAL (1) // regular day
|
||||
#define mCD_DAY_FIRST_OF_WEEK (2) // first day of the week (Sunday)
|
||||
#define mCD_DAY_EVENT (3) // event present on this day
|
||||
#define mCD_DAY_CURRENT (4) // current day
|
||||
#define mCD_DAY_UNDEFINED (5) // invalid/unset
|
||||
|
||||
// TODO: fill out the rest of these struct fields with proper names
|
||||
|
||||
typedef struct calendar_month_entry_s {
|
||||
u8 day_data[37];
|
||||
u8 _25[37];
|
||||
u8 _4A[lbRTC_MONTHS_MAX][2];
|
||||
u8 _62[16];
|
||||
u8 _72;
|
||||
} mCD_month_entry_c;
|
||||
|
||||
struct calendar_ovl_s {
|
||||
mCD_month_entry_c month_entries[mCD_YEARS_SHOWN * lbRTC_MONTHS_MAX];
|
||||
f32 _102C;
|
||||
f32 _1030;
|
||||
f32 _1034;
|
||||
f32 _1038;
|
||||
u8 _103C[6];
|
||||
u8 _1042;
|
||||
u8 _1043;
|
||||
u8 event_name_str[mCD_EVENT_NAME_STR_LEN];
|
||||
u8 _1054;
|
||||
u8 move_proc_idx;
|
||||
u8 _1056;
|
||||
u8 _1057;
|
||||
u8 day_type;
|
||||
u8 _1059;
|
||||
u8 _105A;
|
||||
u8 stick_area;
|
||||
u8 _105C;
|
||||
u8 _105D;
|
||||
u8 _105E;
|
||||
u8 _105F;
|
||||
};
|
||||
|
||||
extern void mCD_calendar_ovl_construct(Submenu* submenu);
|
||||
extern void mCD_calendar_ovl_destruct(Submenu* submenu);
|
||||
extern void mCD_calendar_ovl_set_proc(Submenu* submenu);
|
||||
|
||||
@@ -7,6 +7,8 @@
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
typedef struct calendar_ovl_s mCD_Ovl_c;
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -38,6 +38,7 @@
|
||||
#include "m_cpedit_ovl_h.h"
|
||||
#include "m_cpwarning_ovl_h.h"
|
||||
#include "m_mscore_ovl_h.h"
|
||||
#include "m_calendar_ovl_h.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
@@ -203,7 +204,7 @@ struct submenu_overlay_s {
|
||||
/* 0x9E0 */ void* _9E0;
|
||||
/* 0x9E4 */ mGB_Ovl_c* gba_ovl;
|
||||
/* 0x9E8 */ mDI_Ovl_c* diary_ovl;
|
||||
/* 0x9EC */ void* _9EC;
|
||||
/* 0x9EC */ mCD_Ovl_c* calendar_ovl;
|
||||
/* 0x9F0 */ mPM_Ovl_c* passwordMake_ovl;
|
||||
/* 0x9F4 */ mPC_Ovl_c* passwordChk_ovl;
|
||||
/* 0x9F8 */ u8 hboard_exists;
|
||||
|
||||
Reference in New Issue
Block a user