mirror of
https://github.com/zeldaret/tww.git
synced 2026-06-03 18:36:06 -04:00
33 lines
1.3 KiB
C++
33 lines
1.3 KiB
C++
//
|
|
// Generated by dtk
|
|
// Translation Unit: J3DJointFactory.cpp
|
|
//
|
|
|
|
#include "JSystem/J3DGraphLoader/J3DJointFactory.h"
|
|
#include "JSystem/JSupport/JSupport.h"
|
|
#include "JSystem/J3DGraphAnimator/J3DJoint.h"
|
|
|
|
/* 802FE1A4-802FE1FC .text __ct__15J3DJointFactoryFRC13J3DJointBlock */
|
|
J3DJointFactory::J3DJointFactory(const J3DJointBlock& jointBlock) {
|
|
mJointInitData = JSUConvertOffsetToPtr<J3DJointInitData>(&jointBlock, (u32)jointBlock.mpJointInitData);
|
|
mIndexTable = JSUConvertOffsetToPtr<u16>(&jointBlock, (u32)jointBlock.mpIndexTable);
|
|
}
|
|
|
|
/* 802FE1FC-802FE390 .text create__15J3DJointFactoryFi */
|
|
J3DJoint* J3DJointFactory::create(int jntNo) {
|
|
J3DJoint* joint = new J3DJoint();
|
|
joint->mJntNo = jntNo;
|
|
joint->mKind = mJointInitData[mIndexTable[jntNo]].mKind;
|
|
joint->mScaleCompensate = mJointInitData[mIndexTable[jntNo]].mScaleCompensate;
|
|
joint->mTransformInfo = mJointInitData[mIndexTable[jntNo]].mTransformInfo;
|
|
joint->mRadius = mJointInitData[mIndexTable[jntNo]].mRadius;
|
|
joint->mMin = mJointInitData[mIndexTable[jntNo]].mMin;
|
|
joint->mMax = mJointInitData[mIndexTable[jntNo]].mMax;
|
|
joint->mMtxCalc = NULL;
|
|
joint->mOldMtxCalc = NULL;
|
|
if (joint->mScaleCompensate == 0xFF) {
|
|
joint->mScaleCompensate = false;
|
|
}
|
|
return joint;
|
|
}
|