/** * @file d_a_obj_kago.cpp * */ #include "d/dolzel_rel.h" #include "d/actor/d_a_obj_kago.h" #include "SSystem/SComponent/c_counter.h" #include "Z2AudioLib/Z2Instances.h" #include "d/actor/d_a_npc.h" #include "d/d_cc_d.h" #include "d/d_com_inf_game.h" #include "dol2asm.h" #include "f_op/f_op_actor_mng.h" /* ############################################################################################## */ /* 80C33C80-80C33CAC 000000 002C+00 5/5 0/0 0/0 .rodata m__18daObj_Kago_Param_c */ daObj_Kago_Param_c::Data const daObj_Kago_Param_c::m = { 0.0f, -5.0f, 1.0f, 400.0f, 73.0f, 30.0f, 24.0f, 30.0f, 30.0f, 55.0f, 10.0f, }; // /* 80C33CAC-80C33CDC 00002C 0030+00 0/0 0/0 0/0 .rodata l_ccDObjData */ const dCcD_SrcGObjInf l_ccDObjData = { {0, // mFlags { {0, 0, 0}, // mObjAt {0, 0}, // mObjTg {0x79} // mObjCo } // mSrcObjHitInf }, // mObj {0, 0, 0, 0, 0}, // mGObjAt {0, 0, 0, 0, 0}, // mGObjTg {0} // mGObjCo }; /* 80C33DC0-80C33DD0 000020 0010+00 2/3 0/0 0/0 .data l_bmdData */ static int l_bmdData[2][2] = { { 3, 1 }, { 4, 1 }, }; /* 80C33DD0-80C33DD8 -00001 0008+00 2/4 0/0 0/0 .data l_resNameList */ static char* l_resNameList[2] = { "", "uri_kago" }; /* 80C33DD8-80C33E1C 000038 0044+00 1/2 0/0 0/0 .data l_ccDCyl */ static dCcD_SrcCyl l_ccDCyl = { daNpcT_c::mCcDObjData, // mObjInf { {0.0f, 0.0f, 0.0f}, // mCenter 0.0f, // mRadius 0.0f // mHeight } // mCyl }; /* 80C31AEC-80C31C90 0000EC 01A4+00 1/0 0/0 0/0 .text __dt__12daObj_Kago_cFv */ daObj_Kago_c::~daObj_Kago_c() { OS_REPORT("|%06d:%x|daObj_Kago_c -> デストラクト\n", g_Counter.mCounter0, this); if (mType == 0 && daNpcT_chkTmpBit(7)) { daNpcT_onEvtBit(0x92); } dComIfG_resDelete(&mPhase, l_resNameList[l_bmdData[0][1]]); } /* 80C31D5C-80C320FC 00035C 03A0+00 1/1 0/0 0/0 .text create__12daObj_Kago_cFv */ cPhs__Step daObj_Kago_c::create() { static int const heapSize[5] = { 0x0820, 0x0820, 0, 0x0820, 0, }; fopAcM_SetupActor(this, daObj_Kago_c); mType = getType(); cPhs__Step phase = (cPhs__Step)dComIfG_resLoad(&mPhase, l_resNameList[l_bmdData[0][1]]); if (phase == cPhs_COMPLEATE_e) { OS_REPORT("\t(%s:%d) <%08x> -> roomNo.%d", fopAcM_getProcNameString(this), getType(), fopAcM_GetParam(this), fopAcM_GetRoomNo(this)); if (mType == 0 && isDelete()) { OS_REPORT("===>isDelete:TRUE\n"); return cPhs_ERROR_e; } OS_REPORT("\n"); if (!fopAcM_entrySolidHeap(this, createHeapCallBack, heapSize[mType])) { return cPhs_ERROR_e; } fopAcM_SetMtx(this, field_0x574->getBaseTRMtx()); fopAcM_setCullSizeBox(this, -100.0f, -50.0f, -100.0f, 100.0f, 100.0f, 100.0f); reset(); if (mType == 0) { setGoalPosAndAngle(); health = 1; } mAcchCir.SetWall(daObj_Kago_Param_c::m.mWallH, daObj_Kago_Param_c::m.mWallR); mObjAcch.Set(fopAcM_GetPosition_p(this), fopAcM_GetOldPosition_p(this), this, 1, &mAcchCir, fopAcM_GetSpeed_p(this), fopAcM_GetAngle_p(this), fopAcM_GetShapeAngle_p(this)); mStts.Init(daObj_Kago_Param_c::m.mWeight, 0, this); field_0x808[0].Set(l_ccDCyl); field_0x808[0].SetStts(&mStts); field_0x808[1].Set(l_ccDCyl); field_0x808[1].SetStts(&mStts); mObjAcch.CrrPos(dComIfG_Bgsp()); field_0x7cc = mObjAcch.m_gnd; mGroundH = mObjAcch.GetGroundH(); if (mGroundH != -1000000000.0f) { setEnvTevColor(); setRoomNo(); } Execute(); } return phase; } /* 80C323D0-80C324B0 0009D0 00E0+00 1/1 0/0 0/0 .text CreateHeap__12daObj_Kago_cFv */ int daObj_Kago_c::CreateHeap() { J3DModelData* modelData; if (mType == 2 || mType == 3) { modelData = (J3DModelData*)dComIfG_getObjectRes(l_resNameList[l_bmdData[1][1]], l_bmdData[1][0]); } else { modelData = (J3DModelData*)dComIfG_getObjectRes(l_resNameList[l_bmdData[0][1]], l_bmdData[0][0]); } if (modelData == NULL) { return 0; } field_0x574 = mDoExt_J3DModel__create(modelData, 0x80000, 0x11000084); if (field_0x574 == NULL) { return 0; } return 1; } /* 80C324B0-80C324E4 000AB0 0034+00 1/1 0/0 0/0 .text Delete__12daObj_Kago_cFv */ int daObj_Kago_c::Delete() { fopAcM_GetID(this); this->~daObj_Kago_c(); return 1; } /* 80C324E4-80C332D0 000AE4 0DEC+00 2/2 0/0 0/0 .text Execute__12daObj_Kago_cFv */ int daObj_Kago_c::Execute() { int iVar1 = 0; f32 fVar1; f32 reg_f30 = daObj_Kago_Param_c::m.field_0x28; s16 sp_0xc = 0; s16 sVar2 = 0; int iVar3; s16 sp_0x8; scale.set(daObj_Kago_Param_c::m.field_0x08 * field_0xb0c, daObj_Kago_Param_c::m.field_0x08 * field_0xb0c, daObj_Kago_Param_c::m.field_0x08 * field_0xb0c); attention_info.flags = 0; fopAcM_OffCarryType(this, fopAcM_CARRY_CHICKEN); attention_info.distances[4] = 13; if (mType == 0) { mStts.SetWeight(daObj_Kago_Param_c::m.mWeight); mAcchCir.SetWall(daObj_Kago_Param_c::m.mWallH, 50.0f); } else { mStts.SetWeight(0xFF); mAcchCir.SetWall(daObj_Kago_Param_c::m.mWallH, daObj_Kago_Param_c::m.mWallR); } gravity = daObj_Kago_Param_c::m.mGravity; iVar1 = 0; if ((fopAcM_checkCarryNow(this) != 0 || fopAcM_checkHawkCarryNow(this) != 0) || field_0xba2 != 0) { iVar1 = 1; } field_0xb9f = isDelete(); if (iVar1 != 0) { if (mType == 0) { daObj_Kago_c* basket_p = NULL; fopAcM_SearchByID(daPy_getPlayerActorClass()->getGrabActorID(), (fopAc_ac_c**)&basket_p); if (basket_p == this) { daNpcT_onTmpBit(23); } else { cLib_onBit(attention_info.flags, fopAc_AttnFlag_CARRY_e); fopAcM_OnCarryType(this, fopAcM_CARRY_CHICKEN); } } cLib_addCalcAngleS2(&field_0xb74, 0x4000, 4, 0x2000); mObjAcch.ClrWallHit(); mObjAcch.ClrGroundHit(); mObjAcch.SetWallNone(); mObjAcch.SetGrndNone(); mGroundH = 0.0f; mStts.SetWeight(0); speed.setall(0.0f); speedF = 0.0f; field_0xb14.setall(0.0f); field_0xb2c.setall(0); gravity = 0.0f; field_0xb9c = 0; field_0xb9d = 0; field_0xb9e = 0; field_0xba1 = 0; } else { if (mType == 0) { daNpcT_offTmpBit(23); } mObjAcch.ClrWallNone(); mObjAcch.ClrGrndNone(); if (field_0xba0 != 0 && cM3d_IsZero(speedF) == 0) { popup(daObj_Kago_Param_c::m.field_0x20, daObj_Kago_Param_c::m.field_0x24, NULL); if (fopAcM_carryOffRevise(this) != 0) { speed.setall(0.0f); } } else { iVar3 = 0; cXyz sp80; sp_0x8 = 0x80; fopAcM_getWaterY(¤t.pos, &mWaterY); if (mWaterY != -1000000000.0f && reg_f30 < (mWaterY - mGroundH) && current.pos.y <= mWaterY) { if (field_0xb9d == 0) { speedF *= 0.3f; speed.y *= 0.5f; field_0xb9c = 0; field_0xb9d = 1; if ((field_0xb9e != 0 || field_0xba1 != 0) || field_0xba0 != 0) { setWaterPrtcl(); iVar3 = 1; if ((field_0xb9e != 0 || field_0xba1 != 0) && speed.y < 0.0f) { field_0xb64 = 3000.0f; } } field_0xb9e = 0; field_0xba1 = 0; } int iVar4; if (fopAcM_getWaterStream(¤t.pos, field_0x7cc, &sp80, &iVar4, 0) != 0) { sp80.normalizeZP(); cLib_addCalcAngleS2(¤t.angle.y, cM_atan2s(sp80.x, sp80.z), 4, 0x200); if (iVar3 != 0) { current.angle.y = cM_atan2s(sp80.x, sp80.z); } sp_0x8 *= iVar4; cLib_chaseAngleS(&field_0xb2c.y, (field_0xb2c.y < 0) ? -1*sp_0x8 : sp_0x8, 16); if (field_0xb9c != 0) { cLib_addCalc2(&speedF, iVar4 * 1.55f, 0.15f, 1.0f); } else { cLib_addCalc2(&speedF, iVar4 * 0.75f, 0.15f, 1.0f); } } else { cLib_chaseF(&speedF, 0.0f, 0.3f); } if (field_0xb48 == 0 && mObjAcch.ChkWallHit() != 0) { if (getWallAngle(current.angle.y, &sVar2)) { current.angle.y = sVar2; current.angle.y += (s16)cM_rndFX(2000.0f); } else { current.angle.y += (s16)cM_rndFX(2000.0f); current.angle.y += -0x8000; } field_0xb2c.y = -field_0xb2c.y / 2; field_0xb48 = 10; } if (field_0xb9c != 0) { cLib_addCalc2(¤t.pos.y, mWaterY - reg_f30, 0.5f, 2.0f); speed.y = 0.0f; setHamonPrtcl(); } else { if ((current.pos.y + reg_f30) < mWaterY) { if (speed.y < 0.0f) { cLib_addCalc(&speed.y, 2.0f, 0.8f, 11.0f, 0.1f); } else { cLib_addCalc(&speed.y, 2.0f, 0.5f, 0.5f, 0.1f); } field_0xb2c.y = 0x100; mObjAcch.ClrGroundHit(); field_0xb9c= 1; } } gravity = 0.0f; } } if (field_0xb9c != 0) { if (mObjAcch.ChkGroundHit()) { field_0xb9c = 0; field_0xb9d = 0; field_0xb2c.setall(0); speedF = 0.0f; speed.setall(0.0f); } } else if (field_0xb9d == 0) { if (field_0xb9e != 0) { if (mObjAcch.ChkWallHit() != 0) { if (getWallAngle(current.angle.y, &sVar2) != 0) { sp_0xc = current.angle.y - sVar2; } else { sp_0xc = current.angle.y; } current.angle.y += s16(0x8000 - (sp_0xc << 1) + (s16)cM_rndFX(1000.0f)); speedF *= 0.5f; field_0xb9e = 0; field_0xba1 = 1; } else if (mObjAcch.ChkGroundHit()) { if (field_0xb14.y < -30.0f) { speedF *= 0.7f; speed.y = field_0xb14.y * -0.4f; setSmokePrtcl(); } else { speedF = 0.0f; speed.setall(0.0f); field_0xb9e = 0; } } } else if (field_0xba1 != 0) { if (mObjAcch.ChkGroundHit()) { if (field_0xb14.y < -30.0f) { speedF *= 0.7f; speed.y = field_0xb14.y * -0.4f; setSmokePrtcl(); } else { speedF = 0.0f; speed.setall(0.0f); field_0xba1 = 0; } } } else if (field_0xba0 == 0 && !mObjAcch.ChkGroundHit()) { field_0xb68 = mGroundH - current.pos.y; field_0xba1 = 1; } } if (mType == 0 && field_0xb9f == 0 && field_0xb9e == 0 && field_0xba1 == 0) { cLib_onBit(attention_info.flags, fopAc_AttnFlag_CARRY_e); fopAcM_OnCarryType(this, fopAcM_CARRY_CHICKEN); } field_0xb14 = speed; if (field_0xb9d != 0) { cLib_addCalc2(&field_0xb64, (mStts.GetCCMoveP() != NULL) ? 1200.0f : 900.0f, 0.05f, 100.0f); } else { cLib_addCalc2(&field_0xb64, 0.0f, 0.25f, 100.0f); } shape_angle.x = field_0xb64 * cM_ssin(field_0xb6c * 1000); shape_angle.z = field_0xb64 * cM_scos(field_0xb6c * 1000); cLib_chaseAngleS(&field_0xb2c.y, 0, 10); shape_angle.y += field_0xb2c.y; field_0xb6c++; if (field_0xb9c != 0) { fVar1 = JMAFastSqrt(mStts.GetCCMoveP()->x * mStts.GetCCMoveP()->x + mStts.GetCCMoveP()->z * mStts.GetCCMoveP()->z); if (1.0f < fVar1) { fopAc_ac_c* actor_p = NULL; for (int i = 0; i < 2; i++) { if (field_0x808[i].ChkCoHit() != 0) { actor_p = field_0x808[i].GetCoHitAc(); if (actor_p != NULL && fopAcM_GetName(actor_p) == PROC_ALINK) break; actor_p = NULL; } } if (actor_p != NULL) { field_0xb76 = actor_p->current.angle.y; } else { field_0xb76 = cM_atan2s(mStts.GetCCMoveP()->x, mStts.GetCCMoveP()->z); } if (actor_p != NULL || field_0xb4c == 0) { if (30.0f < fVar1) { fVar1 = 30.0f; } else if (fVar1 < 0.0f) { fVar1 = 0.0f; } field_0xb50 = fVar1; field_0xb2c.y = 0x200; field_0xb4c = 10; } } } else { field_0xb50 = 0; } cLib_addCalc2(&field_0xb50, 0.0f, 0.33f, 100.0f); fopAcM_calcSpeed(this); if (field_0xb9c != 0) { field_0xb20.x = field_0xb50 * cM_ssin(field_0xb76); field_0xb20.z = field_0xb50 * cM_scos(field_0xb76); field_0xb20.y = 0.0f; speed += field_0xb20; fopAcM_posMove(this, NULL); } else { fopAcM_posMove(this, mStts.GetCCMoveP()); } mObjAcch.CrrPos(dComIfG_Bgsp()); field_0x7cc = mObjAcch.m_gnd; mGroundH = mObjAcch.GetGroundH(); if (mGroundH != -1000000000.0f) { field_0xb6e = daNpcF_getGroundAngle(&field_0x7cc, shape_angle.y); setEnvTevColor(); setRoomNo(); } } attention_info.position = current.pos; eyePos = current.pos; if (field_0xba2 == 0) { setMtx(); } if (field_0xb9f == 0) { if (mType == 0 || mType == 1) { cXyz sp8c, sp98; sp8c.set(-14.0f, 0.0f, 0.0f); mDoMtx_stack_c::copy(field_0x574->getBaseTRMtx()); mDoMtx_stack_c::multVec(&sp8c, &sp98); field_0x808[0].SetR(30.0f); field_0x808[0].SetH(30.0f); field_0x808[0].SetC(sp98); dComIfG_Ccsp()->Set(&field_0x808[0]); sp8c.set(24.0f, 0.0f, 0.0f); mDoMtx_stack_c::multVec(&sp8c, &sp98); field_0x808[1].SetR(30.0f); field_0x808[1].SetH(50.0f); field_0x808[1].SetC(sp98); dComIfG_Ccsp()->Set(&field_0x808[1]); } else { field_0x808[0].ClrCoHit(); field_0x808[0].SetR(daObj_Kago_Param_c::m.mWallR); field_0x808[0].SetH(daObj_Kago_Param_c::m.field_0x14); field_0x808[0].SetC(current.pos); dComIfG_Ccsp()->Set(&field_0x808[0]); } } field_0x808[0].ClrCoHit(); field_0x808[1].ClrCoHit(); field_0xba0 = iVar1 != 0; cLib_calcTimer(&field_0xb48); cLib_calcTimer(&field_0xb4c); field_0xba2 = 0; return 1; } /* 80C332D0-80C333F0 0018D0 0120+00 1/1 0/0 0/0 .text Draw__12daObj_Kago_cFv */ int daObj_Kago_c::Draw() { if(field_0xb9f == 0 && health != 3) { #if VERSION == VERSION_SHIELD_DEBUG mObjAcch.DrawWall(dComIfG_Bgsp()); #endif g_env_light.settingTevStruct(0, ¤t.pos, &tevStr); g_env_light.setLightTevColorType_MAJI(field_0x574, &tevStr); mDoExt_modelUpdateDL(field_0x574); fopAc_ac_c* basket_p = NULL; fopAcM_SearchByID(daPy_getPlayerActorClass()->getGrabActorID(), &basket_p); if (this == basket_p) { model = field_0x574; } else if (mGroundH != -1000000000.0f) { field_0xb78 = dComIfGd_setShadow(field_0xb78, 1, field_0x574, ¤t.pos, daObj_Kago_Param_c::m.field_0x0c, 20.0f, current.pos.y, mGroundH, field_0x7cc, &tevStr, 0, 1.0f, dDlst_shadowControl_c::getSimpleTex()); } } return 1; } /* 80C333F0-80C33410 0019F0 0020+00 1/1 0/0 0/0 .text createHeapCallBack__12daObj_Kago_cFP10fopAc_ac_c */ int daObj_Kago_c::createHeapCallBack(fopAc_ac_c* actor) { daObj_Kago_c* i_this = (daObj_Kago_c*)actor; return i_this->CreateHeap(); } /* 80C33410-80C334B4 001A10 00A4+00 2/2 0/0 0/0 .text isDelete__12daObj_Kago_cFv */ BOOL daObj_Kago_c::isDelete() { u8 rv; switch (mType) { case 0: rv = 0; if (daNpcT_chkEvtBit(0x1E) || daNpcT_chkEvtBit(0x92)) { rv = 1; } return rv; case 1: case 2: case 3: rv = 0; if (!daNpcT_chkEvtBit(0x1E) && !daNpcT_chkEvtBit(0x92)) { rv = 1; } return rv; default: return FALSE; } } /* 80C334B4-80C33510 001AB4 005C+00 2/2 0/0 0/0 .text setEnvTevColor__12daObj_Kago_cFv */ void daObj_Kago_c::setEnvTevColor() { tevStr.YukaCol = dComIfG_Bgsp().GetPolyColor(field_0x7cc); tevStr.room_no = dComIfG_Bgsp().GetRoomId(field_0x7cc); } /* 80C33510-80C33554 001B10 0044+00 2/2 0/0 0/0 .text setRoomNo__12daObj_Kago_cFv */ void daObj_Kago_c::setRoomNo() { int room_id = dComIfG_Bgsp().GetRoomId(field_0x7cc); fopAcM_SetRoomNo(this, room_id); mStts.SetRoomId(room_id); } /* 80C33554-80C3359C 001B54 0048+00 1/1 0/0 0/0 .text reset__12daObj_Kago_cFv */ void daObj_Kago_c::reset() { memset(&field_0xb14, 0, (u8*)&field_0xba3 - (u8*)&field_0xb14); field_0xb0c = 1.0f; } /* 80C3359C-80C33620 001B9C 0084+00 1/1 0/0 0/0 .text setMtx__12daObj_Kago_cFv */ void daObj_Kago_c::setMtx() { csXyz acStack_18(shape_angle); acStack_18.y += field_0xb74; mDoMtx_stack_c::transS(current.pos.x, current.pos.y, current.pos.z); mDoMtx_stack_c::ZXYrotM(acStack_18); mDoMtx_stack_c::scaleM(scale); field_0x574->setBaseTRMtx(mDoMtx_stack_c::get()); } /* 80C33620-80C337B0 001C20 0190+00 1/1 0/0 0/0 .text getWallAngle__12daObj_Kago_cFsPs */ int daObj_Kago_c::getWallAngle(s16 param_1, s16* param_2) { cXyz sp40[2]; cXyz sp50, sp5c; mDoMtx_stack_c::YrotS(param_1); sp5c.set(0.0f, 0.0f, -50.0f); mDoMtx_stack_c::multVec(&sp5c, &sp50); sp50 += current.pos; sp5c.set(5.0f, 0.0f, 200.0f); int i = 0; for (; i < 2; i++) { mDoMtx_stack_c::multVec(&sp5c, &sp40[i]); sp5c.x = sp5c.x * -1.0f; sp40[i] += sp50; field_0xa9c.Set(&sp50, &sp40[i], this); if (dComIfG_Bgsp().LineCross(&field_0xa9c)) { sp40[i] = field_0xa9c.GetCross(); } else { return 0; } } sp5c = sp40[1] - sp40[0]; *param_2 = cM_atan2s(sp5c.x, sp5c.z) + 0x4000; return 1; } /* 80C33F4C-80C33F50 000054 0004+00 1/1 0/0 0/0 .bss l_HIO */ static daObj_Kago_Param_c l_HIO; /* 80C337B0-80C338D0 001DB0 0120+00 1/1 0/0 0/0 .text setGoalPosAndAngle__12daObj_Kago_cFv */ void daObj_Kago_c::setGoalPosAndAngle() { static cXyz pos(1593.0f, 659.0f, -334.0f); static s16 angle = 0x471C; home.angle.y = angle; current.angle = home.angle; shape_angle = current.angle; old.angle = current.angle; current.pos = pos; old.pos = current.pos; } /* 80C338D0-80C33958 001ED0 0088+00 1/1 0/0 0/0 .text setSmokePrtcl__12daObj_Kago_cFv */ void daObj_Kago_c::setSmokePrtcl() { if (field_0xb9f == 0) { fopAcM_effSmokeSet1(&field_0xb94, &field_0xb98, ¤t.pos, NULL, 0.7f, &tevStr, 1); dComIfGp_particle_levelEmitterOnEventMove(field_0xb94); dComIfGp_particle_levelEmitterOnEventMove(field_0xb98); } } /* 80C33958-80C33A58 001F58 0100+00 1/1 0/0 0/0 .text setWaterPrtcl__12daObj_Kago_cFv */ void daObj_Kago_c::setWaterPrtcl() { static u16 emttrId[4] = { 0x01B8, 0x01B9, 0x01BA, 0x01BB, }; if (field_0xb9f == 0) { cXyz sp1c(1.0f, 1.0f, 1.0f); cXyz sp28(current.pos.x, mWaterY, current.pos.z); for (int i = 0; i < 4; i++) { mWaterPrtcls[i] = dComIfGp_particle_set(mWaterPrtcls[i], emttrId[i], &sp28, &tevStr, 0, &sp1c, 0xFF, 0, -1, NULL, NULL, NULL); dComIfGp_particle_levelEmitterOnEventMove(mWaterPrtcls[i]); } } } /* 80C33A58-80C33AB4 002058 005C+00 1/1 0/0 0/0 .text setHamonPrtcl__12daObj_Kago_cFv */ void daObj_Kago_c::setHamonPrtcl() { if (field_0xb9f == 0) { cXyz sp18(current.pos.x, mWaterY, current.pos.z); fopAcM_effHamonSet(&mHamonPrtcl, &sp18, 1.0f, 0.05f); } } /* 80C33AB4-80C33AD4 0020B4 0020+00 1/0 0/0 0/0 .text daObj_Kago_Create__FPv */ static int daObj_Kago_Create(void* param_1) { daObj_Kago_c* i_this = (daObj_Kago_c*)param_1; return i_this->create(); } /* 80C33AD4-80C33AF4 0020D4 0020+00 1/0 0/0 0/0 .text daObj_Kago_Delete__FPv */ static int daObj_Kago_Delete(void* param_1) { daObj_Kago_c* i_this = (daObj_Kago_c*)param_1; return i_this->Delete(); } /* 80C33AF4-80C33B14 0020F4 0020+00 1/0 0/0 0/0 .text daObj_Kago_Execute__FPv */ static int daObj_Kago_Execute(void* param_1) { daObj_Kago_c* i_this = (daObj_Kago_c*)param_1; return i_this->Execute(); } /* 80C33B14-80C33B34 002114 0020+00 1/0 0/0 0/0 .text daObj_Kago_Draw__FPv */ static int daObj_Kago_Draw(void* param_1) { daObj_Kago_c* i_this = (daObj_Kago_c*)param_1; return i_this->Draw(); } /* 80C33B34-80C33B3C 002134 0008+00 1/0 0/0 0/0 .text daObj_Kago_IsDelete__FPv */ static int daObj_Kago_IsDelete(void* param_1) { return 1; } AUDIO_INSTANCES; /* 80C33D94-80C33D94 000114 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ /* 80C33E24-80C33E44 -00001 0020+00 1/0 0/0 0/0 .data daObj_Kago_MethodTable */ static actor_method_class daObj_Kago_MethodTable = { (process_method_func)daObj_Kago_Create, (process_method_func)daObj_Kago_Delete, (process_method_func)daObj_Kago_Execute, (process_method_func)daObj_Kago_IsDelete, (process_method_func)daObj_Kago_Draw, }; /* 80C33E44-80C33E74 -00001 0030+00 0/0 0/0 1/0 .data g_profile_OBJ_KAGO */ extern actor_process_profile_definition g_profile_OBJ_KAGO = { fpcLy_CURRENT_e, // mLayerID 8, // mListID fpcPi_CURRENT_e, // mListPrio PROC_OBJ_KAGO, // mProcName &g_fpcLf_Method.base, // sub_method sizeof(daObj_Kago_c), // mSize 0, // mSizeOther 0, // mParameters &g_fopAc_Method.base, // sub_method 717, // mPriority &daObj_Kago_MethodTable, // sub_method 0x00044100, // mStatus fopAc_ACTOR_e, // mActorType fopAc_CULLBOX_CUSTOM_e, // cullType };