mirror of
https://github.com/zeldaret/tww.git
synced 2026-07-11 06:34:45 -04:00
[Actor] d_a_obj_pbka OK (#528)
* parking * parking progress * fake match * d_a_obj_pbka mostly matching * Update d_a_obj_pbka.cpp * 100% Match
This commit is contained in:
+1
-1
@@ -1560,7 +1560,7 @@ config.libs = [
|
||||
ActorRel(NonMatching, "d_a_obj_ojtree"),
|
||||
ActorRel(NonMatching, "d_a_obj_ospbox"),
|
||||
ActorRel(NonMatching, "d_a_obj_paper"),
|
||||
ActorRel(NonMatching, "d_a_obj_pbka"),
|
||||
ActorRel(Matching, "d_a_obj_pbka"),
|
||||
ActorRel(NonMatching, "d_a_obj_pfall"),
|
||||
ActorRel(NonMatching, "d_a_obj_plant"),
|
||||
ActorRel(NonMatching, "d_a_obj_rflw"),
|
||||
|
||||
+106
-30
@@ -1,53 +1,129 @@
|
||||
//
|
||||
// Generated by dtk
|
||||
// Translation Unit: d_a_obj_pbka.cpp
|
||||
//
|
||||
/*
|
||||
* d_a_obj_pbka.cpp
|
||||
*/
|
||||
#include "JSystem/JKernel/JKRHeap.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
#include "d/d_com_inf_game.h"
|
||||
#include "m_Do/m_Do_mtx.h"
|
||||
#include "d/d_procname.h"
|
||||
|
||||
#include "d_a_obj_pbka.h"
|
||||
#include "dolphin/types.h"
|
||||
class daObjPbka_c : public fopAc_ac_c {
|
||||
public:
|
||||
bool CreateHeap();
|
||||
void CreateInit();
|
||||
void set_mtx();
|
||||
inline bool draw();
|
||||
public:
|
||||
/* 0x290 */ request_of_phase_process_class mPhase;
|
||||
/* 0x298 */ J3DModel* mpModel;
|
||||
}; //Size 0x29C
|
||||
|
||||
/* 00000078-00000098 .text CheckCreateHeap__FP10fopAc_ac_c */
|
||||
void CheckCreateHeap(fopAc_ac_c*) {
|
||||
/* Nonmatching */
|
||||
bool daObjPbka_c::draw()
|
||||
{
|
||||
dKy_tevstr_c * pTevStr;
|
||||
g_env_light.settingTevStruct(TEV_TYPE_BG0, ¤t.pos, pTevStr = &mTevStr);
|
||||
g_env_light.setLightTevColorType(mpModel, pTevStr);
|
||||
dComIfGd_setListBG();
|
||||
mDoExt_modelUpdateDL(mpModel);
|
||||
dComIfGd_setList();
|
||||
return true;
|
||||
}
|
||||
|
||||
void CheckCreateHeap(fopAc_ac_c* i_this) {
|
||||
daObjPbka_c* a_this = (daObjPbka_c*)i_this;
|
||||
a_this->CreateHeap();
|
||||
}
|
||||
|
||||
/* 00000098-0000015C .text CreateHeap__11daObjPbka_cFv */
|
||||
void daObjPbka_c::CreateHeap() {
|
||||
/* Nonmatching */
|
||||
bool daObjPbka_c::CreateHeap() {
|
||||
J3DModelData *modelData = (J3DModelData *)dComIfG_getObjectRes("Pbka", 3);
|
||||
JUT_ASSERT(0x51, modelData != 0);
|
||||
mpModel = mDoExt_J3DModel__create(modelData,0,0x11020203);
|
||||
if(mpModel == NULL) {
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
/* 0000015C-000001CC .text CreateInit__11daObjPbka_cFv */
|
||||
void daObjPbka_c::CreateInit() {
|
||||
/* Nonmatching */
|
||||
mCullMtx = mpModel->getBaseTRMtx();
|
||||
fopAcM_setCullSizeBox(this,-300.0,-300.0,-300.0,300.0,300.0,300.0);
|
||||
mCullSizeFar = 1.0f;
|
||||
set_mtx();
|
||||
}
|
||||
|
||||
/* 000001CC-0000024C .text set_mtx__11daObjPbka_cFv */
|
||||
void daObjPbka_c::set_mtx() {
|
||||
/* Nonmatching */
|
||||
J3DModel* model;
|
||||
model = mpModel;
|
||||
model->mBaseScale.x = mScale.x;
|
||||
model->mBaseScale.y = mScale.y;
|
||||
model->mBaseScale.z = mScale.z;
|
||||
mDoMtx_trans(mDoMtx_stack_c::get(), current.pos.x, current.pos.y, current.pos.z);
|
||||
mDoMtx_YrotM(mDoMtx_stack_c::get(), current.angle.y);
|
||||
mDoMtx_copy(mDoMtx_stack_c::get(), mpModel->mBaseTransformMtx);
|
||||
}
|
||||
|
||||
/* 0000024C-000002EC .text daObjPbka_Create__FPv */
|
||||
void daObjPbka_Create(void*) {
|
||||
/* Nonmatching */
|
||||
cPhs__Step daObjPbka_Create(void* i_this) {
|
||||
int cPhsStep;
|
||||
daObjPbka_c* a_this = (daObjPbka_c*)i_this;
|
||||
fopAcM_SetupActor(a_this, daObjPbka_c);
|
||||
|
||||
cPhsStep = dComIfG_resLoad(&a_this->mPhase, "Pbka");
|
||||
if (cPhsStep == cPhs_COMPLEATE_e) {
|
||||
if ((fopAcM_entrySolidHeap(a_this, (heapCallbackFunc)CheckCreateHeap,0x680) & 0xff) == 0) {
|
||||
cPhsStep = cPhs_ERROR_e;
|
||||
} else {
|
||||
a_this->CreateInit();
|
||||
}
|
||||
}
|
||||
return (cPhs__Step)cPhsStep;
|
||||
}
|
||||
|
||||
/* 000002EC-0000031C .text daObjPbka_Delete__FPv */
|
||||
void daObjPbka_Delete(void*) {
|
||||
/* Nonmatching */
|
||||
static BOOL daObjPbka_Delete(void* i_this) {
|
||||
daObjPbka_c* a_this = (daObjPbka_c*)i_this;
|
||||
dComIfG_resDelete(&a_this->mPhase,"Pbka");
|
||||
return true;
|
||||
}
|
||||
|
||||
/* 0000031C-000003C0 .text daObjPbka_Draw__FPv */
|
||||
void daObjPbka_Draw(void*) {
|
||||
/* Nonmatching */
|
||||
static BOOL daObjPbka_Draw(void* i_this) {
|
||||
daObjPbka_c* a_this = (daObjPbka_c*)i_this;
|
||||
return a_this->draw();
|
||||
}
|
||||
|
||||
/* 000003C0-00000450 .text daObjPbka_Execute__FPv */
|
||||
void daObjPbka_Execute(void*) {
|
||||
/* Nonmatching */
|
||||
static BOOL daObjPbka_Execute(void* i_this) {
|
||||
daObjPbka_c* a_this = (daObjPbka_c*)i_this;
|
||||
a_this->current.angle.y += 0x500;
|
||||
a_this->shape_angle.y = a_this->current.angle.y;
|
||||
mDoAud_seStart(JA_SE_OBJ_BOMB_SHOP_FAN, &a_this->current.pos, 0 , dComIfGp_getReverb(fopAcM_GetRoomNo(a_this)));
|
||||
a_this->set_mtx();
|
||||
return true;
|
||||
}
|
||||
|
||||
/* 00000450-00000458 .text daObjPbka_IsDelete__FPv */
|
||||
void daObjPbka_IsDelete(void*) {
|
||||
/* Nonmatching */
|
||||
static BOOL daObjPbka_IsDelete(void*) {
|
||||
return true;
|
||||
}
|
||||
|
||||
static actor_method_class daObj_PbkaMethodTable = {
|
||||
(process_method_func)daObjPbka_Create,
|
||||
(process_method_func)daObjPbka_Delete,
|
||||
(process_method_func)daObjPbka_Execute,
|
||||
(process_method_func)daObjPbka_IsDelete,
|
||||
(process_method_func)daObjPbka_Draw,
|
||||
};
|
||||
|
||||
actor_process_profile_definition g_profile_Obj_Pbka = {
|
||||
fpcLy_CURRENT_e,
|
||||
7,
|
||||
fpcLy_CURRENT_e,
|
||||
PROC_Obj_Pbka,
|
||||
&g_fpcLf_Method.mBase,
|
||||
sizeof(daObjPbka_c),
|
||||
0,
|
||||
0,
|
||||
&g_fopAc_Method.base,
|
||||
0x70,
|
||||
&daObj_PbkaMethodTable,
|
||||
fopAcStts_UNK40000_e | fopAcStts_CULL_e,
|
||||
fopAc_ACTOR_e,
|
||||
fopAc_CULLBOX_CUSTOM_e,
|
||||
};
|
||||
Reference in New Issue
Block a user