mirror of https://github.com/zeldaret/tp.git
Fix process profile definitions
This commit is contained in:
parent
cd249ad2df
commit
2fa6dd7003
|
|
@ -2,20 +2,25 @@
|
|||
#define F_F_OP_SCENE_H_
|
||||
|
||||
#include "f_op/f_op_scene_tag.h"
|
||||
#include "f_pc/f_pc_leaf.h"
|
||||
|
||||
struct request_of_phase_process_class;
|
||||
class mDoDvdThd_command_c;
|
||||
|
||||
struct scene_method_class {
|
||||
/* 0x00 */ leafdraw_method_class base;
|
||||
};
|
||||
|
||||
typedef struct scene_process_profile_definition {
|
||||
/* 0x00 */ node_process_profile_definition nase;
|
||||
/* 0x20 */ process_method_class* submethod; // Subclass methods
|
||||
/* 0x20 */ scene_method_class* submethod; // Subclass methods
|
||||
/* 0x24 */ u32 unk_0x24; // padding?
|
||||
} scene_process_profile_definition;
|
||||
|
||||
class scene_class {
|
||||
public:
|
||||
/* 0x000 */ process_node_class base;
|
||||
/* 0x1AC */ process_method_class* submethod;
|
||||
/* 0x1AC */ scene_method_class* submethod;
|
||||
/* 0x1B0 */ scene_tag_class scene_tag;
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -263,19 +263,27 @@ static int daTag_KMsg_IsDelete(void* param_0) {
|
|||
return 1;
|
||||
}
|
||||
|
||||
static void* daTag_KMsg_MethodTable[8] = {
|
||||
(void*)daTag_KMsg_Create,
|
||||
(void*)daTag_KMsg_Delete,
|
||||
(void*)daTag_KMsg_Execute,
|
||||
(void*)daTag_KMsg_IsDelete,
|
||||
(void*)daTag_KMsg_Draw,
|
||||
static actor_method_class daTag_KMsg_MethodTable = {
|
||||
(process_method_func)daTag_KMsg_Create,
|
||||
(process_method_func)daTag_KMsg_Delete,
|
||||
(process_method_func)daTag_KMsg_Execute,
|
||||
(process_method_func)daTag_KMsg_IsDelete,
|
||||
(process_method_func)daTag_KMsg_Draw,
|
||||
};
|
||||
|
||||
void* g_profile_TAG_KMSG[12] = {
|
||||
(void*)0xFFFFFFFD, (void*)0x0008FFFD,
|
||||
(void*)0x02EB0000, (void*)&g_fpcLf_Method,
|
||||
(void*)0x000005CC, (void*)NULL,
|
||||
(void*)NULL, (void*)&g_fopAc_Method,
|
||||
(void*)0x01220000, (void*)&daTag_KMsg_MethodTable,
|
||||
(void*)0x00044000, (void*)0x000E0000,
|
||||
actor_process_profile_definition g_profile_TAG_KMSG = {
|
||||
fpcLy_CURRENT_e,
|
||||
8,
|
||||
fpcPi_CURRENT_e,
|
||||
PROC_TAG_KMSG,
|
||||
&g_fpcLf_Method.base,
|
||||
sizeof(daTag_KMsg_c),
|
||||
0,
|
||||
0,
|
||||
&g_fopAc_Method.base,
|
||||
0x122,
|
||||
&daTag_KMsg_MethodTable,
|
||||
0x44000,
|
||||
fopAc_ACTOR_e,
|
||||
fopAc_CULLBOX_CUSTOM_e,
|
||||
};
|
||||
|
|
|
|||
|
|
@ -489,18 +489,24 @@ bool d_GameOver_Delete(fpc_ProcID& i_id) {
|
|||
return false;
|
||||
}
|
||||
|
||||
static void* l_dGameover_Method[5] = {
|
||||
(void*)dGameover_Create,
|
||||
(void*)dGameover_Delete,
|
||||
(void*)dGameover_Execute,
|
||||
(void*)dGameover_IsDelete,
|
||||
(void*)dGameover_Draw,
|
||||
static leafdraw_method_class l_dGameover_Method = {
|
||||
(process_method_func)dGameover_Create,
|
||||
(process_method_func)dGameover_Delete,
|
||||
(process_method_func)dGameover_Execute,
|
||||
(process_method_func)dGameover_IsDelete,
|
||||
(process_method_func)dGameover_Draw,
|
||||
};
|
||||
|
||||
void* g_profile_GAMEOVER[10] = {
|
||||
(void*)0xFFFFFFFD, (void*)0x000CFFFD,
|
||||
(void*)0x03170000, (void*)&g_fpcLf_Method,
|
||||
(void*)0x0000011C, (void*)NULL,
|
||||
(void*)NULL, (void*)&g_fopMsg_Method,
|
||||
(void*)0x03030000, (void*)&l_dGameover_Method,
|
||||
msg_process_profile_definition g_profile_GAMEOVER = {
|
||||
fpcLy_CURRENT_e,
|
||||
0x0C,
|
||||
fpcPi_CURRENT_e,
|
||||
PROC_GAMEOVER,
|
||||
&g_fpcLf_Method.base,
|
||||
sizeof(dGameover_c),
|
||||
0,
|
||||
0,
|
||||
&g_fopMsg_Method,
|
||||
0x303,
|
||||
&l_dGameover_Method,
|
||||
};
|
||||
|
|
|
|||
|
|
@ -3092,7 +3092,7 @@ msg_process_profile_definition g_profile_METER2 = {
|
|||
12,
|
||||
fpcPi_CURRENT_e,
|
||||
PROC_METER2,
|
||||
(process_method_class*)&g_fpcLf_Method,
|
||||
&g_fpcLf_Method.base,
|
||||
sizeof(dMeter2_c),
|
||||
0,
|
||||
0,
|
||||
|
|
|
|||
|
|
@ -935,12 +935,12 @@ void dScnLogo_c::setRenderMode() {
|
|||
|
||||
dLog_HIO_c::~dLog_HIO_c() {}
|
||||
|
||||
static dScnLogo_Method l_dScnLogo_Method[5] = {
|
||||
(dScnLogo_Method)dScnLogo_Create,
|
||||
dScnLogo_Delete,
|
||||
dScnLogo_Execute,
|
||||
dScnLogo_IsDelete,
|
||||
dScnLogo_Draw,
|
||||
static scene_method_class l_dScnLogo_Method = {
|
||||
(process_method_func)dScnLogo_Create,
|
||||
(process_method_func)dScnLogo_Delete,
|
||||
(process_method_func)dScnLogo_Execute,
|
||||
(process_method_func)dScnLogo_IsDelete,
|
||||
(process_method_func)dScnLogo_Draw,
|
||||
};
|
||||
|
||||
scene_process_profile_definition g_profile_LOGO_SCENE = {
|
||||
|
|
@ -953,6 +953,6 @@ scene_process_profile_definition g_profile_LOGO_SCENE = {
|
|||
0,
|
||||
0,
|
||||
&g_fopScn_Method.base,
|
||||
(process_method_class*)&l_dScnLogo_Method,
|
||||
&l_dScnLogo_Method,
|
||||
NULL,
|
||||
};
|
||||
|
|
|
|||
|
|
@ -1997,7 +1997,7 @@ f32 myFontClass::drawChar_scale(f32 param_0, f32 param_1, f32 param_2, f32 param
|
|||
}
|
||||
}
|
||||
|
||||
static leafdraw_method_class l_dScnMenu_Method = {
|
||||
static scene_method_class l_dScnMenu_Method = {
|
||||
(process_method_func)dScnMenu_Create, (process_method_func)dScnMenu_Delete,
|
||||
(process_method_func)dScnMenu_Execute, (process_method_func)dScnMenu_IsDelete,
|
||||
(process_method_func)dScnMenu_Draw,
|
||||
|
|
@ -2013,7 +2013,7 @@ scene_process_profile_definition g_profile_MENU_SCENE = {
|
|||
0, // mSizeOther
|
||||
0, // mParameters
|
||||
&g_fopScn_Method.base, // sub_method
|
||||
(process_method_class*)&l_dScnMenu_Method, // mpMtd
|
||||
&l_dScnMenu_Method, // mpMtd
|
||||
};
|
||||
#else
|
||||
scene_process_profile_definition g_profile_MENU_SCENE = {
|
||||
|
|
|
|||
|
|
@ -322,7 +322,7 @@ static int dScnName_Create(scene_class* i_this) {
|
|||
return static_cast<dScnName_c*>(i_this)->create();
|
||||
}
|
||||
|
||||
static leafdraw_method_class l_dScnName_Method = {
|
||||
static scene_method_class l_dScnName_Method = {
|
||||
(process_method_func)dScnName_Create, (process_method_func)dScnName_Delete,
|
||||
(process_method_func)dScnName_Execute, (process_method_func)dScnName_IsDelete,
|
||||
(process_method_func)dScnName_Draw,
|
||||
|
|
@ -338,7 +338,7 @@ scene_process_profile_definition g_profile_NAME_SCENE = {
|
|||
0,
|
||||
0,
|
||||
&g_fopScn_Method.base,
|
||||
(process_method_class*)&l_dScnName_Method,
|
||||
&l_dScnName_Method,
|
||||
NULL,
|
||||
};
|
||||
|
||||
|
|
@ -352,6 +352,6 @@ scene_process_profile_definition g_profile_NAMEEX_SCENE = {
|
|||
0,
|
||||
0,
|
||||
&g_fopScn_Method.base,
|
||||
(process_method_class*)&l_dScnName_Method,
|
||||
&l_dScnName_Method,
|
||||
NULL,
|
||||
};
|
||||
|
|
|
|||
|
|
@ -732,7 +732,7 @@ static void dScnPly_Create(scene_class* i_this) {
|
|||
dComLbG_PhaseHandler(&static_cast<dScnPly_c*>(i_this)->field_0x1c4, l_method, i_this);
|
||||
}
|
||||
|
||||
static leafdraw_method_class l_dScnPly_Method = {
|
||||
static scene_method_class l_dScnPly_Method = {
|
||||
(process_method_func)dScnPly_Create, (process_method_func)dScnPly_Delete,
|
||||
(process_method_func)dScnPly_Execute, (process_method_func)dScnPly_IsDelete,
|
||||
(process_method_func)dScnPly_Draw,
|
||||
|
|
@ -748,7 +748,7 @@ scene_process_profile_definition g_profile_PLAY_SCENE = {
|
|||
0, // mSizeOther
|
||||
0, // mParameters
|
||||
&g_fopScn_Method.base, // sub_method
|
||||
(process_method_class*)&l_dScnPly_Method, // mpMtd
|
||||
&l_dScnPly_Method, // mpMtd
|
||||
};
|
||||
|
||||
scene_process_profile_definition g_profile_OPENING_SCENE = {
|
||||
|
|
@ -761,5 +761,5 @@ scene_process_profile_definition g_profile_OPENING_SCENE = {
|
|||
0, // mSizeOther
|
||||
0, // mParameters
|
||||
&g_fopScn_Method.base, // sub_method
|
||||
(process_method_class*)&l_dScnPly_Method, // mpMtd
|
||||
&l_dScnPly_Method, // mpMtd
|
||||
};
|
||||
|
|
|
|||
|
|
@ -417,7 +417,7 @@ static int dScnRoom_Create(scene_class* i_this) {
|
|||
return dComLbG_PhaseHandler(&room->field_0x1c4, l_method, i_this);
|
||||
}
|
||||
|
||||
static leafdraw_method_class l_dScnRoom_Method = {
|
||||
static scene_method_class l_dScnRoom_Method = {
|
||||
(process_method_func)dScnRoom_Create, (process_method_func)dScnRoom_Delete,
|
||||
(process_method_func)dScnRoom_Execute, (process_method_func)dScnRoom_IsDelete,
|
||||
(process_method_func)dScnRoom_Draw,
|
||||
|
|
@ -433,5 +433,5 @@ scene_process_profile_definition g_profile_ROOM_SCENE = {
|
|||
0, // mSizeOther
|
||||
0, // mParameters
|
||||
&g_fopScn_Method.base, // sub_method
|
||||
(process_method_class*)&l_dScnRoom_Method, // mpMtd
|
||||
&l_dScnRoom_Method, // mpMtd
|
||||
};
|
||||
|
|
|
|||
|
|
@ -1637,7 +1637,7 @@ msg_process_profile_definition g_profile_TIMER = {
|
|||
12,
|
||||
fpcPi_CURRENT_e,
|
||||
PROC_TIMER,
|
||||
(process_method_class*)&g_fpcLf_Method,
|
||||
&g_fpcLf_Method.base,
|
||||
sizeof(dTimer_c),
|
||||
0,
|
||||
0,
|
||||
|
|
|
|||
|
|
@ -11,16 +11,16 @@ static int fopScn_Draw(scene_class* i_this) {
|
|||
}
|
||||
|
||||
static int fopScn_Execute(scene_class* i_this) {
|
||||
return fpcMtd_Execute(i_this->submethod, i_this);
|
||||
return fpcMtd_Execute((process_method_class*)i_this->submethod, i_this);
|
||||
}
|
||||
|
||||
static int fopScn_IsDelete(void* i_this) {
|
||||
return fpcMtd_IsDelete(static_cast<scene_class*>(i_this)->submethod, i_this);
|
||||
return fpcMtd_IsDelete((process_method_class*)static_cast<scene_class*>(i_this)->submethod, i_this);
|
||||
}
|
||||
|
||||
static int fopScn_Delete(void* i_this) {
|
||||
scene_class* scene = (scene_class*)i_this;
|
||||
int ret = fpcMtd_Delete(scene->submethod, scene);
|
||||
int ret = fpcMtd_Delete((process_method_class*)scene->submethod, scene);
|
||||
if (ret == 1) {
|
||||
fopScnTg_QueueTo(&scene->scene_tag);
|
||||
}
|
||||
|
|
@ -42,7 +42,7 @@ static int fopScn_Create(void* i_this) {
|
|||
}
|
||||
}
|
||||
|
||||
return fpcMtd_Create(scene->submethod, i_this);
|
||||
return fpcMtd_Create((process_method_class*)scene->submethod, i_this);
|
||||
}
|
||||
|
||||
leafdraw_method_class g_fopScn_Method = {
|
||||
|
|
|
|||
Loading…
Reference in New Issue