mirror of
https://github.com/AxioDL/metaforce.git
synced 2025-12-09 01:07:43 +00:00
Humungous refactor
This commit is contained in:
@@ -5,7 +5,7 @@
|
||||
|
||||
/* Documentation at: http://www.metroid2002.com/retromodding/wiki/Particle_Script#Mod_Vector_Elements */
|
||||
|
||||
namespace pshag
|
||||
namespace urde
|
||||
{
|
||||
|
||||
class CMVEImplosion : public CModVectorElement
|
||||
@@ -18,7 +18,7 @@ class CMVEImplosion : public CModVectorElement
|
||||
public:
|
||||
CMVEImplosion(CVectorElement* a, CRealElement* b, CRealElement* c, CRealElement* d, bool e)
|
||||
: x4_implPoint(a), x8_magScale(b), xc_maxMag(c), x10_minMag(d), x14_enableMinMag(e) {}
|
||||
bool GetValue(int frame, Zeus::CVector3f& pVel, Zeus::CVector3f& pPos) const;
|
||||
bool GetValue(int frame, zeus::CVector3f& pVel, zeus::CVector3f& pPos) const;
|
||||
};
|
||||
|
||||
class CMVEExponentialImplosion : public CModVectorElement
|
||||
@@ -31,7 +31,7 @@ class CMVEExponentialImplosion : public CModVectorElement
|
||||
public:
|
||||
CMVEExponentialImplosion(CVectorElement* a, CRealElement* b, CRealElement* c, CRealElement* d, bool e)
|
||||
: x4_implPoint(a), x8_magScale(b), xc_maxMag(c), x10_minMag(d), x14_enableMinMag(e) {}
|
||||
bool GetValue(int frame, Zeus::CVector3f& pVel, Zeus::CVector3f& pPos) const;
|
||||
bool GetValue(int frame, zeus::CVector3f& pVel, zeus::CVector3f& pPos) const;
|
||||
};
|
||||
|
||||
class CMVELinearImplosion : public CModVectorElement
|
||||
@@ -44,7 +44,7 @@ class CMVELinearImplosion : public CModVectorElement
|
||||
public:
|
||||
CMVELinearImplosion(CVectorElement* a, CRealElement* b, CRealElement* c, CRealElement* d, bool e)
|
||||
: x4_implPoint(a), x8_magScale(b), xc_maxMag(c), x10_minMag(d), x14_enableMinMag(e) {}
|
||||
bool GetValue(int frame, Zeus::CVector3f& pVel, Zeus::CVector3f& pPos) const;
|
||||
bool GetValue(int frame, zeus::CVector3f& pVel, zeus::CVector3f& pPos) const;
|
||||
};
|
||||
|
||||
class CMVETimeChain : public CModVectorElement
|
||||
@@ -55,7 +55,7 @@ class CMVETimeChain : public CModVectorElement
|
||||
public:
|
||||
CMVETimeChain(CModVectorElement* a, CModVectorElement* b, CIntElement* c)
|
||||
: x4_a(a), x8_b(b), xc_swFrame(c) {}
|
||||
bool GetValue(int frame, Zeus::CVector3f& pVel, Zeus::CVector3f& pPos) const;
|
||||
bool GetValue(int frame, zeus::CVector3f& pVel, zeus::CVector3f& pPos) const;
|
||||
};
|
||||
|
||||
class CMVEBounce : public CModVectorElement
|
||||
@@ -66,11 +66,11 @@ class CMVEBounce : public CModVectorElement
|
||||
std::unique_ptr<CRealElement> x10_restitution;
|
||||
bool x14_planePrecomputed;
|
||||
bool x15_dieOnPenetrate;
|
||||
Zeus::CVector3f x18_planeValidatedNormal;
|
||||
zeus::CVector3f x18_planeValidatedNormal;
|
||||
float x24_planeD;
|
||||
public:
|
||||
CMVEBounce(CVectorElement* a, CVectorElement* b, CRealElement* c, CRealElement* d, bool e);
|
||||
bool GetValue(int frame, Zeus::CVector3f& pVel, Zeus::CVector3f& pPos) const;
|
||||
bool GetValue(int frame, zeus::CVector3f& pVel, zeus::CVector3f& pPos) const;
|
||||
};
|
||||
|
||||
class CMVEConstant : public CModVectorElement
|
||||
@@ -81,16 +81,16 @@ class CMVEConstant : public CModVectorElement
|
||||
public:
|
||||
CMVEConstant(CRealElement* a, CRealElement* b, CRealElement* c)
|
||||
: x4_x(a), x8_y(b), xc_z(c) {}
|
||||
bool GetValue(int frame, Zeus::CVector3f& pVel, Zeus::CVector3f& pPos) const;
|
||||
bool GetValue(int frame, zeus::CVector3f& pVel, zeus::CVector3f& pPos) const;
|
||||
};
|
||||
|
||||
class CMVEFastConstant : public CModVectorElement
|
||||
{
|
||||
Zeus::CVector3f x4_val;
|
||||
zeus::CVector3f x4_val;
|
||||
public:
|
||||
CMVEFastConstant(float a, float b, float c)
|
||||
: x4_val(a, b, c) {}
|
||||
bool GetValue(int frame, Zeus::CVector3f& pVel, Zeus::CVector3f& pPos) const;
|
||||
bool GetValue(int frame, zeus::CVector3f& pVel, zeus::CVector3f& pPos) const;
|
||||
};
|
||||
|
||||
class CMVEGravity : public CModVectorElement
|
||||
@@ -99,7 +99,7 @@ class CMVEGravity : public CModVectorElement
|
||||
public:
|
||||
CMVEGravity(CVectorElement* a)
|
||||
: x4_a(a) {}
|
||||
bool GetValue(int frame, Zeus::CVector3f& pVel, Zeus::CVector3f& pPos) const;
|
||||
bool GetValue(int frame, zeus::CVector3f& pVel, zeus::CVector3f& pPos) const;
|
||||
};
|
||||
|
||||
class CMVEExplode : public CModVectorElement
|
||||
@@ -109,7 +109,7 @@ class CMVEExplode : public CModVectorElement
|
||||
public:
|
||||
CMVEExplode(CRealElement* a, CRealElement* b)
|
||||
: x4_a(a), x8_b(b) {}
|
||||
bool GetValue(int frame, Zeus::CVector3f& pVel, Zeus::CVector3f& pPos) const;
|
||||
bool GetValue(int frame, zeus::CVector3f& pVel, zeus::CVector3f& pPos) const;
|
||||
};
|
||||
|
||||
class CMVESetPosition : public CModVectorElement
|
||||
@@ -118,7 +118,7 @@ class CMVESetPosition : public CModVectorElement
|
||||
public:
|
||||
CMVESetPosition(CVectorElement* a)
|
||||
: x4_a(a) {}
|
||||
bool GetValue(int frame, Zeus::CVector3f& pVel, Zeus::CVector3f& pPos) const;
|
||||
bool GetValue(int frame, zeus::CVector3f& pVel, zeus::CVector3f& pPos) const;
|
||||
};
|
||||
|
||||
class CMVEPulse : public CModVectorElement
|
||||
@@ -130,7 +130,7 @@ class CMVEPulse : public CModVectorElement
|
||||
public:
|
||||
CMVEPulse(CIntElement* a, CIntElement* b, CModVectorElement* c, CModVectorElement* d)
|
||||
: x4_aDuration(a), x8_bDuration(b), xc_aVal(c), x10_bVal(d) {}
|
||||
bool GetValue(int frame, Zeus::CVector3f& pVel, Zeus::CVector3f& pPos) const;
|
||||
bool GetValue(int frame, zeus::CVector3f& pVel, zeus::CVector3f& pPos) const;
|
||||
};
|
||||
|
||||
class CMVEWind : public CModVectorElement
|
||||
@@ -140,7 +140,7 @@ class CMVEWind : public CModVectorElement
|
||||
public:
|
||||
CMVEWind(CVectorElement* a, CRealElement* b)
|
||||
: x4_velocity(a), x8_factor(b) {}
|
||||
bool GetValue(int frame, Zeus::CVector3f& pVel, Zeus::CVector3f& pPos) const;
|
||||
bool GetValue(int frame, zeus::CVector3f& pVel, zeus::CVector3f& pPos) const;
|
||||
};
|
||||
|
||||
class CMVESwirl : public CModVectorElement
|
||||
@@ -152,7 +152,7 @@ class CMVESwirl : public CModVectorElement
|
||||
public:
|
||||
CMVESwirl(CVectorElement* a, CVectorElement* b, CRealElement* c, CRealElement* d)
|
||||
: x4_helixPoint(a), x8_curveBinormal(b), xc_targetRadius(c), x10_tangentialVelocity(d) {}
|
||||
bool GetValue(int frame, Zeus::CVector3f& pVel, Zeus::CVector3f& pPos) const;
|
||||
bool GetValue(int frame, zeus::CVector3f& pVel, zeus::CVector3f& pPos) const;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user