mirror of
https://github.com/zeldaret/tp
synced 2026-08-21 06:28:59 -04:00
zramark work, sWallShutter / firewood2 done (#2187)
* obj_zramark done except weaks * setup fixes * obj_sWallShutter done * firewood2 done * remove asm
This commit is contained in:
@@ -1,18 +1,19 @@
|
||||
//
|
||||
// Balloon
|
||||
//
|
||||
/**
|
||||
* d_a_obj_balloon.cpp
|
||||
* Plumm Minigame Balloon
|
||||
*/
|
||||
|
||||
#include "rel/d/a/obj/d_a_obj_balloon/d_a_obj_balloon.h"
|
||||
#include "rel/d/a/d_a_balloon_2D/d_a_balloon_2D.h"
|
||||
#include "d/cc/d_cc_d.h"
|
||||
#include "d/cc/d_cc_uty.h"
|
||||
#include "d/d_drawlist.h"
|
||||
#include "d/com/d_com_inf_game.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
#include "SSystem/SComponent/c_math.h"
|
||||
#include "JSystem/JAudio2/JASAudioThread.h"
|
||||
#include "JSystem/JAudio2/JAUSoundTable.h"
|
||||
#include "SSystem/SComponent/c_math.h"
|
||||
#include "Z2AudioLib/Z2WolfHowlMgr.h"
|
||||
#include "d/cc/d_cc_d.h"
|
||||
#include "d/cc/d_cc_uty.h"
|
||||
#include "d/com/d_com_inf_game.h"
|
||||
#include "d/d_drawlist.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
#include "rel/d/a/d_a_balloon_2D/d_a_balloon_2D.h"
|
||||
|
||||
/* 80BA8E5C-80BA8E68 000000 000C+00 1/1 0/0 0/0 .data cNullVec__6Z2Calc */
|
||||
static u8 cNullVec__6Z2Calc[12] = {
|
||||
@@ -125,53 +126,17 @@ static u8 lit_1010[1 + 3 /* padding */];
|
||||
static u8 lit_1009[1 + 3 /* padding */];
|
||||
#pragma pop
|
||||
|
||||
/* 80BA8E7C-80BA8E80 000020 0004+00 0/1 0/0 0/0 .data
|
||||
* m_combo_type__29@unnamed@d_a_obj_balloon_cpp@ */
|
||||
static int m_combo_type = 0xFFFFFFFF;
|
||||
|
||||
/* 80BA8E80-80BA8E8C 000024 000C+00 1/1 0/0 0/0 .data balloon_radius$3706 */
|
||||
static f32 balloon_radius[3] = {
|
||||
1070.0f, 390.0f, 110.0f,
|
||||
};
|
||||
|
||||
/* 80BA8E8C-80BA8E90 000030 0004+00 0/1 0/0 0/0 .data kago_wall_hit_id$3736 */
|
||||
static u16 kago_wall_hit_id[2] = {
|
||||
0x8A12,
|
||||
0x8A13,
|
||||
};
|
||||
|
||||
/* 80BA8E90-80BA8E9C 000034 000C+00 0/1 0/0 0/0 .data kago_effect_scale$3737 */
|
||||
static f32 kago_effect_scale[3] = {
|
||||
4.0f, 1.5f, 0.8f,
|
||||
};
|
||||
|
||||
/* 80BA8E9C-80BA8EA8 000040 000C+00 0/1 0/0 0/0 .data break_sound_id$3749 */
|
||||
static u32 break_sound_id[3] = {
|
||||
Z2SE_OBJ_BLN_BREAK_L, Z2SE_OBJ_BLN_BREAK_M, Z2SE_OBJ_BLN_BREAK_S,
|
||||
};
|
||||
|
||||
/* 80BA8EA8-80BA8EE8 00004C 0040+00 1/1 0/0 0/0 .data cc_sph_src$3893 */
|
||||
static dCcD_SrcSph cc_sph_src = {
|
||||
{
|
||||
{0x0, {{0x0, 0x0, 0x0}, {0x8, 0x11}, 0x0}}, // mObj
|
||||
{dCcD_SE_METAL, 0x0, 0x0, 0x0, 0x0}, // mGObjAt
|
||||
{dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x2}, // mGObjTg
|
||||
{0x0}, // mGObjCo
|
||||
}, // mObjInf
|
||||
{
|
||||
{{0.0f, 0.0f, 0.0f}, 40.0f} // mSph
|
||||
} // mSphAttr
|
||||
};
|
||||
|
||||
/* 80BA7FAC-80BA7FF4 0000EC 0048+00 1/1 0/0 0/0 .text __ct__19daObj_Balloon_HIO_cFv */
|
||||
daObj_Balloon_HIO_c::daObj_Balloon_HIO_c() {
|
||||
field_0x04 = -1;
|
||||
field_0x08[0] = 1.0f;
|
||||
field_0x08[1] = 1.0f;
|
||||
field_0x08[2] = 1.5f;
|
||||
field_0x14[0] = 1.0f;
|
||||
field_0x14[1] = 3.0f;
|
||||
field_0x14[2] = 10.0f;
|
||||
|
||||
mScale[daObj_Balloon_c::SIZE_LARGE_e] = 1.0f;
|
||||
mScale[daObj_Balloon_c::SIZE_MEDIUM_e] = 1.0f;
|
||||
mScale[daObj_Balloon_c::SIZE_SMALL_e] = 1.5f;
|
||||
|
||||
mScore[daObj_Balloon_c::SIZE_LARGE_e] = 1.0f;
|
||||
mScore[daObj_Balloon_c::SIZE_MEDIUM_e] = 3.0f;
|
||||
mScore[daObj_Balloon_c::SIZE_SMALL_e] = 10.0f;
|
||||
}
|
||||
|
||||
/* 80BA7FF4-80BA80D4 000134 00E0+00 1/1 0/0 0/0 .text draw__15daObj_Balloon_cFv */
|
||||
@@ -180,11 +145,12 @@ int daObj_Balloon_c::draw() {
|
||||
g_env_light.setLightTevColorType_MAJI(mModel, &tevStr);
|
||||
fopAcM_setEffectMtx(this, mModel->getModelData());
|
||||
mDoExt_modelUpdateDL(mModel);
|
||||
cXyz acStack_28;
|
||||
acStack_28.set(current.pos.x, current.pos.y + 100.0f, current.pos.z);
|
||||
field_0x574 = dComIfGd_setShadow(field_0x574, 1, mModel, &acStack_28, 400.0f, 0.0f,
|
||||
current.pos.y, mAcch.GetGroundH(), mAcch.m_gnd, &tevStr, 0,
|
||||
1.0f, dDlst_shadowControl_c::getSimpleTex());
|
||||
|
||||
cXyz pos;
|
||||
pos.set(current.pos.x, current.pos.y + 100.0f, current.pos.z);
|
||||
mShadowKey = dComIfGd_setShadow(mShadowKey, 1, mModel, &pos, 400.0f, 0.0f, current.pos.y,
|
||||
mAcch.GetGroundH(), mAcch.m_gnd, &tevStr, 0, 1.0f,
|
||||
dDlst_shadowControl_c::getSimpleTex());
|
||||
return 1;
|
||||
}
|
||||
|
||||
@@ -193,6 +159,11 @@ static int daObj_Balloon_Draw(daObj_Balloon_c* i_this) {
|
||||
return i_this->draw();
|
||||
}
|
||||
|
||||
namespace {
|
||||
/* 80BA8E7C-80BA8E80 000020 0004+00 0/1 0/0 0/0 .data
|
||||
* m_combo_type__29@unnamed@d_a_obj_balloon_cpp@ */
|
||||
static int m_combo_type = 0xFFFFFFFF;
|
||||
|
||||
/* 80BA8FF0-80BA8FF4 000048 0004+00 0/1 0/0 0/0 .bss
|
||||
* m_combo_count__29@unnamed@d_a_obj_balloon_cpp@ */
|
||||
static int m_combo_count;
|
||||
@@ -204,6 +175,7 @@ static int m_combo_next_score;
|
||||
/* 80BA8FF8-80BA8FFC 000050 0004+00 1/2 0/0 0/0 .bss
|
||||
* m_balloon_score__29@unnamed@d_a_obj_balloon_cpp@ */
|
||||
static u32 m_balloon_score;
|
||||
} // namespace
|
||||
|
||||
/* 80BA80F4-80BA810C 000234 0018+00 0/0 0/0 1/1 .text saveBestScore__15daObj_Balloon_cFv
|
||||
*/
|
||||
@@ -211,114 +183,123 @@ void daObj_Balloon_c::saveBestScore() {
|
||||
dComIfGp_setMessageCountNumber(m_balloon_score);
|
||||
}
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80BA8FFC-80BA9000 000054 0004+00 2/2 0/0 0/0 .bss None */
|
||||
static u8 data_80BA8FFC;
|
||||
|
||||
/* 80BA9000-80BA900C 000058 000C+00 1/1 0/0 0/0 .bss @3651 */
|
||||
//static u8 lit_3651[12];
|
||||
static u8 l_initHIO;
|
||||
|
||||
/* 80BA900C-80BA902C 000064 0020+00 4/5 0/0 0/0 .bss l_HIO */
|
||||
static daObj_Balloon_HIO_c l_HIO;
|
||||
|
||||
/* 80BA810C-80BA81B8 00024C 00AC+00 1/1 0/0 0/0 .text cc_set__15daObj_Balloon_cFv */
|
||||
void daObj_Balloon_c::cc_set() {
|
||||
cXyz cStack_18;
|
||||
cXyz cc_center;
|
||||
mDoMtx_stack_c::copy(mModel->getBaseTRMtx());
|
||||
mDoMtx_stack_c::multVecZero(&cStack_18);
|
||||
mSph.SetC(cStack_18);
|
||||
mSph.SetR(balloon_radius[field_0x578] * l_HIO.field_0x08[field_0x578]);
|
||||
mDoMtx_stack_c::multVecZero(&cc_center);
|
||||
|
||||
static f32 balloon_radius[3] = {1070.0f, 390.0f, 110.0f};
|
||||
|
||||
mSph.SetC(cc_center);
|
||||
mSph.SetR(balloon_radius[mType] * l_HIO.mScale[mType]);
|
||||
dComIfG_Ccsp()->Set(&mSph);
|
||||
}
|
||||
|
||||
/* 80BA81B8-80BA865C 0002F8 04A4+00 1/1 0/0 0/0 .text action__15daObj_Balloon_cFv */
|
||||
void daObj_Balloon_c::action() {
|
||||
switch (field_0x579) {
|
||||
static u16 kago_wall_hit_id[2] = {0x8A12, 0x8A13};
|
||||
static f32 kago_effect_scale[3] = {4.0f, 1.5f, 0.8f};
|
||||
static u32 break_sound_id[3] = {Z2SE_OBJ_BLN_BREAK_L, Z2SE_OBJ_BLN_BREAK_M,
|
||||
Z2SE_OBJ_BLN_BREAK_S};
|
||||
|
||||
switch (mRotateMode) {
|
||||
case 0:
|
||||
gravity = 0.0f;
|
||||
speedF = 0.0f;
|
||||
speed.y = 0.0f;
|
||||
field_0x579 = 1;
|
||||
mRotateMode = 1;
|
||||
break;
|
||||
case 1:
|
||||
cLib_addCalcAngleS2(&field_0x580, field_0x584, 16, 8);
|
||||
cLib_addCalcAngleS2(&field_0x582, field_0x586, 16, 8);
|
||||
cLib_addCalcAngleS2(&mRotateZ, mRotZTarget, 16, 8);
|
||||
cLib_addCalcAngleS2(&mRotateY, mRotYTarget, 16, 8);
|
||||
cLib_chaseF(&speed.y, -3.0f, 0.1f);
|
||||
if (current.pos.y < home.pos.y) {
|
||||
field_0x579 = 2;
|
||||
field_0x57c = (s16)(30.0f + cM_rndF(60.0f));
|
||||
field_0x584 = 512.0f + cM_rndF(512.0f);
|
||||
field_0x586 = 512.0f + cM_rndF(512.0f);
|
||||
mRotateMode = 2;
|
||||
mRotateTimer = (s16)(30.0f + cM_rndF(60.0f));
|
||||
mRotZTarget = 512.0f + cM_rndF(512.0f);
|
||||
mRotYTarget = 512.0f + cM_rndF(512.0f);
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
cLib_addCalcAngleS2(&field_0x580, field_0x584, 16, 32);
|
||||
cLib_addCalcAngleS2(&field_0x582, field_0x586, 16, 32);
|
||||
cLib_addCalcAngleS2(&mRotateZ, mRotZTarget, 16, 32);
|
||||
cLib_addCalcAngleS2(&mRotateY, mRotYTarget, 16, 32);
|
||||
cLib_chaseF(&speed.y, 5.0f, 0.1f);
|
||||
if (field_0x57c == 0) {
|
||||
field_0x579 = 1;
|
||||
field_0x584 = cM_rndF(128.0f);
|
||||
field_0x586 = cM_rndF(128.0f);
|
||||
if (mRotateTimer == 0) {
|
||||
mRotateMode = 1;
|
||||
mRotZTarget = cM_rndF(128.0f);
|
||||
mRotYTarget = cM_rndF(128.0f);
|
||||
}
|
||||
break;
|
||||
}
|
||||
shape_angle.z += field_0x580;
|
||||
shape_angle.y += field_0x582;
|
||||
if (field_0x57c != 0) {
|
||||
field_0x57c--;
|
||||
|
||||
shape_angle.z += mRotateZ;
|
||||
shape_angle.y += mRotateY;
|
||||
if (mRotateTimer != 0) {
|
||||
mRotateTimer--;
|
||||
}
|
||||
|
||||
mStts.Move();
|
||||
|
||||
if (mSph.ChkTgHit()) {
|
||||
cCcD_Obj* tgHit = mSph.GetTgHitObj();
|
||||
if (fopAcM_GetName(dCc_GetAc(tgHit->GetAc())) == 0xf4) {
|
||||
cXyz cStack_48(kago_effect_scale[field_0x578], kago_effect_scale[field_0x578],
|
||||
kago_effect_scale[field_0x578]);
|
||||
cCcD_Obj* hit_obj = mSph.GetTgHitObj();
|
||||
if (fopAcM_GetName(dCc_GetAc(hit_obj->GetAc())) == PROC_KAGO) {
|
||||
cXyz eff_scale(kago_effect_scale[mType], kago_effect_scale[mType],
|
||||
kago_effect_scale[mType]);
|
||||
for (int i = 0; i < 2; i++) {
|
||||
dComIfGp_particle_set(kago_wall_hit_id[i], ¤t.pos, &tevStr, &shape_angle,
|
||||
&cStack_48);
|
||||
&eff_scale);
|
||||
}
|
||||
u32 local_74;
|
||||
u32 local_28;
|
||||
if (m_combo_type == field_0x578) {
|
||||
|
||||
u32 add_score;
|
||||
if (m_combo_type == mType) {
|
||||
m_combo_count++;
|
||||
local_74 = m_combo_next_score;
|
||||
add_score = m_combo_next_score;
|
||||
if (m_combo_count >= 10) {
|
||||
m_combo_next_score = l_HIO.field_0x14[field_0x578] * 512.0f;
|
||||
local_28 = m_combo_next_score;
|
||||
m_combo_next_score = l_HIO.mScore[mType] * 512.0f;
|
||||
} else {
|
||||
m_combo_next_score <<= 1;
|
||||
m_combo_next_score *= 2;
|
||||
}
|
||||
} else {
|
||||
m_combo_type = field_0x578;
|
||||
m_combo_type = mType;
|
||||
m_combo_count = 1;
|
||||
m_combo_next_score =
|
||||
l_HIO.field_0x14[field_0x578] * 2.0f;
|
||||
local_28 = m_combo_next_score;
|
||||
local_74 = l_HIO.field_0x14[field_0x578];
|
||||
m_combo_next_score = l_HIO.mScore[mType] * 2.0f;
|
||||
add_score = l_HIO.mScore[mType];
|
||||
}
|
||||
Z2GetAudioMgr()->seStart(break_sound_id[field_0x578], ¤t.pos, m_combo_count, 0, 1.0f, 1.0f,
|
||||
-1.0f, -1.0f, 0);
|
||||
m_balloon_score += local_74;
|
||||
daBalloon2D_c* balloon2d = (daBalloon2D_c*)fopAcM_SearchByName(PROC_BALLOON2D);
|
||||
if (balloon2d != NULL) {
|
||||
u8 unaff_r25;
|
||||
if (field_0x578 == 2) {
|
||||
unaff_r25 = 0;
|
||||
} else if (field_0x578 == 1) {
|
||||
unaff_r25 = 1;
|
||||
} else if (field_0x578 == 0) {
|
||||
unaff_r25 = 2;
|
||||
|
||||
Z2GetAudioMgr()->seStart(break_sound_id[mType], ¤t.pos, m_combo_count, 0, 1.0f,
|
||||
1.0f, -1.0f, -1.0f, 0);
|
||||
m_balloon_score += add_score;
|
||||
|
||||
daBalloon2D_c* balloon_2d = (daBalloon2D_c*)fopAcM_SearchByName(PROC_BALLOON2D);
|
||||
if (balloon_2d != NULL) {
|
||||
u8 balloon_size;
|
||||
if (mType == SIZE_SMALL_e) {
|
||||
balloon_size = 0;
|
||||
} else if (mType == SIZE_MEDIUM_e) {
|
||||
balloon_size = 1;
|
||||
} else if (mType == SIZE_LARGE_e) {
|
||||
balloon_size = 2;
|
||||
}
|
||||
cXyz cStack_54(dCc_GetAc(tgHit->GetAc())->current.pos);
|
||||
cStack_54 = (cStack_54 + current.pos) / 2.0f;
|
||||
balloon2d->setComboCount(unaff_r25, m_combo_count);
|
||||
balloon2d->setScoreCount(m_balloon_score);
|
||||
balloon2d->addScoreCount(&cStack_54, local_74, unaff_r25);
|
||||
|
||||
cXyz pos_2d(dCc_GetAc(hit_obj->GetAc())->current.pos);
|
||||
pos_2d = (pos_2d + current.pos) / 2.0f;
|
||||
balloon_2d->setComboCount(balloon_size, m_combo_count);
|
||||
balloon_2d->setScoreCount(m_balloon_score);
|
||||
balloon_2d->addScoreCount(&pos_2d, add_score, balloon_size);
|
||||
}
|
||||
|
||||
fopAcM_delete(this);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
fopAcM_posMoveF(this, mStts.GetCCMoveP());
|
||||
}
|
||||
|
||||
@@ -326,9 +307,7 @@ void daObj_Balloon_c::action() {
|
||||
void daObj_Balloon_c::mtx_set() {
|
||||
mDoMtx_stack_c::transS(current.pos);
|
||||
mDoMtx_stack_c::ZXYrotM(shape_angle);
|
||||
mDoMtx_stack_c::scaleM(l_HIO.field_0x08[field_0x578],
|
||||
l_HIO.field_0x08[field_0x578],
|
||||
l_HIO.field_0x08[field_0x578]);
|
||||
mDoMtx_stack_c::scaleM(l_HIO.mScale[mType], l_HIO.mScale[mType], l_HIO.mScale[mType]);
|
||||
mModel->setBaseTRMtx(mDoMtx_stack_c::get());
|
||||
}
|
||||
|
||||
@@ -356,8 +335,8 @@ static int daObj_Balloon_IsDelete(daObj_Balloon_c* i_this) {
|
||||
int daObj_Balloon_c::_delete() {
|
||||
dComIfG_resDelete(&mPhase, "Obj_bal");
|
||||
Z2GetAudioMgr()->seStop(Z2SE_OBJ_WATERMILL_ROUND, 0);
|
||||
if (field_0x914 != 0) {
|
||||
data_80BA8FFC = 0;
|
||||
if (mHIOInit) {
|
||||
l_initHIO = false;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
@@ -370,16 +349,16 @@ static int daObj_Balloon_Delete(daObj_Balloon_c* i_this) {
|
||||
/* 80BA87CC-80BA88A4 00090C 00D8+00 1/1 0/0 0/0 .text CreateHeap__15daObj_Balloon_cFv */
|
||||
int daObj_Balloon_c::CreateHeap() {
|
||||
J3DModelData* modelData;
|
||||
if (field_0x578 == 0) {
|
||||
if (mType == SIZE_LARGE_e) {
|
||||
modelData = (J3DModelData*)dComIfG_getObjectRes("Obj_bal", 3);
|
||||
} else if (field_0x578 == 1) {
|
||||
} else if (mType == SIZE_MEDIUM_e) {
|
||||
modelData = (J3DModelData*)dComIfG_getObjectRes("Obj_bal", 4);
|
||||
} else if (field_0x578 == 2) {
|
||||
} else if (mType == SIZE_SMALL_e) {
|
||||
modelData = (J3DModelData*)dComIfG_getObjectRes("Obj_bal", 5);
|
||||
}
|
||||
JUT_ASSERT(501, modelData != 0);
|
||||
mModel = mDoExt_J3DModel__create(modelData, 0, 0x11000084);
|
||||
return mModel != NULL ? 1 : 0;
|
||||
return mModel != NULL ? TRUE : FALSE;
|
||||
}
|
||||
|
||||
/* 80BA88A4-80BA88C4 0009E4 0020+00 1/1 0/0 0/0 .text useHeapInit__FP10fopAc_ac_c */
|
||||
@@ -390,38 +369,56 @@ static int useHeapInit(fopAc_ac_c* i_this) {
|
||||
/* 80BA88C4-80BA8B30 000A04 026C+00 1/1 0/0 0/0 .text create__15daObj_Balloon_cFv */
|
||||
int daObj_Balloon_c::create() {
|
||||
fopAcM_SetupActor(this, daObj_Balloon_c);
|
||||
field_0x578 = fopAcM_GetParam(this);
|
||||
if (field_0x578 == 0xff) {
|
||||
field_0x578 = 0x0;
|
||||
mType = fopAcM_GetParam(this);
|
||||
if (mType == 0xFF) {
|
||||
mType = SIZE_LARGE_e;
|
||||
}
|
||||
int rv = dComIfG_resLoad(&mPhase, "Obj_bal");
|
||||
if (rv == cPhs_COMPLEATE_e) {
|
||||
|
||||
int phase_state = dComIfG_resLoad(&mPhase, "Obj_bal");
|
||||
if (phase_state == cPhs_COMPLEATE_e) {
|
||||
OS_REPORT("Obj_Balloon PARAM %x\n", fopAcM_GetParam(this));
|
||||
if (fopAcM_entrySolidHeap(this, useHeapInit, 0xd60) == 0) {
|
||||
if (!fopAcM_entrySolidHeap(this, useHeapInit, 0xD60)) {
|
||||
return cPhs_ERROR_e;
|
||||
} else {
|
||||
if (data_80BA8FFC == 0) {
|
||||
field_0x914 = 1;
|
||||
data_80BA8FFC = 1;
|
||||
l_HIO.field_0x04 = -1;
|
||||
}
|
||||
attention_info.flags = 0;
|
||||
fopAcM_SetMtx(this, mModel->getBaseTRMtx());
|
||||
fopAcM_SetMin(this, -1000.0f, -1000.0f, -1000.0f);
|
||||
fopAcM_SetMax(this, 1000.0f, 1000.0f, 1000.0f);
|
||||
fopAcM_setCullSizeFar(this, 2.0f);
|
||||
mAcch.Set(fopAcM_GetPosition_p(this), fopAcM_GetOldPosition_p(this), this, 1, &mAcchCir,
|
||||
fopAcM_GetSpeed_p(this), NULL, NULL);
|
||||
mAcchCir.SetWall(0.0f, 0.0f);
|
||||
health = 60;
|
||||
field_0x560 = 60;
|
||||
mStts.Init(0xff, 0, this);
|
||||
mSph.Set(cc_sph_src);
|
||||
mSph.SetStts(&mStts);
|
||||
daObj_Balloon_Execute(this);
|
||||
}
|
||||
|
||||
if (!l_initHIO) {
|
||||
mHIOInit = true;
|
||||
l_initHIO = true;
|
||||
l_HIO.field_0x04 = -1;
|
||||
}
|
||||
|
||||
attention_info.flags = 0;
|
||||
fopAcM_SetMtx(this, mModel->getBaseTRMtx());
|
||||
fopAcM_SetMin(this, -1000.0f, -1000.0f, -1000.0f);
|
||||
fopAcM_SetMax(this, 1000.0f, 1000.0f, 1000.0f);
|
||||
fopAcM_setCullSizeFar(this, 2.0f);
|
||||
|
||||
mAcch.Set(fopAcM_GetPosition_p(this), fopAcM_GetOldPosition_p(this), this, 1, &mAcchCir,
|
||||
fopAcM_GetSpeed_p(this), NULL, NULL);
|
||||
mAcchCir.SetWall(0.0f, 0.0f);
|
||||
|
||||
health = 60;
|
||||
field_0x560 = 60;
|
||||
|
||||
static dCcD_SrcSph cc_sph_src = {
|
||||
{
|
||||
{0x0, {{0x0, 0x0, 0x0}, {0x8, 0x11}, 0x0}}, // mObj
|
||||
{dCcD_SE_METAL, 0x0, 0x0, 0x0, 0x0}, // mGObjAt
|
||||
{dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x2}, // mGObjTg
|
||||
{0x0}, // mGObjCo
|
||||
}, // mObjInf
|
||||
{
|
||||
{{0.0f, 0.0f, 0.0f}, 40.0f} // mSph
|
||||
} // mSphAttr
|
||||
};
|
||||
|
||||
mStts.Init(0xFF, 0, this);
|
||||
mSph.Set(cc_sph_src);
|
||||
mSph.SetStts(&mStts);
|
||||
daObj_Balloon_Execute(this);
|
||||
}
|
||||
return rv;
|
||||
|
||||
return phase_state;
|
||||
}
|
||||
|
||||
/* 80BA8CFC-80BA8D1C 000E3C 0020+00 1/0 0/0 0/0 .text daObj_Balloon_Create__FP15daObj_Balloon_c */
|
||||
@@ -454,7 +451,6 @@ extern actor_process_profile_definition g_profile_OBJ_BALLOON = {
|
||||
fopAc_CULLBOX_CUSTOM_e, // cullType
|
||||
};
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80BA902C-80BA9030 000084 0004+00 0/0 0/0 0/0 .bss
|
||||
* sInstance__40JASGlobalInstance<19JASDefaultBankTable> */
|
||||
JASDefaultBankTable* JASGlobalInstance<JASDefaultBankTable>::sInstance;
|
||||
@@ -556,5 +552,3 @@ static u8 data_80BA9088[4];
|
||||
/* 80BA908C-80BA9090 0000E4 0004+00 0/0 0/0 0/0 .bss
|
||||
* sInstance__34JASGlobalInstance<13Z2WolfHowlMgr> */
|
||||
Z2WolfHowlMgr* JASGlobalInstance<Z2WolfHowlMgr>::sInstance;
|
||||
|
||||
/* 80BA8E54-80BA8E54 000048 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
|
||||
@@ -1,371 +1,253 @@
|
||||
/**
|
||||
* d_a_obj_fireWood2.cpp
|
||||
*
|
||||
* Firewood 2 (Flame)
|
||||
*/
|
||||
|
||||
#include "rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2.h"
|
||||
#include "dol2asm.h"
|
||||
#include "m_Do/m_Do_hostIO.h"
|
||||
|
||||
/* 80BE824C-80BE8288 0000EC 003C+00 1/1 0/0 0/0 .text __ct__17daFireWood2_HIO_cFv */
|
||||
daFireWood2_HIO_c::daFireWood2_HIO_c() {
|
||||
mFlameOffsetY = 15.0f;
|
||||
mCollisionDiameter = 25.0f;
|
||||
mCollisionHeight = 50.0f;
|
||||
}
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
//
|
||||
/* 80BE82D0-80BE8328 000170 0058+00 2/2 0/0 0/0 .text setBaseMtx__13daFireWood2_cFv */
|
||||
void daFireWood2_c::setBaseMtx() {
|
||||
mDoMtx_stack_c::transS(current.pos.x, current.pos.y, current.pos.z);
|
||||
mDoMtx_stack_c::ZXYrotM(current.angle.x, current.angle.y, current.angle.z);
|
||||
}
|
||||
|
||||
extern "C" void __ct__17daFireWood2_HIO_cFv();
|
||||
extern "C" void __dt__14mDoHIO_entry_cFv();
|
||||
extern "C" void setBaseMtx__13daFireWood2_cFv();
|
||||
extern "C" void create__13daFireWood2_cFv();
|
||||
extern "C" void __dt__8cM3dGCylFv();
|
||||
extern "C" void __dt__8cM3dGAabFv();
|
||||
extern "C" void lightInit__13daFireWood2_cFv();
|
||||
extern "C" void setLight__13daFireWood2_cFv();
|
||||
extern "C" void cutLight__13daFireWood2_cFv();
|
||||
extern "C" void pointLightProc__13daFireWood2_cFv();
|
||||
extern "C" void Execute__13daFireWood2_cFv();
|
||||
extern "C" bool Draw__13daFireWood2_cFv();
|
||||
extern "C" void Delete__13daFireWood2_cFv();
|
||||
extern "C" static void daFireWood2_Draw__FP13daFireWood2_c();
|
||||
extern "C" static void daFireWood2_Execute__FP13daFireWood2_c();
|
||||
extern "C" static void daFireWood2_Delete__FP13daFireWood2_c();
|
||||
extern "C" static void daFireWood2_Create__FP10fopAc_ac_c();
|
||||
extern "C" void __dt__17daFireWood2_HIO_cFv();
|
||||
extern "C" void __sinit_d_a_obj_fireWood2_cpp();
|
||||
extern "C" u8 const mCcDObjInfo__13daFireWood2_c[48];
|
||||
extern "C" u8 mCcDCyl__13daFireWood2_c[68];
|
||||
/* 80BE908C-80BE909C 000014 0010+00 3/3 0/0 0/0 .bss l_HIO */
|
||||
static daFireWood2_HIO_c l_HIO;
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" void mDoMtx_ZXYrotM__FPA4_fsss();
|
||||
extern "C" void __ct__10fopAc_ac_cFv();
|
||||
extern "C" void fopAcM_setCullSizeBox__FP10fopAc_ac_cffffff();
|
||||
extern "C" void dComIfGp_getReverb__Fi();
|
||||
extern "C" void onSwitch__10dSv_info_cFii();
|
||||
extern "C" void offSwitch__10dSv_info_cFii();
|
||||
extern "C" void isSwitch__10dSv_info_cCFii();
|
||||
extern "C" void
|
||||
set__13dPa_control_cFUlUcUsPC4cXyzPC12dKy_tevstr_cPC5csXyzPC4cXyzUcP18dPa_levelEcallBackScPC8_GXColorPC8_GXColorPC4cXyzf();
|
||||
extern "C" void __ct__10dCcD_GSttsFv();
|
||||
extern "C" void Init__9dCcD_SttsFiiP10fopAc_ac_c();
|
||||
extern "C" void __ct__12dCcD_GObjInfFv();
|
||||
extern "C" void ChkTgHit__12dCcD_GObjInfFv();
|
||||
extern "C" void GetTgHitGObj__12dCcD_GObjInfFv();
|
||||
extern "C" void Set__8dCcD_CylFRC11dCcD_SrcCyl();
|
||||
extern "C" void dKy_plight_set__FP15LIGHT_INFLUENCE();
|
||||
extern "C" void dKy_plight_cut__FP15LIGHT_INFLUENCE();
|
||||
extern "C" void dKy_BossLight_set__FP4cXyzP8_GXColorfUc();
|
||||
extern "C" void Set__4cCcSFP8cCcD_Obj();
|
||||
extern "C" void SetC__8cM3dGCylFRC4cXyz();
|
||||
extern "C" void SetH__8cM3dGCylFf();
|
||||
extern "C" void SetR__8cM3dGCylFf();
|
||||
extern "C" void cLib_addCalc__FPfffff();
|
||||
extern "C" void seStart__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc();
|
||||
extern "C" void seStartLevel__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc();
|
||||
extern "C" void __dl__FPv();
|
||||
extern "C" extern void* __vt__8dCcD_Cyl[36];
|
||||
extern "C" extern void* __vt__9dCcD_Stts[11];
|
||||
extern "C" extern void* __vt__12cCcD_CylAttr[25];
|
||||
extern "C" extern void* __vt__14cCcD_ShapeAttr[22];
|
||||
extern "C" extern void* __vt__9cCcD_Stts[8];
|
||||
extern "C" u8 now__14mDoMtx_stack_c[48];
|
||||
extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */];
|
||||
extern "C" void __register_global_object();
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
//
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80BE8F34-80BE8F38 000000 0004+00 3/3 0/0 0/0 .rodata @3625 */
|
||||
SECTION_RODATA static f32 const lit_3625 = 15.0f;
|
||||
COMPILER_STRIP_GATE(0x80BE8F34, &lit_3625);
|
||||
|
||||
/* 80BE8F38-80BE8F3C 000004 0004+00 0/1 0/0 0/0 .rodata @3626 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static f32 const lit_3626 = 25.0f;
|
||||
COMPILER_STRIP_GATE(0x80BE8F38, &lit_3626);
|
||||
#pragma pop
|
||||
|
||||
/* 80BE8F3C-80BE8F40 000008 0004+00 0/2 0/0 0/0 .rodata @3627 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static f32 const lit_3627 = 50.0f;
|
||||
COMPILER_STRIP_GATE(0x80BE8F3C, &lit_3627);
|
||||
#pragma pop
|
||||
/* 80BE8F40-80BE8F70 00000C 0030+00 1/1 0/0 0/0 .rodata mCcDObjInfo__13daFireWood2_c */
|
||||
const dCcD_SrcGObjInf daFireWood2_c::mCcDObjInfo = {
|
||||
{0, {{AT_TYPE_LANTERN_SWING, 0, 0x13}, {0xD8FBFFFF, 0x1F}, {0x79}}},
|
||||
{dCcD_SE_SWORD, 0, 0, dCcD_MTRL_NONE, 0},
|
||||
{dCcD_SE_STONE, 0, 0, dCcD_MTRL_NONE, 0},
|
||||
{0},
|
||||
};
|
||||
|
||||
/* 80BE8F98-80BE8FDC 000000 0044+00 2/2 0/0 0/0 .data mCcDCyl__13daFireWood2_c */
|
||||
SECTION_DATA u8 daFireWood2_c::mCcDCyl[68] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
dCcD_SrcCyl daFireWood2_c::mCcDCyl = {
|
||||
daFireWood2_c::mCcDObjInfo,
|
||||
{
|
||||
{0.0f, 0.0f, 0.0f}, // mCenter
|
||||
0.0f, // mRadius
|
||||
0.0f // mHeight
|
||||
} // mCyl
|
||||
};
|
||||
|
||||
/* 80BE8FDC-80BE8FF4 000044 0018+00 1/1 0/0 0/0 .data l_cull_box */
|
||||
SECTION_DATA static u8 l_cull_box[24] = {
|
||||
0xC2, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC2, 0x48, 0x00, 0x00,
|
||||
0x42, 0x48, 0x00, 0x00, 0x42, 0xC8, 0x00, 0x00, 0x42, 0x48, 0x00, 0x00,
|
||||
static cull_box l_cull_box = {
|
||||
{-50.0f, 0.0f, -50.0f},
|
||||
{50.0f, 100.0f, 50.0f},
|
||||
};
|
||||
|
||||
/* 80BE8FF4-80BE9014 -00001 0020+00 1/0 0/0 0/0 .data l_daFireWood2_Method */
|
||||
static actor_method_class l_daFireWood2_Method = {
|
||||
(process_method_func)daFireWood2_Create__FP10fopAc_ac_c,
|
||||
(process_method_func)daFireWood2_Delete__FP13daFireWood2_c,
|
||||
(process_method_func)daFireWood2_Execute__FP13daFireWood2_c,
|
||||
0,
|
||||
(process_method_func)daFireWood2_Draw__FP13daFireWood2_c,
|
||||
};
|
||||
|
||||
/* 80BE9014-80BE9044 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Obj_FireWood2 */
|
||||
extern actor_process_profile_definition g_profile_Obj_FireWood2 = {
|
||||
fpcLy_CURRENT_e, // mLayerID
|
||||
3, // mListID
|
||||
fpcPi_CURRENT_e, // mListPrio
|
||||
PROC_Obj_Lv1Cdl00, // mProcName
|
||||
&g_fpcLf_Method.mBase, // sub_method
|
||||
sizeof(daFireWood2_c), // mSize
|
||||
0, // mSizeOther
|
||||
0, // mParameters
|
||||
&g_fopAc_Method.base, // sub_method
|
||||
494, // mPriority
|
||||
&l_daFireWood2_Method, // sub_method
|
||||
0x00060000, // mStatus
|
||||
fopAc_ACTOR_e, // mActorType
|
||||
fopAc_CULLBOX_CUSTOM_e, // cullType
|
||||
};
|
||||
|
||||
/* 80BE9044-80BE9050 0000AC 000C+00 2/2 0/0 0/0 .data __vt__8cM3dGCyl */
|
||||
SECTION_DATA extern void* __vt__8cM3dGCyl[3] = {
|
||||
(void*)NULL /* RTTI */,
|
||||
(void*)NULL,
|
||||
(void*)__dt__8cM3dGCylFv,
|
||||
};
|
||||
|
||||
/* 80BE9050-80BE905C 0000B8 000C+00 2/2 0/0 0/0 .data __vt__8cM3dGAab */
|
||||
SECTION_DATA extern void* __vt__8cM3dGAab[3] = {
|
||||
(void*)NULL /* RTTI */,
|
||||
(void*)NULL,
|
||||
(void*)__dt__8cM3dGAabFv,
|
||||
};
|
||||
|
||||
/* 80BE905C-80BE9068 0000C4 000C+00 2/2 0/0 0/0 .data __vt__17daFireWood2_HIO_c */
|
||||
SECTION_DATA extern void* __vt__17daFireWood2_HIO_c[3] = {
|
||||
(void*)NULL /* RTTI */,
|
||||
(void*)NULL,
|
||||
(void*)__dt__17daFireWood2_HIO_cFv,
|
||||
};
|
||||
|
||||
/* 80BE9068-80BE9074 0000D0 000C+00 3/3 0/0 0/0 .data __vt__14mDoHIO_entry_c */
|
||||
SECTION_DATA extern void* __vt__14mDoHIO_entry_c[3] = {
|
||||
(void*)NULL /* RTTI */,
|
||||
(void*)NULL,
|
||||
(void*)__dt__14mDoHIO_entry_cFv,
|
||||
};
|
||||
|
||||
/* 80BE824C-80BE8288 0000EC 003C+00 1/1 0/0 0/0 .text __ct__17daFireWood2_HIO_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm daFireWood2_HIO_c::daFireWood2_HIO_c() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2/__ct__17daFireWood2_HIO_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80BE8288-80BE82D0 000128 0048+00 1/0 0/0 0/0 .text __dt__14mDoHIO_entry_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
// mDoHIO_entry_c::~mDoHIO_entry_c()
|
||||
extern "C" asm void __dt__14mDoHIO_entry_cFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2/__dt__14mDoHIO_entry_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80BE82D0-80BE8328 000170 0058+00 2/2 0/0 0/0 .text setBaseMtx__13daFireWood2_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daFireWood2_c::setBaseMtx() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2/setBaseMtx__13daFireWood2_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80BE9080-80BE908C 000008 000C+00 1/1 0/0 0/0 .bss @3619 */
|
||||
static u8 lit_3619[12];
|
||||
|
||||
/* 80BE908C-80BE909C 000014 0010+00 3/3 0/0 0/0 .bss l_HIO */
|
||||
static u8 l_HIO[16];
|
||||
|
||||
/* 80BE8328-80BE85B0 0001C8 0288+00 1/1 0/0 0/0 .text create__13daFireWood2_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daFireWood2_c::create() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2/create__13daFireWood2_cFv.s"
|
||||
int daFireWood2_c::create() {
|
||||
fopAcM_SetupActor(this, daFireWood2_c);
|
||||
|
||||
setBaseMtx();
|
||||
mCcStts.Init(0xFF, 0xFF, this);
|
||||
mCcCyl.Set(mCcDCyl);
|
||||
mCcCyl.SetStts(&mCcStts);
|
||||
|
||||
f32 min_x = l_cull_box.min.x * scale.x;
|
||||
f32 min_y = l_cull_box.min.y * scale.y;
|
||||
f32 min_z = l_cull_box.min.z * scale.x;
|
||||
f32 max_x = l_cull_box.max.x * scale.x;
|
||||
f32 max_y = l_cull_box.max.y * scale.y;
|
||||
f32 max_z = l_cull_box.max.z * scale.x;
|
||||
fopAcM_setCullSizeBox(this, min_x, min_y, min_z, max_x, max_y, max_y);
|
||||
|
||||
mFlamePos.x = current.pos.x;
|
||||
mFlamePos.y = current.pos.y + l_HIO.mFlameOffsetY;
|
||||
mFlamePos.z = current.pos.z;
|
||||
|
||||
for (int i = 0; i < 4; i++) {
|
||||
mFlameEmtrIDs[i] = 0;
|
||||
}
|
||||
|
||||
mIsPLight = fopAcM_GetParam(this) >> 0x10;
|
||||
if (mIsPLight == 0xFF) {
|
||||
mIsPLight = false;
|
||||
}
|
||||
|
||||
lightInit();
|
||||
|
||||
mSwitchType = fopAcM_GetParam(this) >> 0x8;
|
||||
if (mSwitchType == 0xFF) {
|
||||
mSwitchType = 0;
|
||||
}
|
||||
|
||||
mFlameType = fopAcM_GetParam(this) >> 0x18;
|
||||
|
||||
eyePos = mFlamePos;
|
||||
|
||||
mIsSwitch = fopAcM_isSwitch(this, fopAcM_GetParam(this) & 0xFF);
|
||||
mIsLit = false;
|
||||
|
||||
if (mSwitchType == 0) {
|
||||
if (mIsSwitch) {
|
||||
mIsLit = true;
|
||||
mCcCyl.SetAtMtrl(dCcD_MTRL_FIRE);
|
||||
setLight();
|
||||
}
|
||||
} else if (!mIsSwitch) {
|
||||
mIsLit = true;
|
||||
mCcCyl.SetAtMtrl(dCcD_MTRL_FIRE);
|
||||
setLight();
|
||||
}
|
||||
|
||||
return cPhs_COMPLEATE_e;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80BE85B0-80BE85F8 000450 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGCylFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
// cM3dGCyl::~cM3dGCyl()
|
||||
extern "C" asm void __dt__8cM3dGCylFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2/__dt__8cM3dGCylFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80BE85F8-80BE8640 000498 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGAabFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
// cM3dGAab::~cM3dGAab()
|
||||
extern "C" asm void __dt__8cM3dGAabFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2/__dt__8cM3dGAabFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80BE8F40-80BE8F70 00000C 0030+00 1/1 0/0 0/0 .rodata mCcDObjInfo__13daFireWood2_c */
|
||||
SECTION_RODATA u8 const daFireWood2_c::mCcDObjInfo[48] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x13,
|
||||
0xD8, 0xFB, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x79, 0x01, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
};
|
||||
COMPILER_STRIP_GATE(0x80BE8F40, &daFireWood2_c::mCcDObjInfo);
|
||||
|
||||
/* 80BE8F70-80BE8F74 00003C 0004+00 0/1 0/0 0/0 .rodata @3834 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static f32 const lit_3834 = 10.0f;
|
||||
COMPILER_STRIP_GATE(0x80BE8F70, &lit_3834);
|
||||
#pragma pop
|
||||
|
||||
/* 80BE8F74-80BE8F78 000040 0004+00 0/1 0/0 0/0 .rodata @3835 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static f32 const lit_3835 = 500.0f;
|
||||
COMPILER_STRIP_GATE(0x80BE8F74, &lit_3835);
|
||||
#pragma pop
|
||||
|
||||
/* 80BE8F78-80BE8F7C 000044 0004+00 1/3 0/0 0/0 .rodata @3836 */
|
||||
SECTION_RODATA static f32 const lit_3836 = 1.0f;
|
||||
COMPILER_STRIP_GATE(0x80BE8F78, &lit_3836);
|
||||
|
||||
/* 80BE8F7C-80BE8F80 000048 0004+00 0/2 0/0 0/0 .rodata @3837 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static u8 const lit_3837[4] = {
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
};
|
||||
COMPILER_STRIP_GATE(0x80BE8F7C, &lit_3837);
|
||||
#pragma pop
|
||||
|
||||
/* 80BE8640-80BE86CC 0004E0 008C+00 1/1 0/0 0/0 .text lightInit__13daFireWood2_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daFireWood2_c::lightInit() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2/lightInit__13daFireWood2_cFv.s"
|
||||
void daFireWood2_c::lightInit() {
|
||||
mLightPos = mFlamePos;
|
||||
mLightPos.y += 10.0f;
|
||||
|
||||
if (mIsPLight) {
|
||||
mLightInfluence.mPosition = mLightPos;
|
||||
mLightInfluence.mColor.r = 0xBC;
|
||||
mLightInfluence.mColor.g = 0x66;
|
||||
mLightInfluence.mColor.b = 0x42;
|
||||
mLightInfluence.mPow = 500.0f;
|
||||
mLightInfluence.mFluctuation = 1.0f;
|
||||
} else {
|
||||
mBossLightStrength = 0.0f;
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80BE86CC-80BE86FC 00056C 0030+00 2/2 0/0 0/0 .text setLight__13daFireWood2_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daFireWood2_c::setLight() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2/setLight__13daFireWood2_cFv.s"
|
||||
void daFireWood2_c::setLight() {
|
||||
if (mIsPLight) {
|
||||
dKy_plight_set(&mLightInfluence);
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80BE86FC-80BE872C 00059C 0030+00 1/1 0/0 0/0 .text cutLight__13daFireWood2_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daFireWood2_c::cutLight() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2/cutLight__13daFireWood2_cFv.s"
|
||||
void daFireWood2_c::cutLight() {
|
||||
if (mIsPLight) {
|
||||
dKy_plight_cut(&mLightInfluence);
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80BE8F80-80BE8F84 00004C 0004+00 0/1 0/0 0/0 .rodata @3855 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static u32 const lit_3855 = 0xBC6642FF;
|
||||
COMPILER_STRIP_GATE(0x80BE8F80, &lit_3855);
|
||||
#pragma pop
|
||||
|
||||
/* 80BE8F84-80BE8F88 000050 0004+00 0/1 0/0 0/0 .rodata @3863 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static f32 const lit_3863 = 0.5f;
|
||||
COMPILER_STRIP_GATE(0x80BE8F84, &lit_3863);
|
||||
#pragma pop
|
||||
|
||||
/* 80BE8F88-80BE8F8C 000054 0004+00 0/1 0/0 0/0 .rodata @3864 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static f32 const lit_3864 = 1.0f / 10.0f;
|
||||
COMPILER_STRIP_GATE(0x80BE8F88, &lit_3864);
|
||||
#pragma pop
|
||||
|
||||
/* 80BE8F8C-80BE8F90 000058 0004+00 0/1 0/0 0/0 .rodata @3865 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static u32 const lit_3865 = 0x38D1B717;
|
||||
COMPILER_STRIP_GATE(0x80BE8F8C, &lit_3865);
|
||||
#pragma pop
|
||||
|
||||
/* 80BE8F90-80BE8F94 00005C 0004+00 0/1 0/0 0/0 .rodata @3866 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static u32 const lit_3866 = 0x358637BD;
|
||||
COMPILER_STRIP_GATE(0x80BE8F90, &lit_3866);
|
||||
#pragma pop
|
||||
|
||||
/* 80BE872C-80BE87DC 0005CC 00B0+00 1/1 0/0 0/0 .text pointLightProc__13daFireWood2_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daFireWood2_c::pointLightProc() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2/pointLightProc__13daFireWood2_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
void daFireWood2_c::pointLightProc() {
|
||||
if (!mIsPLight) {
|
||||
GXColor color = {0xBC, 0x66, 0x42, 0xFF};
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80BE8F94-80BE8F98 000060 0004+00 1/2 0/0 0/0 .rodata @4018 */
|
||||
SECTION_RODATA static f32 const lit_4018 = -1.0f;
|
||||
COMPILER_STRIP_GATE(0x80BE8F94, &lit_4018);
|
||||
if (mIsLit) {
|
||||
cLib_addCalc(&mBossLightStrength, 1.0f, 0.5f, 0.1f, 0.0001f);
|
||||
} else {
|
||||
cLib_addCalc(&mBossLightStrength, 0.0f, 0.5f, 0.1f, 0.0001f);
|
||||
}
|
||||
|
||||
if (mBossLightStrength >= 0.000001f) {
|
||||
dKy_BossLight_set(&mLightPos, &color, mBossLightStrength, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* 80BE87DC-80BE8D98 00067C 05BC+00 1/1 0/0 0/0 .text Execute__13daFireWood2_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daFireWood2_c::Execute() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2/Execute__13daFireWood2_cFv.s"
|
||||
int daFireWood2_c::Execute() {
|
||||
u8 is_switch = fopAcM_isSwitch(this, fopAcM_GetParam(this) & 0xFF);
|
||||
|
||||
if (mIsSwitch != is_switch) {
|
||||
mIsLit = false;
|
||||
mCcCyl.SetAtMtrl(dCcD_MTRL_NONE);
|
||||
cutLight();
|
||||
|
||||
if (mSwitchType == 0) {
|
||||
if (is_switch) {
|
||||
mIsLit = true;
|
||||
mCcCyl.SetAtMtrl(dCcD_MTRL_FIRE);
|
||||
setLight();
|
||||
}
|
||||
} else if (!is_switch) {
|
||||
mIsLit = true;
|
||||
mCcCyl.SetAtMtrl(dCcD_MTRL_FIRE);
|
||||
setLight();
|
||||
}
|
||||
|
||||
mIsSwitch = is_switch;
|
||||
}
|
||||
|
||||
if (mIsLit) {
|
||||
if (mFlameType == 1) {
|
||||
mFlameEmtrIDs[0] =
|
||||
dComIfGp_particle_set(mFlameEmtrIDs[0], 0x85A7, &mFlamePos, NULL, NULL);
|
||||
mFlameEmtrIDs[1] =
|
||||
dComIfGp_particle_set(mFlameEmtrIDs[1], 0x85BB, &mFlamePos, NULL, NULL);
|
||||
mFlameEmtrIDs[2] =
|
||||
dComIfGp_particle_set(mFlameEmtrIDs[2], 0x85BC, &mFlamePos, NULL, NULL);
|
||||
mFlameEmtrIDs[3] =
|
||||
dComIfGp_particle_set(mFlameEmtrIDs[3], 0x85BD, &mFlamePos, NULL, NULL);
|
||||
} else {
|
||||
mFlameEmtrIDs[0] =
|
||||
dComIfGp_particle_set(mFlameEmtrIDs[0], 0x3AD, &mFlamePos, NULL, NULL);
|
||||
mFlameEmtrIDs[1] =
|
||||
dComIfGp_particle_set(mFlameEmtrIDs[1], 0x3AF, &mFlamePos, NULL, NULL);
|
||||
mFlameEmtrIDs[2] =
|
||||
dComIfGp_particle_set(mFlameEmtrIDs[2], 0x3AE, &mFlamePos, NULL, NULL);
|
||||
}
|
||||
|
||||
mDoAud_seStartLevel(Z2SE_OBJ_FIRE_BURNING, &mFlamePos, 0,
|
||||
dComIfGp_getReverb(fopAcM_GetRoomNo(this)));
|
||||
}
|
||||
|
||||
setBaseMtx();
|
||||
|
||||
if (mCcCyl.ChkTgHit()) {
|
||||
dCcD_GObjInf* gobj = mCcCyl.GetTgHitGObj();
|
||||
|
||||
if (gobj->GetAtType() == AT_TYPE_LANTERN_SWING && gobj->GetAtMtrl() == dCcD_MTRL_FIRE &&
|
||||
!mIsLit)
|
||||
{
|
||||
mIsLit = true;
|
||||
mCcCyl.SetAtMtrl(dCcD_MTRL_FIRE);
|
||||
|
||||
if (mSwitchType == 0) {
|
||||
fopAcM_onSwitch(this, fopAcM_GetParam(this) & 0xFF);
|
||||
} else {
|
||||
fopAcM_offSwitch(this, fopAcM_GetParam(this) & 0xFF);
|
||||
}
|
||||
|
||||
mDoAud_seStart(Z2SE_OBJ_FIRE_IGNITION, &mFlamePos, 0,
|
||||
dComIfGp_getReverb(fopAcM_GetRoomNo(this)));
|
||||
setLight();
|
||||
}
|
||||
|
||||
if (gobj->GetAtType() == AT_TYPE_BOOMERANG && gobj->GetAtMtrl() == dCcD_MTRL_WIND &&
|
||||
mIsLit == true)
|
||||
{
|
||||
mIsLit = false;
|
||||
mCcCyl.SetAtMtrl(dCcD_MTRL_NONE);
|
||||
|
||||
if (mSwitchType == 0) {
|
||||
fopAcM_offSwitch(this, fopAcM_GetParam(this) & 0xFF);
|
||||
} else {
|
||||
fopAcM_onSwitch(this, fopAcM_GetParam(this) & 0xFF);
|
||||
}
|
||||
|
||||
mDoAud_seStart(Z2SE_OBJ_FIRE_OFF, &mFlamePos, 0,
|
||||
dComIfGp_getReverb(fopAcM_GetRoomNo(this)));
|
||||
cutLight();
|
||||
}
|
||||
}
|
||||
|
||||
mCcCyl.SetR(l_HIO.mCollisionDiameter);
|
||||
mCcCyl.SetH(l_HIO.mCollisionHeight);
|
||||
mCcCyl.SetC(current.pos);
|
||||
dComIfG_Ccsp()->Set(&mCcCyl);
|
||||
pointLightProc();
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80BE8D98-80BE8DA0 000C38 0008+00 1/1 0/0 0/0 .text Draw__13daFireWood2_cFv */
|
||||
int daFireWood2_c::Draw() {
|
||||
@@ -373,77 +255,57 @@ int daFireWood2_c::Draw() {
|
||||
}
|
||||
|
||||
/* 80BE8DA0-80BE8DD4 000C40 0034+00 1/1 0/0 0/0 .text Delete__13daFireWood2_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daFireWood2_c::Delete() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2/Delete__13daFireWood2_cFv.s"
|
||||
int daFireWood2_c::Delete() {
|
||||
if (mIsPLight) {
|
||||
dKy_plight_cut(&mLightInfluence);
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80BE8DD4-80BE8DF4 000C74 0020+00 1/0 0/0 0/0 .text daFireWood2_Draw__FP13daFireWood2_c
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daFireWood2_Draw(daFireWood2_c* i_this) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2/daFireWood2_Draw__FP13daFireWood2_c.s"
|
||||
static int daFireWood2_Draw(daFireWood2_c* i_this) {
|
||||
return i_this->Draw();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80BE8DF4-80BE8E14 000C94 0020+00 1/0 0/0 0/0 .text daFireWood2_Execute__FP13daFireWood2_c */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daFireWood2_Execute(daFireWood2_c* i_this) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2/daFireWood2_Execute__FP13daFireWood2_c.s"
|
||||
static int daFireWood2_Execute(daFireWood2_c* i_this) {
|
||||
return i_this->Execute();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80BE8E14-80BE8E34 000CB4 0020+00 1/0 0/0 0/0 .text daFireWood2_Delete__FP13daFireWood2_c */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daFireWood2_Delete(daFireWood2_c* i_this) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2/daFireWood2_Delete__FP13daFireWood2_c.s"
|
||||
static int daFireWood2_Delete(daFireWood2_c* i_this) {
|
||||
return i_this->Delete();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80BE8E34-80BE8E54 000CD4 0020+00 1/0 0/0 0/0 .text daFireWood2_Create__FP10fopAc_ac_c
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daFireWood2_Create(fopAc_ac_c* i_this) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2/daFireWood2_Create__FP10fopAc_ac_c.s"
|
||||
static int daFireWood2_Create(fopAc_ac_c* i_this) {
|
||||
return ((daFireWood2_c*)i_this)->create();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80BE8E54-80BE8EB0 000CF4 005C+00 2/1 0/0 0/0 .text __dt__17daFireWood2_HIO_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm daFireWood2_HIO_c::~daFireWood2_HIO_c() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2/__dt__17daFireWood2_HIO_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
/* 80BE8FF4-80BE9014 -00001 0020+00 1/0 0/0 0/0 .data l_daFireWood2_Method */
|
||||
static actor_method_class l_daFireWood2_Method = {
|
||||
(process_method_func)daFireWood2_Create, (process_method_func)daFireWood2_Delete,
|
||||
(process_method_func)daFireWood2_Execute, (process_method_func)NULL,
|
||||
(process_method_func)daFireWood2_Draw,
|
||||
};
|
||||
|
||||
/* 80BE8EB0-80BE8F20 000D50 0070+00 0/0 1/0 0/0 .text __sinit_d_a_obj_fireWood2_cpp */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void __sinit_d_a_obj_fireWood2_cpp(){nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2/__sinit_d_a_obj_fireWood2_cpp.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
REGISTER_CTORS(0x80BE8EB0, __sinit_d_a_obj_fireWood2_cpp);
|
||||
#pragma pop
|
||||
/* 80BE9014-80BE9044 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Obj_FireWood2 */
|
||||
extern actor_process_profile_definition g_profile_Obj_FireWood2 = {
|
||||
fpcLy_CURRENT_e, // mLayerID
|
||||
3, // mListID
|
||||
fpcPi_CURRENT_e, // mListPrio
|
||||
PROC_Obj_Lv1Cdl00, // mProcName
|
||||
&g_fpcLf_Method.mBase, // sub_method
|
||||
sizeof(daFireWood2_c), // mSize
|
||||
0, // mSizeOther
|
||||
0, // mParameters
|
||||
&g_fopAc_Method.base, // sub_method
|
||||
494, // mPriority
|
||||
&l_daFireWood2_Method, // sub_method
|
||||
0x00060000, // mStatus
|
||||
fopAc_ACTOR_e, // mActorType
|
||||
fopAc_CULLBOX_CUSTOM_e, // cullType
|
||||
};
|
||||
|
||||
@@ -1,166 +1,21 @@
|
||||
/**
|
||||
* @file d_a_obj_sWallShutter.cpp
|
||||
*
|
||||
*/
|
||||
*
|
||||
*/
|
||||
|
||||
#include "rel/d/a/obj/d_a_obj_sWallShutter/d_a_obj_sWallShutter.h"
|
||||
#include "dol2asm.h"
|
||||
|
||||
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void __ct__17daSwShutter_HIO_cFv();
|
||||
extern "C" void __dt__14mDoHIO_entry_cFv();
|
||||
extern "C" void setBaseMtx__13daSwShutter_cFv();
|
||||
extern "C" void CreateHeap__13daSwShutter_cFv();
|
||||
extern "C" void create__13daSwShutter_cFv();
|
||||
extern "C" void Execute__13daSwShutter_cFPPA3_A4_f();
|
||||
extern "C" void moveMain__13daSwShutter_cFv();
|
||||
extern "C" void init_modeWait__13daSwShutter_cFv();
|
||||
extern "C" void modeWait__13daSwShutter_cFv();
|
||||
extern "C" void init_modeMoveDownInit__13daSwShutter_cFv();
|
||||
extern "C" void modeMoveDownInit__13daSwShutter_cFv();
|
||||
extern "C" void init_modeMoveDown__13daSwShutter_cFv();
|
||||
extern "C" void modeMoveDown__13daSwShutter_cFv();
|
||||
extern "C" void init_modeMoveDownEnd__13daSwShutter_cFv();
|
||||
extern "C" void modeMoveDownEnd__13daSwShutter_cFv();
|
||||
extern "C" void Draw__13daSwShutter_cFv();
|
||||
extern "C" void Delete__13daSwShutter_cFv();
|
||||
extern "C" static void daSwShutter_Draw__FP13daSwShutter_c();
|
||||
extern "C" static void daSwShutter_Execute__FP13daSwShutter_c();
|
||||
extern "C" static void daSwShutter_Delete__FP13daSwShutter_c();
|
||||
extern "C" static void daSwShutter_Create__FP10fopAc_ac_c();
|
||||
extern "C" void __dt__17daSwShutter_HIO_cFv();
|
||||
extern "C" void __sinit_d_a_obj_sWallShutter_cpp();
|
||||
extern "C" extern char const* const d_a_obj_sWallShutter__stringBase0;
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" void mDoMtx_ZXYrotM__FPA4_fsss();
|
||||
extern "C" void mDoExt_modelUpdateDL__FP8J3DModel();
|
||||
extern "C" void mDoExt_J3DModel__create__FP12J3DModelDataUlUl();
|
||||
extern "C" void fopAcM_setCullSizeBox2__FP10fopAc_ac_cP12J3DModelData();
|
||||
extern "C" void dComIfG_resLoad__FP30request_of_phase_process_classPCc();
|
||||
extern "C" void dComIfG_resDelete__FP30request_of_phase_process_classPCc();
|
||||
extern "C" void dComIfGp_getReverb__Fi();
|
||||
extern "C" void isSwitch__10dSv_info_cCFii();
|
||||
extern "C" void getRes__14dRes_control_cFPCclP11dRes_info_ci();
|
||||
extern "C" void
|
||||
set__13dPa_control_cFUcUsPC4cXyzPC12dKy_tevstr_cPC5csXyzPC4cXyzUcP18dPa_levelEcallBackScPC8_GXColorPC8_GXColorPC4cXyzf();
|
||||
extern "C" void
|
||||
set__13dPa_control_cFUlUcUsPC4cXyzPC12dKy_tevstr_cPC5csXyzPC4cXyzUcP18dPa_levelEcallBackScPC8_GXColorPC8_GXColorPC4cXyzf();
|
||||
extern "C" void StartShock__12dVibration_cFii4cXyz();
|
||||
extern "C" void StartQuake__12dVibration_cFii4cXyz();
|
||||
extern "C" void StopQuake__12dVibration_cFi();
|
||||
extern "C" void dBgS_MoveBGProc_TypicalRotY__FP4dBgWPvRC13cBgS_PolyInfobP4cXyzP5csXyzP5csXyz();
|
||||
extern "C" void __ct__16dBgS_MoveBgActorFv();
|
||||
extern "C" bool Create__16dBgS_MoveBgActorFv();
|
||||
extern "C" bool IsDelete__16dBgS_MoveBgActorFv();
|
||||
extern "C" bool ToFore__16dBgS_MoveBgActorFv();
|
||||
extern "C" bool ToBack__16dBgS_MoveBgActorFv();
|
||||
extern "C" void
|
||||
MoveBGCreate__16dBgS_MoveBgActorFPCciPFP4dBgWPvRC13cBgS_PolyInfobP4cXyzP5csXyzP5csXyz_vUlPA3_A4_f();
|
||||
extern "C" void MoveBGDelete__16dBgS_MoveBgActorFv();
|
||||
extern "C" void MoveBGExecute__16dBgS_MoveBgActorFv();
|
||||
extern "C" void settingTevStruct__18dScnKy_env_light_cFiP4cXyzP12dKy_tevstr_c();
|
||||
extern "C" void setLightTevColorType_MAJI__18dScnKy_env_light_cFP12J3DModelDataP12dKy_tevstr_c();
|
||||
extern "C" void cLib_addCalc__FPfffff();
|
||||
extern "C" void cLib_chaseF__FPfff();
|
||||
extern "C" void seStart__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc();
|
||||
extern "C" void __dl__FPv();
|
||||
extern "C" void __ptmf_scall();
|
||||
extern "C" void _savegpr_29();
|
||||
extern "C" void _restgpr_29();
|
||||
extern "C" u8 now__14mDoMtx_stack_c[48];
|
||||
extern "C" extern u8 g_dComIfG_gameInfo[122384];
|
||||
extern "C" u8 sincosTable___5JMath[65536];
|
||||
extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */];
|
||||
extern "C" void __register_global_object();
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
//
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80598F78-80598F7C 000000 0004+00 6/6 0/0 0/0 .rodata @3630 */
|
||||
SECTION_RODATA static u8 const lit_3630[4] = {
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
};
|
||||
COMPILER_STRIP_GATE(0x80598F78, &lit_3630);
|
||||
|
||||
/* 80598F7C-80598F80 000004 0004+00 0/1 0/0 0/0 .rodata @3631 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static f32 const lit_3631 = 100.0f;
|
||||
COMPILER_STRIP_GATE(0x80598F7C, &lit_3631);
|
||||
#pragma pop
|
||||
|
||||
/* 80598F80-80598F84 000008 0004+00 0/1 0/0 0/0 .rodata @3632 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static f32 const lit_3632 = 1.0f / 5.0f;
|
||||
COMPILER_STRIP_GATE(0x80598F80, &lit_3632);
|
||||
#pragma pop
|
||||
|
||||
/* 80598F84-80598F88 00000C 0004+00 0/1 0/0 0/0 .rodata @3633 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static f32 const lit_3633 = 90.0f;
|
||||
COMPILER_STRIP_GATE(0x80598F84, &lit_3633);
|
||||
#pragma pop
|
||||
|
||||
/* 80598F88-80598F8C 000010 0004+00 0/1 0/0 0/0 .rodata @3634 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static f32 const lit_3634 = 45.0f;
|
||||
COMPILER_STRIP_GATE(0x80598F88, &lit_3634);
|
||||
#pragma pop
|
||||
|
||||
/* 80598F8C-80598F90 000014 0004+00 0/1 0/0 0/0 .rodata @3635 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static f32 const lit_3635 = 150.0f;
|
||||
COMPILER_STRIP_GATE(0x80598F8C, &lit_3635);
|
||||
#pragma pop
|
||||
|
||||
/* 80598F90-80598F94 000018 0004+00 0/1 0/0 0/0 .rodata @3636 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static f32 const lit_3636 = 1.0f / 10.0f;
|
||||
COMPILER_STRIP_GATE(0x80598F90, &lit_3636);
|
||||
#pragma pop
|
||||
|
||||
/* 80598F94-80598F98 00001C 0004+00 0/1 0/0 0/0 .rodata @3637 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static f32 const lit_3637 = 5.0f;
|
||||
COMPILER_STRIP_GATE(0x80598F94, &lit_3637);
|
||||
#pragma pop
|
||||
|
||||
/* 80598FB8-80598FB8 000040 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_DEAD static char const* const stringBase_80598FB8 = "P_Rgate";
|
||||
SECTION_DEAD static char const* const stringBase_80598FC0 = "SDGate";
|
||||
#pragma pop
|
||||
#include "SSystem/SComponent/c_math.h"
|
||||
#include "d/com/d_com_inf_game.h"
|
||||
|
||||
/* 80598FC8-80598FD4 000000 000C+00 1/1 0/0 0/0 .data cNullVec__6Z2Calc */
|
||||
SECTION_DATA static u8 cNullVec__6Z2Calc[12] = {
|
||||
static u8 cNullVec__6Z2Calc[12] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
};
|
||||
|
||||
/* 80598FD4-80598FE8 00000C 0004+10 0/0 0/0 0/0 .data @1787 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_DATA static u32 lit_1787[1 + 4 /* padding */] = {
|
||||
static u32 lit_1787[1 + 4 /* padding */] = {
|
||||
0x02000201,
|
||||
/* padding */
|
||||
0x40080000,
|
||||
@@ -171,400 +26,277 @@ SECTION_DATA static u32 lit_1787[1 + 4 /* padding */] = {
|
||||
#pragma pop
|
||||
|
||||
/* 80598FE8-80598FF0 -00001 0008+00 3/3 0/0 0/0 .data l_resNameIdx */
|
||||
SECTION_DATA static void* l_resNameIdx[2] = {
|
||||
(void*)&d_a_obj_sWallShutter__stringBase0,
|
||||
(void*)(((char*)&d_a_obj_sWallShutter__stringBase0) + 0x8),
|
||||
static char* l_resNameIdx[2] = {
|
||||
"P_Rgate",
|
||||
"SDGate",
|
||||
};
|
||||
|
||||
/* 80598FF0-80598FFC -00001 000C+00 0/1 0/0 0/0 .data @3746 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_DATA static void* lit_3746[3] = {
|
||||
(void*)NULL,
|
||||
(void*)0xFFFFFFFF,
|
||||
(void*)modeWait__13daSwShutter_cFv,
|
||||
};
|
||||
#pragma pop
|
||||
/* 805981EC-8059825C 0000EC 0070+00 1/1 0/0 0/0 .text __ct__17daSwShutter_HIO_cFv */
|
||||
daSwShutter_HIO_c::daSwShutter_HIO_c() {
|
||||
mInitSpeed = 0.0f;
|
||||
mMaxSpeed = 100.0f;
|
||||
mAcceleration = 0.2f;
|
||||
mVibrationStrength = 4;
|
||||
mShakeAmpZ = 90.0f;
|
||||
mShakeAmpY = 45.0f;
|
||||
mShakeStrength = 150.0f;
|
||||
mShakeAtten = 0.1f;
|
||||
mMaxAtten = 5.0f;
|
||||
mMinAtten = 0.1f;
|
||||
}
|
||||
|
||||
/* 80598FFC-80599008 -00001 000C+00 0/1 0/0 0/0 .data @3747 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_DATA static void* lit_3747[3] = {
|
||||
(void*)NULL,
|
||||
(void*)0xFFFFFFFF,
|
||||
(void*)modeMoveDownInit__13daSwShutter_cFv,
|
||||
};
|
||||
#pragma pop
|
||||
/* 805982A4-80598344 0001A4 00A0+00 2/2 0/0 0/0 .text setBaseMtx__13daSwShutter_cFv */
|
||||
void daSwShutter_c::setBaseMtx() {
|
||||
mDoMtx_stack_c::transS(current.pos.x, current.pos.y, current.pos.z);
|
||||
mDoMtx_stack_c::ZXYrotM(shape_angle.x, shape_angle.y, shape_angle.z);
|
||||
mDoMtx_stack_c::ZXYrotM(mShakeRot.x, mShakeRot.y, mShakeRot.z);
|
||||
|
||||
/* 80599008-80599014 -00001 000C+00 0/1 0/0 0/0 .data @3748 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_DATA static void* lit_3748[3] = {
|
||||
(void*)NULL,
|
||||
(void*)0xFFFFFFFF,
|
||||
(void*)modeMoveDown__13daSwShutter_cFv,
|
||||
};
|
||||
#pragma pop
|
||||
mpModel->setBaseScale(scale);
|
||||
mpModel->setBaseTRMtx(mDoMtx_stack_c::get());
|
||||
}
|
||||
|
||||
/* 80599014-80599020 -00001 000C+00 0/1 0/0 0/0 .data @3749 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_DATA static void* lit_3749[3] = {
|
||||
(void*)NULL,
|
||||
(void*)0xFFFFFFFF,
|
||||
(void*)modeMoveDownEnd__13daSwShutter_cFv,
|
||||
};
|
||||
#pragma pop
|
||||
/* 80598F98-80598FA0 000020 0008+00 1/1 0/0 0/0 .rodata l_bmdIdx */
|
||||
static const int l_bmdIdx[2] = {4, 4};
|
||||
|
||||
/* 80599020-80599050 000058 0030+00 0/1 0/0 0/0 .data mode_proc$3745 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_DATA static u8 mode_proc[48] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
};
|
||||
#pragma pop
|
||||
/* 80598344-805983C4 000244 0080+00 1/0 0/0 0/0 .text CreateHeap__13daSwShutter_cFv */
|
||||
int daSwShutter_c::CreateHeap() {
|
||||
J3DModelData* modelData =
|
||||
(J3DModelData*)dComIfG_getObjectRes(l_resNameIdx[mModelType], l_bmdIdx[mModelType]);
|
||||
JUT_ASSERT(199, modelData != 0);
|
||||
mpModel = mDoExt_J3DModel__create(modelData, 0x80000, 0x11000084);
|
||||
if (mpModel == NULL) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* 80598FA0-80598FA8 000028 0008+00 0/1 0/0 0/0 .rodata l_dzbIdx */
|
||||
static const int l_dzbIdx[2] = {7, 7};
|
||||
|
||||
/* 805983C4-80598564 0002C4 01A0+00 1/1 0/0 0/0 .text create__13daSwShutter_cFv */
|
||||
int daSwShutter_c::create() {
|
||||
fopAcM_SetupActor(this, daSwShutter_c);
|
||||
|
||||
mModelType = getModelType();
|
||||
if (mModelType == 0xF) {
|
||||
mModelType = TYPE_ROCKWALL_e;
|
||||
}
|
||||
|
||||
int phase_state = dComIfG_resLoad(&mPhase, l_resNameIdx[mModelType]);
|
||||
if (phase_state == cPhs_COMPLEATE_e) {
|
||||
if (MoveBGCreate(l_resNameIdx[mModelType], l_dzbIdx[mModelType],
|
||||
dBgS_MoveBGProc_TypicalRotY, 0x1000, NULL) == cPhs_ERROR_e)
|
||||
{
|
||||
return cPhs_ERROR_e;
|
||||
}
|
||||
|
||||
fopAcM_SetMtx(this, mpModel->getBaseTRMtx());
|
||||
fopAcM_setCullSizeBox2(this, mpModel->getModelData());
|
||||
mCounter = 0;
|
||||
field_0x5b0 = 0.0f;
|
||||
|
||||
if (fopAcM_isSwitch(this, getSwBit())) {
|
||||
current.pos.y += -450.0f;
|
||||
init_modeMoveDownEnd();
|
||||
} else {
|
||||
mShakeRot.x = 0;
|
||||
mShakeRot.y = 0;
|
||||
mShakeRot.z = 0;
|
||||
|
||||
mShakeStrength = 0.0f;
|
||||
mShakeAmpY = 0.0f;
|
||||
mShakeAmpZ = 0.0f;
|
||||
mShakeAtten = 0.0f;
|
||||
mMaxAtten = 0.0f;
|
||||
mMinAtten = 0.0f;
|
||||
|
||||
init_modeWait();
|
||||
}
|
||||
|
||||
setBaseMtx();
|
||||
}
|
||||
|
||||
return phase_state;
|
||||
}
|
||||
|
||||
/* 80598564-805985B4 000464 0050+00 1/0 0/0 0/0 .text Execute__13daSwShutter_cFPPA3_A4_f
|
||||
*/
|
||||
int daSwShutter_c::Execute(Mtx** param_0) {
|
||||
moveMain();
|
||||
*param_0 = &mpModel->getBaseTRMtx();
|
||||
setBaseMtx();
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* 805990F4-80599120 000014 002C+00 4/4 0/0 0/0 .bss l_HIO */
|
||||
static daSwShutter_HIO_c l_HIO;
|
||||
|
||||
/* 805985B4-8059873C 0004B4 0188+00 1/1 0/0 0/0 .text moveMain__13daSwShutter_cFv */
|
||||
void daSwShutter_c::moveMain() {
|
||||
typedef void (daSwShutter_c::*modeFunc)();
|
||||
static modeFunc mode_proc[] = {
|
||||
&daSwShutter_c::modeWait,
|
||||
&daSwShutter_c::modeMoveDownInit,
|
||||
&daSwShutter_c::modeMoveDown,
|
||||
&daSwShutter_c::modeMoveDownEnd,
|
||||
};
|
||||
|
||||
(this->*mode_proc[mMode])();
|
||||
|
||||
mShakeRot.z = mShakeStrength * cM_scos(mCounter * (s16)cM_deg2s(mShakeAmpY));
|
||||
mShakeRot.y = mShakeStrength * cM_ssin(mCounter * (s16)cM_deg2s(mShakeAmpZ));
|
||||
|
||||
cLib_addCalc(&mShakeStrength, 0.0f, mShakeAtten, mMaxAtten, mMinAtten);
|
||||
mCounter++;
|
||||
}
|
||||
|
||||
/* 8059873C-80598748 00063C 000C+00 1/1 0/0 0/0 .text init_modeWait__13daSwShutter_cFv */
|
||||
void daSwShutter_c::init_modeWait() {
|
||||
mMode = MODE_WAIT;
|
||||
}
|
||||
|
||||
/* 80598748-8059879C 000648 0054+00 1/0 0/0 0/0 .text modeWait__13daSwShutter_cFv */
|
||||
void daSwShutter_c::modeWait() {
|
||||
if (fopAcM_isSwitch(this, getSwBit())) {
|
||||
init_modeMoveDownInit();
|
||||
}
|
||||
}
|
||||
|
||||
/* 8059879C-805989D0 00069C 0234+00 1/1 0/0 0/0 .text init_modeMoveDownInit__13daSwShutter_cFv */
|
||||
void daSwShutter_c::init_modeMoveDownInit() {
|
||||
mShakeStrength = l_HIO.mShakeStrength;
|
||||
mShakeAmpY = l_HIO.mShakeAmpY;
|
||||
mShakeAmpZ = l_HIO.mShakeAmpZ;
|
||||
mShakeAtten = l_HIO.mShakeAtten;
|
||||
mMaxAtten = l_HIO.mMaxAtten;
|
||||
mMinAtten = l_HIO.mMinAtten;
|
||||
|
||||
if (mModelType == TYPE_SUBDAN_e) {
|
||||
dComIfGp_particle_set(0x8C73, ¤t.pos, &shape_angle, NULL);
|
||||
dComIfGp_particle_set(0x8C74, ¤t.pos, &shape_angle, NULL);
|
||||
} else {
|
||||
dComIfGp_particle_set(0x8709, ¤t.pos, &shape_angle, NULL);
|
||||
dComIfGp_particle_set(0x870A, ¤t.pos, &shape_angle, NULL);
|
||||
}
|
||||
|
||||
mDoAud_seStart(Z2SE_OBJ_WALLSHUTTER_OPEN, ¤t.pos, 0,
|
||||
dComIfGp_getReverb(fopAcM_GetRoomNo(this)));
|
||||
dComIfGp_getVibration().StartQuake(2, 15, cXyz(0.0f, 1.0f, 0.0f));
|
||||
mMode = MODE_MOVE_DOWN_INIT;
|
||||
}
|
||||
|
||||
/* 805989D0-80598A04 0008D0 0034+00 1/0 0/0 0/0 .text modeMoveDownInit__13daSwShutter_cFv
|
||||
*/
|
||||
void daSwShutter_c::modeMoveDownInit() {
|
||||
if (mShakeStrength == 0.0f) {
|
||||
init_modeMoveDown();
|
||||
}
|
||||
}
|
||||
|
||||
/* 80598A04-80598AFC 000904 00F8+00 1/1 0/0 0/0 .text init_modeMoveDown__13daSwShutter_cFv */
|
||||
void daSwShutter_c::init_modeMoveDown() {
|
||||
fopAcM_SetSpeedF(this, l_HIO.mInitSpeed);
|
||||
|
||||
if (mModelType == TYPE_SUBDAN_e) {
|
||||
dComIfGp_particle_set(0x8C77, ¤t.pos, &shape_angle, NULL);
|
||||
} else {
|
||||
dComIfGp_particle_set(0x870D, ¤t.pos, &shape_angle, NULL);
|
||||
}
|
||||
|
||||
mMode = MODE_MOVE_DOWN;
|
||||
}
|
||||
|
||||
/* 80598AFC-80598D4C 0009FC 0250+00 1/0 0/0 0/0 .text modeMoveDown__13daSwShutter_cFv */
|
||||
void daSwShutter_c::modeMoveDown() {
|
||||
cLib_chaseF(&speedF, l_HIO.mMaxSpeed, l_HIO.mAcceleration);
|
||||
f32 target_dist =
|
||||
cLib_addCalc(¤t.pos.y, home.pos.y + -450.0f, 1.0f, fopAcM_GetSpeedF(this), 1.0f);
|
||||
|
||||
if (mModelType == TYPE_SUBDAN_e) {
|
||||
mEmitterID0 = dComIfGp_particle_set(mEmitterID0, 0x8C75, ¤t.pos, &shape_angle, NULL);
|
||||
mEmitterID1 = dComIfGp_particle_set(mEmitterID1, 0x8C76, ¤t.pos, &shape_angle, NULL);
|
||||
} else {
|
||||
mEmitterID0 = dComIfGp_particle_set(mEmitterID0, 0x870B, ¤t.pos, &shape_angle, NULL);
|
||||
mEmitterID1 = dComIfGp_particle_set(mEmitterID1, 0x870C, ¤t.pos, &shape_angle, NULL);
|
||||
}
|
||||
|
||||
if (target_dist == 0.0f) {
|
||||
dComIfGp_getVibration().StopQuake(15);
|
||||
dComIfGp_getVibration().StartShock(l_HIO.mVibrationStrength, 15, cXyz(0.0f, 1.0f, 0.0f));
|
||||
init_modeMoveDownEnd();
|
||||
}
|
||||
}
|
||||
|
||||
/* 80598D4C-80598D58 000C4C 000C+00 2/2 0/0 0/0 .text init_modeMoveDownEnd__13daSwShutter_cFv */
|
||||
void daSwShutter_c::init_modeMoveDownEnd() {
|
||||
mMode = MODE_MOVE_DOWN_END;
|
||||
}
|
||||
|
||||
/* 80598D58-80598D5C 000C58 0004+00 1/0 0/0 0/0 .text modeMoveDownEnd__13daSwShutter_cFv
|
||||
*/
|
||||
void daSwShutter_c::modeMoveDownEnd() {}
|
||||
|
||||
/* 80598D5C-80598E00 000C5C 00A4+00 1/0 0/0 0/0 .text Draw__13daSwShutter_cFv */
|
||||
int daSwShutter_c::Draw() {
|
||||
g_env_light.settingTevStruct(16, ¤t.pos, &tevStr);
|
||||
g_env_light.setLightTevColorType_MAJI(mpModel, &tevStr);
|
||||
|
||||
dComIfGd_setListBG();
|
||||
mDoExt_modelUpdateDL(mpModel);
|
||||
dComIfGd_setList();
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* 80598E00-80598E40 000D00 0040+00 1/0 0/0 0/0 .text Delete__13daSwShutter_cFv */
|
||||
int daSwShutter_c::Delete() {
|
||||
dComIfG_resDelete(&mPhase, l_resNameIdx[mModelType]);
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* 80598E40-80598E6C 000D40 002C+00 1/0 0/0 0/0 .text daSwShutter_Draw__FP13daSwShutter_c
|
||||
*/
|
||||
static int daSwShutter_Draw(daSwShutter_c* i_this) {
|
||||
return i_this->MoveBGDraw();
|
||||
}
|
||||
|
||||
/* 80598E6C-80598E8C 000D6C 0020+00 1/0 0/0 0/0 .text daSwShutter_Execute__FP13daSwShutter_c */
|
||||
static int daSwShutter_Execute(daSwShutter_c* i_this) {
|
||||
return i_this->MoveBGExecute();
|
||||
}
|
||||
|
||||
/* 80598E8C-80598EAC 000D8C 0020+00 1/0 0/0 0/0 .text daSwShutter_Delete__FP13daSwShutter_c */
|
||||
static int daSwShutter_Delete(daSwShutter_c* i_this) {
|
||||
return i_this->MoveBGDelete();
|
||||
}
|
||||
|
||||
/* 80598EAC-80598ECC 000DAC 0020+00 1/0 0/0 0/0 .text daSwShutter_Create__FP10fopAc_ac_c
|
||||
*/
|
||||
static int daSwShutter_Create(fopAc_ac_c* i_this) {
|
||||
return ((daSwShutter_c*)i_this)->create();
|
||||
}
|
||||
|
||||
/* 80599050-80599070 -00001 0020+00 1/0 0/0 0/0 .data l_daSwShutter_Method */
|
||||
static actor_method_class l_daSwShutter_Method = {
|
||||
(process_method_func)daSwShutter_Create__FP10fopAc_ac_c,
|
||||
(process_method_func)daSwShutter_Delete__FP13daSwShutter_c,
|
||||
(process_method_func)daSwShutter_Execute__FP13daSwShutter_c,
|
||||
0,
|
||||
(process_method_func)daSwShutter_Draw__FP13daSwShutter_c,
|
||||
(process_method_func)daSwShutter_Create, (process_method_func)daSwShutter_Delete,
|
||||
(process_method_func)daSwShutter_Execute, (process_method_func)NULL,
|
||||
(process_method_func)daSwShutter_Draw,
|
||||
};
|
||||
|
||||
/* 80599070-805990A0 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Obj_SwallShutter */
|
||||
extern actor_process_profile_definition g_profile_Obj_SwallShutter = {
|
||||
fpcLy_CURRENT_e, // mLayerID
|
||||
3, // mListID
|
||||
fpcPi_CURRENT_e, // mListPrio
|
||||
PROC_Obj_SwallShutter, // mProcName
|
||||
&g_fpcLf_Method.mBase, // sub_method
|
||||
sizeof(daSwShutter_c), // mSize
|
||||
0, // mSizeOther
|
||||
0, // mParameters
|
||||
&g_fopAc_Method.base, // sub_method
|
||||
619, // mPriority
|
||||
&l_daSwShutter_Method, // sub_method
|
||||
0x00044000, // mStatus
|
||||
fopAc_ACTOR_e, // mActorType
|
||||
fopAc_CULLBOX_CUSTOM_e, // cullType
|
||||
fpcLy_CURRENT_e, // mLayerID
|
||||
3, // mListID
|
||||
fpcPi_CURRENT_e, // mListPrio
|
||||
PROC_Obj_SwallShutter, // mProcName
|
||||
&g_fpcLf_Method.mBase, // sub_method
|
||||
sizeof(daSwShutter_c), // mSize
|
||||
0, // mSizeOther
|
||||
0, // mParameters
|
||||
&g_fopAc_Method.base, // sub_method
|
||||
619, // mPriority
|
||||
&l_daSwShutter_Method, // sub_method
|
||||
0x00044000, // mStatus
|
||||
fopAc_ACTOR_e, // mActorType
|
||||
fopAc_CULLBOX_CUSTOM_e, // cullType
|
||||
};
|
||||
|
||||
/* 805990A0-805990C8 0000D8 0028+00 1/1 0/0 0/0 .data __vt__13daSwShutter_c */
|
||||
SECTION_DATA extern void* __vt__13daSwShutter_c[10] = {
|
||||
(void*)NULL /* RTTI */,
|
||||
(void*)NULL,
|
||||
(void*)CreateHeap__13daSwShutter_cFv,
|
||||
(void*)Create__16dBgS_MoveBgActorFv,
|
||||
(void*)Execute__13daSwShutter_cFPPA3_A4_f,
|
||||
(void*)Draw__13daSwShutter_cFv,
|
||||
(void*)Delete__13daSwShutter_cFv,
|
||||
(void*)IsDelete__16dBgS_MoveBgActorFv,
|
||||
(void*)ToFore__16dBgS_MoveBgActorFv,
|
||||
(void*)ToBack__16dBgS_MoveBgActorFv,
|
||||
};
|
||||
|
||||
/* 805990C8-805990D4 000100 000C+00 2/2 0/0 0/0 .data __vt__17daSwShutter_HIO_c */
|
||||
SECTION_DATA extern void* __vt__17daSwShutter_HIO_c[3] = {
|
||||
(void*)NULL /* RTTI */,
|
||||
(void*)NULL,
|
||||
(void*)__dt__17daSwShutter_HIO_cFv,
|
||||
};
|
||||
|
||||
/* 805990D4-805990E0 00010C 000C+00 3/3 0/0 0/0 .data __vt__14mDoHIO_entry_c */
|
||||
SECTION_DATA extern void* __vt__14mDoHIO_entry_c[3] = {
|
||||
(void*)NULL /* RTTI */,
|
||||
(void*)NULL,
|
||||
(void*)__dt__14mDoHIO_entry_cFv,
|
||||
};
|
||||
|
||||
/* 805981EC-8059825C 0000EC 0070+00 1/1 0/0 0/0 .text __ct__17daSwShutter_HIO_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm daSwShutter_HIO_c::daSwShutter_HIO_c() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_sWallShutter/d_a_obj_sWallShutter/__ct__17daSwShutter_HIO_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8059825C-805982A4 00015C 0048+00 1/0 0/0 0/0 .text __dt__14mDoHIO_entry_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
// asm mDoHIO_entry_c::~mDoHIO_entry_c() {
|
||||
extern "C" asm void __dt__14mDoHIO_entry_cFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_sWallShutter/d_a_obj_sWallShutter/__dt__14mDoHIO_entry_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 805982A4-80598344 0001A4 00A0+00 2/2 0/0 0/0 .text setBaseMtx__13daSwShutter_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daSwShutter_c::setBaseMtx() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_sWallShutter/d_a_obj_sWallShutter/setBaseMtx__13daSwShutter_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80598F98-80598FA0 000020 0008+00 1/1 0/0 0/0 .rodata l_bmdIdx */
|
||||
SECTION_RODATA static u8 const l_bmdIdx[8] = {
|
||||
0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x04,
|
||||
};
|
||||
COMPILER_STRIP_GATE(0x80598F98, &l_bmdIdx);
|
||||
|
||||
/* 80598344-805983C4 000244 0080+00 1/0 0/0 0/0 .text CreateHeap__13daSwShutter_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daSwShutter_c::CreateHeap() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_sWallShutter/d_a_obj_sWallShutter/CreateHeap__13daSwShutter_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80598FA0-80598FA8 000028 0008+00 0/1 0/0 0/0 .rodata l_dzbIdx */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static u8 const l_dzbIdx[8] = {
|
||||
0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x07,
|
||||
};
|
||||
COMPILER_STRIP_GATE(0x80598FA0, &l_dzbIdx);
|
||||
#pragma pop
|
||||
|
||||
/* 80598FA8-80598FAC 000030 0004+00 0/2 0/0 0/0 .rodata @3730 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static f32 const lit_3730 = -450.0f;
|
||||
COMPILER_STRIP_GATE(0x80598FA8, &lit_3730);
|
||||
#pragma pop
|
||||
|
||||
/* 805983C4-80598564 0002C4 01A0+00 1/1 0/0 0/0 .text create__13daSwShutter_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daSwShutter_c::create() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_sWallShutter/d_a_obj_sWallShutter/create__13daSwShutter_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80598564-805985B4 000464 0050+00 1/0 0/0 0/0 .text Execute__13daSwShutter_cFPPA3_A4_f
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daSwShutter_c::Execute(f32 (**param_0)[3][4]) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_sWallShutter/d_a_obj_sWallShutter/Execute__13daSwShutter_cFPPA3_A4_f.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80598FAC-80598FB0 000034 0004+00 1/1 0/0 0/0 .rodata @3766 */
|
||||
SECTION_RODATA static u32 const lit_3766 = 0x43360B61;
|
||||
COMPILER_STRIP_GATE(0x80598FAC, &lit_3766);
|
||||
|
||||
/* 805990E8-805990F4 000008 000C+00 1/1 0/0 0/0 .bss @3624 */
|
||||
static u8 lit_3624[12];
|
||||
|
||||
/* 805990F4-80599120 000014 002C+00 4/4 0/0 0/0 .bss l_HIO */
|
||||
static u8 l_HIO[44];
|
||||
|
||||
/* 80599120-80599124 000040 0004+00 1/1 0/0 0/0 .bss None */
|
||||
static u8 data_80599120[4];
|
||||
|
||||
/* 805985B4-8059873C 0004B4 0188+00 1/1 0/0 0/0 .text moveMain__13daSwShutter_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daSwShutter_c::moveMain() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_sWallShutter/d_a_obj_sWallShutter/moveMain__13daSwShutter_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8059873C-80598748 00063C 000C+00 1/1 0/0 0/0 .text init_modeWait__13daSwShutter_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daSwShutter_c::init_modeWait() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_sWallShutter/d_a_obj_sWallShutter/init_modeWait__13daSwShutter_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80598748-8059879C 000648 0054+00 1/0 0/0 0/0 .text modeWait__13daSwShutter_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daSwShutter_c::modeWait() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_sWallShutter/d_a_obj_sWallShutter/modeWait__13daSwShutter_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80598FB0-80598FB4 000038 0004+00 1/3 0/0 0/0 .rodata @3826 */
|
||||
SECTION_RODATA static f32 const lit_3826 = 1.0f;
|
||||
COMPILER_STRIP_GATE(0x80598FB0, &lit_3826);
|
||||
|
||||
/* 80598FB4-80598FB8 00003C 0004+00 0/1 0/0 0/0 .rodata @3827 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static f32 const lit_3827 = -1.0f;
|
||||
COMPILER_STRIP_GATE(0x80598FB4, &lit_3827);
|
||||
#pragma pop
|
||||
|
||||
/* 8059879C-805989D0 00069C 0234+00 1/1 0/0 0/0 .text init_modeMoveDownInit__13daSwShutter_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daSwShutter_c::init_modeMoveDownInit() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_sWallShutter/d_a_obj_sWallShutter/init_modeMoveDownInit__13daSwShutter_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 805989D0-80598A04 0008D0 0034+00 1/0 0/0 0/0 .text modeMoveDownInit__13daSwShutter_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daSwShutter_c::modeMoveDownInit() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_sWallShutter/d_a_obj_sWallShutter/modeMoveDownInit__13daSwShutter_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80598A04-80598AFC 000904 00F8+00 1/1 0/0 0/0 .text init_modeMoveDown__13daSwShutter_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daSwShutter_c::init_modeMoveDown() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_sWallShutter/d_a_obj_sWallShutter/init_modeMoveDown__13daSwShutter_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80598AFC-80598D4C 0009FC 0250+00 1/0 0/0 0/0 .text modeMoveDown__13daSwShutter_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daSwShutter_c::modeMoveDown() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_sWallShutter/d_a_obj_sWallShutter/modeMoveDown__13daSwShutter_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80598D4C-80598D58 000C4C 000C+00 2/2 0/0 0/0 .text init_modeMoveDownEnd__13daSwShutter_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daSwShutter_c::init_modeMoveDownEnd() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_sWallShutter/d_a_obj_sWallShutter/init_modeMoveDownEnd__13daSwShutter_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80598D58-80598D5C 000C58 0004+00 1/0 0/0 0/0 .text modeMoveDownEnd__13daSwShutter_cFv
|
||||
*/
|
||||
void daSwShutter_c::modeMoveDownEnd() {
|
||||
/* empty function */
|
||||
}
|
||||
|
||||
/* 80598D5C-80598E00 000C5C 00A4+00 1/0 0/0 0/0 .text Draw__13daSwShutter_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daSwShutter_c::Draw() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_sWallShutter/d_a_obj_sWallShutter/Draw__13daSwShutter_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80598E00-80598E40 000D00 0040+00 1/0 0/0 0/0 .text Delete__13daSwShutter_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daSwShutter_c::Delete() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_sWallShutter/d_a_obj_sWallShutter/Delete__13daSwShutter_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80598E40-80598E6C 000D40 002C+00 1/0 0/0 0/0 .text daSwShutter_Draw__FP13daSwShutter_c
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daSwShutter_Draw(daSwShutter_c* param_0) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_sWallShutter/d_a_obj_sWallShutter/daSwShutter_Draw__FP13daSwShutter_c.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80598E6C-80598E8C 000D6C 0020+00 1/0 0/0 0/0 .text daSwShutter_Execute__FP13daSwShutter_c */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daSwShutter_Execute(daSwShutter_c* param_0) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_sWallShutter/d_a_obj_sWallShutter/daSwShutter_Execute__FP13daSwShutter_c.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80598E8C-80598EAC 000D8C 0020+00 1/0 0/0 0/0 .text daSwShutter_Delete__FP13daSwShutter_c */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daSwShutter_Delete(daSwShutter_c* param_0) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_sWallShutter/d_a_obj_sWallShutter/daSwShutter_Delete__FP13daSwShutter_c.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80598EAC-80598ECC 000DAC 0020+00 1/0 0/0 0/0 .text daSwShutter_Create__FP10fopAc_ac_c
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daSwShutter_Create(fopAc_ac_c* param_0) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_sWallShutter/d_a_obj_sWallShutter/daSwShutter_Create__FP10fopAc_ac_c.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80598ECC-80598F28 000DCC 005C+00 2/1 0/0 0/0 .text __dt__17daSwShutter_HIO_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm daSwShutter_HIO_c::~daSwShutter_HIO_c() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_sWallShutter/d_a_obj_sWallShutter/__dt__17daSwShutter_HIO_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80598F28-80598F64 000E28 003C+00 0/0 1/0 0/0 .text __sinit_d_a_obj_sWallShutter_cpp */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void __sinit_d_a_obj_sWallShutter_cpp() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_sWallShutter/d_a_obj_sWallShutter/__sinit_d_a_obj_sWallShutter_cpp.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
REGISTER_CTORS(0x80598F28, __sinit_d_a_obj_sWallShutter_cpp);
|
||||
#pragma pop
|
||||
|
||||
/* 80598FB8-80598FB8 000040 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/**
|
||||
* @file d_a_obj_zraMark.cpp
|
||||
*
|
||||
* Iza's River Ride Destructible Buoy
|
||||
*/
|
||||
|
||||
#include "rel/d/a/obj/d_a_obj_zraMark/d_a_obj_zraMark.h"
|
||||
@@ -111,7 +111,6 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22];
|
||||
extern "C" extern void* __vt__9cCcD_Stts[8];
|
||||
extern "C" extern void* __vt__16Z2SoundObjSimple[8];
|
||||
extern "C" u8 now__14mDoMtx_stack_c[48];
|
||||
extern "C" extern u8 g_dComIfG_gameInfo[122384];
|
||||
extern "C" extern u8 g_meter2_info[248];
|
||||
extern "C" u8 sincosTable___5JMath[65536];
|
||||
extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */];
|
||||
@@ -121,6 +120,7 @@ extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */];
|
||||
//
|
||||
|
||||
/* 80D42658-80D42678 000078 0020+00 1/1 0/0 0/0 .text createSolidHeap__FP10fopAc_ac_c */
|
||||
// matches with literals
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -258,10 +258,11 @@ SECTION_DATA extern void* __vt__8cM3dGAab[3] = {
|
||||
};
|
||||
|
||||
/* 80D42678-80D4287C 000098 0204+00 1/1 0/0 0/0 .text Create__14daObjZraMark_cFv */
|
||||
// matches with literals
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daObjZraMark_c::Create() {
|
||||
asm int daObjZraMark_c::Create() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_zraMark/d_a_obj_zraMark/Create__14daObjZraMark_cFv.s"
|
||||
}
|
||||
@@ -290,50 +291,55 @@ COMPILER_STRIP_GATE(0x80D43E0C, &lit_4124);
|
||||
#pragma pop
|
||||
|
||||
/* 80D4287C-80D42A7C 00029C 0200+00 1/1 0/0 0/0 .text CreateHeap__14daObjZraMark_cFv */
|
||||
// matches with literals
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daObjZraMark_c::CreateHeap() {
|
||||
asm int daObjZraMark_c::CreateHeap() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_zraMark/d_a_obj_zraMark/CreateHeap__14daObjZraMark_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80D42A7C-80D42B0C 00049C 0090+00 1/1 0/0 0/0 .text Execute__14daObjZraMark_cFv */
|
||||
// matches with literals
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daObjZraMark_c::Execute() {
|
||||
asm int daObjZraMark_c::Execute() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_zraMark/d_a_obj_zraMark/Execute__14daObjZraMark_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80D42B0C-80D42C98 00052C 018C+00 1/1 0/0 0/0 .text Draw__14daObjZraMark_cFv */
|
||||
// matches with literals
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daObjZraMark_c::Draw() {
|
||||
asm int daObjZraMark_c::Draw() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_zraMark/d_a_obj_zraMark/Draw__14daObjZraMark_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80D42C98-80D42CE0 0006B8 0048+00 1/1 0/0 0/0 .text Delete__14daObjZraMark_cFv */
|
||||
// matches with literals
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daObjZraMark_c::Delete() {
|
||||
asm int daObjZraMark_c::Delete() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_zraMark/d_a_obj_zraMark/Delete__14daObjZraMark_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80D42CE0-80D42D2C 000700 004C+00 1/1 0/0 0/0 .text getType__14daObjZraMark_cFv */
|
||||
// matches with literals
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daObjZraMark_c::getType() {
|
||||
asm int daObjZraMark_c::getType() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_zraMark/d_a_obj_zraMark/getType__14daObjZraMark_cFv.s"
|
||||
}
|
||||
@@ -359,6 +365,7 @@ COMPILER_STRIP_GATE(0x80D43E40, &lit_4296);
|
||||
#pragma pop
|
||||
|
||||
/* 80D42D2C-80D42EE0 00074C 01B4+00 2/2 0/0 0/0 .text setBaseMtx__14daObjZraMark_cFv */
|
||||
// matches with literals
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -369,6 +376,7 @@ asm void daObjZraMark_c::setBaseMtx() {
|
||||
#pragma pop
|
||||
|
||||
/* 80D42EE0-80D42F5C 000900 007C+00 1/1 0/0 0/0 .text col_init__14daObjZraMark_cFv */
|
||||
// matches with literals
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -388,6 +396,7 @@ SECTION_RODATA static f32 const lit_4401 = -1.0f;
|
||||
COMPILER_STRIP_GATE(0x80D43E48, &lit_4401);
|
||||
|
||||
/* 80D42F5C-80D432C8 00097C 036C+00 1/1 0/0 0/0 .text col_set__14daObjZraMark_cFv */
|
||||
// matches with literals
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -398,10 +407,11 @@ asm void daObjZraMark_c::col_set() {
|
||||
#pragma pop
|
||||
|
||||
/* 80D432C8-80D43314 000CE8 004C+00 1/1 0/0 0/0 .text schHoz__14daObjZraMark_cFv */
|
||||
// matches with literals
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daObjZraMark_c::schHoz() {
|
||||
asm daNpc_Hoz_c* daObjZraMark_c::schHoz() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_zraMark/d_a_obj_zraMark/schHoz__14daObjZraMark_cFv.s"
|
||||
}
|
||||
@@ -409,16 +419,18 @@ asm void daObjZraMark_c::schHoz() {
|
||||
|
||||
/* 80D43314-80D43370 000D34 005C+00 0/0 0/0 1/1 .text entryPointer__14daObjZraMark_cFP10fopAc_ac_c
|
||||
*/
|
||||
// matches with literals
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daObjZraMark_c::entryPointer(fopAc_ac_c* param_0) {
|
||||
asm bool daObjZraMark_c::entryPointer(fopAc_ac_c* param_0) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_zraMark/d_a_obj_zraMark/entryPointer__14daObjZraMark_cFP10fopAc_ac_c.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80D43370-80D433F4 000D90 0084+00 1/1 0/0 0/0 .text informBlast__14daObjZraMark_cFv */
|
||||
// matches with literals
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -429,6 +441,7 @@ asm void daObjZraMark_c::informBlast() {
|
||||
#pragma pop
|
||||
|
||||
/* 80D433F4-80D43414 000E14 0020+00 1/0 0/0 0/0 .text daObjZraMark_Execute__FP14daObjZraMark_c */
|
||||
// matches with literals
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -439,6 +452,7 @@ static asm void daObjZraMark_Execute(daObjZraMark_c* param_0) {
|
||||
#pragma pop
|
||||
|
||||
/* 80D43414-80D43434 000E34 0020+00 1/0 0/0 0/0 .text daObjZraMark_Draw__FP14daObjZraMark_c */
|
||||
// matches with literals
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -454,6 +468,7 @@ static bool daObjZraMark_IsDelete(daObjZraMark_c* param_0) {
|
||||
}
|
||||
|
||||
/* 80D4343C-80D4345C 000E5C 0020+00 1/0 0/0 0/0 .text daObjZraMark_Delete__FP14daObjZraMark_c */
|
||||
// matches with literals
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -465,6 +480,7 @@ static asm void daObjZraMark_Delete(daObjZraMark_c* param_0) {
|
||||
|
||||
/* 80D4345C-80D4347C 000E7C 0020+00 1/0 0/0 0/0 .text daObjZraMark_create__FP10fopAc_ac_c
|
||||
*/
|
||||
// matches with literals
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -476,10 +492,11 @@ static asm void daObjZraMark_create(fopAc_ac_c* param_0) {
|
||||
|
||||
/* 80D4347C-80D434F8 000E9C 007C+00 1/1 0/0 0/0 .text create__16_ZraMark_Hahen_cFRC4cXyzScScScSc
|
||||
*/
|
||||
// matches with literals
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void _ZraMark_Hahen_c::create(cXyz const& param_0, s8 param_1, s8 param_2, s8 param_3,
|
||||
asm int _ZraMark_Hahen_c::create(cXyz const& param_0, s8 param_1, s8 param_2, s8 param_3,
|
||||
s8 param_4) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_zraMark/d_a_obj_zraMark/create__16_ZraMark_Hahen_cFRC4cXyzScScScSc.s"
|
||||
@@ -494,10 +511,11 @@ SECTION_RODATA static u8 const sHahenBmdType[8] = {
|
||||
COMPILER_STRIP_GATE(0x80D43E4C, &sHahenBmdType);
|
||||
|
||||
/* 80D434F8-80D4357C 000F18 0084+00 1/1 0/0 0/0 .text loadModel__16_ZraMark_Hahen_cFv */
|
||||
// matches with literals
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void _ZraMark_Hahen_c::loadModel() {
|
||||
asm BOOL _ZraMark_Hahen_c::loadModel() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_zraMark/d_a_obj_zraMark/loadModel__16_ZraMark_Hahen_cFv.s"
|
||||
}
|
||||
@@ -606,6 +624,7 @@ static u8 roottype[4];
|
||||
static u8 data_80D44024[4];
|
||||
|
||||
/* 80D4357C-80D43808 000F9C 028C+00 1/1 0/0 0/0 .text init__16_ZraMark_Hahen_cFRC4cXyzScScSc */
|
||||
// matches with literals
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -621,6 +640,7 @@ SECTION_RODATA static f32 const lit_4571 = 9.0f;
|
||||
COMPILER_STRIP_GATE(0x80D43F8C, &lit_4571);
|
||||
|
||||
/* 80D43808-80D43864 001228 005C+00 1/1 0/0 0/0 .text calcSpeed__16_ZraMark_Hahen_cFv */
|
||||
// matches with literals
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -631,6 +651,7 @@ asm void _ZraMark_Hahen_c::calcSpeed() {
|
||||
#pragma pop
|
||||
|
||||
/* 80D43864-80D438C8 001284 0064+00 2/2 0/0 0/0 .text setMtx__16_ZraMark_Hahen_cFv */
|
||||
// matches with literals
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -641,6 +662,7 @@ asm void _ZraMark_Hahen_c::setMtx() {
|
||||
#pragma pop
|
||||
|
||||
/* 80D438C8-80D43968 0012E8 00A0+00 1/1 0/0 0/0 .text draw__16_ZraMark_Hahen_cFv */
|
||||
// matches with literals
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -652,10 +674,11 @@ asm void _ZraMark_Hahen_c::draw() {
|
||||
|
||||
/* 80D43968-80D439F8 001388 0090+00 1/1 0/0 0/0 .text
|
||||
* create__20_ZraMark_Hahen_Mng_cFRC4cXyzScScScSc */
|
||||
// matches with literals
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void _ZraMark_Hahen_Mng_c::create(cXyz const& param_0, s8 param_1, s8 param_2, s8 param_3,
|
||||
asm int _ZraMark_Hahen_Mng_c::create(cXyz const& param_0, s8 param_1, s8 param_2, s8 param_3,
|
||||
s8 param_4) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_zraMark/d_a_obj_zraMark/create__20_ZraMark_Hahen_Mng_cFRC4cXyzScScScSc.s"
|
||||
@@ -663,6 +686,7 @@ asm void _ZraMark_Hahen_Mng_c::create(cXyz const& param_0, s8 param_1, s8 param_
|
||||
#pragma pop
|
||||
|
||||
/* 80D439F8-80D43A74 001418 007C+00 1/1 0/0 0/0 .text calc__20_ZraMark_Hahen_Mng_cFv */
|
||||
// matches with literals
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -673,6 +697,7 @@ asm void _ZraMark_Hahen_Mng_c::calc() {
|
||||
#pragma pop
|
||||
|
||||
/* 80D43A74-80D43ACC 001494 0058+00 1/1 0/0 0/0 .text draw__20_ZraMark_Hahen_Mng_cFv */
|
||||
// matches with literals
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -703,7 +728,8 @@ extern "C" asm void func_80D43ACC(void* _this, int param_0, int param_1) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm _ZraMark_Hahen_c::~_ZraMark_Hahen_c() {
|
||||
// asm _ZraMark_Hahen_c::~_ZraMark_Hahen_c() {
|
||||
extern "C" asm void __dt__16_ZraMark_Hahen_cFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_zraMark/d_a_obj_zraMark/__dt__16_ZraMark_Hahen_cFv.s"
|
||||
}
|
||||
@@ -713,7 +739,8 @@ asm _ZraMark_Hahen_c::~_ZraMark_Hahen_c() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm _ZraMark_Hahen_c::_ZraMark_Hahen_c() {
|
||||
// asm _ZraMark_Hahen_c::_ZraMark_Hahen_c() {
|
||||
extern "C" asm void __ct__16_ZraMark_Hahen_cFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/obj/d_a_obj_zraMark/d_a_obj_zraMark/__ct__16_ZraMark_Hahen_cFv.s"
|
||||
}
|
||||
|
||||
@@ -0,0 +1,703 @@
|
||||
/**
|
||||
* @file d_a_obj_zraMark.cpp
|
||||
*
|
||||
*/
|
||||
|
||||
#include "rel/d/a/obj/d_a_obj_zraMark/d_a_obj_zraMark.h"
|
||||
#include "SSystem/SComponent/c_lib.h"
|
||||
#include "SSystem/SComponent/c_math.h"
|
||||
#include "d/meter/d_meter2_info.h"
|
||||
#include "dol2asm.h"
|
||||
#include "rel/d/a/npc/d_a_npc_hoz/d_a_npc_hoz.h"
|
||||
#include "rel/d/a/npc/d_a_npc_zra/d_a_npc_zra.h"
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" static void createSolidHeap__FP10fopAc_ac_c();
|
||||
extern "C" void Create__14daObjZraMark_cFv();
|
||||
extern "C" void CreateHeap__14daObjZraMark_cFv();
|
||||
extern "C" void Execute__14daObjZraMark_cFv();
|
||||
extern "C" void Draw__14daObjZraMark_cFv();
|
||||
extern "C" void Delete__14daObjZraMark_cFv();
|
||||
extern "C" void getType__14daObjZraMark_cFv();
|
||||
extern "C" void setBaseMtx__14daObjZraMark_cFv();
|
||||
extern "C" void col_init__14daObjZraMark_cFv();
|
||||
extern "C" void col_set__14daObjZraMark_cFv();
|
||||
extern "C" void schHoz__14daObjZraMark_cFv();
|
||||
extern "C" void entryPointer__14daObjZraMark_cFP10fopAc_ac_c();
|
||||
extern "C" void informBlast__14daObjZraMark_cFv();
|
||||
extern "C" static void daObjZraMark_Execute__FP14daObjZraMark_c();
|
||||
extern "C" static void daObjZraMark_Draw__FP14daObjZraMark_c();
|
||||
extern "C" static bool daObjZraMark_IsDelete__FP14daObjZraMark_c();
|
||||
extern "C" static void daObjZraMark_Delete__FP14daObjZraMark_c();
|
||||
extern "C" static void daObjZraMark_create__FP10fopAc_ac_c();
|
||||
extern "C" void create__16_ZraMark_Hahen_cFRC4cXyzScScScSc();
|
||||
extern "C" void loadModel__16_ZraMark_Hahen_cFv();
|
||||
extern "C" void init__16_ZraMark_Hahen_cFRC4cXyzScScSc();
|
||||
extern "C" void calcSpeed__16_ZraMark_Hahen_cFv();
|
||||
extern "C" void setMtx__16_ZraMark_Hahen_cFv();
|
||||
extern "C" void draw__16_ZraMark_Hahen_cFv();
|
||||
extern "C" void create__20_ZraMark_Hahen_Mng_cFRC4cXyzScScScSc();
|
||||
extern "C" void calc__20_ZraMark_Hahen_Mng_cFv();
|
||||
extern "C" void draw__20_ZraMark_Hahen_Mng_cFv();
|
||||
extern "C" void func_80D43ACC(void* _this, int, int);
|
||||
extern "C" void __dt__16_ZraMark_Hahen_cFv();
|
||||
extern "C" void __ct__16_ZraMark_Hahen_cFv();
|
||||
extern "C" void __ct__11J3DLightObjFv();
|
||||
extern "C" void __dt__18daNpcF_ActorMngr_cFv();
|
||||
extern "C" void __ct__18daNpcF_ActorMngr_cFv();
|
||||
extern "C" void __dt__8cM3dGCylFv();
|
||||
extern "C" void __dt__8cM3dGAabFv();
|
||||
extern "C" extern char const* const d_a_obj_zraMark__stringBase0;
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" void scaleM__14mDoMtx_stack_cFfff();
|
||||
extern "C" void scaleM__14mDoMtx_stack_cFRC4cXyz();
|
||||
extern "C" void XYZrotM__14mDoMtx_stack_cFRC5csXyz();
|
||||
extern "C" void mDoExt_modelUpdateDL__FP8J3DModel();
|
||||
extern "C" void mDoExt_J3DModel__create__FP12J3DModelDataUlUl();
|
||||
extern "C" void __ct__10fopAc_ac_cFv();
|
||||
extern "C" void fopAcM_SearchByName__FsPP10fopAc_ac_c();
|
||||
extern "C" void fopAcM_entrySolidHeap__FP10fopAc_ac_cPFP10fopAc_ac_c_iUl();
|
||||
extern "C" void fopAcM_setCullSizeBox__FP10fopAc_ac_cffffff();
|
||||
extern "C" void dComIfG_resLoad__FP30request_of_phase_process_classPCc();
|
||||
extern "C" void dComIfG_resDelete__FP30request_of_phase_process_classPCc();
|
||||
extern "C" void dComIfGp_getReverb__Fi();
|
||||
extern "C" void getRes__14dRes_control_cFPCclP11dRes_info_ci();
|
||||
extern "C" void __ct__10dCcD_GSttsFv();
|
||||
extern "C" void Init__9dCcD_SttsFiiP10fopAc_ac_c();
|
||||
extern "C" void __ct__12dCcD_GObjInfFv();
|
||||
extern "C" void ChkTgHit__12dCcD_GObjInfFv();
|
||||
extern "C" void GetTgHitObj__12dCcD_GObjInfFv();
|
||||
extern "C" void GetTgHitObjSe__12dCcD_GObjInfFv();
|
||||
extern "C" void getHitSeID__12dCcD_GObjInfFUci();
|
||||
extern "C" void Set__8dCcD_CylFRC11dCcD_SrcCyl();
|
||||
extern "C" void initialize__18daNpcF_ActorMngr_cFv();
|
||||
extern "C" void entry__18daNpcF_ActorMngr_cFP10fopAc_ac_c();
|
||||
extern "C" void getActorP__18daNpcF_ActorMngr_cFv();
|
||||
extern "C" void settingTevStruct__18dScnKy_env_light_cFiP4cXyzP12dKy_tevstr_c();
|
||||
extern "C" void setLightTevColorType_MAJI__18dScnKy_env_light_cFP12J3DModelDataP12dKy_tevstr_c();
|
||||
extern "C" void dKy_tevstr_init__FP12dKy_tevstr_cScUc();
|
||||
extern "C" void Set__4cCcSFP8cCcD_Obj();
|
||||
extern "C" void __apl__5csXyzFR5csXyz();
|
||||
extern "C" void cM_rndF__Ff();
|
||||
extern "C" void SetC__8cM3dGCylFRC4cXyz();
|
||||
extern "C" void SetH__8cM3dGCylFf();
|
||||
extern "C" void SetR__8cM3dGCylFf();
|
||||
extern "C" void seStart__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc();
|
||||
extern "C" void __dt__14Z2SoundObjBaseFv();
|
||||
extern "C" void deleteObject__14Z2SoundObjBaseFv();
|
||||
extern "C" void startCollisionSE__14Z2SoundObjBaseFUlUlP14Z2SoundObjBase();
|
||||
extern "C" void __ct__16Z2SoundObjSimpleFv();
|
||||
extern "C" void __dl__FPv();
|
||||
extern "C" void __as__12J3DLightInfoFRC12J3DLightInfo();
|
||||
extern "C" void __construct_array();
|
||||
extern "C" void _savegpr_22();
|
||||
extern "C" void _savegpr_25();
|
||||
extern "C" void _savegpr_27();
|
||||
extern "C" void _savegpr_28();
|
||||
extern "C" void _savegpr_29();
|
||||
extern "C" void _restgpr_22();
|
||||
extern "C" void _restgpr_25();
|
||||
extern "C" void _restgpr_27();
|
||||
extern "C" void _restgpr_28();
|
||||
extern "C" void _restgpr_29();
|
||||
extern "C" extern void* __vt__8dCcD_Cyl[36];
|
||||
extern "C" extern void* __vt__9dCcD_Stts[11];
|
||||
extern "C" extern void* __vt__12cCcD_CylAttr[25];
|
||||
extern "C" extern void* __vt__14cCcD_ShapeAttr[22];
|
||||
extern "C" extern void* __vt__9cCcD_Stts[8];
|
||||
extern "C" extern void* __vt__16Z2SoundObjSimple[8];
|
||||
extern "C" u8 now__14mDoMtx_stack_c[48];
|
||||
extern "C" u8 sincosTable___5JMath[65536];
|
||||
extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */];
|
||||
|
||||
/* 80D42658-80D42678 000078 0020+00 1/1 0/0 0/0 .text createSolidHeap__FP10fopAc_ac_c */
|
||||
static int createSolidHeap(fopAc_ac_c* i_this) {
|
||||
return ((daObjZraMark_c*)i_this)->CreateHeap();
|
||||
}
|
||||
|
||||
/* 80D43D88-80D43D9C 000000 0014+00 4/4 0/0 0/0 .rodata l_DATA */
|
||||
static const daObjZraMark_Hio_Param_c l_DATA = {
|
||||
8.0f, // mMarkSize
|
||||
2.0f, // mInteriorMarkSize
|
||||
1.2f, //
|
||||
45.0f, // mMarkCollisionRadius
|
||||
820.0f, // mMarkCollisionHeight
|
||||
};
|
||||
|
||||
/* 80D43D9C-80D43DE0 000014 0044+00 1/1 0/0 0/0 .rodata l_sph_src */
|
||||
static const dCcD_SrcCyl l_sph_src = {
|
||||
{
|
||||
{0x0, {{0x0, 0x0, 0x0}, {0xD8FBFDFF, 0x11}, 0x79}}, // mObj
|
||||
{dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x8}, // mGObjAt
|
||||
{dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x1}, // mGObjTg
|
||||
{0x0}, // mGObjCo
|
||||
}, // mObjInf
|
||||
{
|
||||
{0.0f, 0.0f, 0.0f}, // mCenter
|
||||
0.0f, // mRadius
|
||||
0.0f, // mHeight
|
||||
} // mCylAttr
|
||||
};
|
||||
|
||||
/* 80D43DE0-80D43DF0 000058 0010+00 0/1 0/0 0/0 .rodata l_arcIdx */
|
||||
static const int l_arcIdx[] = {3, 6, 5, 4};
|
||||
|
||||
/* 80D43FA0-80D43FA4 000000 0004+00 1/1 0/0 0/0 .data None */
|
||||
/* SECTION_DATA static u8 data_80D43FA0[4] = {
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
}; */
|
||||
|
||||
/* 80D43FA4-80D43FA8 -00001 0004+00 4/4 0/0 0/0 .data l_arcName */
|
||||
SECTION_DATA static char* l_arcName[1] = {"buoy"};
|
||||
|
||||
/* 80D42678-80D4287C 000098 0204+00 1/1 0/0 0/0 .text Create__14daObjZraMark_cFv */
|
||||
int daObjZraMark_c::Create() {
|
||||
fopAcM_SetupActor(this, daObjZraMark_c);
|
||||
|
||||
mType = getType();
|
||||
|
||||
int phase_state = cPhs_ERROR_e;
|
||||
for (int i = 0; i < 1; i++) {
|
||||
phase_state = dComIfG_resLoad(&mPhase[i], l_arcName[i]);
|
||||
if (phase_state != cPhs_COMPLEATE_e) {
|
||||
OS_REPORT("リソース読み込み失敗!! :: %s \n", l_arcName[i]);
|
||||
return phase_state;
|
||||
}
|
||||
}
|
||||
|
||||
if (phase_state == cPhs_COMPLEATE_e) {
|
||||
if (!fopAcM_entrySolidHeap(this, createSolidHeap, 0x85B0)) {
|
||||
return cPhs_ERROR_e;
|
||||
}
|
||||
|
||||
setBaseMtx();
|
||||
fopAcM_SetMtx(this, mpModel->getBaseTRMtx());
|
||||
fopAcM_setCullSizeFar(this, 3.0f);
|
||||
fopAcM_setCullSizeBox(this, -60.0f, -500.0f, -60.0f, 60.0f, 500.0f, 60.0f);
|
||||
|
||||
mpHoz = NULL;
|
||||
initBlastFlag();
|
||||
col_init();
|
||||
mSound.init(¤t.pos, 1);
|
||||
}
|
||||
|
||||
return phase_state;
|
||||
}
|
||||
|
||||
/* 80D4287C-80D42A7C 00029C 0200+00 1/1 0/0 0/0 .text CreateHeap__14daObjZraMark_cFv */
|
||||
int daObjZraMark_c::CreateHeap() {
|
||||
J3DModelData* modelData = (J3DModelData*)dComIfG_getObjectRes(l_arcName[0], l_arcIdx[mType]);
|
||||
JUT_ASSERT(0x176, modelData != 0);
|
||||
mpModel = mDoExt_J3DModel__create(modelData, 0x80000, 0x11000084);
|
||||
if (mpModel == NULL) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
s8 color;
|
||||
if (mType == TYPE_BRANCH_GREEN || mType == TYPE_GREEN) {
|
||||
color = 0;
|
||||
} else {
|
||||
color = 1;
|
||||
}
|
||||
|
||||
s8 var_r29;
|
||||
|
||||
cXyz pos(current.pos);
|
||||
switch (get_MarkType()) {
|
||||
case 0:
|
||||
var_r29 = 2;
|
||||
if (!is_branch_pat()) {
|
||||
pos.y += l_DATA.mMarkCollisionHeight / 2;
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
var_r29 = 1;
|
||||
if (!is_branch_pat()) {
|
||||
pos.y += l_DATA.mMarkCollisionHeight / 16;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
var_r29 = 0;
|
||||
if (!is_branch_pat()) {
|
||||
pos.y += l_DATA.mMarkCollisionHeight / 20;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
s32 room_no = fopAcM_GetRoomNo(this);
|
||||
if (!mHahenMngr.create(pos, room_no, color, var_r29, 0)) {
|
||||
// "------------------Fragment Generation Error\n"
|
||||
OS_REPORT("------------------破片生成ミス\n");
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/* 80D42A7C-80D42B0C 00049C 0090+00 1/1 0/0 0/0 .text Execute__14daObjZraMark_cFv */
|
||||
int daObjZraMark_c::Execute() {
|
||||
if (is_blasted()) {
|
||||
if (is_branch_pat()) {
|
||||
setBaseMtx();
|
||||
}
|
||||
|
||||
mHahenMngr.decTimer();
|
||||
mHahenMngr.calc();
|
||||
} else {
|
||||
setBaseMtx();
|
||||
col_set();
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* 80D42B0C-80D42C98 00052C 018C+00 1/1 0/0 0/0 .text Draw__14daObjZraMark_cFv */
|
||||
int daObjZraMark_c::Draw() {
|
||||
if (is_blasted()) {
|
||||
mHahenMngr.draw();
|
||||
if (is_branch_pat()) {
|
||||
_Vanish_Vase();
|
||||
} else {
|
||||
return 1;
|
||||
}
|
||||
} else {
|
||||
if (is_branch_pat()) {
|
||||
_Disp_Vase();
|
||||
}
|
||||
}
|
||||
|
||||
g_env_light.settingTevStruct(16, ¤t.pos, &tevStr);
|
||||
g_env_light.setLightTevColorType_MAJI(mpModel, &tevStr);
|
||||
|
||||
dComIfGd_setListBG();
|
||||
mDoExt_modelUpdateDL(mpModel);
|
||||
dComIfGd_setList();
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* 80D42C98-80D42CE0 0006B8 0048+00 1/1 0/0 0/0 .text Delete__14daObjZraMark_cFv */
|
||||
int daObjZraMark_c::Delete() {
|
||||
for (int i = 0; i < 1; i++) {
|
||||
dComIfG_resDelete(&mPhase[i], l_arcName[i]);
|
||||
}
|
||||
|
||||
mSound.deleteObject();
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* 80D42CE0-80D42D2C 000700 004C+00 1/1 0/0 0/0 .text getType__14daObjZraMark_cFv */
|
||||
int daObjZraMark_c::getType() {
|
||||
u8 prm = fopAcM_GetParam(this) >> 8;
|
||||
switch (prm) {
|
||||
case 1:
|
||||
return 1;
|
||||
case 2:
|
||||
return 2;
|
||||
case 3:
|
||||
return 3;
|
||||
default:
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
/* 80D42D2C-80D42EE0 00074C 01B4+00 2/2 0/0 0/0 .text setBaseMtx__14daObjZraMark_cFv */
|
||||
void daObjZraMark_c::setBaseMtx() {
|
||||
static const Vec l_coOffset[] = {
|
||||
{8.0f, -50.0f, 0.0f},
|
||||
{8.0f, 0.0f, 0.0f},
|
||||
{8.0f, -50.0f, 0.0f},
|
||||
{0.0f, 0.0f, 0.0f},
|
||||
};
|
||||
cXyz cc_pos(l_coOffset[mType].x, l_coOffset[mType].y, l_coOffset[mType].z);
|
||||
|
||||
f32 size;
|
||||
f32 cc_height;
|
||||
switch (get_MarkType()) {
|
||||
case 0:
|
||||
size = l_DATA.mMarkSize;
|
||||
cc_height = l_DATA.mMarkCollisionHeight;
|
||||
break;
|
||||
case 1:
|
||||
cc_pos.y -= 20.0f;
|
||||
size = l_DATA.mInteriorMarkSize;
|
||||
cc_height =
|
||||
l_DATA.mMarkCollisionHeight / (l_DATA.mMarkSize / l_DATA.mInteriorMarkSize) + 40.0f;
|
||||
break;
|
||||
case 2:
|
||||
size = l_DATA.field_0x8;
|
||||
cc_height = l_DATA.mMarkCollisionHeight / (l_DATA.mMarkSize / l_DATA.field_0x8);
|
||||
break;
|
||||
}
|
||||
|
||||
mDoMtx_stack_c::transS(current.pos.x, current.pos.y, current.pos.z);
|
||||
mDoMtx_stack_c::XYZrotM(shape_angle);
|
||||
mDoMtx_stack_c::scaleM(size, size, size);
|
||||
mpModel->setBaseTRMtx(mDoMtx_stack_c::get());
|
||||
|
||||
mDoMtx_stack_c::multVec(&cc_pos, &cc_pos);
|
||||
MTXCopy(mDoMtx_stack_c::get(), field_0x574);
|
||||
mCcCyl.SetC(cc_pos);
|
||||
mCcCyl.SetH(cc_height);
|
||||
mCcCyl.SetR(l_DATA.mMarkCollisionRadius * size);
|
||||
}
|
||||
|
||||
/* 80D42EE0-80D42F5C 000900 007C+00 1/1 0/0 0/0 .text col_init__14daObjZraMark_cFv */
|
||||
void daObjZraMark_c::col_init() {
|
||||
mCcStts.Init(0xFF, 0xFF, this);
|
||||
mCcCyl.Set(l_sph_src);
|
||||
mCcCyl.SetStts(&mCcStts);
|
||||
|
||||
if (get_MarkType() == 0) {
|
||||
mCcCyl.OffCoSetBit();
|
||||
}
|
||||
}
|
||||
|
||||
/* 80D42F5C-80D432C8 00097C 036C+00 1/1 0/0 0/0 .text col_set__14daObjZraMark_cFv */
|
||||
void daObjZraMark_c::col_set() {
|
||||
if (mpHoz == NULL) {
|
||||
mpHoz = schHoz();
|
||||
}
|
||||
|
||||
if (mCcCyl.ChkTgHit()) {
|
||||
if (checkHitAt(mCcCyl.GetTgHitObj())) {
|
||||
cXyz pos(current.pos);
|
||||
|
||||
switch (get_MarkType()) {
|
||||
case 0:
|
||||
onBlastFlag();
|
||||
mCcCyl.OffTgSetBit();
|
||||
|
||||
Z2GetAudioMgr()->seStart(Z2SE_OBJ_MG_CANOE_TSUBO_BRK, &pos, 0, 0, 1.0f, 1.0f, -1.0f,
|
||||
-1.0f, 0);
|
||||
|
||||
if (mType >= 2) {
|
||||
dMeter2Info_setNowCount(dMeter2Info_getNowCount() + 2);
|
||||
Z2GetAudioMgr()->seStart(Z2SE_SY_MG_CANOE_SCORE_2, NULL, 0, 0, 1.0f, 1.0f,
|
||||
-1.0f, -1.0f, 0);
|
||||
} else {
|
||||
dMeter2Info_setNowCount(dMeter2Info_getNowCount() + 1);
|
||||
Z2GetAudioMgr()->seStart(Z2SE_SY_MG_CANOE_SCORE, NULL, 0, 0, 1.0f, 1.0f, -1.0f,
|
||||
-1.0f, 0);
|
||||
}
|
||||
|
||||
informBlast();
|
||||
break;
|
||||
case 1:
|
||||
if (daPy_getPlayerActorClass()->checkCanoeSlider()) {
|
||||
mCcCyl.ClrTgHit();
|
||||
return;
|
||||
}
|
||||
|
||||
if (mpHoz != NULL) {
|
||||
mpHoz->setPotBreakFlag();
|
||||
}
|
||||
case 2:
|
||||
if (daPy_getPlayerActorClass()->checkCanoeSlider()) {
|
||||
mCcCyl.ClrTgHit();
|
||||
return;
|
||||
}
|
||||
|
||||
onBlastFlag();
|
||||
mCcCyl.OffTgSetBit();
|
||||
Z2GetAudioMgr()->seStart(Z2SE_OBJ_SAMPLE_TSUBO_BRK, &pos, 0, 0, 1.0f, 1.0f, -1.0f,
|
||||
-1.0f, 0);
|
||||
}
|
||||
} else {
|
||||
mSound.startCollisionSE(mCcCyl.GetTgHitObjHitSeID(1), 2, NULL);
|
||||
}
|
||||
|
||||
mCcCyl.ClrTgHit();
|
||||
}
|
||||
|
||||
mSound.framework(0, dComIfGp_getReverb(fopAcM_GetRoomNo(this)));
|
||||
dComIfG_Ccsp()->Set(&mCcCyl);
|
||||
}
|
||||
|
||||
/* 80D432C8-80D43314 000CE8 004C+00 1/1 0/0 0/0 .text schHoz__14daObjZraMark_cFv */
|
||||
daNpc_Hoz_c* daObjZraMark_c::schHoz() {
|
||||
fopAc_ac_c* hoz = NULL;
|
||||
if (fopAcM_SearchByName(PROC_NPC_HOZ, &hoz) && hoz != NULL) {
|
||||
return (daNpc_Hoz_c*)hoz;
|
||||
}
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/* 80D43314-80D43370 000D34 005C+00 0/0 0/0 1/1 .text entryPointer__14daObjZraMark_cFP10fopAc_ac_c
|
||||
*/
|
||||
bool daObjZraMark_c::entryPointer(fopAc_ac_c* i_actor) {
|
||||
if (field_0x72c < 2) {
|
||||
mActorMngr[field_0x72c].entry(i_actor);
|
||||
field_0x72c++;
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
/* 80D43370-80D433F4 000D90 0084+00 1/1 0/0 0/0 .text informBlast__14daObjZraMark_cFv */
|
||||
void daObjZraMark_c::informBlast() {
|
||||
if (field_0x72c != 0) {
|
||||
for (int i = 0; i < field_0x72c; i++) {
|
||||
fopAc_ac_c* actorp = mActorMngr[i].getActorP();
|
||||
if (actorp != NULL && fopAcM_GetName(actorp) == PROC_NPC_ZRA) {
|
||||
((daNpc_zrA_c*)actorp)->setBlastFlag(1);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* 80D433F4-80D43414 000E14 0020+00 1/0 0/0 0/0 .text daObjZraMark_Execute__FP14daObjZraMark_c */
|
||||
static int daObjZraMark_Execute(daObjZraMark_c* i_this) {
|
||||
return i_this->Execute();
|
||||
}
|
||||
|
||||
/* 80D43414-80D43434 000E34 0020+00 1/0 0/0 0/0 .text daObjZraMark_Draw__FP14daObjZraMark_c */
|
||||
static int daObjZraMark_Draw(daObjZraMark_c* i_this) {
|
||||
return i_this->Draw();
|
||||
}
|
||||
|
||||
/* 80D43434-80D4343C 000E54 0008+00 1/0 0/0 0/0 .text daObjZraMark_IsDelete__FP14daObjZraMark_c */
|
||||
static int daObjZraMark_IsDelete(daObjZraMark_c* i_this) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* 80D4343C-80D4345C 000E5C 0020+00 1/0 0/0 0/0 .text daObjZraMark_Delete__FP14daObjZraMark_c */
|
||||
static int daObjZraMark_Delete(daObjZraMark_c* i_this) {
|
||||
return i_this->Delete();
|
||||
}
|
||||
|
||||
/* 80D4345C-80D4347C 000E7C 0020+00 1/0 0/0 0/0 .text daObjZraMark_create__FP10fopAc_ac_c
|
||||
*/
|
||||
static int daObjZraMark_create(fopAc_ac_c* i_this) {
|
||||
return ((daObjZraMark_c*)i_this)->Create();
|
||||
}
|
||||
|
||||
/* 80D4347C-80D434F8 000E9C 007C+00 1/1 0/0 0/0 .text create__16_ZraMark_Hahen_cFRC4cXyzScScScSc
|
||||
*/
|
||||
int _ZraMark_Hahen_c::create(const cXyz& i_pos, s8 i_roomNo, s8 i_color, s8 param_3, s8 i_no) {
|
||||
setColor(i_color);
|
||||
|
||||
if (loadModel()) {
|
||||
init(i_pos, i_roomNo, param_3, i_no);
|
||||
setMtx();
|
||||
return 1;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* 80D434F8-80D4357C 000F18 0084+00 1/1 0/0 0/0 .text loadModel__16_ZraMark_Hahen_cFv */
|
||||
BOOL _ZraMark_Hahen_c::loadModel() {
|
||||
static const int sHahenBmdType[] = {7, 8};
|
||||
J3DModelData* modelData =
|
||||
(J3DModelData*)dComIfG_getObjectRes(l_arcName[0], sHahenBmdType[getColor()]);
|
||||
JUT_ASSERT(0x428, modelData != 0);
|
||||
mpModel = mDoExt_J3DModel__create(modelData, 0x80000, 0x11000084);
|
||||
if (mpModel == NULL) {
|
||||
// "--------------Can't load Fragment Model\n"
|
||||
OS_REPORT("--------------破片モデルを読み込めません\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* 80D4357C-80D43808 000F9C 028C+00 1/1 0/0 0/0 .text init__16_ZraMark_Hahen_cFRC4cXyzScScSc */
|
||||
void _ZraMark_Hahen_c::init(cXyz const& i_pos, s8 i_roomNo, s8 param_2, s8 i_no) {
|
||||
static const f32 sScale[] = {
|
||||
3.0f, 2.0f, 6.0f, 4.0f, 2.0f, 6.0f, 3.0f, 1.0f, 0.5f, 0.69999999f, 0.5f, 1.2f, 1.0f, 0.8f,
|
||||
};
|
||||
|
||||
static const f32 sRoot[4][7][2] = {
|
||||
{
|
||||
{78.8f, 54.9f},
|
||||
{101.9f, 62.4f},
|
||||
{122.2f, 18.9f},
|
||||
{124.2f, 63.5f},
|
||||
{83.599998f, 60.299999f},
|
||||
{118.6f, 54.099998f},
|
||||
{73.9f, 22.0f},
|
||||
},
|
||||
{
|
||||
{111.5f, 42.0f},
|
||||
{110.2f, 21.6f},
|
||||
{127.1f, 18.6f},
|
||||
{99.3f, 65.0f},
|
||||
{75.8f, 39.799999f},
|
||||
{106.1f, 46.9f},
|
||||
{71.699997f, 34.7f},
|
||||
},
|
||||
{
|
||||
{82.599998f, 18.1f},
|
||||
{132.6f, 48.799999f},
|
||||
{119.2f, 43.0f},
|
||||
{56.7f, 66.099998f},
|
||||
{89.0f, 57.299999f},
|
||||
{91.8f, 41.0f},
|
||||
{78.3f, 31.0f},
|
||||
},
|
||||
{
|
||||
{98.4f, 23.6f},
|
||||
{125.0f, 20.2f},
|
||||
{62.5f, 54.7f},
|
||||
{119.2f, 47.299999f},
|
||||
{79.9f, 53.799999f},
|
||||
{61.7f, 58.099998f},
|
||||
{57.599998f, 29.1f},
|
||||
},
|
||||
};
|
||||
|
||||
static int roottype = -1;
|
||||
roottype = (roottype + 1) & 3;
|
||||
s8 var_r28 = i_no % 7;
|
||||
|
||||
int var_r26 = cLib_getRndValue(0, 0xFFFF);
|
||||
int var_r25 = cLib_getRndValue(0, 0xFFFF);
|
||||
int var_r24 = cLib_getRndValue(0, 0xFFFF);
|
||||
mAngle.set(var_r26, var_r25, var_r24);
|
||||
|
||||
var_r26 = cLib_getRndValue(0x400, 0x1800);
|
||||
var_r25 = cLib_getRndValue(0x400, 0x1800);
|
||||
var_r24 = cLib_getRndValue(0x400, 0x1800);
|
||||
field_0x3aa.set(var_r26, var_r25, var_r24);
|
||||
|
||||
f32 scale = sScale[i_no] + 2.0f;
|
||||
f32 y_speed = sRoot[roottype][var_r28][0];
|
||||
f32 xz_speed = sRoot[roottype][var_r28][1];
|
||||
|
||||
if (param_2 == 1) {
|
||||
scale /= l_DATA.mMarkSize / l_DATA.mInteriorMarkSize;
|
||||
y_speed /= 2.5f;
|
||||
xz_speed /= 2.5f;
|
||||
} else if (param_2 == 0) {
|
||||
scale /= l_DATA.mMarkSize / l_DATA.mInteriorMarkSize;
|
||||
y_speed /= 1.5f;
|
||||
xz_speed /= 3.0f;
|
||||
}
|
||||
|
||||
if (i_no >= 7) {
|
||||
y_speed /= 1.5f;
|
||||
xz_speed /= 2.0f;
|
||||
}
|
||||
|
||||
field_0x3b0.setall(scale);
|
||||
mSpeed.set(0.0f, y_speed, 0.0f);
|
||||
field_0x3c0 = xz_speed;
|
||||
field_0x3bc = i_no * 0x4800;
|
||||
|
||||
f32 rnd_xz = cM_rndF(35.0f) + 10.0f;
|
||||
f32 rnd_y = cM_rndF(30.0f) - 15.0f;
|
||||
|
||||
cXyz pos;
|
||||
pos.x = i_pos.x + rnd_xz * cM_ssin(field_0x3bc);
|
||||
pos.y = i_pos.y + rnd_y;
|
||||
pos.z = i_pos.z + rnd_xz * cM_scos(field_0x3bc);
|
||||
setPos(pos);
|
||||
|
||||
dKy_tevstr_init(&mTevstr, i_roomNo, 0xFF);
|
||||
}
|
||||
|
||||
/* 80D43808-80D43864 001228 005C+00 1/1 0/0 0/0 .text calcSpeed__16_ZraMark_Hahen_cFv */
|
||||
void _ZraMark_Hahen_c::calcSpeed() {
|
||||
cXyz speed;
|
||||
speed.x = field_0x3c0 * cM_ssin(field_0x3bc);
|
||||
speed.y = mSpeed.y - 9.0f;
|
||||
speed.z = field_0x3c0 * cM_scos(field_0x3bc);
|
||||
|
||||
setSpeed(speed);
|
||||
}
|
||||
|
||||
/* 80D43864-80D438C8 001284 0064+00 2/2 0/0 0/0 .text setMtx__16_ZraMark_Hahen_cFv */
|
||||
void _ZraMark_Hahen_c::setMtx() {
|
||||
mDoMtx_stack_c::transS(mPos.x, mPos.y, mPos.z);
|
||||
mDoMtx_stack_c::XYZrotM(mAngle);
|
||||
mDoMtx_stack_c::scaleM(field_0x3b0);
|
||||
mpModel->setBaseTRMtx(mDoMtx_stack_c::get());
|
||||
}
|
||||
|
||||
/* 80D438C8-80D43968 0012E8 00A0+00 1/1 0/0 0/0 .text draw__16_ZraMark_Hahen_cFv */
|
||||
void _ZraMark_Hahen_c::draw() {
|
||||
g_env_light.settingTevStruct(16, &mPos, &mTevstr);
|
||||
g_env_light.setLightTevColorType_MAJI(mpModel, &mTevstr);
|
||||
|
||||
dComIfGd_setListBG();
|
||||
mDoExt_modelUpdateDL(mpModel);
|
||||
dComIfGd_setList();
|
||||
}
|
||||
|
||||
/* 80D43968-80D439F8 001388 0090+00 1/1 0/0 0/0 .text
|
||||
* create__20_ZraMark_Hahen_Mng_cFRC4cXyzScScScSc */
|
||||
int _ZraMark_Hahen_Mng_c::create(const cXyz& i_pos, s8 i_roomNo, s8 i_color, s8 param_3,
|
||||
s8 unused) {
|
||||
_ZraMark_Hahen_c* hahen = mHahen;
|
||||
for (int i = 0; i < 14; i++) {
|
||||
if (!hahen->create(i_pos, i_roomNo, i_color, param_3, i)) {
|
||||
return 0;
|
||||
}
|
||||
hahen++;
|
||||
}
|
||||
|
||||
setTimer(200);
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* 80D439F8-80D43A74 001418 007C+00 1/1 0/0 0/0 .text calc__20_ZraMark_Hahen_Mng_cFv */
|
||||
void _ZraMark_Hahen_Mng_c::calc() {
|
||||
if (getTimer() > 0) {
|
||||
_ZraMark_Hahen_c* hahen = mHahen;
|
||||
for (int i = 0; i < 14; i++) {
|
||||
hahen->fall();
|
||||
hahen->setMtx();
|
||||
hahen++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* 80D43A74-80D43ACC 001494 0058+00 1/1 0/0 0/0 .text draw__20_ZraMark_Hahen_Mng_cFv */
|
||||
void _ZraMark_Hahen_Mng_c::draw() {
|
||||
if (getTimer() > 0) {
|
||||
_ZraMark_Hahen_c* hahen = mHahen;
|
||||
for (int i = 0; i < 14; i++) {
|
||||
hahen->draw();
|
||||
hahen++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* 80D43FA8-80D43FC8 -00001 0020+00 1/0 0/0 0/0 .data l_daObjZraMark_Method */
|
||||
static actor_method_class l_daObjZraMark_Method = {
|
||||
(process_method_func)daObjZraMark_create__FP10fopAc_ac_c,
|
||||
(process_method_func)daObjZraMark_Delete__FP14daObjZraMark_c,
|
||||
(process_method_func)daObjZraMark_Execute__FP14daObjZraMark_c,
|
||||
(process_method_func)daObjZraMark_IsDelete__FP14daObjZraMark_c,
|
||||
(process_method_func)daObjZraMark_Draw__FP14daObjZraMark_c,
|
||||
};
|
||||
|
||||
/* 80D43FC8-80D43FF8 -00001 0030+00 0/0 0/0 1/0 .data g_profile_ZRA_MARK */
|
||||
extern actor_process_profile_definition g_profile_ZRA_MARK = {
|
||||
fpcLy_CURRENT_e, // mLayerID
|
||||
7, // mListID
|
||||
fpcPi_CURRENT_e, // mListPrio
|
||||
PROC_ZRA_MARK, // mProcName
|
||||
&g_fpcLf_Method.mBase, // sub_method
|
||||
sizeof(daObjZraMark_c), // mSize
|
||||
0, // mSizeOther
|
||||
0, // mParameters
|
||||
&g_fopAc_Method.base, // sub_method
|
||||
392, // mPriority
|
||||
&l_daObjZraMark_Method, // sub_method
|
||||
0x00044100, // mStatus
|
||||
fopAc_ACTOR_e, // mActorType
|
||||
fopAc_CULLBOX_CUSTOM_e, // cullType
|
||||
};
|
||||
Reference in New Issue
Block a user