mirror of
https://github.com/TwilitRealm/dusklight
synced 2026-07-06 11:51:01 -04:00
bd670ab091
daBaseNpc_c::setBckAnm and J3DAnmTransform* daBaseNpc_c daBaseNpc_c::setBtpAnm daBaseNpc_c::attnSttsOn daBaseNpc_c::orderEvent daBaseNpc_c::setEnvTevColor daBaseNpc_c::setRoomNo daBaseNpc_c::checkEndAnm attempt CheckCreateHeap daNpcF_addIdx daNpcF_subIdx daNpcF_incIdx daNpcF_decIdx daNpcF_ActorMngr_c::initialize() daNpcF_ActorMngr_c::entry cleanup daNpcF_ActorMngr_c::entry daNpcF_ActorMngr_c::remove daNpcF_ActorMngr_c::getActorP daNpcF_MatAnm_c::calc attempt daNpcF_SPCurve_c::initialize minor fixes daNpcF_Path_c::initialize daNpcF_Path_c::setPathInfo daNpcF_Path_c::chkPassed daNpcF_Path_c::reverse daNpcF_Path_c::setNextIdx daNpcF_Path_c::getNextIdx daNpcF_Path_c::getBeforeIdx daNpcF_Path_c::getBeforePos daNpcF_Path_c::getNextPos daNpcT_MatAnm_c::initialize daNpcT_MatAnm_c::calc daNpcT_addIdx daNpcT_subIdx daNpcT_decIdx daNpcT_Path_c::hermite daNpcT_Path_c::initialize daNpcT_Path_c::setPathInfo attempt daNpcT_Path_c::setNextPathInfo daNpcT_Path_c::reverse daNpcT_Path_c::setNextIdx daNpcT_Path_c::getDstPos attempt daNpcT_DmgStagger_c::setParam Add FLOAT_LABEL where possible fopEn_enemy / fix e_wb move jasper's jsystem work over d_attention / d_demo / d_lib work remove asm clean up dolphin files / work on some rels (#212) * d_a_alldie / d_a_tboxSw / d_a_tag_gstart / d_a_tag_hstop * dolphin OS work / cleanup * dolphin GX work / cleanup * finish changing dolphin files to C * more files into C * match rest of MSL_C math functions * more dolphin files converted to C * remove asm * d_bg_w work * remove asm * d_a_alink work / kytag14 initial changes to d_a_e_yc checkpoint until virtual destructor issue is solved daNpcF_Lookat_c::adjustMoveDisAngle daBaseNpc_c::setMtx daBaseNpc_moveBgActor_c::daBaseNpc_moveBgActor_c() daNpcT_c::ctrlFaceMotion daNpcT_c::ctrlMsgAnm attempt daNpcT_c::initTalk daNpcF_clearMessageTmpBit daNpcF_getDistTableIdx daNpcF_offTmpBit daNpcF_onTmpBit daNpcF_chkTmpBit daNpcF_onEvtBit daNpcF_chkEvtBit daNpcF_c::getDistTableIdx daNpcF_chkPointInArea daNpcF_chkDoBtnEqSpeak daNpcF_getPlayerInfoFromPlayerList attempt daNpcF_pntVsLineSegmentLengthSquare2D daNpcF_c::chkPointInArea daNpcF_c::chkPointInArea daNpcF_c::getAttentionPos daNpcT_chkTmpBit daNpcT_offTmpBit daNpcT_onTmpBit daNpcT_chkEvtBit daNpcT_offEvtBit daNpcT_onEvtBit daNpcT_chkDoBtnIsSpeak daNpcT_getDistTableIdx daBaseNpc_acMngr_c::entry daNpcF_c::initTalk undo override
110 lines
3.3 KiB
C++
110 lines
3.3 KiB
C++
#ifndef J3DJOINT_H
|
|
#define J3DJOINT_H
|
|
|
|
#include "JSystem/J3DGraphBase/J3DMaterial.h"
|
|
#include "JSystem/J3DGraphBase/J3DTransform.h"
|
|
#include "dolphin/types.h"
|
|
|
|
class J3DAnmTransform;
|
|
class J3DMtxBuffer;
|
|
|
|
class J3DMtxCalc {
|
|
public:
|
|
/* 80325D1C */ static void setMtxBuffer(J3DMtxBuffer*);
|
|
|
|
/* 8000D948 */ virtual ~J3DMtxCalc();
|
|
/* 80014E90 */ virtual void setAnmTransform(J3DAnmTransform*);
|
|
/* 80014E9C */ virtual bool getAnmTransform();
|
|
/* 80014E8C */ virtual void setAnmTransform(u8, J3DAnmTransform*);
|
|
/* 80014E94 */ virtual bool getAnmTransform(u8);
|
|
/* 80014EA4 */ virtual void setWeight(u8, f32);
|
|
/* 80014EA8 */ virtual void getWeight(u8) const;
|
|
virtual void init(Vec const& param_0, Mtx*) = 0;
|
|
virtual void calc() = 0;
|
|
|
|
static J3DMtxBuffer* getMtxBuffer() { return mMtxBuffer; }
|
|
static J3DJoint* getJoint() { return mJoint; }
|
|
|
|
static J3DMtxBuffer* mMtxBuffer;
|
|
static J3DJoint* mJoint;
|
|
}; // Size: 0x4
|
|
|
|
class J3DMtxCalcNoAnmBase : public J3DMtxCalc {
|
|
public:
|
|
/* 8000FA8C */ virtual ~J3DMtxCalcNoAnmBase();
|
|
};
|
|
|
|
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);
|
|
|
|
class J3DJoint {
|
|
public:
|
|
/* 8032F13C */ void appendChild(J3DJoint*);
|
|
/* 8032F170 */ J3DJoint();
|
|
/* 8032F254 */ void entryIn();
|
|
/* 8032F3F8 */ void recursiveCalc();
|
|
|
|
J3DMaterial* getMesh() { return mMesh; }
|
|
u16 getJntNo() const { return mJntNo; }
|
|
u8 getScaleCompensate() const { return mScaleCompensate; }
|
|
J3DJoint* getYounger() { return mYounger; }
|
|
void setYounger(J3DJoint* pYounger) { mYounger = pYounger; }
|
|
void setCurrentMtxCalc(J3DMtxCalc* pMtxCalc) { mCurrentMtxCalc = pMtxCalc; }
|
|
J3DTransformInfo& getTransformInfo() { return mTransformInfo; }
|
|
Vec* getMax() { return &mMax; }
|
|
Vec* getMin() { return &mMin; }
|
|
void setCallBack(J3DJointCallBack callback) { mCallBack = callback; }
|
|
void setMtxCalc(J3DMtxCalc* i_mtxCalc) { mMtxCalc = i_mtxCalc; }
|
|
|
|
static J3DMtxCalc* mCurrentMtxCalc;
|
|
|
|
private:
|
|
friend struct J3DJointFactory;
|
|
|
|
/* 0x00 */ void* mCallBackUserData;
|
|
/* 0x04 */ J3DJointCallBack mCallBack;
|
|
/* 0x08 */ void* field_0x8;
|
|
/* 0x0C */ J3DJoint* mChild;
|
|
/* 0x10 */ J3DJoint* mYounger;
|
|
/* 0x14 */ u16 mJntNo;
|
|
/* 0x16 */ u8 mKind;
|
|
/* 0x17 */ u8 mScaleCompensate;
|
|
/* 0x18 */ J3DTransformInfo mTransformInfo;
|
|
/* 0x38 */ f32 mBoundingSphereRadius;
|
|
/* 0x3C */ Vec mMin;
|
|
/* 0x48 */ Vec mMax;
|
|
/* 0x54 */ J3DMtxCalc* mMtxCalc;
|
|
/* 0x58 */ J3DMaterial* mMesh;
|
|
}; // Size: 0x5C
|
|
|
|
struct J3DMtxCalcJ3DSysInitMaya {
|
|
/* 8032ECAC */ static void init(Vec const&, f32 const (&)[3][4]);
|
|
};
|
|
|
|
struct J3DMtxCalcJ3DSysInitBasic {
|
|
/* 8032EC28 */ static void init(Vec const&, f32 const (&)[3][4]);
|
|
};
|
|
|
|
struct J3DMtxCalcCalcTransformSoftimage {
|
|
/* 8032EE50 */ static void calcTransform(J3DTransformInfo const&);
|
|
};
|
|
|
|
struct J3DMtxCalcCalcTransformMaya {
|
|
/* 8032EFBC */ static void calcTransform(J3DTransformInfo const&);
|
|
};
|
|
|
|
struct J3DMtxCalcCalcTransformBasic {
|
|
/* 8032ED30 */ static void calcTransform(J3DTransformInfo const&);
|
|
};
|
|
|
|
#endif /* J3DJOINT_H */
|