d_a_obj_riverrock OK (#2279)

This commit is contained in:
hatal175 2025-01-02 00:51:34 +02:00 committed by GitHub
parent ad5b89f795
commit c67489d3da
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
4 changed files with 400 additions and 547 deletions

View File

@ -6,8 +6,8 @@ __destroy_global_chain = .text:0x00000094; // type:function size:0x58 scope:glob
__ct__20daObjRIVERROCK_HIO_cFv = .text:0x000000EC; // type:function size:0x28 scope:global
initCcCylinder__16daObjRIVERROCK_cFv = .text:0x00000114; // type:function size:0x60 scope:global
SetCcCyl__16daObjRIVERROCK_cFv = .text:0x00000174; // type:function size:0x60 scope:global
daObjRIVERROCK_Create__FP10fopAc_ac_c = .text:0x000001D4; // type:function size:0x20 scope:global
daObjRIVERROCK_Delete__FP16daObjRIVERROCK_c = .text:0x000001F4; // type:function size:0x24 scope:global
daObjRIVERROCK_Create__FP10fopAc_ac_c = .text:0x000001D4; // type:function size:0x20 scope:local
daObjRIVERROCK_Delete__FP16daObjRIVERROCK_c = .text:0x000001F4; // type:function size:0x24 scope:local
BreakWaitAction__16daObjRIVERROCK_cFv = .text:0x00000218; // type:function size:0xC4 scope:global
CheckBG__16daObjRIVERROCK_cFv = .text:0x000002DC; // type:function size:0x380 scope:global
BreakMoveAction__16daObjRIVERROCK_cFv = .text:0x0000065C; // type:function size:0x84 scope:global
@ -17,13 +17,13 @@ Action__16daObjRIVERROCK_cFv = .text:0x00000808; // type:function size:0x44 scop
BreakSet__16daObjRIVERROCK_cFv = .text:0x0000084C; // type:function size:0x398 scope:global
WaitAction__16daObjRIVERROCK_cFv = .text:0x00000BE4; // type:function size:0x40 scope:global
setBaseMtx__16daObjRIVERROCK_cFv = .text:0x00000C24; // type:function size:0xF8 scope:global
daObjRIVERROCK_Draw__FP16daObjRIVERROCK_c = .text:0x00000D1C; // type:function size:0x2C scope:global
daObjRIVERROCK_Execute__FP16daObjRIVERROCK_c = .text:0x00000D48; // type:function size:0x20 scope:global
daObjRIVERROCK_Draw__FP16daObjRIVERROCK_c = .text:0x00000D1C; // type:function size:0x2C scope:local
daObjRIVERROCK_Execute__FP16daObjRIVERROCK_c = .text:0x00000D48; // type:function size:0x20 scope:local
CreateHeap__16daObjRIVERROCK_cFv = .text:0x00000D68; // type:function size:0x78 scope:global
create__16daObjRIVERROCK_cFv = .text:0x00000DE0; // type:function size:0x35C scope:global
__dt__8cM3dGCylFv = .text:0x0000113C; // type:function size:0x48 scope:global
__dt__8cM3dGAabFv = .text:0x00001184; // type:function size:0x48 scope:global
daObjRIVERROCK_IsDelete__FP16daObjRIVERROCK_c = .text:0x000011CC; // type:function size:0x8 scope:global
daObjRIVERROCK_IsDelete__FP16daObjRIVERROCK_c = .text:0x000011CC; // type:function size:0x8 scope:local
Create__16daObjRIVERROCK_cFv = .text:0x000011D4; // type:function size:0x60 scope:global
Execute__16daObjRIVERROCK_cFPPA3_A4_f = .text:0x00001234; // type:function size:0xCC scope:global
Draw__16daObjRIVERROCK_cFv = .text:0x00001300; // type:function size:0x84 scope:global
@ -62,14 +62,14 @@ ccCylSrc$3635 = .rodata:0x00000004; // type:object size:0x44 scope:local
@4119 = .rodata:0x000000B0; // type:object size:0x4 scope:local
@4120 = .rodata:0x000000B4; // type:object size:0x4 scope:local
@stringBase0 = .rodata:0x000000B8; // type:object size:0x2A scope:local data:string_table
l_arcName = .data:0x00000000; // type:object size:0x4 scope:global
l_daObjRIVERROCK_Method = .data:0x00000004; // type:object size:0x20 scope:global
l_arcName = .data:0x00000000; // type:object size:0x4 scope:local
l_daObjRIVERROCK_Method = .data:0x00000004; // type:object size:0x20 scope:local
g_profile_Obj_RIVERROCK = .data:0x00000024; // type:object size:0x30 scope:global
__vt__8cM3dGCyl = .data:0x00000054; // type:object size:0xC scope:global
__vt__8cM3dGAab = .data:0x00000060; // type:object size:0xC scope:global
__vt__16daObjRIVERROCK_c = .data:0x0000006C; // type:object size:0x28 scope:global
__vt__20daObjRIVERROCK_HIO_c = .data:0x00000094; // type:object size:0xC scope:global
__global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:global
lbl_603_bss_8 = .bss:0x00000008; // type:object size:0x1 data:byte
lbl_603_bss_8 = .bss:0x00000008; // type:object size:0x1 scope:local data:byte
@3626 = .bss:0x0000000C; // type:object size:0xC scope:local
l_HIO = .bss:0x00000018; // type:object size:0x10 scope:global data:byte
l_HIO = .bss:0x00000018; // type:object size:0x10 scope:local data:byte

View File

@ -1968,7 +1968,7 @@ config.libs = [
ActorRel(Matching, "d_a_obj_rcircle"),
ActorRel(NonMatching, "d_a_obj_rfHole"),
ActorRel(Matching, "d_a_obj_rgate"),
ActorRel(NonMatching, "d_a_obj_riverrock"),
ActorRel(Matching, "d_a_obj_riverrock"),
ActorRel(Matching, "d_a_obj_rock"),
ActorRel(NonMatching, "d_a_obj_rotBridge"),
ActorRel(NonMatching, "d_a_obj_rotTrap"),

View File

@ -1,6 +1,8 @@
#ifndef D_A_OBJ_RIVERROCK_H
#define D_A_OBJ_RIVERROCK_H
#include "d/d_bg_s_movebg_actor.h"
#include "d/d_cc_d.h"
#include "f_op/f_op_actor_mng.h"
/**
@ -11,8 +13,20 @@
* @details
*
*/
class daObjRIVERROCK_c : public fopAc_ac_c {
class daObjRIVERROCK_c : public dBgS_MoveBgActor {
public:
typedef enum {
ACTION_WAIT,
ACTION_BREAK,
} ActionEnum;
typedef enum {
BREAK_WAIT,
BREAK_MOVE,
BREAK_BROKEN,
BREAK_3,
} BreakSubAction;
/* 80CBC6F4 */ void initCcCylinder();
/* 80CBC754 */ void SetCcCyl();
/* 80CBC7F8 */ void BreakWaitAction();
@ -24,15 +38,38 @@ public:
/* 80CBCE2C */ void BreakSet();
/* 80CBD1C4 */ void WaitAction();
/* 80CBD204 */ void setBaseMtx();
/* 80CBD348 */ void CreateHeap();
/* 80CBD3C0 */ void create();
/* 80CBD7B4 */ void Create();
/* 80CBD814 */ void Execute(f32 (**)[3][4]);
/* 80CBD8E0 */ void Draw();
/* 80CBD964 */ void Delete();
/* 80CBD348 */ int CreateHeap();
/* 80CBD3C0 */ int create();
/* 80CBD7B4 */ int Create();
/* 80CBD814 */ int Execute(Mtx**);
/* 80CBD8E0 */ int Draw();
/* 80CBD964 */ int Delete();
private:
/* 0x568 */ u8 field_0x568[0x79c - 0x568];
/* 0x5A0 */ ActionEnum mAction;
/* 0x5A4 */ BreakSubAction mBreakSubAction;
/* 0x5A8 */ u8 field_0x5a8;
/* 0x5A9 */ u8 field_0x5a9;
/* 0x5AA */ s16 field_0x5aa;
/* 0x5AC */ int field_0x5ac;
/* 0x5B0 */ s16 field_0x5b0;
/* 0x5B2 */ s16 field_0x5b2;
/* 0x5B4 */ s16 field_0x5b4;
/* 0x5B6 */ s16 field_0x5b6;
/* 0x5B8 */ s16 field_0x5b8;
/* 0x5BA */ u8 field_0x5ba[0x5c4 - 0x5ba];
/* 0x5C4 */ cXyz field_0x5c4;
/* 0x5D0 */ cXyz field_0x5d0;
/* 0x5DC */ cXyz field_0x5dc;
/* 0x5E8 */ csXyz field_0x5e8;
/* 0x5EE */ bool field_0x5ee;
/* 0x5F0 */ Z2SoundObjSimple mSoundObj;
/* 0x610 */ int field_0x610;
/* 0x614 */ J3DModel* mModel;
/* 0x618 */ request_of_phase_process_class mPhase;
/* 0x620 */ dCcD_Stts mStts;
/* 0x65C */ dCcD_Cyl mCyl;
/* 0x798 */ bool mHIONeedDelete;
};
STATIC_ASSERT(sizeof(daObjRIVERROCK_c) == 0x79c);
@ -40,7 +77,11 @@ STATIC_ASSERT(sizeof(daObjRIVERROCK_c) == 0x79c);
class daObjRIVERROCK_HIO_c {
public:
/* 80CBC6CC */ daObjRIVERROCK_HIO_c();
/* 80CBD9C4 */ ~daObjRIVERROCK_HIO_c();
/* 80CBD9C4 */ virtual ~daObjRIVERROCK_HIO_c() {}
/* 0x4 */ s8 field_0x4;
/* 0x8 */ f32 field_0x8;
/* 0xC */ f32 field_0xc;
};

View File

@ -4,138 +4,352 @@
*/
#include "d/actor/d_a_obj_riverrock.h"
#include "SSystem/SComponent/c_math.h"
#include "d/d_cc_d.h"
#include "dol2asm.h"
//
// Forward References:
//
extern "C" void __ct__20daObjRIVERROCK_HIO_cFv();
extern "C" void initCcCylinder__16daObjRIVERROCK_cFv();
extern "C" void SetCcCyl__16daObjRIVERROCK_cFv();
extern "C" static void daObjRIVERROCK_Create__FP10fopAc_ac_c();
extern "C" static void daObjRIVERROCK_Delete__FP16daObjRIVERROCK_c();
extern "C" void BreakWaitAction__16daObjRIVERROCK_cFv();
extern "C" void CheckBG__16daObjRIVERROCK_cFv();
extern "C" void BreakMoveAction__16daObjRIVERROCK_cFv();
extern "C" void BrokenAction__16daObjRIVERROCK_cFv();
extern "C" void BreakAction__16daObjRIVERROCK_cFv();
extern "C" void Action__16daObjRIVERROCK_cFv();
extern "C" void BreakSet__16daObjRIVERROCK_cFv();
extern "C" void WaitAction__16daObjRIVERROCK_cFv();
extern "C" void setBaseMtx__16daObjRIVERROCK_cFv();
extern "C" static void daObjRIVERROCK_Draw__FP16daObjRIVERROCK_c();
extern "C" static void daObjRIVERROCK_Execute__FP16daObjRIVERROCK_c();
extern "C" void CreateHeap__16daObjRIVERROCK_cFv();
extern "C" void create__16daObjRIVERROCK_cFv();
extern "C" void __dt__8cM3dGCylFv();
extern "C" void __dt__8cM3dGAabFv();
extern "C" static bool daObjRIVERROCK_IsDelete__FP16daObjRIVERROCK_c();
extern "C" void Create__16daObjRIVERROCK_cFv();
extern "C" void Execute__16daObjRIVERROCK_cFPPA3_A4_f();
extern "C" void Draw__16daObjRIVERROCK_cFv();
extern "C" void Delete__16daObjRIVERROCK_cFv();
extern "C" void __dt__20daObjRIVERROCK_HIO_cFv();
extern "C" void __sinit_d_a_obj_riverrock_cpp();
extern "C" extern char const* const d_a_obj_riverrock__stringBase0;
//
// External References:
//
extern "C" void transS__14mDoMtx_stack_cFRC4cXyz();
extern "C" void transM__14mDoMtx_stack_cFfff();
extern "C" void scaleM__14mDoMtx_stack_cFRC4cXyz();
extern "C" void ZXYrotM__14mDoMtx_stack_cFRC5csXyz();
extern "C" void mDoExt_modelUpdateDL__FP8J3DModel();
extern "C" void mDoExt_setupStageTexture__FP12J3DModelData();
extern "C" void mDoExt_J3DModel__create__FP12J3DModelDataUlUl();
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 isSwitch__10dSv_info_cCFii();
extern "C" void getRes__14dRes_control_cFPCcPCcP11dRes_info_ci();
extern "C" void getObjectResName2Index__14dRes_control_cFPCcPCc();
extern "C" void
set__13dPa_control_cFUcUsPC4cXyzPC12dKy_tevstr_cPC5csXyzPC4cXyzUcP18dPa_levelEcallBackScPC8_GXColorPC8_GXColorPC4cXyzf();
extern "C" void StartShock__12dVibration_cFii4cXyz();
extern "C" void LineCross__4cBgSFP11cBgS_LinChk();
extern "C" void GetSpecialCode__4dBgSFRC13cBgS_PolyInfo();
extern "C" void dBgS_MoveBGProc_TypicalRotY__FP4dBgWPvRC13cBgS_PolyInfobP4cXyzP5csXyzP5csXyz();
extern "C" void __ct__11dBgS_LinChkFv();
extern "C" void __dt__11dBgS_LinChkFv();
extern "C" void Set__11dBgS_LinChkFPC4cXyzPC4cXyzPC10fopAc_ac_c();
extern "C" void __ct__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 __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 Set__8dCcD_CylFRC11dCcD_SrcCyl();
extern "C" void settingTevStruct__18dScnKy_env_light_cFiP4cXyzP12dKy_tevstr_c();
extern "C" void setLightTevColorType_MAJI__18dScnKy_env_light_cFP12J3DModelDataP12dKy_tevstr_c();
extern "C" void Set__4cCcSFP8cCcD_Obj();
extern "C" void SetC__8cM3dGCylFRC4cXyz();
extern "C" void SetR__8cM3dGCylFf();
extern "C" void cLib_addCalcAngleS__FPsssss();
extern "C" void cLib_chaseAngleS__FPsss();
extern "C" void seStart__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc();
extern "C" void deleteObject__14Z2SoundObjBaseFv();
extern "C" void __ct__16Z2SoundObjSimpleFv();
extern "C" void __dl__FPv();
extern "C" void _savegpr_29();
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" 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:
//
/* ############################################################################################## */
/* 80CBDA5C-80CBDA60 000000 0004+00 6/6 0/0 0/0 .rodata @3631 */
SECTION_RODATA static u8 const lit_3631[4] = {
0x00,
0x00,
0x00,
0x00,
};
COMPILER_STRIP_GATE(0x80CBDA5C, &lit_3631);
/* 80CBDB14-80CBDB14 0000B8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
#pragma push
#pragma force_active on
SECTION_DEAD static char const* const stringBase_80CBDB14 = "RiverRock";
#pragma pop
#include "d/d_com_inf_game.h"
/* 80CBDB40-80CBDB44 -00001 0004+00 3/3 0/0 0/0 .data l_arcName */
SECTION_DATA static void* l_arcName = (void*)&d_a_obj_riverrock__stringBase0;
static char* l_arcName = "RiverRock";
/* 80CBC6CC-80CBC6F4 0000EC 0028+00 1/1 0/0 0/0 .text __ct__20daObjRIVERROCK_HIO_cFv */
daObjRIVERROCK_HIO_c::daObjRIVERROCK_HIO_c() {
field_0x4 = -1;
field_0x8 = 0.0f;
field_0xc = 0.0f;
}
/* 80CBC6F4-80CBC754 000114 0060+00 1/1 0/0 0/0 .text initCcCylinder__16daObjRIVERROCK_cFv */
void daObjRIVERROCK_c::initCcCylinder() {
const static dCcD_SrcCyl ccCylSrc = {
{
{0x0, {{0x0, 0x0, 0x0}, {0x20, 0x11}, 0x79}}, // mObj
{dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x0}, // mGObjAt
{dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x1}, // mGObjTg
{0x0}, // mGObjCo
}, // mObjInf
{
{0.0f, -500.0f, 0.0f}, // mCenter
1000.0f, // mRadius
1000.0f // mHeight
} // mCyl
};
mStts.Init(0xff, 0xff, this);
mCyl.Set(ccCylSrc);
mCyl.SetStts(&mStts);
mCyl.SetC(current.pos);
}
/* 80CBC754-80CBC7B4 000174 0060+00 1/1 0/0 0/0 .text SetCcCyl__16daObjRIVERROCK_cFv */
void daObjRIVERROCK_c::SetCcCyl() {
mCyl.SetC(current.pos);
mCyl.SetR(field_0x5c4.x * 1000.0f);
dComIfG_Ccsp()->Set(&mCyl);
}
/* 80CBC7B4-80CBC7D4 0001D4 0020+00 1/0 0/0 0/0 .text daObjRIVERROCK_Create__FP10fopAc_ac_c */
static int daObjRIVERROCK_Create(fopAc_ac_c* i_this) {
return static_cast<daObjRIVERROCK_c*>(i_this)->create();
}
/* 80CBC7D4-80CBC7F8 0001F4 0024+00 1/0 0/0 0/0 .text daObjRIVERROCK_Delete__FP16daObjRIVERROCK_c
*/
static int daObjRIVERROCK_Delete(daObjRIVERROCK_c* i_this) {
i_this->MoveBGDelete();
return 1;
}
/* 80CBC7F8-80CBC8BC 000218 00C4+00 1/1 0/0 0/0 .text BreakWaitAction__16daObjRIVERROCK_cFv */
void daObjRIVERROCK_c::BreakWaitAction() {
shape_angle.x = field_0x5b4 * cM_ssin(field_0x5aa);
cLib_addCalcAngleS(&field_0x5b0, 0x10, 0x100, 0x50, 0);
field_0x5aa += field_0x5b0;
if (cLib_chaseAngleS(&field_0x5b4, 0, 0x15) != 0) {
mBreakSubAction = BREAK_MOVE;
field_0x5aa = 0;
}
}
/* 80CBC8BC-80CBCC3C 0002DC 0380+00 1/1 0/0 0/0 .text CheckBG__16daObjRIVERROCK_cFv */
void daObjRIVERROCK_c::CheckBG() {
mSoundObj.startLevelSound(Z2SE_OBJ_RG_ROCKPOLE_FALL, 0, -1);
cXyz particlePos(0.0f, 5650.0f * field_0x5c4.y, field_0x5c4.z * 700.0f);
cXyz cStack_bc(0.0f, 2850.0f * field_0x5c4.y, field_0x5c4.z * 700.0f);
mDoMtx_stack_c::transS(current.pos);
mDoMtx_stack_c::ZXYrotM(shape_angle);
mDoMtx_stack_c::transM(0.0f, 0.0f, field_0x5c4.z * 300.0f);
mDoMtx_stack_c::ZXYrotM(field_0x5e8);
mDoMtx_stack_c::transM(0.0f, 0.0f, field_0x5c4.z * -300.0f);
mDoMtx_stack_c::multVec(&particlePos, &particlePos);
mDoMtx_stack_c::multVec(&cStack_bc, &cStack_bc);
mSoundObj.init(&cStack_bc, 2);
dBgS_LinChk adStack_a0;
adStack_a0.Set(&field_0x5d0, &particlePos, NULL);
if (dComIfG_Bgsp().LineCross(&adStack_a0)) {
if (dComIfG_Bgsp().GetSpecialCode(adStack_a0) == 1) {
eyePos = adStack_a0.i_GetCross();
fopAcM_seStart(this, Z2SE_OBJ_RG_ROCKPOLE_LAND, 0);
if (field_0x5a8 != 0xff) {
if (!dComIfGs_isSwitch(field_0x5a8, fopAcM_GetRoomNo(this))) {
dComIfGp_getVibration().StartShock(8, 0x1f, cXyz(0.0f, 1.0f, 0.0f));
}
}
mBreakSubAction = BREAK_BROKEN;
cXyz particleScale(field_0x5c4.x, field_0x5c4.y, field_0x5c4.z);
dComIfGp_particle_set(0x8706, &particlePos, &tevStr, &shape_angle, &particleScale);
dComIfGp_particle_set(0x8707, &particlePos, &tevStr, &shape_angle, &particleScale);
field_0x5b0 = field_0x5aa * 3.0f;
field_0x5b8 = field_0x5e8.x;
field_0x5b4 = 1024;
}
}
if (field_0x5e8.x > 0x6000) {
mBreakSubAction = BREAK_BROKEN;
}
field_0x5dc = field_0x5d0;
field_0x5d0 = particlePos;
}
/* 80CBDBE8-80CBDBEC 000008 0004+00 2/2 0/0 0/0 .bss None */
static bool mHIOInitialized;
/* 80CBDBF8-80CBDC08 000018 0010+00 4/4 0/0 0/0 .bss l_HIO */
static daObjRIVERROCK_HIO_c l_HIO;
/* 80CBCC3C-80CBCCC0 00065C 0084+00 1/1 0/0 0/0 .text BreakMoveAction__16daObjRIVERROCK_cFv */
void daObjRIVERROCK_c::BreakMoveAction() {
cLib_addCalcAngleS(&field_0x5aa, 0x1500, l_HIO.field_0x8 + 3628.0f, 0x1500, 0);
field_0x5e8.x += field_0x5aa;
field_0x5b6 += 0x50;
CheckBG();
}
/* 80CBCCC0-80CBCD94 0006E0 00D4+00 1/1 0/0 0/0 .text BrokenAction__16daObjRIVERROCK_cFv
*/
void daObjRIVERROCK_c::BrokenAction() {
s16 sVar1 = field_0x5b4 * cM_ssin(field_0x5aa);
if (sVar1 > 0) {
sVar1 = -sVar1;
}
field_0x5e8.x = field_0x5b8 + sVar1;
cLib_addCalcAngleS(&field_0x5b0, 0x300, 0x800, 0x100, 0);
field_0x5aa += field_0x5b0;
if (cLib_chaseAngleS(&field_0x5b4, 0, 0x20) != 0) {
mBreakSubAction = BREAK_3;
}
}
/* 80CBCD94-80CBCDE8 0007B4 0054+00 1/1 0/0 0/0 .text BreakAction__16daObjRIVERROCK_cFv
*/
void daObjRIVERROCK_c::BreakAction() {
switch (mBreakSubAction) {
case BREAK_WAIT:
BreakWaitAction();
break;
case BREAK_MOVE:
BreakMoveAction();
break;
case BREAK_BROKEN:
BrokenAction();
break;
case BREAK_3:
default:
break;
}
}
/* 80CBCDE8-80CBCE2C 000808 0044+00 1/1 0/0 0/0 .text Action__16daObjRIVERROCK_cFv */
void daObjRIVERROCK_c::Action() {
switch (mAction) {
case ACTION_WAIT:
WaitAction();
break;
case ACTION_BREAK:
BreakAction();
break;
}
}
/* 80CBCE2C-80CBD1C4 00084C 0398+00 3/3 0/0 0/0 .text BreakSet__16daObjRIVERROCK_cFv */
void daObjRIVERROCK_c::BreakSet() {
eyePos = current.pos;
fopAcM_seStart(this, Z2SE_OBJ_RG_ROCK_BREAK, 0);
cXyz acStack_30(0.0f, 0.0f, 1.0f);
mDoMtx_stack_c::transS(current.pos);
mDoMtx_stack_c::ZXYrotM(shape_angle);
mDoMtx_stack_c::transM(0.0f, 0.0f, field_0x5c4.z * 200.0f);
mDoMtx_stack_c::multVec(&acStack_30, &acStack_30);
cXyz cStack_3c(field_0x5c4.x, field_0x5c4.y, field_0x5c4.z);
dComIfGp_particle_set(0x86ff, &acStack_30, &tevStr, &shape_angle, &cStack_3c);
dComIfGp_particle_set(0x8700, &acStack_30, &tevStr, &shape_angle, &cStack_3c);
dComIfGp_particle_set(0x8701, &acStack_30, &tevStr, &shape_angle, &cStack_3c);
dComIfGp_particle_set(0x8702, &acStack_30, &tevStr, &shape_angle, &cStack_3c);
dComIfGp_particle_set(0x8703, &acStack_30, &tevStr, &shape_angle, &cStack_3c);
dComIfGp_particle_set(0x8704, &acStack_30, &tevStr, &shape_angle, &cStack_3c);
dComIfGp_particle_set(0x8705, &acStack_30, &tevStr, &shape_angle, &cStack_3c);
if (field_0x5a8 != 0xff) {
if (!dComIfGs_isSwitch(field_0x5a8, fopAcM_GetRoomNo(this))) {
dComIfGp_getVibration().StartShock(8, 0x1f, cXyz(0.0f, 1.0f, 0.0f));
}
}
field_0x5b0 = l_HIO.field_0xc + 280.0f;
field_0x5b4 = 0x400;
mAction = ACTION_BREAK;
mBreakSubAction = BREAK_WAIT;
}
/* 80CBD1C4-80CBD204 000BE4 0040+00 1/1 0/0 0/0 .text WaitAction__16daObjRIVERROCK_cFv */
void daObjRIVERROCK_c::WaitAction() {
if (mCyl.ChkTgHit()) {
BreakSet();
}
}
/* 80CBD204-80CBD2FC 000C24 00F8+00 1/1 0/0 0/0 .text setBaseMtx__16daObjRIVERROCK_cFv */
void daObjRIVERROCK_c::setBaseMtx() {
if (mBreakSubAction == BREAK_MOVE || mBreakSubAction == BREAK_BROKEN ||
mBreakSubAction == BREAK_3)
{
mDoMtx_stack_c::transS(current.pos);
mDoMtx_stack_c::ZXYrotM(shape_angle);
mDoMtx_stack_c::transM(0.0f, 0.0f, 150.0f * field_0x5c4.z);
mDoMtx_stack_c::ZXYrotM(field_0x5e8);
mDoMtx_stack_c::transM(0.0, 0.0, -150.0f * field_0x5c4.z);
mDoMtx_stack_c::scaleM(field_0x5c4);
mModel->setBaseTRMtx(mDoMtx_stack_c::get());
} else {
mDoMtx_stack_c::transS(current.pos);
mDoMtx_stack_c::ZXYrotM(shape_angle);
mDoMtx_stack_c::scaleM(field_0x5c4);
mModel->setBaseTRMtx(mDoMtx_stack_c::get());
}
cMtx_copy(mDoMtx_stack_c::get(), mBgMtx);
}
/* 80CBD2FC-80CBD328 000D1C 002C+00 1/0 0/0 0/0 .text daObjRIVERROCK_Draw__FP16daObjRIVERROCK_c */
static int daObjRIVERROCK_Draw(daObjRIVERROCK_c* i_this) {
return i_this->Draw();
}
/* 80CBD328-80CBD348 000D48 0020+00 2/1 0/0 0/0 .text daObjRIVERROCK_Execute__FP16daObjRIVERROCK_c
*/
static int daObjRIVERROCK_Execute(daObjRIVERROCK_c* i_this) {
return i_this->MoveBGExecute();
}
/* 80CBD348-80CBD3C0 000D68 0078+00 1/0 0/0 0/0 .text CreateHeap__16daObjRIVERROCK_cFv */
int daObjRIVERROCK_c::CreateHeap() {
J3DModelData* modelData = (J3DModelData*) dComIfG_getObjectRes(l_arcName, "M_RiverRock.bmd");
JUT_ASSERT(242, modelData != 0);
mModel = mDoExt_J3DModel__create(modelData, 0x80000, 0x11000084);
return mModel != NULL ? TRUE : FALSE;
}
/* 80CBD3C0-80CBD71C 000DE0 035C+00 1/1 0/0 0/0 .text create__16daObjRIVERROCK_cFv */
int daObjRIVERROCK_c::create() {
fopAcM_SetupActor(this, daObjRIVERROCK_c);
int rv = dComIfG_resLoad(&mPhase, l_arcName);
if (rv == cPhs_COMPLEATE_e) {
gravity = -9.0f;
int dzb_id = dComIfG_getObjctResName2Index(l_arcName, "M_RiverRock.dzb");
JUT_ASSERT(856, dzb_id != -1);
field_0x5a8 = (fopAcM_GetParam(this) >> 16) & 0xff;
rv = MoveBGCreate(l_arcName,
dzb_id, dBgS_MoveBGProc_TypicalRotY, 0x1bf0, NULL);
if (rv == cPhs_ERROR_e) {
return rv;
}
mDoExt_setupStageTexture(mModel->getModelData());
if (fopAcM_GetParam(this) != -1) {
field_0x5c4.x = (fopAcM_GetParam(this) & 0xff) * 0.05f + 0.5f;
field_0x5c4.z = (fopAcM_GetParam(this) & 0xff) * 0.05f + 0.5f;
field_0x5c4.y = ((fopAcM_GetParam(this) >> 8) & 0xff) * 0.05f + 0.5f;
} else {
field_0x5c4.set(1.0f, 1.0f, 1.0f);
}
if (!mHIOInitialized) {
mHIOInitialized = true;
mHIONeedDelete = true;
l_HIO.field_0x4 = -1;
}
fopAcM_SetMtx(this, mModel->getBaseTRMtx());
cXyz cStack_3c(current.pos.x, current.pos.y + 1000.0f, current.pos.z);
cXyz cStack_48(current.pos.x, current.pos.y + field_0x5c4.y * 2800.0f, current.pos.z);
mSoundObj.init(&cStack_48, 2);
field_0x5d0.set(current.pos.x, current.pos.y + 6000.0f, current.pos.z);
initCcCylinder();
if (field_0x5a8 != 0xff && dComIfGs_isSwitch(field_0x5a8, fopAcM_GetRoomNo(this))) {
BreakSet();
} else {
mAction = ACTION_WAIT;
}
fopAcM_setCullSizeBox(this, -6000.0f, -500.0f, -6000.0f, 6000.0f, 6000.0f, 6000.0f);
daObjRIVERROCK_Execute(this);
}
return rv;
}
/* 80CBD7AC-80CBD7B4 0011CC 0008+00 1/0 0/0 0/0 .text
* daObjRIVERROCK_IsDelete__FP16daObjRIVERROCK_c */
static int daObjRIVERROCK_IsDelete(daObjRIVERROCK_c* i_this) {
return 1;
}
/* 80CBD7B4-80CBD814 0011D4 0060+00 1/0 0/0 0/0 .text Create__16daObjRIVERROCK_cFv */
int daObjRIVERROCK_c::Create() {
fopAcM_setCullSizeBox(this, field_0x5c4.x * -1000.0f, field_0x5c4.y * -500.0f,
field_0x5c4.z * -1000.0f, field_0x5c4.x * 1000.0f, field_0x5c4.y * 500.0f,
field_0x5c4.z * 1000.0f);
return cPhs_COMPLEATE_e;
}
/* 80CBD814-80CBD8E0 001234 00CC+00 1/0 0/0 0/0 .text Execute__16daObjRIVERROCK_cFPPA3_A4_f */
int daObjRIVERROCK_c::Execute(Mtx** ppMtx) {
Action();
field_0x5a9 = fopAcM_GetParam(this) >> 24;
if (field_0x5a9 != 0xff) {
if (dComIfGs_isSwitch(field_0x5a9, fopAcM_GetRoomNo(this)) && !field_0x5ee) {
field_0x5ee = true;
BreakSet();
}
}
*ppMtx = &mBgMtx;
SetCcCyl();
setBaseMtx();
mSoundObj.framework(0, dComIfGp_getReverb(fopAcM_GetRoomNo(this)));
return 1;
}
/* 80CBD8E0-80CBD964 001300 0084+00 1/0 0/0 0/0 .text Draw__16daObjRIVERROCK_cFv */
int daObjRIVERROCK_c::Draw() {
g_env_light.settingTevStruct(0x10, &current.pos, &tevStr);
g_env_light.setLightTevColorType_MAJI(mModel, &tevStr);
dComIfGd_setListBG();
mDoExt_modelUpdateDL(mModel);
return 1;
}
/* 80CBD964-80CBD9C4 001384 0060+00 1/0 0/0 0/0 .text Delete__16daObjRIVERROCK_cFv */
int daObjRIVERROCK_c::Delete() {
dComIfG_resDelete(&mPhase, l_arcName);
if (mHIONeedDelete) {
mHIOInitialized = false;
}
mSoundObj.deleteObject();
return 1;
}
// /* 80CBD9C4-80CBDA0C 0013E4 0048+00 2/1 0/0 0/0 .text __dt__20daObjRIVERROCK_HIO_cFv */
// daObjRIVERROCK_HIO_c::~daObjRIVERROCK_HIO_c() {
// }
/* 80CBDB44-80CBDB64 -00001 0020+00 1/0 0/0 0/0 .data l_daObjRIVERROCK_Method */
static actor_method_class l_daObjRIVERROCK_Method = {
(process_method_func)daObjRIVERROCK_Create__FP10fopAc_ac_c,
(process_method_func)daObjRIVERROCK_Delete__FP16daObjRIVERROCK_c,
(process_method_func)daObjRIVERROCK_Execute__FP16daObjRIVERROCK_c,
(process_method_func)daObjRIVERROCK_IsDelete__FP16daObjRIVERROCK_c,
(process_method_func)daObjRIVERROCK_Draw__FP16daObjRIVERROCK_c,
(process_method_func)daObjRIVERROCK_Create,
(process_method_func)daObjRIVERROCK_Delete,
(process_method_func)daObjRIVERROCK_Execute,
(process_method_func)daObjRIVERROCK_IsDelete,
(process_method_func)daObjRIVERROCK_Draw,
};
/* 80CBDB64-80CBDB94 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Obj_RIVERROCK */
@ -156,406 +370,4 @@ extern actor_process_profile_definition g_profile_Obj_RIVERROCK = {
fopAc_CULLBOX_CUSTOM_e, // cullType
};
/* 80CBDB94-80CBDBA0 000054 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,
};
/* 80CBDBA0-80CBDBAC 000060 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,
};
/* 80CBDBAC-80CBDBD4 00006C 0028+00 1/1 0/0 0/0 .data __vt__16daObjRIVERROCK_c */
SECTION_DATA extern void* __vt__16daObjRIVERROCK_c[10] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)CreateHeap__16daObjRIVERROCK_cFv,
(void*)Create__16daObjRIVERROCK_cFv,
(void*)Execute__16daObjRIVERROCK_cFPPA3_A4_f,
(void*)Draw__16daObjRIVERROCK_cFv,
(void*)Delete__16daObjRIVERROCK_cFv,
(void*)IsDelete__16dBgS_MoveBgActorFv,
(void*)ToFore__16dBgS_MoveBgActorFv,
(void*)ToBack__16dBgS_MoveBgActorFv,
};
/* 80CBDBD4-80CBDBE0 000094 000C+00 2/2 0/0 0/0 .data __vt__20daObjRIVERROCK_HIO_c */
SECTION_DATA extern void* __vt__20daObjRIVERROCK_HIO_c[3] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)__dt__20daObjRIVERROCK_HIO_cFv,
};
/* 80CBC6CC-80CBC6F4 0000EC 0028+00 1/1 0/0 0/0 .text __ct__20daObjRIVERROCK_HIO_cFv */
daObjRIVERROCK_HIO_c::daObjRIVERROCK_HIO_c() {
// NONMATCHING
}
/* ############################################################################################## */
/* 80CBDA60-80CBDAA4 000004 0044+00 1/1 0/0 0/0 .rodata ccCylSrc$3635 */
const static dCcD_SrcCyl ccCylSrc = {
{
{0x0, {{0x0, 0x0, 0x0}, {0x20, 0x11}, 0x79}}, // mObj
{dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x0}, // mGObjAt
{dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x1}, // mGObjTg
{0x0}, // mGObjCo
}, // mObjInf
{
{0.0f, -500.0f, 0.0f}, // mCenter
1000.0f, // mRadius
1000.0f // mHeight
} // mCyl
};
/* 80CBC6F4-80CBC754 000114 0060+00 1/1 0/0 0/0 .text initCcCylinder__16daObjRIVERROCK_cFv */
void daObjRIVERROCK_c::initCcCylinder() {
// NONMATCHING
}
/* ############################################################################################## */
/* 80CBDAA4-80CBDAAC 000048 0004+04 1/3 0/0 0/0 .rodata @3642 */
SECTION_RODATA static f32 const lit_3642[1 + 1 /* padding */] = {
1000.0f,
/* padding */
0.0f,
};
COMPILER_STRIP_GATE(0x80CBDAA4, &lit_3642);
/* 80CBC754-80CBC7B4 000174 0060+00 1/1 0/0 0/0 .text SetCcCyl__16daObjRIVERROCK_cFv */
void daObjRIVERROCK_c::SetCcCyl() {
// NONMATCHING
}
/* 80CBC7B4-80CBC7D4 0001D4 0020+00 1/0 0/0 0/0 .text daObjRIVERROCK_Create__FP10fopAc_ac_c */
static void daObjRIVERROCK_Create(fopAc_ac_c* param_0) {
// NONMATCHING
}
/* 80CBC7D4-80CBC7F8 0001F4 0024+00 1/0 0/0 0/0 .text daObjRIVERROCK_Delete__FP16daObjRIVERROCK_c
*/
static void daObjRIVERROCK_Delete(daObjRIVERROCK_c* param_0) {
// NONMATCHING
}
/* ############################################################################################## */
/* 80CBDAAC-80CBDAB4 000050 0008+00 2/3 0/0 0/0 .rodata @3669 */
SECTION_RODATA static u8 const lit_3669[8] = {
0x43, 0x30, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00,
};
COMPILER_STRIP_GATE(0x80CBDAAC, &lit_3669);
/* 80CBC7F8-80CBC8BC 000218 00C4+00 1/1 0/0 0/0 .text BreakWaitAction__16daObjRIVERROCK_cFv */
void daObjRIVERROCK_c::BreakWaitAction() {
// NONMATCHING
}
/* ############################################################################################## */
/* 80CBDAB4-80CBDAB8 000058 0004+00 0/1 0/0 0/0 .rodata @3742 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3742 = 700.0f;
COMPILER_STRIP_GATE(0x80CBDAB4, &lit_3742);
#pragma pop
/* 80CBDAB8-80CBDABC 00005C 0004+00 0/1 0/0 0/0 .rodata @3743 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3743 = 5650.0f;
COMPILER_STRIP_GATE(0x80CBDAB8, &lit_3743);
#pragma pop
/* 80CBDABC-80CBDAC0 000060 0004+00 0/1 0/0 0/0 .rodata @3744 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3744 = 2850.0f;
COMPILER_STRIP_GATE(0x80CBDABC, &lit_3744);
#pragma pop
/* 80CBDAC0-80CBDAC4 000064 0004+00 0/1 0/0 0/0 .rodata @3745 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3745 = 300.0f;
COMPILER_STRIP_GATE(0x80CBDAC0, &lit_3745);
#pragma pop
/* 80CBDAC4-80CBDAC8 000068 0004+00 0/1 0/0 0/0 .rodata @3746 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3746 = -300.0f;
COMPILER_STRIP_GATE(0x80CBDAC4, &lit_3746);
#pragma pop
/* 80CBDAC8-80CBDACC 00006C 0004+00 0/3 0/0 0/0 .rodata @3747 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3747 = 1.0f;
COMPILER_STRIP_GATE(0x80CBDAC8, &lit_3747);
#pragma pop
/* 80CBDACC-80CBDAD0 000070 0004+00 0/2 0/0 0/0 .rodata @3748 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3748 = -1.0f;
COMPILER_STRIP_GATE(0x80CBDACC, &lit_3748);
#pragma pop
/* 80CBDAD0-80CBDAD4 000074 0004+00 0/1 0/0 0/0 .rodata @3749 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3749 = 3.0f;
COMPILER_STRIP_GATE(0x80CBDAD0, &lit_3749);
#pragma pop
/* 80CBC8BC-80CBCC3C 0002DC 0380+00 1/1 0/0 0/0 .text CheckBG__16daObjRIVERROCK_cFv */
void daObjRIVERROCK_c::CheckBG() {
// NONMATCHING
}
/* ############################################################################################## */
/* 80CBDAD4-80CBDAD8 000078 0004+00 1/1 0/0 0/0 .rodata @3758 */
SECTION_RODATA static f32 const lit_3758 = 3628.0f;
COMPILER_STRIP_GATE(0x80CBDAD4, &lit_3758);
/* 80CBDBE8-80CBDBEC 000008 0004+00 2/2 0/0 0/0 .bss None */
static u8 data_80CBDBE8[4];
/* 80CBDBEC-80CBDBF8 00000C 000C+00 1/1 0/0 0/0 .bss @3626 */
static u8 lit_3626[12];
/* 80CBDBF8-80CBDC08 000018 0010+00 4/4 0/0 0/0 .bss l_HIO */
static u8 l_HIO[16];
/* 80CBCC3C-80CBCCC0 00065C 0084+00 1/1 0/0 0/0 .text BreakMoveAction__16daObjRIVERROCK_cFv */
void daObjRIVERROCK_c::BreakMoveAction() {
// NONMATCHING
}
/* 80CBCCC0-80CBCD94 0006E0 00D4+00 1/1 0/0 0/0 .text BrokenAction__16daObjRIVERROCK_cFv
*/
void daObjRIVERROCK_c::BrokenAction() {
// NONMATCHING
}
/* 80CBCD94-80CBCDE8 0007B4 0054+00 1/1 0/0 0/0 .text BreakAction__16daObjRIVERROCK_cFv
*/
void daObjRIVERROCK_c::BreakAction() {
// NONMATCHING
}
/* 80CBCDE8-80CBCE2C 000808 0044+00 1/1 0/0 0/0 .text Action__16daObjRIVERROCK_cFv */
void daObjRIVERROCK_c::Action() {
// NONMATCHING
}
/* ############################################################################################## */
/* 80CBDAD8-80CBDADC 00007C 0004+00 0/1 0/0 0/0 .rodata @3861 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3861 = 200.0f;
COMPILER_STRIP_GATE(0x80CBDAD8, &lit_3861);
#pragma pop
/* 80CBDADC-80CBDAE0 000080 0004+00 0/1 0/0 0/0 .rodata @3862 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3862 = 280.0f;
COMPILER_STRIP_GATE(0x80CBDADC, &lit_3862);
#pragma pop
/* 80CBCE2C-80CBD1C4 00084C 0398+00 3/3 0/0 0/0 .text BreakSet__16daObjRIVERROCK_cFv */
void daObjRIVERROCK_c::BreakSet() {
// NONMATCHING
}
/* 80CBD1C4-80CBD204 000BE4 0040+00 1/1 0/0 0/0 .text WaitAction__16daObjRIVERROCK_cFv */
void daObjRIVERROCK_c::WaitAction() {
// NONMATCHING
}
/* ############################################################################################## */
/* 80CBDAE0-80CBDAE4 000084 0004+00 0/1 0/0 0/0 .rodata @3895 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3895 = 150.0f;
COMPILER_STRIP_GATE(0x80CBDAE0, &lit_3895);
#pragma pop
/* 80CBDAE4-80CBDAE8 000088 0004+00 0/1 0/0 0/0 .rodata @3896 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3896 = -150.0f;
COMPILER_STRIP_GATE(0x80CBDAE4, &lit_3896);
#pragma pop
/* 80CBD204-80CBD2FC 000C24 00F8+00 1/1 0/0 0/0 .text setBaseMtx__16daObjRIVERROCK_cFv */
void daObjRIVERROCK_c::setBaseMtx() {
// NONMATCHING
}
/* 80CBD2FC-80CBD328 000D1C 002C+00 1/0 0/0 0/0 .text daObjRIVERROCK_Draw__FP16daObjRIVERROCK_c */
static void daObjRIVERROCK_Draw(daObjRIVERROCK_c* param_0) {
// NONMATCHING
}
/* 80CBD328-80CBD348 000D48 0020+00 2/1 0/0 0/0 .text daObjRIVERROCK_Execute__FP16daObjRIVERROCK_c
*/
static void daObjRIVERROCK_Execute(daObjRIVERROCK_c* param_0) {
// NONMATCHING
}
/* ############################################################################################## */
/* 80CBDB14-80CBDB14 0000B8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
#pragma push
#pragma force_active on
SECTION_DEAD static char const* const stringBase_80CBDB1E = "M_RiverRock.bmd";
#pragma pop
/* 80CBD348-80CBD3C0 000D68 0078+00 1/0 0/0 0/0 .text CreateHeap__16daObjRIVERROCK_cFv */
void daObjRIVERROCK_c::CreateHeap() {
// NONMATCHING
}
/* ############################################################################################## */
/* 80CBDAE8-80CBDAEC 00008C 0004+00 0/1 0/0 0/0 .rodata @4026 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_4026 = -9.0f;
COMPILER_STRIP_GATE(0x80CBDAE8, &lit_4026);
#pragma pop
/* 80CBDAEC-80CBDAF0 000090 0004+00 0/1 0/0 0/0 .rodata @4027 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_4027 = 0.5f;
COMPILER_STRIP_GATE(0x80CBDAEC, &lit_4027);
#pragma pop
/* 80CBDAF0-80CBDAF4 000094 0004+00 0/1 0/0 0/0 .rodata @4028 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_4028 = 1.0f / 20.0f;
COMPILER_STRIP_GATE(0x80CBDAF0, &lit_4028);
#pragma pop
/* 80CBDAF4-80CBDAF8 000098 0004+00 0/1 0/0 0/0 .rodata @4029 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_4029 = 2800.0f;
COMPILER_STRIP_GATE(0x80CBDAF4, &lit_4029);
#pragma pop
/* 80CBDAF8-80CBDAFC 00009C 0004+00 0/1 0/0 0/0 .rodata @4030 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_4030 = 6000.0f;
COMPILER_STRIP_GATE(0x80CBDAF8, &lit_4030);
#pragma pop
/* 80CBDAFC-80CBDB00 0000A0 0004+00 0/1 0/0 0/0 .rodata @4031 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_4031 = -6000.0f;
COMPILER_STRIP_GATE(0x80CBDAFC, &lit_4031);
#pragma pop
/* 80CBDB00-80CBDB04 0000A4 0004+00 0/2 0/0 0/0 .rodata @4032 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_4032 = -500.0f;
COMPILER_STRIP_GATE(0x80CBDB00, &lit_4032);
#pragma pop
/* 80CBDB04-80CBDB0C 0000A8 0008+00 0/1 0/0 0/0 .rodata @4034 */
#pragma push
#pragma force_active on
SECTION_RODATA static u8 const lit_4034[8] = {
0x43, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
COMPILER_STRIP_GATE(0x80CBDB04, &lit_4034);
#pragma pop
/* 80CBDB14-80CBDB14 0000B8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
#pragma push
#pragma force_active on
SECTION_DEAD static char const* const stringBase_80CBDB2E = "M_RiverRock.dzb";
#pragma pop
/* 80CBD3C0-80CBD71C 000DE0 035C+00 1/1 0/0 0/0 .text create__16daObjRIVERROCK_cFv */
void daObjRIVERROCK_c::create() {
// NONMATCHING
}
/* 80CBD71C-80CBD764 00113C 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGCylFv */
// cM3dGCyl::~cM3dGCyl() {
extern "C" void __dt__8cM3dGCylFv() {
// NONMATCHING
}
/* 80CBD764-80CBD7AC 001184 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGAabFv */
// cM3dGAab::~cM3dGAab() {
extern "C" void __dt__8cM3dGAabFv() {
// NONMATCHING
}
/* 80CBD7AC-80CBD7B4 0011CC 0008+00 1/0 0/0 0/0 .text
* daObjRIVERROCK_IsDelete__FP16daObjRIVERROCK_c */
static bool daObjRIVERROCK_IsDelete(daObjRIVERROCK_c* param_0) {
return true;
}
/* ############################################################################################## */
/* 80CBDB0C-80CBDB10 0000B0 0004+00 0/1 0/0 0/0 .rodata @4119 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_4119 = -1000.0f;
COMPILER_STRIP_GATE(0x80CBDB0C, &lit_4119);
#pragma pop
/* 80CBDB10-80CBDB14 0000B4 0004+00 0/1 0/0 0/0 .rodata @4120 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_4120 = 500.0f;
COMPILER_STRIP_GATE(0x80CBDB10, &lit_4120);
#pragma pop
/* 80CBD7B4-80CBD814 0011D4 0060+00 1/0 0/0 0/0 .text Create__16daObjRIVERROCK_cFv */
void daObjRIVERROCK_c::Create() {
// NONMATCHING
}
/* 80CBD814-80CBD8E0 001234 00CC+00 1/0 0/0 0/0 .text Execute__16daObjRIVERROCK_cFPPA3_A4_f */
void daObjRIVERROCK_c::Execute(f32 (**param_0)[3][4]) {
// NONMATCHING
}
/* 80CBD8E0-80CBD964 001300 0084+00 1/0 0/0 0/0 .text Draw__16daObjRIVERROCK_cFv */
void daObjRIVERROCK_c::Draw() {
// NONMATCHING
}
/* 80CBD964-80CBD9C4 001384 0060+00 1/0 0/0 0/0 .text Delete__16daObjRIVERROCK_cFv */
void daObjRIVERROCK_c::Delete() {
// NONMATCHING
}
/* 80CBD9C4-80CBDA0C 0013E4 0048+00 2/1 0/0 0/0 .text __dt__20daObjRIVERROCK_HIO_cFv */
daObjRIVERROCK_HIO_c::~daObjRIVERROCK_HIO_c() {
// NONMATCHING
}
/* 80CBDA0C-80CBDA48 00142C 003C+00 0/0 1/0 0/0 .text __sinit_d_a_obj_riverrock_cpp */
void __sinit_d_a_obj_riverrock_cpp() {
// NONMATCHING
}
#pragma push
#pragma force_active on
REGISTER_CTORS(0x80CBDA0C, __sinit_d_a_obj_riverrock_cpp);
#pragma pop
/* 80CBDB14-80CBDB14 0000B8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */