mirror of
https://github.com/zeldaret/tww.git
synced 2026-07-27 14:50:40 -04:00
d_jnt_hit progress
This commit is contained in:
+55
-2
@@ -8,12 +8,65 @@
|
||||
|
||||
/* 80060BE8-80060C44 .text __ct__12JntHit_HIO_cFv */
|
||||
JntHit_HIO_c::JntHit_HIO_c() {
|
||||
/* Nonmatching */
|
||||
m06 = 0;
|
||||
m08 = 0;
|
||||
m0C = 50.0f;
|
||||
m10.set(cXyz::Zero);
|
||||
m1C = 0.0f;
|
||||
m20 = 0.0f;
|
||||
m24 = 100.0f;
|
||||
mChildID = -1;
|
||||
}
|
||||
|
||||
/* 80060C44-80060EC4 .text CreateInit__8JntHit_cFv */
|
||||
BOOL JntHit_c::CreateInit() {
|
||||
/* Nonmatching */
|
||||
__jnt_hit_data_c* pHitData = mpHitData;
|
||||
int posCount = 0;
|
||||
int i;
|
||||
for (i = 0; i < mHitDataCount; i++) {
|
||||
if (isCylinder(pHitData->mShapeType)) {
|
||||
posCount += 2;
|
||||
} else if (isSphere(pHitData->mShapeType)) {
|
||||
posCount += 1;
|
||||
}
|
||||
pHitData++;
|
||||
}
|
||||
|
||||
mpShapeTypes = new s16[mHitDataCount];
|
||||
mpOffsets = new cXyz[posCount];
|
||||
mpRadiuses = new f32[mHitDataCount];
|
||||
mpJointIndexes = new s16[mHitDataCount];
|
||||
if (!mpShapeTypes || !mpOffsets || !mpRadiuses || !mpJointIndexes) {
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
pHitData = mpHitData;
|
||||
s16* pShapeType = mpShapeTypes;
|
||||
s16* pJointIndex = mpJointIndexes;
|
||||
f32* pRadius = mpRadiuses;
|
||||
cXyz* pOffset = mpOffsets;
|
||||
for (i = 0; i < mHitDataCount;) {
|
||||
pShapeType[0] = pHitData->mShapeType;
|
||||
pJointIndex[0] = pHitData->mJointIndex;
|
||||
pRadius[0] = pHitData->mRadius;
|
||||
|
||||
if (isCylinder(pShapeType[0])) {
|
||||
pOffset[0] = pHitData->mpOffsets[0];
|
||||
pOffset[1] = pHitData->mpOffsets[1];
|
||||
pOffset++;
|
||||
} else if (isSphere(pShapeType[0])) {
|
||||
pOffset[0] = pHitData->mpOffsets[0];
|
||||
}
|
||||
|
||||
pOffset++;
|
||||
i++;
|
||||
pHitData++;
|
||||
pShapeType++;
|
||||
pJointIndex++;
|
||||
pRadius++;
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/* 80060EC4-80061440 .text CylHitPosAngleOffset__8JntHit_cFP4cXyzP5csXyzP4cXyzP5csXyz4cXyz4cXyzf */
|
||||
|
||||
Reference in New Issue
Block a user