mirror of
https://github.com/zeldaret/tww.git
synced 2026-06-24 17:03:16 -04:00
d_a_player_food done
This commit is contained in:
@@ -2352,7 +2352,7 @@ public:
|
||||
/* 0x34BA */ u8 m34BA;
|
||||
/* 0x34BB */ u8 mCurrItemHeapIdx;
|
||||
/* 0x34BC */ u8 m34BC;
|
||||
/* 0x34BD */ u8 mLastUsedEquipItem;
|
||||
/* 0x34BD */ u8 mLastUsedItemButtonIdx;
|
||||
/* 0x34BE */ u8 m34BE;
|
||||
/* 0x34BF */ s8 mReverb;
|
||||
/* 0x34C0 */ u8 mLeftHandIdx;
|
||||
@@ -2532,9 +2532,9 @@ public:
|
||||
/* 0x4284 */ dCcD_Cyl mAtCyl;
|
||||
/* 0x43B4 */ dCcD_Cyl mLightCyl;
|
||||
/* 0x44E4 */ dCcD_Cps mAtCps[3];
|
||||
/* 0x488C */ dCcD_Cps mFanWindCps1;
|
||||
/* 0x488C */ dCcD_Cps mFanWindCps;
|
||||
/* 0x49C4 */ dCcD_Sph mFanWindSph;
|
||||
/* 0x4AF0 */ dCcD_Cps mFanWindCps2;
|
||||
/* 0x4AF0 */ dCcD_Cps mFanLightCps;
|
||||
|
||||
struct ProcInitTableEntry {
|
||||
/* 0x00 */ ProcFunc mProcFunc;
|
||||
|
||||
@@ -958,6 +958,10 @@ inline void dComIfGs_setReserveItemEmpty() {
|
||||
g_dComIfG_gameInfo.save.getPlayer().getBagItem().setReserveItemEmpty();
|
||||
}
|
||||
|
||||
inline void dComIfGs_setReserveBaitEmpty(u8 i_btnIdx) {
|
||||
g_dComIfG_gameInfo.save.getPlayer().getBagItem().setBaitItemEmpty(i_btnIdx);
|
||||
}
|
||||
|
||||
inline void dComIfGs_setEventReg(u16 i_reg, u8 i_no) {
|
||||
g_dComIfG_gameInfo.save.getEvent().setEventReg(i_reg, i_no);
|
||||
}
|
||||
|
||||
@@ -112,7 +112,37 @@ BOOL daPy_lk_c::procFoodThrow_init() {
|
||||
|
||||
/* 801546F4-80154880 .text procFoodThrow__9daPy_lk_cFv */
|
||||
BOOL daPy_lk_c::procFoodThrow() {
|
||||
/* Nonmatching */
|
||||
J3DFrameCtrl& frameCtrl = mFrameCtrlUnder[0];
|
||||
setShipRidePosUseItem();
|
||||
if (frameCtrl.getRate() < 0.01f) {
|
||||
if (mDemo.getDemoType() != 5) {
|
||||
dComIfGp_evmng_cutEnd(mStaffIdx);
|
||||
} else {
|
||||
dComIfGp_event_reset();
|
||||
u32 playerPID = fopAcM_GetID(this);
|
||||
dCam_getBody()->EndEventCamera(playerPID);
|
||||
endDemoMode();
|
||||
}
|
||||
} else if (frameCtrl.checkPass(9.0f)) {
|
||||
seStartOnlyReverb(JA_SE_LK_ESA_THROW);
|
||||
void* esa = fopAcM_fastCreate(PROC_ESA, 0xFFFF0014, &field_0x2d4, fopAcM_GetRoomNo(this), &shape_angle);
|
||||
if (esa) {
|
||||
m3630 = fopAcM_GetID(esa);
|
||||
if (mDemo.getDemoType() != 5) {
|
||||
u8 btnIdx = dComIfGp_event_getTalkXYBtn();
|
||||
if (btnIdx == 1) {
|
||||
dComIfGs_setReserveBaitEmpty(0);
|
||||
} else if (btnIdx == 2) {
|
||||
dComIfGs_setReserveBaitEmpty(1);
|
||||
} else {
|
||||
dComIfGs_setReserveBaitEmpty(2);
|
||||
}
|
||||
} else {
|
||||
dComIfGs_setReserveBaitEmpty(mLastUsedItemButtonIdx);
|
||||
}
|
||||
}
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/* 80154880-80154A48 .text procFoodSet_init__9daPy_lk_cFv */
|
||||
|
||||
@@ -2405,9 +2405,9 @@ void daPy_lk_c::voiceStart(u32 param_1) {
|
||||
|
||||
/* 801031A4-801031DC .text itemButton__9daPy_lk_cCFv */
|
||||
BOOL daPy_lk_c::itemButton() const {
|
||||
if (mLastUsedEquipItem == 0) {
|
||||
if (mLastUsedItemButtonIdx == 0) {
|
||||
return m34C9 & 0x04;
|
||||
} else if (mLastUsedEquipItem == 1) {
|
||||
} else if (mLastUsedItemButtonIdx == 1) {
|
||||
return m34C9 & 0x08;
|
||||
} else {
|
||||
return m34C9 & 0x10;
|
||||
@@ -2416,9 +2416,9 @@ BOOL daPy_lk_c::itemButton() const {
|
||||
|
||||
/* 801031DC-80103214 .text itemTrigger__9daPy_lk_cCFv */
|
||||
BOOL daPy_lk_c::itemTrigger() const {
|
||||
if (mLastUsedEquipItem == 0) {
|
||||
if (mLastUsedItemButtonIdx == 0) {
|
||||
return mPressedButtonsBitfield & 0x04;
|
||||
} else if (mLastUsedEquipItem == 1) {
|
||||
} else if (mLastUsedItemButtonIdx == 1) {
|
||||
return mPressedButtonsBitfield & 0x08;
|
||||
} else {
|
||||
return mPressedButtonsBitfield & 0x10;
|
||||
@@ -2449,17 +2449,17 @@ BOOL daPy_lk_c::checkGroupItem(int param_1, int itemNo) {
|
||||
|
||||
/* 801032E4-801033E4 .text checkSetItemTrigger__9daPy_lk_cFii */
|
||||
BOOL daPy_lk_c::checkSetItemTrigger(int param_1, int param_2) {
|
||||
if (param_2 == 0 || daPy_dmEcallBack_c::m_type != 1) {
|
||||
if (param_2 == 0 || !daPy_dmEcallBack_c::checkCurse()) {
|
||||
if (mPressedButtonsBitfield & 0x04 && checkGroupItem(param_1, dComIfGp_getSelectItem(0))) {
|
||||
mLastUsedEquipItem = 0;
|
||||
mLastUsedItemButtonIdx = 0;
|
||||
return TRUE;
|
||||
}
|
||||
if (mPressedButtonsBitfield & 0x08 && checkGroupItem(param_1, dComIfGp_getSelectItem(1))) {
|
||||
mLastUsedEquipItem = 1;
|
||||
mLastUsedItemButtonIdx = 1;
|
||||
return TRUE;
|
||||
}
|
||||
if (mPressedButtonsBitfield & 0x10 && checkGroupItem(param_1, dComIfGp_getSelectItem(2))) {
|
||||
mLastUsedEquipItem = 2;
|
||||
mLastUsedItemButtonIdx = 2;
|
||||
return TRUE;
|
||||
}
|
||||
}
|
||||
@@ -4320,7 +4320,7 @@ BOOL daPy_lk_c::playerDelete() {
|
||||
mDoAud_seDeleteObject(&mSwordTopPos);
|
||||
mDoAud_seDeleteObject(&mRopePos);
|
||||
mDoAud_seDeleteObject(&m338C.field_0x08);
|
||||
mDoAud_seDeleteObject(&mFanWindCps1.GetEndP());
|
||||
mDoAud_seDeleteObject(&mFanWindCps.GetEndP());
|
||||
|
||||
for (i = 0; i < (int)ARRAY_SIZE(m_anm_heap_under); i++) {
|
||||
mDoExt_destroySolidHeap(m_anm_heap_under[i].mpAnimeHeap);
|
||||
@@ -4636,15 +4636,15 @@ void daPy_lk_c::playerInit() {
|
||||
mAtCps[2].SetStts(&mStts);
|
||||
mAtCyl.Set(l_at_cyl_src);
|
||||
mAtCyl.SetStts(&mStts);
|
||||
mFanWindCps1.Set(l_fan_wind_cps_src);
|
||||
mFanWindCps1.SetR(70.0f);
|
||||
mFanWindCps1.SetStts(&mStts);
|
||||
mFanWindCps.Set(l_fan_wind_cps_src);
|
||||
mFanWindCps.SetR(70.0f);
|
||||
mFanWindCps.SetStts(&mStts);
|
||||
mFanWindSph.Set(l_fan_wind_sph_src);
|
||||
mFanWindSph.SetStts(&mStts);
|
||||
mFanWindCps2.Set(l_fan_wind_cps_src);
|
||||
mFanWindCps2.SetStts(&mStts);
|
||||
mFanWindCps2.SetAtType(AT_TYPE_LIGHT);
|
||||
mFanWindCps2.SetR(20.0f);
|
||||
mFanLightCps.Set(l_fan_wind_cps_src);
|
||||
mFanLightCps.SetStts(&mStts);
|
||||
mFanLightCps.SetAtType(AT_TYPE_LIGHT);
|
||||
mFanLightCps.SetR(20.0f);
|
||||
|
||||
for (int i = 0; i < (int)ARRAY_SIZE(m_anm_heap_under); i++) {
|
||||
createAnimeHeap(&m_anm_heap_under[i].mpAnimeHeap, HEAP_TYPE_UNDER_UPPER_e);
|
||||
|
||||
Reference in New Issue
Block a user