1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
|
//
// Generated by dtk
// Translation Unit: d_a_obj_usovmc.cpp
//
#include "d/dolzel_rel.h" // IWYU pragma: keep
#include "d/actor/d_a_obj_usovmc.h"
#include "d/d_com_inf_game.h"
#include "res/Object/Usovmc.h"
const char daObjUsovmc::Act_c::M_arcname[7] = "Usovmc";
Mtx daObjUsovmc::Act_c::M_tmp_mtx;
/* 00000078-0000012C .text CreateHeap__Q211daObjUsovmc5Act_cFv */
BOOL daObjUsovmc::Act_c::CreateHeap() {
J3DModelData* model_data = (J3DModelData*)dComIfG_getObjectRes(M_arcname, dRes_INDEX_USOVMC_BDL_VMCBX_e);
JUT_ASSERT(0x4a, model_data != NULL);
mModel = mDoExt_J3DModel__create(model_data, 0, 0x11020203);
return mModel != NULL;
}
/* 0000012C-00000198 .text Create__Q211daObjUsovmc5Act_cFv */
BOOL daObjUsovmc::Act_c::Create() {
fopAcM_SetMtx(this, mModel->getBaseTRMtx());
init_mtx();
fopAcM_setCullSizeBox(this, -80.0f, -1.0f, -80.0f, 80.0f, 205.0f, 80.0f);
return TRUE;
}
/* 00000198-00000290 .text Mthd_Create__Q211daObjUsovmc5Act_cFv */
cPhs_State daObjUsovmc::Act_c::Mthd_Create() {
fopAcM_ct(this, Act_c);
cPhs_State phase_state = dComIfG_resLoad(&mPhs, M_arcname);
if (phase_state == cPhs_COMPLEATE_e) {
phase_state = MoveBGCreate(M_arcname, dRes_INDEX_USOVMC_DZB_VMCBS_e, NULL, 0);
JUT_ASSERT(0x74, (phase_state == cPhs_COMPLEATE_e) || (phase_state == cPhs_ERROR_e));
}
return phase_state;
}
/* 00000290-00000298 .text Delete__Q211daObjUsovmc5Act_cFv */
BOOL daObjUsovmc::Act_c::Delete() {
return TRUE;
}
/* 00000298-000002E4 .text Mthd_Delete__Q211daObjUsovmc5Act_cFv */
BOOL daObjUsovmc::Act_c::Mthd_Delete() {
BOOL ret = MoveBGDelete();
dComIfG_resDeleteDemo(&mPhs, M_arcname);
return ret;
}
/* 000002E4-00000364 .text set_mtx__Q211daObjUsovmc5Act_cFv */
void daObjUsovmc::Act_c::set_mtx() {
mDoMtx_stack_c::transS(current.pos);
mDoMtx_stack_c::ZXYrotM(shape_angle);
mModel->setBaseTRMtx(mDoMtx_stack_c::get());
mDoMtx_copy(mDoMtx_stack_c::get(), M_tmp_mtx);
}
/* 00000364-000003A0 .text init_mtx__Q211daObjUsovmc5Act_cFv */
void daObjUsovmc::Act_c::init_mtx() {
mModel->setBaseScale(scale);
set_mtx();
}
/* 000003A0-000003DC .text Execute__Q211daObjUsovmc5Act_cFPPA3_A4_f */
BOOL daObjUsovmc::Act_c::Execute(Mtx** mtx) {
set_mtx();
*mtx = &M_tmp_mtx;
return TRUE;
}
/* 000003DC-0000047C .text Draw__Q211daObjUsovmc5Act_cFv */
BOOL daObjUsovmc::Act_c::Draw() {
g_env_light.settingTevStruct(TEV_TYPE_BG0, ¤t.pos, &tevStr);
g_env_light.setLightTevColorType(mModel, &tevStr);
dComIfGd_setListBG();
mDoExt_modelUpdateDL(mModel);
dComIfGd_setList();
return TRUE;
}
namespace daObjUsovmc {
namespace {
/* 0000047C-0000049C .text Mthd_Create__Q211daObjUsovmc28@unnamed@d_a_obj_usovmc_cpp@FPv */
cPhs_State Mthd_Create(void* i_ac) {
return ((Act_c*)i_ac)->Mthd_Create();
}
/* 0000049C-000004BC .text Mthd_Delete__Q211daObjUsovmc28@unnamed@d_a_obj_usovmc_cpp@FPv */
BOOL Mthd_Delete(void* i_ac) {
return ((Act_c*)i_ac)->Mthd_Delete();
}
/* 000004BC-000004DC .text Mthd_Execute__Q211daObjUsovmc28@unnamed@d_a_obj_usovmc_cpp@FPv */
BOOL Mthd_Execute(void* i_ac) {
return ((Act_c*)i_ac)->MoveBGExecute();
}
/* 000004DC-00000508 .text Mthd_Draw__Q211daObjUsovmc28@unnamed@d_a_obj_usovmc_cpp@FPv */
BOOL Mthd_Draw(void* i_ac) {
return ((Act_c*)i_ac)->MoveBGDraw();
}
/* 00000508-00000534 .text Mthd_IsDelete__Q211daObjUsovmc28@unnamed@d_a_obj_usovmc_cpp@FPv */
BOOL Mthd_IsDelete(void* i_ac) {
return ((Act_c*)i_ac)->MoveBGIsDelete();
}
static actor_method_class Mthd_Usovmc = {
(process_method_func)Mthd_Create,
(process_method_func)Mthd_Delete,
(process_method_func)Mthd_Execute,
(process_method_func)Mthd_IsDelete,
(process_method_func)Mthd_Draw,
};
}; // namespace
}; // namespace daObjUsovmc
actor_process_profile_definition g_profile_Obj_Usovmc = {
/* Layer ID */ fpcLy_CURRENT_e,
/* List ID */ 0x0003,
/* List Prio */ fpcPi_CURRENT_e,
/* Proc Name */ fpcNm_Obj_Usovmc_e,
/* Proc SubMtd */ &g_fpcLf_Method.base,
/* Size */ sizeof(daObjUsovmc::Act_c),
/* Size Other */ 0,
/* Parameters */ 0,
/* Leaf SubMtd */ &g_fopAc_Method.base,
/* Draw Prio */ fpcDwPi_Obj_Usovmc_e,
/* Actor SubMtd */ &daObjUsovmc::Mthd_Usovmc,
/* Status */ fopAcStts_NOCULLEXEC_e | fopAcStts_CULL_e | fopAcStts_UNK40000_e,
/* Group */ fopAc_ACTOR_e,
/* Cull Type */ fopAc_CULLBOX_CUSTOM_e,
};
|