mirror of
https://github.com/zeldaret/tp
synced 2026-05-22 22:44:28 -04:00
Array size UB fixes (#3162)
* Array size UB fixes * Fix ShieldD * Another one
This commit is contained in:
committed by
GitHub
parent
b3cf239301
commit
3f24f432fe
+5
-12
@@ -430,8 +430,7 @@ public:
|
||||
/* 0x1C */ f32 mFovy;
|
||||
/* 0x20 */ f32 mBank;
|
||||
/* 0x24 */ fopAc_ac_c* mRelActor;
|
||||
/* 0x28 */ char mRelUseMask;
|
||||
/* 0x29 */ char field_0x29;
|
||||
/* 0x28 */ char mRelUseMask[4];
|
||||
/* 0x2C */ int mTimer;
|
||||
/* 0x30 */ bool field_0x30;
|
||||
/* 0x34 */ cXyz mBasePos;
|
||||
@@ -512,7 +511,7 @@ public:
|
||||
/* 0x3C */ fopAc_ac_c* field_0x3c;
|
||||
/* 0x40 */ fopAc_ac_c* field_0x40;
|
||||
/* 0x44 */ fpc_ProcID field_0x44;
|
||||
/* 0x48 */ char field_0x48;
|
||||
/* 0x48 */ char field_0x48[4];
|
||||
/* 0x4C */ int field_0x4c;
|
||||
};
|
||||
|
||||
@@ -527,11 +526,7 @@ public:
|
||||
/* 0x3C */ f32 field_0x3c;
|
||||
/* 0x40 */ fopAc_ac_c* mRelActor;
|
||||
/* 0x44 */ fpc_ProcID mRelActorID;
|
||||
/* 0x48 */ char mRelUseMask;
|
||||
/* 0x49 */ char field_0x49;
|
||||
/* 0x4A */ char field_0x4a;
|
||||
/* 0x4B */ char field_0x4b;
|
||||
/* 0x4C */ u8 field_0x4c[4];
|
||||
/* 0x48 */ char mRelUseMask[8];
|
||||
/* 0x50 */ int mTimer;
|
||||
/* 0x54 */ int mTransType;
|
||||
/* 0x58 */ f32 mCushion;
|
||||
@@ -682,8 +677,7 @@ public:
|
||||
/* 0x24 */ f32* field_0x24;
|
||||
/* 0x28 */ f32 field_0x28;
|
||||
/* 0x2C */ fopAc_ac_c* mRelActor;
|
||||
/* 0x30 */ char mRelUseMask;
|
||||
/* 0x31 */ char field_0x31;
|
||||
/* 0x30 */ char mRelUseMask[4];
|
||||
/* 0x34 */ int mTimer;
|
||||
/* 0x38 */ int field_0x38;
|
||||
/* 0x3C */ int mChoice;
|
||||
@@ -766,8 +760,7 @@ public:
|
||||
/* 0xAC */ f32 field_0xac;
|
||||
/* 0xB0 */ fopAc_ac_c* mRelActor;
|
||||
/* 0xB4 */ fpc_ProcID mRelActorID;
|
||||
/* 0xB8 */ char mRelUseMask;
|
||||
/* 0xB9 */ char field_0xb9;
|
||||
/* 0xB8 */ char mRelUseMask[4];
|
||||
/* 0xBC */ f32 mCushion;
|
||||
/* 0xC0 */ u32 field_0xc0[6];
|
||||
};
|
||||
|
||||
+64
-64
@@ -607,7 +607,7 @@ bool dCamera_c::fixedFrameEvCamera() {
|
||||
}
|
||||
|
||||
fframe_p->field_0x4 = relationalPos(fframe_p->mpRelActor, &sp44);
|
||||
} else if (fframe_p->mRelUseMask[1] == 116) {
|
||||
} else if (fframe_p->mRelUseMask[1] == 't') {
|
||||
fframe_p->field_0x4 = attentionPos(fframe_p->mpRelActor) + sp44;
|
||||
} else {
|
||||
fframe_p->field_0x4 = sp44;
|
||||
@@ -860,7 +860,7 @@ bool dCamera_c::fixedPositionEvCamera() {
|
||||
getEvFloatData(&fpos_p->field_0x38, "Radius", 100000.0f);
|
||||
getEvFloatData(&fpos_p->field_0x34, "StartRadius", fpos_p->field_0x38);
|
||||
fpos_p->field_0x1 = getEvFloatData(&fpos_p->field_0x2c, "Bank", 0.0f);
|
||||
getEvStringData(&fpos_p->field_0x48, "RelUseMask", "o");
|
||||
getEvStringData(fpos_p->field_0x48, "RelUseMask", "o");
|
||||
fpos_p->field_0x0 = getEvIntData(&fpos_p->field_0x4c, "Timer", -1);
|
||||
|
||||
if ((fpos_p->field_0x40 = getEvActor("Target", "@PLAYER")) == NULL) {
|
||||
@@ -871,7 +871,7 @@ bool dCamera_c::fixedPositionEvCamera() {
|
||||
fpos_p->field_0x44 = fopAcM_GetID(fpos_p->field_0x40);
|
||||
fpos_p->field_0x3c = getEvActor("RelActor");
|
||||
|
||||
if (fpos_p->field_0x3c && isRelChar(fpos_p->field_0x48)) {
|
||||
if (fpos_p->field_0x3c && isRelChar(fpos_p->field_0x48[0])) {
|
||||
fpos_p->field_0x4 = relationalPos(fpos_p->field_0x3c, &sp24);
|
||||
} else {
|
||||
fpos_p->field_0x4 = sp24;
|
||||
@@ -1015,7 +1015,7 @@ bool dCamera_c::transEvCamera(int param_1) {
|
||||
|
||||
getEvIntData(&trans->mTransType, "TransType", 0);
|
||||
trans->mRelActor = getEvActor("RelActor");
|
||||
getEvStringData(&trans->mRelUseMask, "RelUseMask", "--oo");
|
||||
getEvStringData(trans->mRelUseMask, "RelUseMask", "--oo");
|
||||
getEvFloatData(&trans->mCushion, "Cushion", 1.0f);
|
||||
|
||||
if (trans->mRelActor) {
|
||||
@@ -1028,36 +1028,36 @@ bool dCamera_c::transEvCamera(int param_1) {
|
||||
mAdditionVec = MidnaAdditionVec;
|
||||
}
|
||||
|
||||
if (trans->mRelUseMask == 119) {
|
||||
if (trans->mRelUseMask[0] == 'w') {
|
||||
trans->mStartCenter += mAdditionVec;
|
||||
}
|
||||
if (trans->mRelUseMask == 87) {
|
||||
if (trans->mRelUseMask[0] == 'W') {
|
||||
trans->mStartCenter -= mAdditionVec;
|
||||
}
|
||||
|
||||
if (trans->field_0x49 == 119) {
|
||||
if (trans->mRelUseMask[1] == 'w') {
|
||||
trans->mStartEye += mAdditionVec;
|
||||
}
|
||||
if (trans->field_0x49 == 87) {
|
||||
if (trans->mRelUseMask[1] == 'W') {
|
||||
trans->mStartEye -= mAdditionVec;
|
||||
}
|
||||
|
||||
if (trans->field_0x4a == 119) {
|
||||
if (trans->mRelUseMask[2] == 'w') {
|
||||
trans->mCenter += mAdditionVec;
|
||||
}
|
||||
if (trans->field_0x4a == 87) {
|
||||
if (trans->mRelUseMask[2] == 'W') {
|
||||
trans->mCenter -= mAdditionVec;
|
||||
}
|
||||
|
||||
if (trans->field_0x4b == 119) {
|
||||
if (trans->mRelUseMask[3] == 'w') {
|
||||
trans->mEye += mAdditionVec;
|
||||
}
|
||||
if (trans->field_0x4b == 87) {
|
||||
if (trans->mRelUseMask[3] == 'W') {
|
||||
trans->mEye -= mAdditionVec;
|
||||
}
|
||||
}
|
||||
|
||||
if (trans->field_0x49 == 114) {
|
||||
if (trans->mRelUseMask[1] == 'r') {
|
||||
my_vec_0 = relationalPos(trans->mRelActor, &trans->mStartCenter);
|
||||
if ((mTicks & 1) != 0) {
|
||||
trans->mStartEye.x = -trans->mStartEye.x;
|
||||
@@ -1069,14 +1069,14 @@ bool dCamera_c::transEvCamera(int param_1) {
|
||||
}
|
||||
}
|
||||
|
||||
if (trans->mRelUseMask == 110 || trans->field_0x49 == 110) {
|
||||
if (trans->mRelUseMask[0] == 'n' || trans->mRelUseMask[1] == 'n') {
|
||||
cSGlobe cStack_7b8(mEye - positionOf(trans->mRelActor));
|
||||
cSAngle acStack_898 = cStack_7b8.U() - directionOf(trans->mRelActor);
|
||||
if (acStack_898 < cSAngle::_0) {
|
||||
if (trans->mRelUseMask == 110) {
|
||||
if (trans->mRelUseMask[0] == 'n') {
|
||||
trans->mStartCenter.x = -trans->mStartCenter.x;
|
||||
}
|
||||
if (trans->field_0x49 == 110) {
|
||||
if (trans->mRelUseMask[1] == 'n') {
|
||||
trans->mStartEye.x = -trans->mStartEye.x;
|
||||
}
|
||||
}
|
||||
@@ -1088,15 +1088,15 @@ bool dCamera_c::transEvCamera(int param_1) {
|
||||
}
|
||||
}
|
||||
|
||||
if (trans->field_0x4a == 110 || trans->field_0x4b == 110) {
|
||||
if (trans->mRelUseMask[2] == 'n' || trans->mRelUseMask[3] == 'n') {
|
||||
cSGlobe cStack_7c0(mEye - positionOf(trans->mRelActor));
|
||||
cSAngle acStack_89c = cStack_7c0.U() - directionOf(trans->mRelActor);
|
||||
if (acStack_89c < cSAngle::_0) {
|
||||
if (trans->field_0x4a == 110) {
|
||||
if (trans->mRelUseMask[2] == 'n') {
|
||||
trans->mCenter.x = -trans->mCenter.x;
|
||||
}
|
||||
|
||||
if (trans->field_0x4b == 110) {
|
||||
if (trans->mRelUseMask[3] == 'n') {
|
||||
trans->mEye.x = -trans->mEye.x;
|
||||
}
|
||||
}
|
||||
@@ -1108,15 +1108,15 @@ bool dCamera_c::transEvCamera(int param_1) {
|
||||
}
|
||||
}
|
||||
|
||||
if (trans->mRelUseMask == 78 || trans->field_0x49 == 78) {
|
||||
if (trans->mRelUseMask[0] == 'N' || trans->mRelUseMask[1] == 'N') {
|
||||
cSGlobe cStack_7c8(mEye - positionOf(trans->mRelActor));
|
||||
cSAngle acStack_8a0 = cStack_7c8.U() - directionOf(trans->mRelActor);
|
||||
if (acStack_8a0 > cSAngle::_0) {
|
||||
if (trans->mRelUseMask == 78) {
|
||||
if (trans->mRelUseMask[0] == 'N') {
|
||||
trans->mStartCenter.x = -trans->mStartCenter.x;
|
||||
}
|
||||
|
||||
if (trans->field_0x49 == 78) {
|
||||
if (trans->mRelUseMask[1] == 'N') {
|
||||
trans->mStartEye.x = -trans->mStartEye.x;
|
||||
}
|
||||
}
|
||||
@@ -1128,15 +1128,15 @@ bool dCamera_c::transEvCamera(int param_1) {
|
||||
}
|
||||
}
|
||||
|
||||
if (trans->field_0x4a == 78 || trans->field_0x4b == 78) {
|
||||
if (trans->mRelUseMask[2] == 'N' || trans->mRelUseMask[3] == 'N') {
|
||||
cSGlobe cStack_7d0(mEye - positionOf(trans->mRelActor));
|
||||
cSAngle acStack_8a4 = cStack_7d0.U() - directionOf(trans->mRelActor);
|
||||
if (acStack_8a4 > cSAngle::_0) {
|
||||
if (trans->field_0x4a == 78) {
|
||||
if (trans->mRelUseMask[2] == 'N') {
|
||||
trans->mCenter.x = -trans->mCenter.x;
|
||||
}
|
||||
|
||||
if (trans->field_0x4b == 78) {
|
||||
if (trans->mRelUseMask[3] == 'N') {
|
||||
trans->mEye.x = -trans->mEye.x;
|
||||
}
|
||||
}
|
||||
@@ -1148,21 +1148,21 @@ bool dCamera_c::transEvCamera(int param_1) {
|
||||
}
|
||||
}
|
||||
|
||||
if (trans->mRelUseMask == 102) {
|
||||
if (trans->mRelUseMask[0] == 'f') {
|
||||
cSGlobe cStack_7d8(trans->mStartCenter);
|
||||
cStack_7d8.U(directionOf(trans->mRelActor) + cStack_7d8.U());
|
||||
trans->mStartCenter = attentionPos(trans->mRelActor) + cStack_7d8.Xyz();
|
||||
trans->mRelUseMask = 120;
|
||||
trans->mRelUseMask[0] = 'x';
|
||||
}
|
||||
|
||||
if (trans->field_0x49 == 102) {
|
||||
if (trans->mRelUseMask[1] == 'f') {
|
||||
cSGlobe cStack_7e0(trans->mStartEye);
|
||||
cStack_7e0.U(directionOf(trans->mRelActor) + cStack_7e0.U());
|
||||
trans->mStartEye = attentionPos(trans->mRelActor) + cStack_7e0.Xyz();
|
||||
trans->field_0x49 = 120;
|
||||
trans->mRelUseMask[1] = 'x';
|
||||
}
|
||||
|
||||
if (trans->field_0x4a == 112) {
|
||||
if (trans->mRelUseMask[2] == 'p') {
|
||||
cXyz sp114(trans->mCenter);
|
||||
cXyz sp120 = relationalPos(trans->mRelActor, &sp114);
|
||||
f32 fVar1 = cXyz(sp120 - positionOf(mpPlayerActor)).abs();
|
||||
@@ -1172,14 +1172,14 @@ bool dCamera_c::transEvCamera(int param_1) {
|
||||
if (fVar1 < fVar2) {
|
||||
trans->mCenter.x = -trans->mCenter.x;
|
||||
}
|
||||
} else if (trans->field_0x4a == 102) {
|
||||
} else if (trans->mRelUseMask[2] == 'f') {
|
||||
cSGlobe cStack_7e8(trans->mCenter);
|
||||
cStack_7e8.U(directionOf(trans->mRelActor) + cStack_7e8.U());
|
||||
trans->mCenter = attentionPos(trans->mRelActor) + cStack_7e8.Xyz();
|
||||
trans->field_0x4a = 120;
|
||||
trans->mRelUseMask[2] = 'x';
|
||||
}
|
||||
|
||||
if (trans->field_0x4b == 112) {
|
||||
if (trans->mRelUseMask[3] == 'p') {
|
||||
cXyz sp12c = trans->mEye;
|
||||
cXyz sp138(relationalPos(trans->mRelActor, &sp12c));
|
||||
f32 fVar3 = cXyz(sp138 - positionOf(mpPlayerActor)).abs();
|
||||
@@ -1189,7 +1189,7 @@ bool dCamera_c::transEvCamera(int param_1) {
|
||||
if (fVar3 < fVar4) {
|
||||
trans->mEye.x = -trans->mEye.x;
|
||||
}
|
||||
} else if (trans->field_0x4b == 114) {
|
||||
} else if (trans->mRelUseMask[3] == 'r') {
|
||||
my_vec_0 = relationalPos(trans->mRelActor, &trans->mCenter);
|
||||
if ((mTicks & 1) != 0) {
|
||||
trans->mEye.x = -trans->mEye.x;
|
||||
@@ -1199,19 +1199,19 @@ bool dCamera_c::transEvCamera(int param_1) {
|
||||
if (lineBGCheck(&my_vec_0, &my_vec_1, 0x4007)) {
|
||||
trans->mEye.x = -trans->mEye.x;
|
||||
}
|
||||
} else if (trans->field_0x4b == 102) {
|
||||
} else if (trans->mRelUseMask[3] == 'f') {
|
||||
cSGlobe cStack_7f0(trans->mEye);
|
||||
cStack_7f0.U(directionOf(trans->mRelActor) + cStack_7f0.U());
|
||||
trans->mEye = attentionPos(trans->mRelActor) + cStack_7f0.Xyz();
|
||||
trans->field_0x4b = 120;
|
||||
trans->mRelUseMask[3] = 'x';
|
||||
}
|
||||
} else {
|
||||
if (trans->field_0x4a == 97) {
|
||||
if (trans->mRelUseMask[2] == 'a') {
|
||||
cXyz cStack_320 = dCamMath::xyzRotateY(trans->mCenter, cSAngle(mViewCache.mDirection.U().Inv()));
|
||||
trans->mCenter = mViewCache.mCenter + cStack_320;
|
||||
}
|
||||
|
||||
if (trans->field_0x4b == 97) {
|
||||
if (trans->mRelUseMask[3] == 'a') {
|
||||
cXyz cStack_32c = dCamMath::xyzRotateY(trans->mEye, cSAngle(mViewCache.mDirection.U().Inv()));
|
||||
trans->mEye = mViewCache.mEye + cStack_32c;
|
||||
}
|
||||
@@ -1240,47 +1240,47 @@ bool dCamera_c::transEvCamera(int param_1) {
|
||||
}
|
||||
|
||||
if (trans->mRelActor) {
|
||||
if (trans->mRelUseMask == 116) {
|
||||
if (trans->mRelUseMask[0] == 't') {
|
||||
pos.mXyz_1 = attentionPos(trans->mRelActor) + trans->mStartCenter;
|
||||
} else if (trans->mRelUseMask == 99) {
|
||||
} else if (trans->mRelUseMask[0] == 'c') {
|
||||
cSGlobe cStack_7f8(trans->mStartCenter);
|
||||
cStack_7f8.U(trans->field_0x60.U() + cStack_7f8.U());
|
||||
pos.mXyz_1 = attentionPos(trans->mRelActor) + cStack_7f8.Xyz();
|
||||
} else if (trans->mRelUseMask == 119 || trans->mRelUseMask == 87) {
|
||||
} else if (trans->mRelUseMask[0] == 'w' || trans->mRelUseMask[0] == 'W') {
|
||||
pos.mXyz_1 = relationalPos(trans->mRelActor, &trans->mStartCenter);
|
||||
} else {
|
||||
if (isRelChar(trans->mRelUseMask)) {
|
||||
if (isRelChar(trans->mRelUseMask[0])) {
|
||||
pos.mXyz_1 = relationalPos(trans->mRelActor, &trans->mStartCenter);
|
||||
} else {
|
||||
pos.mXyz_1 = trans->mStartCenter;
|
||||
}
|
||||
}
|
||||
|
||||
if (trans->field_0x49 == 116) {
|
||||
if (trans->mRelUseMask[1] == 't') {
|
||||
pos.mXyz_0 = attentionPos(trans->mRelActor) + trans->mStartEye;
|
||||
} else if (trans->field_0x49 == 99) {
|
||||
} else if (trans->mRelUseMask[1] == 'c') {
|
||||
cSGlobe cStack_800(trans->mStartEye);
|
||||
cStack_800.U(trans->field_0x60.U() + cStack_800.U());
|
||||
pos.mXyz_0 = attentionPos(trans->mRelActor) + cStack_800.Xyz();
|
||||
} else if (trans->field_0x49 == 119 || trans->field_0x49 == 87) {
|
||||
} else if (trans->mRelUseMask[1] == 'w' || trans->mRelUseMask[1] == 'W') {
|
||||
pos.mXyz_0 = relationalPos(trans->mRelActor, &trans->mStartEye);
|
||||
} else {
|
||||
if (isRelChar(trans->field_0x49)) {
|
||||
if (isRelChar(trans->mRelUseMask[1])) {
|
||||
pos.mXyz_0 = relationalPos(trans->mRelActor, &trans->mStartEye);
|
||||
} else {
|
||||
pos.mXyz_0 = trans->mStartEye;
|
||||
}
|
||||
}
|
||||
|
||||
if (trans->field_0x4a == 116) {
|
||||
if (trans->mRelUseMask[2] == 't') {
|
||||
pos2.mXyz_1 = attentionPos(trans->mRelActor) + trans->mCenter;
|
||||
} else if (trans->field_0x4a == 99) {
|
||||
} else if (trans->mRelUseMask[2] == 'c') {
|
||||
cSGlobe cStack_808(trans->mCenter);
|
||||
cStack_808.U(trans->field_0x60.U() + cStack_808.U());
|
||||
pos2.mXyz_1 = attentionPos(trans->mRelActor) + cStack_808.Xyz();
|
||||
} else if (trans->field_0x4a == 119 || trans->field_0x4a == 87) {
|
||||
} else if (trans->mRelUseMask[2] == 'w' || trans->mRelUseMask[2] == 'W') {
|
||||
pos2.mXyz_1 = relationalPos(trans->mRelActor, &trans->mCenter);
|
||||
} else if (isRelChar(trans->field_0x4a)) {
|
||||
} else if (isRelChar(trans->mRelUseMask[2])) {
|
||||
pos2.mXyz_1 = relationalPos(trans->mRelActor, &trans->mCenter);
|
||||
} else if (trans->mTransType == 2) {
|
||||
pos2.mXyz_1 = dCamMath::xyzRotateY(trans->mCenter, directionOf(trans->mRelActor));
|
||||
@@ -1288,16 +1288,16 @@ bool dCamera_c::transEvCamera(int param_1) {
|
||||
pos2.mXyz_1 = trans->mCenter;
|
||||
}
|
||||
|
||||
if (trans->field_0x4b == 116) {
|
||||
if (trans->mRelUseMask[3] == 't') {
|
||||
pos2.mXyz_0 = attentionPos(trans->mRelActor) + trans->mEye;
|
||||
} else if (trans->field_0x4b == 99) {
|
||||
} else if (trans->mRelUseMask[3] == 'c') {
|
||||
cSGlobe cStack_810(trans->mEye);
|
||||
cStack_810.U(trans->field_0x60.U() + cStack_810.U());
|
||||
pos2.mXyz_0 = attentionPos(trans->mRelActor) + cStack_810.Xyz();
|
||||
} else {
|
||||
if (trans->field_0x4b == 119 || trans->field_0x4b == 87) {
|
||||
if (trans->mRelUseMask[3] == 'w' || trans->mRelUseMask[3] == 'W') {
|
||||
pos2.mXyz_0 = relationalPos(trans->mRelActor, &trans->mEye);
|
||||
} else if (isRelChar(trans->field_0x4b)) {
|
||||
} else if (isRelChar(trans->mRelUseMask[3])) {
|
||||
pos2.mXyz_0 = relationalPos(trans->mRelActor, &trans->mEye);
|
||||
} else if (trans->mTransType == 2) {
|
||||
pos2.mXyz_0 = dCamMath::xyzRotateY(trans->mEye, directionOf(trans->mRelActor));
|
||||
@@ -3413,11 +3413,11 @@ bool dCamera_c::fixedFramesEvCamera() {
|
||||
|
||||
|
||||
fframes_p->field_0x0 = getEvIntData(&fframes_p->mTimer, "Timer", const_1_val);
|
||||
getEvStringData(&fframes_p->mRelUseMask, "RelUseMask", "oo");
|
||||
getEvStringData(fframes_p->mRelUseMask, "RelUseMask", "oo");
|
||||
#if DEBUG
|
||||
if (strlen(&fframes_p->mRelUseMask) != 2) {
|
||||
if (strlen(fframes_p->mRelUseMask) != 2) {
|
||||
OSReport("camera: event: bad length -> xx\n");
|
||||
strcpy(&fframes_p->mRelUseMask, "xx");
|
||||
strcpy(fframes_p->mRelUseMask, "xx");
|
||||
JUTAssertion::showAssert(JUTAssertion::getSDevice(), "d_ev_camera.cpp", 0x129c, "Halt");
|
||||
OSPanic("d_ev_camera.cpp", 0x129c, "Halt");
|
||||
}
|
||||
@@ -3435,13 +3435,13 @@ bool dCamera_c::fixedFramesEvCamera() {
|
||||
sp30 = fframes_p->field_0x1c[1][iVar1];
|
||||
sp3c = fframes_p->field_0x1c[0][iVar1];
|
||||
|
||||
if (fframes_p->mRelActor && fframes_p->mRelUseMask == 111) {
|
||||
if (fframes_p->mRelActor && fframes_p->mRelUseMask[0] == 111) {
|
||||
fframes_p->field_0x4 = relationalPos(fframes_p->mRelActor, &sp30);
|
||||
} else {
|
||||
fframes_p->field_0x4 = sp30;
|
||||
}
|
||||
|
||||
if (fframes_p->mRelActor && fframes_p->field_0x31 == 111) {
|
||||
if (fframes_p->mRelActor && fframes_p->mRelUseMask[1] == 111) {
|
||||
fframes_p->field_0x10 = relationalPos(fframes_p->mRelActor, &sp3c);
|
||||
} else {
|
||||
fframes_p->field_0x10 = sp3c;
|
||||
@@ -3989,12 +3989,12 @@ bool dCamera_c::bspTransEvCamera() {
|
||||
bspTrans->mRelActorID = -1;
|
||||
bspTrans->mRelActor = getEvActor("RelActor");
|
||||
if (bspTrans->mRelActor) {
|
||||
getEvStringData(&bspTrans->mRelUseMask, "RelUseMask", "oo");
|
||||
getEvStringData(bspTrans->mRelUseMask, "RelUseMask", "oo");
|
||||
|
||||
#if DEBUG
|
||||
if (strlen(&bspTrans->mRelUseMask) != 2) {
|
||||
if (strlen(bspTrans->mRelUseMask) != 2) {
|
||||
OSReport_Error("camera: event: bad length -> xx\n");
|
||||
strcpy(&bspTrans->mRelUseMask, "xx");
|
||||
strcpy(bspTrans->mRelUseMask, "xx");
|
||||
JUTAssertion::showAssert(JUTAssertion::getSDevice(), "d_ev_camera.cpp", 0x1515, "0");
|
||||
OSPanic("d_ev_camera.cpp", 0x1515, "Halt");
|
||||
}
|
||||
@@ -4030,13 +4030,13 @@ bool dCamera_c::bspTransEvCamera() {
|
||||
} pos;
|
||||
|
||||
if (bspTrans->mRelActor != NULL) {
|
||||
if (isRelChar(bspTrans->mRelUseMask)) {
|
||||
if (isRelChar(bspTrans->mRelUseMask[0])) {
|
||||
pos.sp48 = relationalPos(bspTrans->mRelActor, &bspTrans->field_0x94);
|
||||
} else {
|
||||
pos.sp48 = bspTrans->field_0x94;
|
||||
}
|
||||
|
||||
if (isRelChar(bspTrans->field_0xb9)) {
|
||||
if (isRelChar(bspTrans->mRelUseMask[1])) {
|
||||
pos.sp3c = relationalPos(bspTrans->mRelActor, &bspTrans->field_0xa0);
|
||||
} else {
|
||||
pos.sp3c = bspTrans->field_0xa0;
|
||||
|
||||
Reference in New Issue
Block a user