diff options
| author | hatal175 <hatal175@users.noreply.github.com> | 2025-08-06 04:10:43 +0300 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-08-05 18:10:43 -0700 |
| commit | ee608ceaac464790f596935b2b0266777431f9fc (patch) | |
| tree | f0e50bf466bd85c71099c99a63f912c24839037e /include | |
| parent | d629cc383bb89b1558154efdcb89192b7bd826c9 (diff) | |
d_a_obj_fallobj OK (#2568)
* d_a_obj_fallobj OK
* J3DMatBlock equivalent
Diffstat (limited to 'include')
| -rw-r--r-- | include/JSystem/J3DGraphBase/J3DMatBlock.h | 31 | ||||
| -rw-r--r-- | include/Z2AudioLib/Z2SoundObject.h | 2 | ||||
| -rw-r--r-- | include/d/actor/d_a_obj_fallobj.h | 54 |
3 files changed, 54 insertions, 33 deletions
diff --git a/include/JSystem/J3DGraphBase/J3DMatBlock.h b/include/JSystem/J3DGraphBase/J3DMatBlock.h index 9d25587042..79f309e003 100644 --- a/include/JSystem/J3DGraphBase/J3DMatBlock.h +++ b/include/JSystem/J3DGraphBase/J3DMatBlock.h @@ -1000,8 +1000,8 @@ struct J3DIndTexCoordScale : public J3DIndTexCoordScaleInfo { /* 8000E0E4 */ J3DIndTexCoordScale() : J3DIndTexCoordScaleInfo(j3dDefaultIndTexCoordScaleInfo) {} J3DIndTexCoordScale(J3DIndTexCoordScaleInfo const& info) : J3DIndTexCoordScaleInfo(info) {} /* 8000E024 */ ~J3DIndTexCoordScale() {} - GXIndTexScale getScaleS() { return (GXIndTexScale)mScaleS; } - GXIndTexScale getScaleT() { return (GXIndTexScale)mScaleT; } + u8 getScaleS() { return mScaleS; } + u8 getScaleT() { return mScaleT; } J3DIndTexCoordScale& operator=(const J3DIndTexCoordScale& other) { //__memcpy(this, &other, sizeof(J3DIndTexCoordScaleInfo)); @@ -1020,8 +1020,8 @@ struct J3DIndTexMtx : public J3DIndTexMtxInfo { /* 8000E0F0 */ J3DIndTexMtx() { *(J3DIndTexMtxInfo*)this = j3dDefaultIndTexMtxInfo; } J3DIndTexMtx(J3DIndTexMtxInfo const& info) { *(J3DIndTexMtxInfo*)this = info; } /* 8000E064 */ ~J3DIndTexMtx() {} - void load(u32 param_1) { - J3DGDSetIndTexMtx((GXIndTexMtxID)(param_1 + 1), field_0x0, field_0x18); + void load(u32 param_1) const { + J3DGDSetIndTexMtx((GXIndTexMtxID)(param_1 + 1), (Mtx3P)field_0x0, field_0x18); } }; // Size: 0x1C @@ -1045,8 +1045,8 @@ extern const J3DIndTexOrderInfo j3dDefaultIndTexOrderNull; struct J3DIndTexOrder : public J3DIndTexOrderInfo { /* 8000E128 */ J3DIndTexOrder() : J3DIndTexOrderInfo(j3dDefaultIndTexOrderNull) {} J3DIndTexOrder(J3DIndTexOrderInfo const& info) : J3DIndTexOrderInfo(info) {} - GXTexMapID getMap() { return (GXTexMapID)mMap; } - GXTexCoordID getCoord() { return (GXTexCoordID)mCoord; } + u8 getMap() const { return (GXTexMapID)mMap; } + u8 getCoord() const { return (GXTexCoordID)mCoord; } J3DIndTexOrder& operator=(const J3DIndTexOrder& other) { //__memcpy(this, &other, sizeof(J3DIndTexOrderInfo)); @@ -1195,23 +1195,22 @@ struct J3DColorChan { mColorChanID = calcColorChanID(info.mEnable, info.mMatSrc, info.mLightMask, info.mDiffuseFn, info.mAttnFn, ambSrc); } - u8 getLightMask() { return ((mColorChanID >> 2) & 0xf) | ((mColorChanID >> 11) & 0xf) << 4; } + u8 getLightMask() const { return ((mColorChanID >> 2) & 0xf) | ((mColorChanID >> 11) & 0xf) << 4; } void setLightMask(u8 param_1) { mColorChanID = (mColorChanID & ~0x3c) | ((param_1 & 0xf) << 2); mColorChanID = (mColorChanID & ~0x7800) | ((param_1 & 0xf0) << 7); } - u8 getEnable() { return (mColorChanID >> 1) & 1; } - GXColorSrc getAmbSrc() { return (GXColorSrc)((mColorChanID >> 6) & 1); } - GXColorSrc getMatSrc() { return (GXColorSrc)(mColorChanID & 1); } - GXDiffuseFn getDiffuseFn() { return (GXDiffuseFn) ((mColorChanID >> 7) & 3); } + u8 getEnable() const { return (mColorChanID >> 1) & 1; } + u8 getAmbSrc() const { return (GXColorSrc)((mColorChanID >> 6) & 1); } + u8 getMatSrc() const { return (GXColorSrc)(mColorChanID & 1); } + u8 getDiffuseFn() const { return ((mColorChanID >> 7) & 3); } // This function has to appear in J3DMatBlock.cpp because it generates extra data in .sdata2 - inline GXAttnFn getAttnFn(); + inline u8 getAttnFn() const; - // NONMATCHING regalloc - void load() { - J3DGDWrite_u32(setChanCtrlMacro(getEnable(), getAmbSrc(), getMatSrc(), getLightMask(), - getDiffuseFn(), getAttnFn())); + void load() const { + J3DGDWrite_u32(setChanCtrlMacro(getEnable(), (GXColorSrc)getAmbSrc(), (GXColorSrc)getMatSrc(), getLightMask(), + (GXDiffuseFn)getDiffuseFn(), (GXAttnFn)getAttnFn())); } /* 0x0 */ u16 mColorChanID; diff --git a/include/Z2AudioLib/Z2SoundObject.h b/include/Z2AudioLib/Z2SoundObject.h index cfb2f66c50..30c7157344 100644 --- a/include/Z2AudioLib/Z2SoundObject.h +++ b/include/Z2AudioLib/Z2SoundObject.h @@ -17,7 +17,7 @@ public: bool isAlive() const { return mIsInitialized; } void setSoundStarter(Z2SoundStarter* i_soundStarter) { mSoundStarter = i_soundStarter; } - virtual void framework(u32, s8); + virtual void framework(u32, s8 reverb); virtual void dispose(); virtual bool stopOK(Z2SoundHandlePool& pool); virtual void init(Vec* pSoundPos, u8 pNumHandles); diff --git a/include/d/actor/d_a_obj_fallobj.h b/include/d/actor/d_a_obj_fallobj.h index cddb5da81d..bc55cfd584 100644 --- a/include/d/actor/d_a_obj_fallobj.h +++ b/include/d/actor/d_a_obj_fallobj.h @@ -15,50 +15,72 @@ */ class daObjFallObj_c : public dBgS_MoveBgActor { public: -public: + enum Action { + ACTION_WAIT, + ACTION_COUNTDOWN, + ACTION_FALL, + ACTION_FALL_START, + ACTION_END, + ACTION_FOLLOW_FALL, + }; + /* 80BE39B8 */ void initBaseMtx(); /* 80BE3A24 */ void setBaseMtx(); /* 80BE3A88 */ int Create(); - /* 80BE3BA8 */ void getFallTime(); - /* 80BE3BD4 */ void getFallHeight(); + /* 80BE3BA8 */ s16 getFallTime(); + /* 80BE3BD4 */ f32 getFallHeight(); /* 80BE3C28 */ int CreateHeap(); /* 80BE3C98 */ int create1st(); /* 80BE3D24 */ int Execute(Mtx**); /* 80BE4138 */ void action(); - /* 80BE4228 */ void action_wait(bool); - /* 80BE42C0 */ void action_fallStart(); + /* 80BE4228 */ bool action_wait(bool); + /* 80BE42C0 */ bool action_fallStart(); /* 80BE43E4 */ void action_countdown(); /* 80BE45F4 */ void action_fall(); /* 80BE466C */ void action_end(); /* 80BE4670 */ void action_follow_fall(); - /* 80BE4700 */ void checkHang(); - /* 80BE47A0 */ void checkHang2(); + /* 80BE4700 */ bool checkHang(); + /* 80BE47A0 */ bool checkHang2(); /* 80BE48A4 */ int Draw(); /* 80BE4948 */ int Delete(); u32 getTime() { return fopAcM_GetParamBit(this, 8, 8); } u32 getPos() { return fopAcM_GetParamBit(this, 0x14, 8); } - BOOL checkFallStart() { return fopAcM_SearchByID(parentActorID)->speed.y != 0.0f; } + static BOOL checkFallStart(fopAc_ac_c* actor) { return actor->speed.y != 0.0f; } private: /* 0x5A0 */ request_of_phase_process_class mPhaseReq; /* 0x5A8 */ Mtx mMtx; /* 0x5D8 */ u8 field_0x5d8; - /* 0x5D9 */ u8 field_0x5d9; - /* 0x5DA */ s16 field_0x5da; + /* 0x5D9 */ u8 mTimer; + /* 0x5DA */ s16 mFallTime; /* 0x5DC */ s16 field_0x5dc; /* 0x5DE */ s16 field_0x5de; - /* 0x5E0 */ s32 field_0x5e0; - /* 0x5E4 */ u8 field_0x5e4; - /* 0x5E5 */ u8 field_0x5e5; + /* 0x5E0 */ int field_0x5e0; + /* 0x5E4 */ bool field_0x5e4; + /* 0x5E5 */ bool field_0x5e5; /* 0x5E8 */ J3DModel* mpModel; - /* 0x5EC */ s32 field_0x5ec; - /* 0x5F0 */ u8 field_0x5f0; - /* 0x5F1 */ u8 field_0x5f1; + /* 0x5EC */ fpc_ProcID mChildId; + /* 0x5F0 */ u8 mAction; + /* 0x5F1 */ bool mVibrationOn; /* 0x5F4 */ Z2SoundObjSimple mSoundObj; }; STATIC_ASSERT(sizeof(daObjFallObj_c) == 0x614); +#ifdef DEBUG +class daObjFallObj_HIO_c : public mDoHIO_entry_c { +public: + daObjFallObj_HIO_c(); + void genMessage(JORMContext* ctx); + + /* 0x6 */ s8 mId; + /* 0x8 */ s16 mMovementShake; + /* 0xA */ s16 mStaticShake; + /* 0xC */ u8 mNoFall; + /* 0xD */ u8 mCheckDisplay; +}; +#endif + #endif /* D_A_OBJ_FALLOBJ_H */ |
