mirror of
https://github.com/zeldaret/tp
synced 2026-07-09 23:01:41 -04:00
UB fixes (#3150)
* Fix incorrect size for J2DTevBlock8::insertTexture local_38 * Fix dMeter_drawOptionHIO_c mOptionTypeBGPosX/Y size * dMeter_drawLightDropHIO_c mVesselAlpha fix * d_a_mg_rod array size fixes * Fix e_tk2_class mActionTimer array size * daObjTOMBO_c field_0x714 array size fix
This commit is contained in:
committed by
GitHub
parent
472af2590a
commit
9b900a1a55
@@ -39,8 +39,7 @@ public:
|
||||
/* 0x680 */ s16 mPlayerAngleY;
|
||||
/* 0x684 */ f32 mPlayerDistanceLimit;
|
||||
/* 0x688 */ u8 field24_0x688[2];
|
||||
/* 0x68A */ s16 mActionTimer[3];
|
||||
/* 0x690 */ s16 mExecuteState;
|
||||
/* 0x68A */ s16 mActionTimer[4];
|
||||
/* 0x692 */ s16 mInvincibilityTimer;
|
||||
/* 0x694 */ s8 mAttentionOFF;
|
||||
/* 0x695 */ s8 mTKBallSpawned;
|
||||
|
||||
@@ -128,10 +128,10 @@ public:
|
||||
/* 0x0760 */ f32 field_0x760;
|
||||
/* 0x0764 */ cXyz field_0x764;
|
||||
/* 0x0770 */ mg_line_s mg_line; // below to mg_hook_s part of mg_line_s?
|
||||
/* 0x0C20 */ f32 field_0xc20[98];
|
||||
/* 0x0DA8 */ u8 field_0xDA8[0x0DB0 - 0x0DA8];
|
||||
/* 0x0DB0 */ f32 field_0xdb0[98];
|
||||
/* 0x0F38 */ u8 field_0xF38[0x0F40 - 0x0F38];
|
||||
/* 0x0C20 */ f32 field_0xc20[99];
|
||||
/* 0x0DA8 */ u8 field_0xDAC[0x0DB0 - 0x0DAC];
|
||||
/* 0x0DB0 */ f32 field_0xdb0[99];
|
||||
/* 0x0F3C */ u8 field_0xF38[0x0F40 - 0x0F3C];
|
||||
/* 0x0F40 */ mDoExt_3DlineMat0_c linemat;
|
||||
/* 0x0F5C */ f32 field_0xf5c;
|
||||
/* 0x0F60 */ f32 field_0xf60;
|
||||
@@ -183,9 +183,8 @@ public:
|
||||
/* 0x102F */ u8 field_0x102f;
|
||||
/* 0x1030 */ J3DModel* esa_model[2];
|
||||
/* 0x1038 */ u8 field_0x1038[0x103C - 0x1038];
|
||||
/* 0x103C */ s16 field_0x103c[8];
|
||||
/* 0x104C */ u8 field_0x104C[0x104E - 0x104C];
|
||||
/* 0x104E */ s16 field_0x104e[8];
|
||||
/* 0x103C */ s16 field_0x103c[9];
|
||||
/* 0x104E */ s16 field_0x104e[9];
|
||||
/* 0x1060 */ cXyz hook_pos;
|
||||
/* 0x106C */ cXyz field_0x106c;
|
||||
/* 0x1078 */ cXyz field_0x1078;
|
||||
|
||||
@@ -55,8 +55,7 @@ private:
|
||||
/* 0x710 */ bool mIsHitByBoomerang;
|
||||
/* 0x711 */ u8 mAction;
|
||||
/* 0x712 */ u8 field_0x712;
|
||||
/* 0x714 */ s16 field_0x714[2];
|
||||
/* 0x718 */ s16 field_0x718;
|
||||
/* 0x714 */ s16 field_0x714[3];
|
||||
/* 0x71C */ f32 field_0x71c;
|
||||
/* 0x720 */ f32 field_0x720;
|
||||
/* 0x724 */ s16 field_0x724;
|
||||
|
||||
@@ -104,12 +104,8 @@ public:
|
||||
/* 0x18 */ f32 mWindowPosX;
|
||||
/* 0x1C */ f32 mWindowPosY;
|
||||
/* 0x20 */ f32 mWindowScale;
|
||||
/* 0x24 */ f32 mOptionTypeBGPosX[4];
|
||||
/* 0x34 */ f32 mTVsettingPosX;
|
||||
/* 0x38 */ f32 mPointerCalibrationPosX;
|
||||
/* 0x3C */ f32 mOptionTypeBGPosY[4];
|
||||
/* 0x4C */ f32 mTVsettingPosY;
|
||||
/* 0x50 */ f32 mPointerCalibrationPosY;
|
||||
/* 0x24 */ f32 mOptionTypeBGPosX[6];
|
||||
/* 0x3C */ f32 mOptionTypeBGPosY[6];
|
||||
/* 0x54 */ f32 mBarScale[2]; // 0: mSelectBarScale | 1: mUnselectBarScale
|
||||
/* 0x5C */ f32 mBackgroundPosY;
|
||||
/* 0x60 */ f32 mArrowOffsetX;
|
||||
@@ -547,8 +543,7 @@ public:
|
||||
/* 0x1C */ f32 mVesselTalkPosY;
|
||||
/* 0x20 */ f32 mVesselPosX_4x3;
|
||||
/* 0x24 */ f32 mVesselPosY_4x3;
|
||||
/* 0x28 */ f32 mVesselAlpha[3];
|
||||
/* 0x34 */ f32 mDropAlpha;
|
||||
/* 0x28 */ f32 mVesselAlpha[4];
|
||||
/* 0x38 */ JUtility::TColor mDropOnColorWhite;
|
||||
/* 0x3C */ JUtility::TColor mDropOnColorBlack;
|
||||
/* 0x40 */ JUtility::TColor mDropOffColorWhite;
|
||||
|
||||
@@ -1416,7 +1416,7 @@ bool J2DTevBlock8::insertTexture(u32 param_0, ResTIMG const* p_timg, JUTPalette*
|
||||
} else {
|
||||
texture->storeTIMG(p_timg, p_tlut);
|
||||
}
|
||||
bool local_38[4];
|
||||
bool local_38[8];
|
||||
for (u8 i = 0; i < 8; i++) {
|
||||
local_38[i] = (mUndeleteFlag & 1 << i) != 0;
|
||||
}
|
||||
|
||||
@@ -398,7 +398,7 @@ static int daE_TK2_Execute(e_tk2_class* i_this) {
|
||||
cXyz cStack_94;
|
||||
cXyz cStack_a0;
|
||||
|
||||
if (i_this->mExecuteState == 0x00) {
|
||||
if (i_this->mActionTimer[3] == 0x00) {
|
||||
dBgS_ObjGndChk_Spl ground_check;
|
||||
cStack_94 = actor->current.pos;
|
||||
cStack_94.y += 200.0f;
|
||||
@@ -602,7 +602,7 @@ static int daE_TK2_Create(fopAc_ac_c* actor) {
|
||||
i_this->mSound.init(&actor->current.pos, &actor->eyePos, 0x3, 0x1);
|
||||
i_this->mSound.setEnemyName("E_tk2");
|
||||
i_this->mAtInfo.mpSound = &i_this->mSound;
|
||||
i_this->mExecuteState = 0x14;
|
||||
i_this->mActionTimer[3] = 0x14;
|
||||
daE_TK2_Execute(i_this);
|
||||
}
|
||||
return phase;
|
||||
|
||||
@@ -411,7 +411,7 @@ void daObjTOMBO_c::BoomChk() {
|
||||
speedF = 5.0f;
|
||||
field_0x71c = 5.0f;
|
||||
mIsHitByBoomerang = false;
|
||||
field_0x718 = 100;
|
||||
field_0x714[2] = 100;
|
||||
mpMorf->setAnm((J3DAnmTransform*)dComIfG_getObjectRes("Tombo", 6), 2, 5.0f, 1.0f,
|
||||
0.0f, -1.0f);
|
||||
home.pos = current.pos;
|
||||
@@ -422,7 +422,7 @@ void daObjTOMBO_c::BoomChk() {
|
||||
mIsHitByBoomerang = false;
|
||||
speedF = 5.0f;
|
||||
field_0x71c = 5.0f;
|
||||
field_0x718 = 100;
|
||||
field_0x714[2] = 100;
|
||||
mpMorf->setAnm((J3DAnmTransform*)dComIfG_getObjectRes("Tombo", 6), 2, 5.0f, 1.0f,
|
||||
0.0f, -1.0f);
|
||||
current.pos.y = old.pos.y = playerPos.y + 100.0f;
|
||||
|
||||
@@ -197,11 +197,11 @@ void dMeter_drawOptionHIO_c::genMessage(JORMContext* mctx) {
|
||||
mctx->genSlider("位置X", &mOptionTypeBGPosX[3], -300.0f, 300.0f);
|
||||
mctx->genSlider("位置Y", &mOptionTypeBGPosY[3], -300.0f, 300.0f);
|
||||
mctx->genLabel("*****テレビ画面の設定*****", 0);
|
||||
mctx->genSlider("位置X", &mTVsettingPosX, -300.0f, 300.0f);
|
||||
mctx->genSlider("位置Y", &mTVsettingPosY, -300.0f, 300.0f);
|
||||
mctx->genSlider("位置X", &mOptionTypeBGPosX[4], -300.0f, 300.0f);
|
||||
mctx->genSlider("位置Y", &mOptionTypeBGPosY[4], -300.0f, 300.0f);
|
||||
mctx->genLabel("*****キャリブレーション*****", 0);
|
||||
mctx->genSlider("位置X", &mPointerCalibrationPosX, -300.0f, 300.0f);
|
||||
mctx->genSlider("位置Y", &mPointerCalibrationPosY, -300.0f, 300.0f);
|
||||
mctx->genSlider("位置X", &mOptionTypeBGPosX[5], -300.0f, 300.0f);
|
||||
mctx->genSlider("位置Y", &mOptionTypeBGPosY[5], -300.0f, 300.0f);
|
||||
mctx->genLabel("*****設定確認*****", 0);
|
||||
mctx->genSlider("背景アルファ", &mBackgroundAlpha, 0, 255);
|
||||
mctx->genSlider("位置Y", &mBackgroundPosY, -300.0f, 300.0f);
|
||||
@@ -1493,7 +1493,7 @@ dMeter_drawLightDropHIO_c::dMeter_drawLightDropHIO_c() {
|
||||
mPikariInterval = 1;
|
||||
field_0x54 = 0xFFF1;
|
||||
mVesselAlpha[2] = 0.5f;
|
||||
mDropAlpha = 1.0f;
|
||||
mVesselAlpha[3] = 1.0f;
|
||||
|
||||
mDropOnColorBlack.set(30, 255, 255, 0);
|
||||
mDropOnColorWhite.set(255, 255, 255, 255);
|
||||
@@ -1554,7 +1554,7 @@ void dMeter_drawLightDropHIO_c::genMessage(JORMContext* mctx) {
|
||||
mctx->genSlider("位置調整Y(会話)", &mVesselTalkPosY, -300.0f, 300.0f);
|
||||
mctx->genSlider("アルファ(会話)", &mVesselAlpha[1], 0.0f, 1.0f);
|
||||
mctx->genSlider("アルファ(器)", &mVesselAlpha[2], 0.0f, 1.0f);
|
||||
mctx->genSlider("アルファ(雫)", &mDropAlpha, 0.0f, 1.0f);
|
||||
mctx->genSlider("アルファ(雫)", &mVesselAlpha[3], 0.0f, 1.0f);
|
||||
mctx->genLabel("***光の器ゲット後***", 0);
|
||||
mctx->genSlider("拡大縮小", &mDropGetScale, 0.0f, 3.0f);
|
||||
mctx->genSlider("拡縮アニメフレーム数", &mDropGetScaleAnimFrameNum, 0, 30);
|
||||
|
||||
Reference in New Issue
Block a user