mirror of
https://github.com/zeldaret/tp
synced 2026-07-08 14:36:36 -04:00
Z2WolfHowlMgr, d_bg_s, quat OK (#1887)
This commit is contained in:
+14
-157
@@ -7,128 +7,18 @@
|
||||
#include "d/bg/d_bg_s_sph_chk.h"
|
||||
#include "d/bg/d_bg_w.h"
|
||||
#include "d/com/d_com_inf_game.h"
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/mtx/mtxvec.h"
|
||||
#include "dolphin/types.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void Init__11cBgS_ChkElmFv();
|
||||
extern "C" void Regist2__11cBgS_ChkElmFP9dBgW_BaseUiPv();
|
||||
extern "C" void Release__11cBgS_ChkElmFv();
|
||||
extern "C" void Regist__4cBgSFP9dBgW_BaseUiPv();
|
||||
extern "C" void Release__4cBgSFP9dBgW_Base();
|
||||
extern "C" void Ct__4cBgSFv();
|
||||
extern "C" void Dt__4cBgSFv();
|
||||
extern "C" void LineCross__4cBgSFP11cBgS_LinChk();
|
||||
extern "C" void GroundCross__4cBgSFP11cBgS_GndChk();
|
||||
extern "C" void ConvDzb__4cBgSFPv();
|
||||
extern "C" void GetActorPointer__4cBgSCFi();
|
||||
extern "C" void GetBgWBasePointer__4cBgSCFRC13cBgS_PolyInfo();
|
||||
extern "C" void ChkPolySafe__4cBgSFRC13cBgS_PolyInfo();
|
||||
extern "C" void GetGrpRoomId__4cBgSCFRC13cBgS_PolyInfo();
|
||||
extern "C" void GetTriPla__4cBgSCFRC13cBgS_PolyInfoP8cM3dGPla();
|
||||
extern "C" void GetTriPnt__4cBgSCFRC13cBgS_PolyInfoP4cXyzP4cXyzP4cXyz();
|
||||
extern "C" void ShdwDraw__4cBgSFP13cBgS_ShdwDraw();
|
||||
extern "C" void GetGrpInf__4cBgSCFRC13cBgS_PolyInfo();
|
||||
extern "C" void Ct__4dBgSFv();
|
||||
extern "C" void Dt__4dBgSFv();
|
||||
extern "C" void ClrMoveFlag__4dBgSFv();
|
||||
extern "C" void Move__4dBgSFv();
|
||||
extern "C" void Regist__4dBgSFP9dBgW_BaseP10fopAc_ac_c();
|
||||
extern "C" void SetOldShapeAngleY__9dBgW_BaseFs();
|
||||
extern "C" void ChkMoveBG__4dBgSFRC13cBgS_PolyInfo();
|
||||
extern "C" void ChkMoveBG_NoDABg__4dBgSFRC13cBgS_PolyInfo();
|
||||
extern "C" void GetExitId__4dBgSFRC13cBgS_PolyInfo();
|
||||
extern "C" void GetPolyColor__4dBgSFRC13cBgS_PolyInfo();
|
||||
extern "C" void GetHorseNoEntry__4dBgSFRC13cBgS_PolyInfo();
|
||||
extern "C" void GetSpecialCode__4dBgSFRC13cBgS_PolyInfo();
|
||||
extern "C" void GetMagnetCode__4dBgSFRC13cBgS_PolyInfo();
|
||||
extern "C" void GetMonkeyBarsCode__4dBgSFRC13cBgS_PolyInfo();
|
||||
extern "C" void GetUnderwaterRoofCode__4dBgSFRC13cBgS_PolyInfo();
|
||||
extern "C" void GetWallCode__4dBgSFRC13cBgS_PolyInfo();
|
||||
extern "C" void GetPolyAtt0__4dBgSFRC13cBgS_PolyInfo();
|
||||
extern "C" void GetPolyAtt1__4dBgSFRC13cBgS_PolyInfo();
|
||||
extern "C" void GetGroundCode__4dBgSFRC13cBgS_PolyInfo();
|
||||
extern "C" void GetCamMoveBG__4dBgSFRC13cBgS_PolyInfo();
|
||||
extern "C" void GetRoomCamId__4dBgSFRC13cBgS_PolyInfo();
|
||||
extern "C" void GetRoomPathId__4dBgSFRC13cBgS_PolyInfo();
|
||||
extern "C" void GetRoomPathPntNo__4dBgSFRC13cBgS_PolyInfo();
|
||||
extern "C" void GetGrpSoundId__4dBgSFRC13cBgS_PolyInfo();
|
||||
extern "C" void ChkGrpInf__4dBgSFRC13cBgS_PolyInfoUl();
|
||||
extern "C" void GetRoomId__4dBgSFRC13cBgS_PolyInfo();
|
||||
extern "C" void GetPolyAttackThrough__4dBgSFRC13cBgS_PolyInfo();
|
||||
extern "C" void ChkPolyHSStick__4dBgSFRC13cBgS_PolyInfo();
|
||||
extern "C" void WallCorrect__4dBgSFP9dBgS_Acch();
|
||||
extern "C" void WallCorrectSort__4dBgSFP9dBgS_Acch();
|
||||
extern "C" void RoofChk__4dBgSFP12dBgS_RoofChk();
|
||||
extern "C" void SplGrpChk__4dBgSFP14dBgS_SplGrpChk();
|
||||
extern "C" void SphChk__4dBgSFP11dBgS_SphChkPv();
|
||||
extern "C" void MoveBgCrrPos__4dBgSFRC13cBgS_PolyInfobP4cXyzP5csXyzP5csXyzbb();
|
||||
extern "C" void MoveBgTransPos__4dBgSFRC13cBgS_PolyInfobP4cXyzP5csXyzP5csXyz();
|
||||
extern "C" void MoveBgMatrixCrrPos__4dBgSFRC13cBgS_PolyInfobP4cXyzP5csXyzP5csXyz();
|
||||
extern "C" void dBgS_MoveBGProc_Typical__FP4dBgWPvRC13cBgS_PolyInfobP4cXyzP5csXyzP5csXyz();
|
||||
extern "C" static void dBgS_MoveBGProc_RotY__FP4dBgWPvRC13cBgS_PolyInfobP4cXyzP5csXyzP5csXyz();
|
||||
extern "C" void dBgS_MoveBGProc_TypicalRotY__FP4dBgWPvRC13cBgS_PolyInfobP4cXyzP5csXyzP5csXyz();
|
||||
extern "C" void dBgS_MoveBGProc_Trans__FP4dBgWPvRC13cBgS_PolyInfobP4cXyzP5csXyzP5csXyz();
|
||||
extern "C" void RideCallBack__4dBgSFRC13cBgS_PolyInfoP10fopAc_ac_c();
|
||||
extern "C" void ArrowStickCallBack__4dBgSFRC13cBgS_PolyInfoP10fopAc_ac_cR4cXyz();
|
||||
extern "C" void
|
||||
PushPullCallBack__4dBgSFRC13cBgS_PolyInfoP10fopAc_ac_csQ29dBgW_Base13PushPullLabel();
|
||||
extern "C" void dBgS_CheckBWallPoly__FRC13cBgS_PolyInfo();
|
||||
extern "C" void dBgS_CheckBGroundPoly__FRC13cBgS_PolyInfo();
|
||||
extern "C" void dBgS_CheckBRoofPoly__FRC13cBgS_PolyInfo();
|
||||
extern "C" void dBgS_GetNY__FRC13cBgS_PolyInfo();
|
||||
extern "C" extern void* __vt__4dBgS[5];
|
||||
extern "C" extern void* __vt__4cBgS[5];
|
||||
extern "C" extern void* __vt__11cBgS_ChkElm[4];
|
||||
extern "C" extern u8 data_80450F68[8];
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" void __dt__11cBgS_ChkElmFv();
|
||||
extern "C" void __dt__4dBgSFv();
|
||||
extern "C" void __dt__4cBgSFv();
|
||||
extern "C" void SetNowActorInfo__9dBgS_AcchFiPvUi();
|
||||
extern "C" void CalcMovePosWork__9dBgS_AcchFv();
|
||||
extern "C" void CalcWallRR__9dBgS_AcchFv();
|
||||
extern "C" void Init__14dBgS_SplGrpChkFv();
|
||||
extern "C" void Init__12dBgS_RoofChkFv();
|
||||
extern "C" void GetTrans__4cBgWCFP4cXyz();
|
||||
extern "C" void CalcDiffShapeAngleY__9dBgW_BaseFs();
|
||||
extern "C" void ChkSameActorPid__8cBgS_ChkCFUi();
|
||||
extern "C" void PreCheck__11cBgS_GndChkFv();
|
||||
extern "C" void PreCalc__11cBgS_LinChkFv();
|
||||
extern "C" void ChkSetInfo__13cBgS_PolyInfoCFv();
|
||||
extern "C" void ClearPi__13cBgS_PolyInfoFv();
|
||||
extern "C" void SetActorInfo__13cBgS_PolyInfoFiPvUi();
|
||||
extern "C" void ChkSafe__13cBgS_PolyInfoCFPCvUi();
|
||||
extern "C" void ChkBgIndex__13cBgS_PolyInfoCFv();
|
||||
extern "C" void Regist__9cBgW_BgIdFi();
|
||||
extern "C" void Release__9cBgW_BgIdFv();
|
||||
extern "C" void ChkUsed__9cBgW_BgIdCFv();
|
||||
extern "C" void cBgW_CheckBGround__Ff();
|
||||
extern "C" bool cBgW_CheckBRoof__Ff(f32);
|
||||
extern "C" void cBgW_CheckBWall__Ff();
|
||||
extern "C" void _savegpr_22();
|
||||
extern "C" void _savegpr_24();
|
||||
extern "C" void _savegpr_25();
|
||||
extern "C" void _savegpr_26();
|
||||
extern "C" void _savegpr_27();
|
||||
extern "C" void _savegpr_28();
|
||||
extern "C" void _savegpr_29();
|
||||
extern "C" void _restgpr_22();
|
||||
extern "C" void _restgpr_24();
|
||||
extern "C" void _restgpr_25();
|
||||
extern "C" void _restgpr_26();
|
||||
extern "C" void _restgpr_27();
|
||||
extern "C" void _restgpr_28();
|
||||
extern "C" void _restgpr_29();
|
||||
extern "C" extern void* __vt__8cM3dGPla[3];
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
//
|
||||
@@ -302,16 +192,15 @@ struct cBgS_dzb_strgroup {
|
||||
};
|
||||
|
||||
/* 80074578-80074618 06EEB8 00A0+00 0/0 1/1 0/0 .text ConvDzb__4cBgSFPv */
|
||||
#ifdef NONMATCHING
|
||||
void* cBgS::ConvDzb(void* p_dzb) {
|
||||
cBgS_dzb_data* pbgd = (cBgS_dzb_data*)p_dzb;
|
||||
|
||||
if ((pbgd->field_0x30 & 0x80000000)) {
|
||||
return;
|
||||
if (((pbgd->field_0x30 & 0x80000000) == 0)) {
|
||||
pbgd->field_0x30 |= 0x80000000;
|
||||
} else {
|
||||
return p_dzb;
|
||||
}
|
||||
|
||||
pbgd->field_0x30 |= 0x80000000;
|
||||
|
||||
if (pbgd->m_v_tbl != 0) {
|
||||
pbgd->m_v_tbl += (u32)p_dzb;
|
||||
}
|
||||
@@ -328,16 +217,6 @@ void* cBgS::ConvDzb(void* p_dzb) {
|
||||
|
||||
return p_dzb;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void* cBgS::ConvDzb(void* param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/bg/d_bg_s/ConvDzb__4cBgSFPv.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 80074618-80074628 06EF58 0010+00 0/0 9/9 13/13 .text GetActorPointer__4cBgSCFi */
|
||||
fopAc_ac_c* cBgS::GetActorPointer(int actor_index) const {
|
||||
@@ -679,8 +558,6 @@ u32 dBgS::ChkGrpInf(cBgS_PolyInfo const& poly, u32 param_1) {
|
||||
}
|
||||
|
||||
/* 80075100-8007519C 06FA40 009C+00 0/0 16/16 60/60 .text GetRoomId__4dBgSFRC13cBgS_PolyInfo */
|
||||
// close
|
||||
#ifdef NONMATCHING
|
||||
s32 dBgS::GetRoomId(cBgS_PolyInfo const& poly) {
|
||||
if (!poly.ChkSetInfo()) {
|
||||
return -1;
|
||||
@@ -692,22 +569,15 @@ s32 dBgS::GetRoomId(cBgS_PolyInfo const& poly) {
|
||||
}
|
||||
|
||||
s32 roomId = m_chk_element[id].m_bgw_base_ptr->GetRoomId();
|
||||
if (roomId == 0xFF && GetGrpRoomId(poly) == 0xFF) {
|
||||
return -1;
|
||||
if (roomId == 0xFF) {
|
||||
roomId = GetGrpRoomId(poly);
|
||||
if (roomId == 0xFF) {
|
||||
roomId = -1;
|
||||
}
|
||||
}
|
||||
|
||||
// return -1;
|
||||
return roomId;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm s32 dBgS::GetRoomId(cBgS_PolyInfo const& param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/bg/d_bg_s/GetRoomId__4dBgSFRC13cBgS_PolyInfo.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 8007519C-800751F8 06FADC 005C+00 0/0 3/3 0/0 .text
|
||||
* GetPolyAttackThrough__4dBgSFRC13cBgS_PolyInfo */
|
||||
@@ -981,7 +851,6 @@ void dBgS::ArrowStickCallBack(cBgS_PolyInfo const& poly, fopAc_ac_c* param_1, cX
|
||||
|
||||
/* 80075C6C-80075D0C 0705AC 00A0+00 0/0 1/1 0/0 .text
|
||||
* PushPullCallBack__4dBgSFRC13cBgS_PolyInfoP10fopAc_ac_csQ29dBgW_Base13PushPullLabel */
|
||||
#ifdef NONMATCHING
|
||||
bool dBgS::PushPullCallBack(cBgS_PolyInfo const& param_0, fopAc_ac_c* param_1, s16 param_2,
|
||||
dBgW_Base::PushPullLabel param_3) {
|
||||
u16 bg_index = param_0.GetBgIndex();
|
||||
@@ -998,19 +867,8 @@ bool dBgS::PushPullCallBack(cBgS_PolyInfo const& param_0, fopAc_ac_c* param_1, s
|
||||
return false;
|
||||
}
|
||||
|
||||
base->GetPushPullCallback()(param_0, param_1, param_2, param_3);
|
||||
return base->GetPushPullCallback()(m_chk_element[bg_index].m_actor_ptr, param_1, param_2, param_3);
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm bool dBgS::PushPullCallBack(cBgS_PolyInfo const& param_0, fopAc_ac_c* param_1, s16 param_2,
|
||||
dBgW_Base::PushPullLabel param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/bg/d_bg_s/PushPullCallBack__4dBgSFRC13cBgS_PolyInfoP10fopAc_ac_csQ29dBgW_Base13PushPullLabel.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 80075D0C-80075D7C 07064C 0070+00 0/0 8/8 1/1 .text dBgS_CheckBWallPoly__FRC13cBgS_PolyInfo */
|
||||
bool dBgS_CheckBWallPoly(cBgS_PolyInfo const& poly) {
|
||||
@@ -1054,5 +912,4 @@ f32 dBgS_GetNY(cBgS_PolyInfo const& poly) {
|
||||
}
|
||||
|
||||
/* 80450F68-80450F70 000468 0008+00 0/0 1/1 0/0 .sbss None */
|
||||
extern u8 data_80450F68[8];
|
||||
u8 data_80450F68[8] ALIGN_DECL(8);
|
||||
u8 data_80450F68[8] __attribute__((aligned(8)));
|
||||
|
||||
+4
-4
@@ -830,7 +830,7 @@ extern "C" asm void __dt__11cBgW_GrpElmFv() {
|
||||
cBgW_GrpElm::cBgW_GrpElm() {}
|
||||
|
||||
/* 8007A200-8007A344 074B40 0144+00 1/1 0/0 0/0 .text RwgLineCheck__4cBgWFUsP11cBgS_LinChk */
|
||||
// loop needs work
|
||||
// vtable issue
|
||||
#ifdef NONMATCHING
|
||||
bool cBgW::RwgLineCheck(u16 poly_index, cBgS_LinChk* linchk) {
|
||||
bool chk;
|
||||
@@ -852,11 +852,11 @@ bool cBgW::RwgLineCheck(u16 poly_index, cBgS_LinChk* linchk) {
|
||||
}
|
||||
}
|
||||
|
||||
poly_index = pm_rwg[poly_index].field_0x0;
|
||||
|
||||
if (poly_index != 0xFFFF) {
|
||||
return chk;
|
||||
if (pm_rwg[poly_index].field_0x0 == 0xFFFF) {
|
||||
break;
|
||||
}
|
||||
poly_index = pm_rwg[poly_index].field_0x0;
|
||||
}
|
||||
|
||||
return chk;
|
||||
|
||||
+33
-32
@@ -2028,7 +2028,8 @@ void dMeter2_c::moveButtonS() {
|
||||
}
|
||||
|
||||
/* 80222518-80222E88 21CE58 0970+00 1/1 0/0 0/0 .text moveButtonXY__9dMeter2_cFv */
|
||||
// single r26 / r29 reg swap
|
||||
// dMeter2Info_isDirectUseItem is the issue. If you set the return value to int all through the
|
||||
// stack, it matches but then dMeter2Info_isDirectUseItem itself doesn't match.
|
||||
#ifdef NONMATCHING
|
||||
void dMeter2_c::moveButtonXY() {
|
||||
bool sp8[2];
|
||||
@@ -2192,19 +2193,19 @@ void dMeter2_c::moveButtonXY() {
|
||||
dComIfGp_setXStatusForce(0, 0);
|
||||
}
|
||||
|
||||
if (mItemStatus[i][1] != dComIfGp_getXStatus()) {
|
||||
mItemStatus[i][1] = dComIfGp_getXStatus();
|
||||
if (mItemStatus[i*2+1] != dComIfGp_getXStatus()) {
|
||||
mItemStatus[i*2+1] = dComIfGp_getXStatus();
|
||||
|
||||
if (mItemStatus[i][1] == 0x2D || mItemStatus[i][1] == 0x2E) {
|
||||
dComIfGp_setXStatus(mItemStatus[i][1], 1);
|
||||
if (mItemStatus[i*2+1] == 0x2D || mItemStatus[i*2+1] == 0x2E) {
|
||||
dComIfGp_setXStatus(mItemStatus[i*2+1], 1);
|
||||
}
|
||||
|
||||
spC[i] = 1;
|
||||
sp8[i] = 1;
|
||||
}
|
||||
|
||||
if (mXSetFlag[i] != dComIfGp_isXSetFlag(2)) {
|
||||
mXSetFlag[i] = dComIfGp_isXSetFlag(2);
|
||||
if ((&mXSetFlag)[i] != dComIfGp_isXSetFlag(2)) {
|
||||
(&mXSetFlag)[i] = dComIfGp_isXSetFlag(2);
|
||||
spC[i] = 1;
|
||||
sp8[i] = 1;
|
||||
}
|
||||
@@ -2214,37 +2215,37 @@ void dMeter2_c::moveButtonXY() {
|
||||
dComIfGp_setYStatusForce(0, 0);
|
||||
}
|
||||
|
||||
if (mItemStatus[i][1] != dComIfGp_getYStatus()) {
|
||||
mItemStatus[i][1] = dComIfGp_getYStatus();
|
||||
if (mItemStatus[i*2+1] != dComIfGp_getYStatus()) {
|
||||
mItemStatus[i*2+1] = dComIfGp_getYStatus();
|
||||
|
||||
if (mItemStatus[i][1] == 0x2D || mItemStatus[i][1] == 0x2E) {
|
||||
dComIfGp_setYStatus(mItemStatus[i][1], 1);
|
||||
if (mItemStatus[i*2+1] == 0x2D || mItemStatus[i*2+1] == 0x2E) {
|
||||
dComIfGp_setYStatus(mItemStatus[i*2+1], 1);
|
||||
}
|
||||
|
||||
spC[i] = 1;
|
||||
sp8[i] = 1;
|
||||
}
|
||||
|
||||
if (mXSetFlag[i] != dComIfGp_isYSetFlag(2)) {
|
||||
mXSetFlag[i] = dComIfGp_isYSetFlag(2);
|
||||
if ((&mXSetFlag)[i] != dComIfGp_isYSetFlag(2)) {
|
||||
(&mXSetFlag)[i] = dComIfGp_isYSetFlag(2);
|
||||
spC[i] = 1;
|
||||
sp8[i] = 1;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if (mItemStatus[0][i] != dComIfGp_getSelectItem(i) || field_0x128 != field_0x12c) {
|
||||
mItemStatus[0][i] = dComIfGp_getSelectItem(i);
|
||||
spC[i] = 1; //
|
||||
if (mItemStatus[2*i] != dComIfGp_getSelectItem(i) || field_0x128 != field_0x12c) {
|
||||
mItemStatus[2*i] = dComIfGp_getSelectItem(i);
|
||||
spC[i] = 1;
|
||||
sp8[i] = 1;
|
||||
}
|
||||
|
||||
if (field_0x1d6[i][0] != dMeter2Info_isDirectUseItem(i)) {
|
||||
field_0x1d6[i][0] = dMeter2Info_isDirectUseItem(i);
|
||||
spC[i] = 1; //
|
||||
if (field_0x1d6[i] != dMeter2Info_isDirectUseItem(i)) {
|
||||
field_0x1d6[i] = dMeter2Info_isDirectUseItem(i);
|
||||
spC[i] = 1;
|
||||
sp8[i] = 1;
|
||||
}
|
||||
|
||||
if (mItemStatus[0][i] == 0x48) {
|
||||
if (mItemStatus[2*i] == 0x48) {
|
||||
if (field_0x1ec == 0) {
|
||||
if (dComIfGs_getOil() != 0) {
|
||||
field_0x1ec = 1;
|
||||
@@ -2256,7 +2257,7 @@ void dMeter2_c::moveButtonXY() {
|
||||
sp8[i] = 1;
|
||||
}
|
||||
}
|
||||
} else if (mItemStatus[0][i] == 0x46) {
|
||||
} else if (mItemStatus[2*i] == 0x46) {
|
||||
if (field_0x1ed == 0) {
|
||||
if (daPy_getPlayerActorClass()->checkCopyRodTopUse()) {
|
||||
field_0x1ed = 1;
|
||||
@@ -2268,16 +2269,16 @@ void dMeter2_c::moveButtonXY() {
|
||||
sp8[i] = 1;
|
||||
}
|
||||
}
|
||||
} else if (mItemStatus[0][i] == 0x50 || mItemStatus[0][i] == 0x70 ||
|
||||
mItemStatus[0][i] == 0x71 || mItemStatus[0][i] == 0x72)
|
||||
} else if (mItemStatus[2*i] == 0x50 || mItemStatus[2*i] == 0x70 ||
|
||||
mItemStatus[2*i] == 0x71 || mItemStatus[2*i] == 0x72)
|
||||
{
|
||||
if (sp8[i] != 0) {
|
||||
mpMeterDraw->setItemNum(i, dComIfGp_getSelectItemNum(i),
|
||||
dComIfGp_getSelectItemMaxNum(i));
|
||||
}
|
||||
} else if (mItemStatus[0][i] == 0x76) {
|
||||
if (field_0x1d6[i][2] != dComIfGp_getSelectItemNum(i)) {
|
||||
field_0x1d6[i][2] = dComIfGp_getSelectItemNum(i);
|
||||
} else if (mItemStatus[2*i] == 0x76) {
|
||||
if (field_0x1d8[i] != dComIfGp_getSelectItemNum(i)) {
|
||||
field_0x1d8[i] = dComIfGp_getSelectItemNum(i);
|
||||
sp8[i] = 1;
|
||||
}
|
||||
|
||||
@@ -2285,18 +2286,18 @@ void dMeter2_c::moveButtonXY() {
|
||||
mpMeterDraw->setItemNum(i, dComIfGp_getSelectItemNum(i),
|
||||
dComIfGp_getSelectItemMaxNum(i));
|
||||
}
|
||||
} else if (mItemStatus[0][i] == 0x43 || mItemStatus[0][i] == 0x53 ||
|
||||
mItemStatus[0][i] == 0x54 || mItemStatus[0][i] == 0x55 ||
|
||||
mItemStatus[0][i] == 0x56 || mItemStatus[0][i] == 0x5A)
|
||||
} else if (mItemStatus[2*i] == 0x43 || mItemStatus[2*i] == 0x53 ||
|
||||
mItemStatus[2*i] == 0x54 || mItemStatus[2*i] == 0x55 ||
|
||||
mItemStatus[2*i] == 0x56 || mItemStatus[2*i] == 0x5A)
|
||||
{
|
||||
if (sp8[i] != 0) {
|
||||
mpMeterDraw->setItemNum(i, mArrowNum, dComIfGs_getArrowMax());
|
||||
}
|
||||
} else if (mItemStatus[0][i] == 0x4B) {
|
||||
} else if (mItemStatus[2*i] == 0x4B) {
|
||||
if (sp8[i] != 0) {
|
||||
mpMeterDraw->setItemNum(i, mPachinkoNum, dComIfGs_getPachinkoMax());
|
||||
}
|
||||
} else if (mItemStatus[0][i] == 0x59) {
|
||||
} else if (mItemStatus[2*i] == 0x59) {
|
||||
u8 var_r25 = dComIfGp_getSelectItemNum(i);
|
||||
u8 var_r6_2 = dComIfGp_getSelectItemMaxNum(i);
|
||||
|
||||
@@ -2313,7 +2314,7 @@ void dMeter2_c::moveButtonXY() {
|
||||
}
|
||||
|
||||
if (sp8[i] != 0) {
|
||||
mpMeterDraw->drawButtonXY(i, mItemStatus[i][0], mItemStatus[i][1],
|
||||
mpMeterDraw->drawButtonXY(i, mItemStatus[2*i], mItemStatus[i*2+1],
|
||||
field_0x128 == 0 ? true : false, spC[i]);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user