From 79277cb2b2672104b87172d8ff620f923f450658 Mon Sep 17 00:00:00 2001 From: LagoLunatic Date: Mon, 25 May 2026 20:38:56 -0400 Subject: [PATCH] Add boilerplate for some msg/kankyos --- include/d/d_picture_box.h | 6 ++++- include/d/d_scope.h | 6 ++++- include/d/d_water_mark.h | 9 +++++-- include/d/d_wpillar.h | 14 ++++++---- src/d/d_picture_box.cpp | 33 ++++++++++++++++++++--- src/d/d_scope.cpp | 34 ++++++++++++++++++++---- src/d/d_water_mark.cpp | 56 +++++++++++++++++++++++++++++++++------ src/d/d_wpillar.cpp | 51 ++++++++++++++++++++++++++--------- 8 files changed, 170 insertions(+), 39 deletions(-) diff --git a/include/d/d_picture_box.h b/include/d/d_picture_box.h index 60a60431e..0d6c1144c 100644 --- a/include/d/d_picture_box.h +++ b/include/d/d_picture_box.h @@ -2,12 +2,16 @@ #define D_PICTURE_BOX_H #include "dolphin/types.h" +#include "f_op/f_op_msg.h" class JKRExpHeap; struct fopMsgM_pane_class; struct fopMsgM_pane_alpha_class; -class sub_pb_class; +class sub_pb_class : public msg_class { +public: + /* Place member variables here */ +}; class dJle_Pb_c { void alphaChange(fopMsgM_pane_alpha_class*, f32) {} diff --git a/include/d/d_scope.h b/include/d/d_scope.h index a7ed13fab..38598a4f5 100644 --- a/include/d/d_scope.h +++ b/include/d/d_scope.h @@ -2,8 +2,12 @@ #define D_SCOPE_H #include "dolphin/types.h" +#include "f_op/f_op_msg.h" -class sub_scp_class; +class sub_scp_class : public msg_class { +public: + /* Place member variables here */ +}; class dDlst_2DSCP_c { public: diff --git a/include/d/d_water_mark.h b/include/d/d_water_mark.h index 1fdf27b42..22b0c818d 100644 --- a/include/d/d_water_mark.h +++ b/include/d/d_water_mark.h @@ -1,15 +1,20 @@ #ifndef D_WATER_MARK_H #define D_WATER_MARK_H +#include "SSystem/SComponent/c_phase.h" #include "dolphin/types.h" +#include "f_op/f_op_kankyo.h" -class dWaterMark_c { +class dWaterMark_c : public kankyo_class { public: inline BOOL draw(); inline BOOL execute(); inline BOOL wm_delete(); void setMatrix(); - void create(); + inline cPhs_State create(); + +public: + /* Place member variables here */ }; #endif /* D_WATER_MARK_H */ diff --git a/include/d/d_wpillar.h b/include/d/d_wpillar.h index 29af7544c..5f4a1906e 100644 --- a/include/d/d_wpillar.h +++ b/include/d/d_wpillar.h @@ -2,14 +2,18 @@ #define D_WPILLAR_H #include "dolphin/types.h" +#include "f_op/f_op_kankyo.h" -class dWpillar_c { +class dWpillar_c : public kankyo_class { public: void jointCallBack(int); - void draw(); - void execute(); - void wp_delete(); - void create(); + BOOL draw(); + BOOL execute(); + BOOL wp_delete(); + cPhs_State create(); + +public: + /* Place member variables here */ }; #endif /* D_WPILLAR_H */ diff --git a/src/d/d_picture_box.cpp b/src/d/d_picture_box.cpp index f431d12e9..a4bab1f09 100644 --- a/src/d/d_picture_box.cpp +++ b/src/d/d_picture_box.cpp @@ -5,6 +5,8 @@ #include "d/dolzel.h" // IWYU pragma: keep #include "d/d_picture_box.h" +#include "d/d_priority.h" +#include "d/d_procname.h" #include "f_op/f_op_msg.h" /* 802258C8-80225954 .text dPb_erasePicture__Fv */ @@ -263,26 +265,49 @@ void dJle_Pb_c::_delete(JKRExpHeap*) { } /* 8022BB3C-8022BB7C .text dPb_Draw__FP12sub_pb_class */ -static BOOL dPb_Draw(sub_pb_class*) { +static BOOL dPb_Draw(sub_pb_class* i_this) { /* Nonmatching */ } /* 8022BB7C-8022BC84 .text dPb_Execute__FP12sub_pb_class */ -static BOOL dPb_Execute(sub_pb_class*) { +static BOOL dPb_Execute(sub_pb_class* i_this) { /* Nonmatching */ } /* 8022BC84-8022BC8C .text dPb_IsDelete__FP12sub_pb_class */ static BOOL dPb_IsDelete(sub_pb_class*) { /* Nonmatching */ + return TRUE; } /* 8022BC8C-8022BD8C .text dPb_Delete__FP12sub_pb_class */ -static BOOL dPb_Delete(sub_pb_class*) { +static BOOL dPb_Delete(sub_pb_class* i_this) { /* Nonmatching */ } /* 8022BD8C-8022C03C .text dPb_Create__FP9msg_class */ -static cPhs_State dPb_Create(msg_class*) { +static cPhs_State dPb_Create(msg_class* i_this) { /* Nonmatching */ } + +msg_method_class l_dPb_Method = { + (process_method_func)dPb_Create, + (process_method_func)dPb_Delete, + (process_method_func)dPb_Execute, + (process_method_func)dPb_IsDelete, + (process_method_func)dPb_Draw, +}; + +msg_process_profile_definition g_profile_PB = { + /* LayerID */ fpcLy_CURRENT_e, + /* ListID */ 0x000C, + /* ListPrio */ fpcPi_CURRENT_e, + /* ProcName */ PROC_PB, + /* Proc SubMtd */ &g_fpcLf_Method.base, + /* Size */ sizeof(sub_pb_class), + /* SizeOther */ 0, + /* Parameters */ 0, + /* Leaf SubMtd */ &g_fopMsg_Method, + /* Priority */ PRIO_PB, + /* Actor SubMtd */ &l_dPb_Method, +}; diff --git a/src/d/d_scope.cpp b/src/d/d_scope.cpp index 6b0a39f49..159e886ce 100644 --- a/src/d/d_scope.cpp +++ b/src/d/d_scope.cpp @@ -5,6 +5,8 @@ #include "d/dolzel.h" // IWYU pragma: keep #include "d/d_scope.h" +#include "d/d_priority.h" +#include "d/d_procname.h" #include "f_op/f_op_msg.h" /* 80237568-802375E8 .text draw__13dDlst_2DSCP_cFv */ @@ -188,26 +190,48 @@ void dScp_closeDemoProc(sub_scp_class*) { } /* 8023AD20-8023AD60 .text dScp_Draw__FP13sub_scp_class */ -static BOOL dScp_Draw(sub_scp_class*) { +static BOOL dScp_Draw(sub_scp_class* i_this) { /* Nonmatching */ } /* 8023AD60-8023AEF4 .text dScp_Execute__FP13sub_scp_class */ -static BOOL dScp_Execute(sub_scp_class*) { +static BOOL dScp_Execute(sub_scp_class* i_this) { /* Nonmatching */ } /* 8023AEF4-8023AEFC .text dScp_IsDelete__FP13sub_scp_class */ static BOOL dScp_IsDelete(sub_scp_class*) { - /* Nonmatching */ + return TRUE; } /* 8023AEFC-8023B094 .text dScp_Delete__FP13sub_scp_class */ -static BOOL dScp_Delete(sub_scp_class*) { +static BOOL dScp_Delete(sub_scp_class* i_this) { /* Nonmatching */ } /* 8023B094-8023B49C .text dScp_Create__FP9msg_class */ -static cPhs_State dScp_Create(msg_class*) { +static cPhs_State dScp_Create(msg_class* i_this) { /* Nonmatching */ } + +msg_method_class l_dPb_Method = { + (process_method_func)dScp_Create, + (process_method_func)dScp_Delete, + (process_method_func)dScp_Execute, + (process_method_func)dScp_IsDelete, + (process_method_func)dScp_Draw, +}; + +msg_process_profile_definition g_profile_SCP = { + /* LayerID */ fpcLy_CURRENT_e, + /* ListID */ 0x000C, + /* ListPrio */ fpcPi_CURRENT_e, + /* ProcName */ PROC_SCP, + /* Proc SubMtd */ &g_fpcLf_Method.base, + /* Size */ sizeof(sub_scp_class), + /* SizeOther */ 0, + /* Parameters */ 0, + /* Leaf SubMtd */ &g_fopMsg_Method, + /* Priority */ PRIO_SCP, + /* Actor SubMtd */ &l_dPb_Method, +}; diff --git a/src/d/d_water_mark.cpp b/src/d/d_water_mark.cpp index 17f09daac..5f680e2cc 100644 --- a/src/d/d_water_mark.cpp +++ b/src/d/d_water_mark.cpp @@ -5,39 +5,79 @@ #include "d/dolzel.h" // IWYU pragma: keep #include "d/d_water_mark.h" +#include "d/d_priority.h" +#include "d/d_procname.h" #include "f_op/f_op_kankyo.h" -/* 8023DB48-8023DBF8 .text dWaterMark_Draw__FP12dWaterMark_c */ -static BOOL dWaterMark_Draw(dWaterMark_c*) { +BOOL dWaterMark_c::draw() { /* Nonmatching */ } +/* 8023DB48-8023DBF8 .text dWaterMark_Draw__FP12dWaterMark_c */ +static BOOL dWaterMark_Draw(dWaterMark_c* i_this) { + /* Nonmatching */ + return i_this->draw(); +} + /* 8023DBF8-8023DE2C .text setMatrix__12dWaterMark_cFv */ void dWaterMark_c::setMatrix() { /* Nonmatching */ } -/* 8023DE2C-8023DF24 .text dWaterMark_Execute__FP12dWaterMark_c */ -static BOOL dWaterMark_Execute(dWaterMark_c*) { +BOOL dWaterMark_c::execute() { /* Nonmatching */ } +/* 8023DE2C-8023DF24 .text dWaterMark_Execute__FP12dWaterMark_c */ +static BOOL dWaterMark_Execute(dWaterMark_c* i_this) { + /* Nonmatching */ + return i_this->execute(); +} + /* 8023DF24-8023DF2C .text dWaterMark_IsDelete__FP12dWaterMark_c */ static BOOL dWaterMark_IsDelete(dWaterMark_c*) { + return TRUE; +} + +BOOL dWaterMark_c::wm_delete() { /* Nonmatching */ } /* 8023DF2C-8023DF80 .text dWaterMark_Delete__FP12dWaterMark_c */ -static BOOL dWaterMark_Delete(dWaterMark_c*) { +static BOOL dWaterMark_Delete(dWaterMark_c* i_this) { /* Nonmatching */ + return i_this->wm_delete(); } /* 8023DF80-8023DFA0 .text dWaterMark_Create__FP12kankyo_class */ -static cPhs_State dWaterMark_Create(kankyo_class*) { - /* Nonmatching */ +static cPhs_State dWaterMark_Create(kankyo_class* i_this) { + dWaterMark_c* a_this = (dWaterMark_c*)i_this; + return a_this->create(); } /* 8023DFA0-8023E29C .text create__12dWaterMark_cFv */ -void dWaterMark_c::create() { +cPhs_State dWaterMark_c::create() { /* Nonmatching */ } + +kankyo_method_class l_dWaterMark_Method = { + (process_method_func)dWaterMark_Create, + (process_method_func)dWaterMark_Delete, + (process_method_func)dWaterMark_Execute, + (process_method_func)dWaterMark_IsDelete, + (process_method_func)dWaterMark_Draw, +}; + +kankyo_process_profile_definition g_profile_WATER_MARK = { + /* LayerID */ fpcLy_CURRENT_e, + /* ListID */ 0x0009, + /* ListPrio */ fpcPi_CURRENT_e, + /* ProcName */ PROC_WATER_MARK, + /* Proc SubMtd */ &g_fpcLf_Method.base, + /* Size */ sizeof(dWaterMark_c), + /* SizeOther */ 0, + /* Parameters */ 0, + /* Leaf SubMtd */ &g_fopKy_Method, + /* Priority */ PRIO_WATER_MARK, + /* Actor SubMtd */ &l_dWaterMark_Method, +}; diff --git a/src/d/d_wpillar.cpp b/src/d/d_wpillar.cpp index 3d8dd1520..912c7f90d 100644 --- a/src/d/d_wpillar.cpp +++ b/src/d/d_wpillar.cpp @@ -5,6 +5,8 @@ #include "d/dolzel.h" // IWYU pragma: keep #include "d/d_wpillar.h" +#include "d/d_priority.h" +#include "d/d_procname.h" #include "f_op/f_op_kankyo.h" class J3DNode; @@ -20,46 +22,69 @@ static BOOL dWpillar_jointCallBack(J3DNode*, int) { } /* 8023EA28-8023ECF8 .text draw__10dWpillar_cFv */ -void dWpillar_c::draw() { +BOOL dWpillar_c::draw() { /* Nonmatching */ } /* 8023ECF8-8023ED18 .text dWpillar_Draw__FP10dWpillar_c */ -static BOOL dWpillar_Draw(dWpillar_c*) { - /* Nonmatching */ +static BOOL dWpillar_Draw(dWpillar_c* i_this) { + return i_this->draw(); } /* 8023ED18-8023EDB0 .text execute__10dWpillar_cFv */ -void dWpillar_c::execute() { +BOOL dWpillar_c::execute() { /* Nonmatching */ } /* 8023EDB0-8023EDD0 .text dWpillar_Execute__FP10dWpillar_c */ -static BOOL dWpillar_Execute(dWpillar_c*) { - /* Nonmatching */ +static BOOL dWpillar_Execute(dWpillar_c* i_this) { + return i_this->execute(); } /* 8023EDD0-8023EDD8 .text dWpillar_IsDelete__FP10dWpillar_c */ static BOOL dWpillar_IsDelete(dWpillar_c*) { - /* Nonmatching */ + return TRUE; } /* 8023EDD8-8023EE08 .text wp_delete__10dWpillar_cFv */ -void dWpillar_c::wp_delete() { +BOOL dWpillar_c::wp_delete() { /* Nonmatching */ } /* 8023EE08-8023EE28 .text dWpillar_Delete__FP10dWpillar_c */ -static BOOL dWpillar_Delete(dWpillar_c*) { - /* Nonmatching */ +static BOOL dWpillar_Delete(dWpillar_c* i_this) { + return i_this->wp_delete(); } /* 8023EE28-8023F5B0 .text create__10dWpillar_cFv */ -void dWpillar_c::create() { +cPhs_State dWpillar_c::create() { /* Nonmatching */ } /* 8023F5B0-8023F5D0 .text dWpillar_Create__FP12kankyo_class */ -static cPhs_State dWpillar_Create(kankyo_class*) { - /* Nonmatching */ +static cPhs_State dWpillar_Create(kankyo_class* i_this) { + dWpillar_c* a_this = (dWpillar_c*)i_this; + return a_this->create(); } + +kankyo_method_class l_dWpillar_Method = { + (process_method_func)dWpillar_Create, + (process_method_func)dWpillar_Delete, + (process_method_func)dWpillar_Execute, + (process_method_func)dWpillar_IsDelete, + (process_method_func)dWpillar_Draw, +}; + +kankyo_process_profile_definition g_profile_WPILLAR = { + /* LayerID */ fpcLy_CURRENT_e, + /* ListID */ 0x0008, + /* ListPrio */ fpcPi_CURRENT_e, + /* ProcName */ PROC_WPILLAR, + /* Proc SubMtd */ &g_fpcLf_Method.base, + /* Size */ sizeof(dWpillar_c), + /* SizeOther */ 0, + /* Parameters */ 0, + /* Leaf SubMtd */ &g_fopKy_Method, + /* Priority */ PRIO_WPILLAR, + /* Actor SubMtd */ &l_dWpillar_Method, +};