mirror of
https://github.com/zeldaret/tp
synced 2026-07-09 23:01:41 -04:00
npcT / JUTGamePad work
This commit is contained in:
@@ -19,7 +19,7 @@ public:
|
||||
/* 80014E94 */ virtual bool getAnmTransform(u8);
|
||||
/* 80014EA4 */ virtual void setWeight(u8, f32);
|
||||
/* 80014EA8 */ virtual void getWeight(u8) const;
|
||||
virtual void init(Vec const&, Mtx*) = 0;
|
||||
virtual void init(Vec const& param_0, Mtx*) = 0;
|
||||
virtual void calc() = 0;
|
||||
|
||||
static J3DMtxBuffer* getMtxBuffer() { return mMtxBuffer; }
|
||||
@@ -34,8 +34,14 @@ public:
|
||||
/* 8000FA8C */ virtual ~J3DMtxCalcNoAnmBase();
|
||||
};
|
||||
|
||||
template <typename A, typename B>
|
||||
class J3DMtxCalcNoAnm : public J3DMtxCalcNoAnmBase, public A, public B {};
|
||||
template <class A, class B>
|
||||
class J3DMtxCalcNoAnm : public J3DMtxCalcNoAnmBase, public A, public B {
|
||||
public:
|
||||
J3DMtxCalcNoAnm() {}
|
||||
virtual ~J3DMtxCalcNoAnm() {}
|
||||
virtual void init(Vec const& param_0, f32 const (¶m_1)[3][4]);
|
||||
virtual void calc();
|
||||
};
|
||||
|
||||
class J3DJoint;
|
||||
typedef int (*J3DJointCallBack)(J3DJoint*, int);
|
||||
@@ -53,6 +59,7 @@ public:
|
||||
J3DJoint* getYounger() { return mYounger; }
|
||||
void setYounger(J3DJoint* pYounger) { mYounger = pYounger; }
|
||||
void setCurrentMtxCalc(J3DMtxCalc* pMtxCalc) { mCurrentMtxCalc = pMtxCalc; }
|
||||
J3DTransformInfo& getTransformInfo() { return mTransformInfo; }
|
||||
|
||||
static J3DMtxCalc* mCurrentMtxCalc;
|
||||
|
||||
|
||||
@@ -15,10 +15,10 @@ class J3DMaterialTable {
|
||||
public:
|
||||
/* 8032F5A8 */ void clear();
|
||||
/* 8032F5D0 */ J3DMaterialTable();
|
||||
/* 8032F64C */ bool removeMatColorAnimator(J3DAnmColor*);
|
||||
/* 8032F6F8 */ void removeTexNoAnimator(J3DAnmTexPattern*);
|
||||
/* 8032F7B4 */ void removeTexMtxAnimator(J3DAnmTextureSRTKey*);
|
||||
/* 8032F880 */ void removeTevRegAnimator(J3DAnmTevRegKey*);
|
||||
/* 8032F64C */ int removeMatColorAnimator(J3DAnmColor*);
|
||||
/* 8032F6F8 */ int removeTexNoAnimator(J3DAnmTexPattern*);
|
||||
/* 8032F7B4 */ int removeTexMtxAnimator(J3DAnmTextureSRTKey*);
|
||||
/* 8032F880 */ int removeTevRegAnimator(J3DAnmTevRegKey*);
|
||||
/* 8032F9C0 */ void createTexMtxForAnimator(J3DAnmTextureSRTKey*);
|
||||
/* 8032FAF4 */ void entryMatColorAnimator(J3DAnmColor*);
|
||||
/* 8032FBC8 */ void entryTexNoAnimator(J3DAnmTexPattern*);
|
||||
|
||||
@@ -68,6 +68,7 @@ public:
|
||||
Mtx33* getBumpMtxPtr(int idx) const { return mMtxBuffer->getBumpMtxPtr(idx); }
|
||||
Mtx33* getNrmMtxPtr() const { return mMtxBuffer->getNrmMtxPtr(); }
|
||||
void setBaseScale(const Vec& scale) { mBaseScale = scale; }
|
||||
void setUserArea(u32 area) { mUserArea = area; }
|
||||
|
||||
// is there a better way to handle inlines with same name as non-inlines?
|
||||
MtxP i_getAnmMtx(int p1) { return mMtxBuffer->getAnmMtx(p1); }
|
||||
|
||||
@@ -43,6 +43,10 @@ public:
|
||||
bool checkFlag(u32 flag) const { return !!(mFlags & flag); }
|
||||
bool checkBumpFlag() const { return mbHasBumpArray; }
|
||||
bool checkBBoardFlag() const { return mbHasBillboard == 1; }
|
||||
int removeTexNoAnimator(J3DAnmTexPattern* anm) { return mMaterialTable.removeTexNoAnimator(anm); }
|
||||
int removeTexMtxAnimator(J3DAnmTextureSRTKey* anm) { return mMaterialTable.removeTexMtxAnimator(anm); }
|
||||
int removeTevRegAnimator(J3DAnmTevRegKey* anm) { return mMaterialTable.removeTevRegAnimator(anm); }
|
||||
int removeMatColorAnimator(J3DAnmColor* anm) { return mMaterialTable.removeMatColorAnimator(anm); }
|
||||
|
||||
private:
|
||||
/* 0x04 */ void* mpRawData;
|
||||
|
||||
Reference in New Issue
Block a user