diff options
| author | robojumper <robojumper@gmail.com> | 2025-04-27 14:29:38 +0200 |
|---|---|---|
| committer | robojumper <robojumper@gmail.com> | 2025-04-27 14:32:58 +0200 |
| commit | ca2f6bde481292758263f5898a07da512f75b0ee (patch) | |
| tree | 1aba9fdbc45b1507a1d35506bfa3b63072dd624d /include | |
| parent | 225ce0d4ce99fa2c1b34a5486bbc0e0c084b62a6 (diff) | |
JPADynamicsBlock OK
Diffstat (limited to 'include')
| -rw-r--r-- | include/JSystem/JParticle/JPABaseShape.h | 18 | ||||
| -rw-r--r-- | include/JSystem/JParticle/JPAExTexShape.h | 10 | ||||
| -rw-r--r-- | include/JSystem/JParticle/JPAParticle.h | 2 | ||||
| -rw-r--r-- | include/egg/math/eggVector.h | 4 |
4 files changed, 23 insertions, 11 deletions
diff --git a/include/JSystem/JParticle/JPABaseShape.h b/include/JSystem/JParticle/JPABaseShape.h index dccd5338..de68f2b7 100644 --- a/include/JSystem/JParticle/JPABaseShape.h +++ b/include/JSystem/JParticle/JPABaseShape.h @@ -91,13 +91,13 @@ public: u32 getTilingT() const { return (mpData->mFlags >> 28) & 0x01; } // was 26 BOOL isGlblClrAnm() const { return mpData->mFlags & 0x00001000; } BOOL isGlblTexAnm() const { return mpData->mFlags & 0x00004000; } - BOOL isPrjTex() const { return mpData->mFlags & 0x00100000; } - bool isDrawFwdAhead() const { return !!(mpData->mFlags & 0x00200000); } - bool isDrawPrntAhead() const { return !!(mpData->mFlags & 0x00400000); } - bool isClipOn() const { return !!(mpData->mFlags & 0x00800000); } - BOOL isTexCrdAnm() const { return mpData->mFlags & 0x01000000; } - bool isNoDrawParent() const { return !!(mpData->mFlags & 0x08000000); } - bool isNoDrawChild() const { return !!(mpData->mFlags & 0x10000000); } + BOOL isPrjTex() const { return mpData->mFlags & 0x00400000; } // was 0x00100000 + bool isDrawFwdAhead() const { return !!(mpData->mFlags & 0x00800000); } // was 0x00200000 + bool isDrawPrntAhead() const { return !!(mpData->mFlags & 0x01000000); } // was 0x00400000 + BOOL isClipOn() const { return (mpData->mFlags & 0x02000000); } // was 0x00800000 + BOOL isTexCrdAnm() const { return mpData->mFlags & 0x04000000; } // was 0x01000000 + bool isNoDrawParent() const { return !!((mpData->mFlags >> 29) & 1); } // was 0x08000000 + bool isNoDrawChild() const { return !!((mpData->mFlags >> 30) & 1); } // was 0x10000000 BOOL isPrmAnm() const { return mpData->mClrFlg & 0x02; } BOOL isEnvAnm() const { return mpData->mClrFlg & 0x08; } @@ -177,6 +177,8 @@ void JPACalcClrIdxMerge(JPAEmitterWorkData*, JPABaseParticle*); void JPACalcClrIdxRandom(JPAEmitterWorkData*, JPABaseParticle*); void JPACalcColorCopy(JPAEmitterWorkData*, JPABaseParticle*); +// SS addition +void fn_8031C2C0(JPAEmitterWorkData*); void JPADrawStripe(JPAEmitterWorkData*); void JPADrawStripeX(JPAEmitterWorkData*); void JPADrawEmitterCallBackB(JPAEmitterWorkData*); @@ -208,6 +210,8 @@ void JPALoadTexAnm(JPAEmitterWorkData*, JPABaseParticle*); void JPASetPointSize(JPAEmitterWorkData*, JPABaseParticle*); void JPASetLineWidth(JPAEmitterWorkData*, JPABaseParticle*); void JPALoadCalcTexCrdMtxAnm(JPAEmitterWorkData*, JPABaseParticle*); +// SS addition +void fn_8031A8C0(JPAEmitterWorkData*, JPABaseParticle*); void JPARegistAlpha(JPAEmitterWorkData*, JPABaseParticle*); void JPARegistEnv(JPAEmitterWorkData*, JPABaseParticle*); void JPARegistAlphaEnv(JPAEmitterWorkData*, JPABaseParticle*); diff --git a/include/JSystem/JParticle/JPAExTexShape.h b/include/JSystem/JParticle/JPAExTexShape.h index 29e92344..91260f7d 100644 --- a/include/JSystem/JParticle/JPAExTexShape.h +++ b/include/JSystem/JParticle/JPAExTexShape.h @@ -1,6 +1,7 @@ #ifndef JPAEXTEXSHAPE_H #define JPAEXTEXSHAPE_H +#include "JSystem/JParticle/JPABaseShape.h" #include "common.h" class JPAEmitterWorkData; @@ -16,8 +17,9 @@ struct JPAExTexShapeData { /* 0x08 */ u32 mFlags; /* 0x0C */ f32 mIndTexMtx[2][3]; - /* 0x24 */ s8 mExpScale; - /* 0x25 */ u8 _0x25[0x4E - 0x25]; + /* 0x24 */ u8 _0x24[0x4C - 0x24]; + /* 0x4C */ u8 field_0x4C; + /* 0x4D */ s8 mExpScale; /* 0x4E */ s8 mIndTexIdx; /* 0x4F */ s8 mSecTexIdx; }; @@ -31,14 +33,16 @@ public: JPAExTexShape(u8 const*); const f32* getIndTexMtx() const { return &mpData->mIndTexMtx[0][0]; } + u8 getfield_0x4C() const { return mpData->field_0x4C; } s8 getExpScale() const { return mpData->mExpScale; } u8 getIndTexIdx() const { return mpData->mIndTexIdx; } u8 getSecTexIdx() const { return mpData->mSecTexIdx; } bool isUseIndirect() const { return !!(mpData->mFlags & 0x01); } - bool isUseSecTex() const { return !!(mpData->mFlags & 0x0100); } + BOOL isUseSecTex() const { return (mpData->mFlags & 0x0100); } public: const JPAExTexShapeData* mpData; + void fn_8031DE80(JPABaseShape *bsp, f32); }; void JPALoadExTex(JPAEmitterWorkData*); diff --git a/include/JSystem/JParticle/JPAParticle.h b/include/JSystem/JParticle/JPAParticle.h index cc56b8e1..b0430430 100644 --- a/include/JSystem/JParticle/JPAParticle.h +++ b/include/JSystem/JParticle/JPAParticle.h @@ -31,7 +31,7 @@ public: void setOffsetPosition(const EGG::Vector3f& pos) { mOffsetPosition.set(pos); } void setOffsetPosition(f32 x, f32 y, f32 z) { mOffsetPosition.set(x, y, z); } void getOffsetPosition(EGG::Vector3f& pos) { pos.set(mOffsetPosition); } - u16 getRotateAngle() const { return mRotateAngle; } + s16 getRotateAngle() const { return mRotateAngle; } void getGlobalPosition(EGG::Vector3f& pos) const { pos.set(mPosition); } f32 getParticleScaleX() const { return mParticleScaleX; } f32 getParticleScaleY() const { return mParticleScaleY; } diff --git a/include/egg/math/eggVector.h b/include/egg/math/eggVector.h index f1256a6a..34ccb324 100644 --- a/include/egg/math/eggVector.h +++ b/include/egg/math/eggVector.h @@ -36,6 +36,10 @@ struct Vector3f : public nw4r::math::VEC3 { return *this; } + void mul(const Vector3f &v, const Vector3f &w) { + set(v.x * w.x, v.y * w.y, v.z * w.z); + } + Vector3f &operator*=(const Vector3f &v) { set(x * v.x, y * v.y, z * v.z); return *this; |
