mirror of
https://github.com/zeldaret/ss
synced 2026-07-08 13:56:15 -04:00
JPADynamicsBlock OK
This commit is contained in:
@@ -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*);
|
||||
|
||||
@@ -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*);
|
||||
|
||||
@@ -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; }
|
||||
|
||||
@@ -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;
|
||||
|
||||
Reference in New Issue
Block a user