Player inlines and enums

This commit is contained in:
LagoLunatic
2025-01-08 15:05:14 -05:00
parent b18a1e448a
commit 3d63a54587
7 changed files with 107 additions and 76 deletions
+20 -15
View File
@@ -730,7 +730,7 @@ void daAuction_c::eventMainInit() {
daPy_py_c* pLink = (daPy_py_c*)dComIfGp_getLinkPlayer();
pLink->changeOriginalDemo();
mCurLinkAnm = 1;
mCurLinkAnm = daPy_demo_c::DEMO_UNK1_e;
dComIfGp_event_setTalkPartner(this);
m82F = 0;
@@ -753,8 +753,13 @@ static daAuction_c::ProcFunc_t eventProc[] = {
bool daAuction_c::eventMain() {
daPy_lk_c* pLink = (daPy_lk_c*)dComIfGp_getLinkPlayer();
if (pLink->getBaseAnimeFrameRate() == 0.0f && mCurLinkAnm != 1 && mCurLinkAnm != 0x1D && mCurLinkAnm != 0x25) {
setLinkAnm(1);
if (
pLink->getBaseAnimeFrameRate() == 0.0f &&
mCurLinkAnm != daPy_demo_c::DEMO_UNK1_e &&
mCurLinkAnm != daPy_demo_c::DEMO_UNK1D_e &&
mCurLinkAnm != daPy_demo_c::DEMO_UNK25_e
) {
setLinkAnm(daPy_demo_c::DEMO_UNK1_e);
}
mFlags &= 4;
@@ -897,7 +902,7 @@ void daAuction_c::eventMainKai() {
m800 = mCurrBid + 1;
dComIfGp_setMessageSetNumber(mCurrBid + 1);
end = 0x1CFA;
setLinkAnm(0x48);
setLinkAnm(daPy_demo_c::DEMO_UNK48_e);
mpTimer->mpScrnDraw->setShowType(1);
dAuction_screen_gaugeUp();
@@ -929,8 +934,8 @@ void daAuction_c::eventMainKai() {
dComIfGp_setNpcNameMessageID(l_npc_msg_dat[getAucMdlNo(m824)].field_0x00);
setMessage2(msgParam);
setCameraNpc(m824, 0);
if (m824 == 0 && mCurLinkAnm != 0x1D) {
setLinkAnm(0x14);
if (m824 == 0 && mCurLinkAnm != daPy_demo_c::DEMO_UNK1D_e) {
setLinkAnm(daPy_demo_c::DEMO_UNK14_e);
}
m834 |= 0x20;
@@ -1040,7 +1045,7 @@ void daAuction_c::eventMainUri() {
setCameraNpc(m824, 0);
if (m824 == 0) {
setLinkAnm(0x14);
setLinkAnm(daPy_demo_c::DEMO_UNK14_e);
}
m834 |= 0x20;
@@ -1081,8 +1086,8 @@ void daAuction_c::eventMainMsgSet() {
/* 0000279C-0000294C .text eventMainMsgEnd__11daAuction_cFv */
void daAuction_c::eventMainMsgEnd() {
if (eventMesEnd()) {
if (mCurLinkAnm != 1 && mCurLinkAnm != 0x1D) {
setLinkAnm(1);
if (mCurLinkAnm != daPy_demo_c::DEMO_UNK1_e && mCurLinkAnm != daPy_demo_c::DEMO_UNK1D_e) {
setLinkAnm(daPy_demo_c::DEMO_UNK1_e);
}
if (m834 & 0x20) {
@@ -1316,7 +1321,7 @@ u16 daAuction_c::next_msgStatus(u32* pMsgNo) {
m826 = tmp;
m824 = tmp;
if (m826 != 0) {
setLinkAnm(1);
setLinkAnm(daPy_demo_c::DEMO_UNK1_e);
}
break;
}
@@ -1325,12 +1330,12 @@ u16 daAuction_c::next_msgStatus(u32* pMsgNo) {
if (dComIfGs_getRupee() < msgSetNo) {
mDoAud_seStart(JA_SE_AUC_BID_NG);
setLinkAnm(0x4A);
setLinkAnm(daPy_demo_c::DEMO_UNK4A_e);
*pMsgNo = 0x1CFB;
m7C4[0] = 50.0f;
} else if (msgSetNo <= mCurrBid) {
mDoAud_seStart(JA_SE_AUC_BID_NG);
setLinkAnm(0x4A);
setLinkAnm(daPy_demo_c::DEMO_UNK4A_e);
*pMsgNo = 0x1D1E;
m7C4[0] = 50.0f;
} else {
@@ -1388,7 +1393,7 @@ u16 daAuction_c::next_msgStatus(u32* pMsgNo) {
case 0x1D21:
case 0x1D22:
case 0x1D23: {
setLinkAnm(0x14);
setLinkAnm(daPy_demo_c::DEMO_UNK14_e);
int rnd = getRand(6) + 1;
*pMsgNo = l_npc_msg_dat[getAucMdlNo(rnd)].field_0x06;
m825 = rnd;
@@ -1538,8 +1543,8 @@ void daAuction_c::setCameraNpc(int idx, s16 param_2) {
/* 000039FC-00003A3C .text setLinkAnm__11daAuction_cFUc */
void daAuction_c::setLinkAnm(u8 linkAnm) {
if (linkAnm == 1 && m826 == 0) {
linkAnm = 0x1D;
if (linkAnm == daPy_demo_c::DEMO_UNK1_e && m826 == 0) {
linkAnm = daPy_demo_c::DEMO_UNK1D_e;
}
daPy_lk_c* pLink = (daPy_lk_c*)dComIfGp_getLinkPlayer();
+4 -6
View File
@@ -723,9 +723,8 @@ void daObjTpost_c::modeTalkXY() {
}
if(field_0x8E4 != -1 && cLib_calcTimer(&field_0x8E4) == 0) {
player->mDemo.setOriginalDemoType();
player->mDemo.setParam0(0);
player->mDemo.setDemoMode(0x18);
player->changeOriginalDemo();
player->changeDemoMode(daPy_demo_c::DEMO_UNK18_e);
field_0x8E4 = -1;
}
@@ -736,9 +735,8 @@ void daObjTpost_c::modeTalkXY() {
case 0xCF0:
case 0xCF1:
if(player->getBaseAnimeFrameRate() == 0.0f) {
player->mDemo.setOriginalDemoType();
player->mDemo.setParam0(0);
player->mDemo.setDemoMode(1);
player->changeOriginalDemo();
player->changeDemoMode(daPy_demo_c::DEMO_UNK1_e);
}
break;
+6 -2
View File
@@ -24,8 +24,12 @@ static BOOL daPy_bowJointCB(J3DNode*, int) {
}
/* 80149FD0-8014A008 .text bowButton__9daPy_lk_cCFv */
void daPy_lk_c::bowButton() const {
/* Nonmatching */
BOOL daPy_lk_c::bowButton() const {
if (mDemo.getDemoMode() == daPy_demo_c::DEMO_UNK44_e) {
return doButton();
} else {
return itemButton();
}
}
/* 8014A008-8014A02C .text checkBowReadyAnime__9daPy_lk_cCFv */
+29 -25
View File
@@ -293,22 +293,22 @@ void daPy_lk_c::voiceStart(u32 param_1) {
/* 801031A4-801031DC .text itemButton__9daPy_lk_cCFv */
BOOL daPy_lk_c::itemButton() const {
if (mReadyItemBtn == dItemBtn_X_e) {
return m34C9 & 0x04;
return itemButtonX();
} else if (mReadyItemBtn == dItemBtn_Y_e) {
return m34C9 & 0x08;
return itemButtonY();
} else {
return m34C9 & 0x10;
return itemButtonZ();
}
}
/* 801031DC-80103214 .text itemTrigger__9daPy_lk_cCFv */
BOOL daPy_lk_c::itemTrigger() const {
if (mReadyItemBtn == dItemBtn_X_e) {
return mPressedButtons & 0x04;
return itemTriggerX();
} else if (mReadyItemBtn == dItemBtn_Y_e) {
return mPressedButtons & 0x08;
return itemTriggerY();
} else {
return mPressedButtons & 0x10;
return itemTriggerZ();
}
}
@@ -343,15 +343,15 @@ 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::checkCurse()) {
if (mPressedButtons & 0x04 && checkGroupItem(param_1, dComIfGp_getSelectItem(dItemBtn_X_e))) {
if (itemTriggerX() && checkGroupItem(param_1, dComIfGp_getSelectItem(dItemBtn_X_e))) {
mReadyItemBtn = dItemBtn_X_e;
return TRUE;
}
if (mPressedButtons & 0x08 && checkGroupItem(param_1, dComIfGp_getSelectItem(dItemBtn_Y_e))) {
if (itemTriggerY() && checkGroupItem(param_1, dComIfGp_getSelectItem(dItemBtn_Y_e))) {
mReadyItemBtn = dItemBtn_Y_e;
return TRUE;
}
if (mPressedButtons & 0x10 && checkGroupItem(param_1, dComIfGp_getSelectItem(dItemBtn_Z_e))) {
if (itemTriggerZ() && checkGroupItem(param_1, dComIfGp_getSelectItem(dItemBtn_Z_e))) {
mReadyItemBtn = dItemBtn_Z_e;
return TRUE;
}
@@ -1625,24 +1625,24 @@ BOOL daPy_lk_c::checkItemChangeFromButton() {
!checkPlayerGuard()
) {
if (!daPy_dmEcallBack_c::checkCurse()) {
if (mPressedButtons & 0x02 && checkSwordEquip() && mEquipItem != daPyItem_SWORD_e) {
if (swordTrigger() && checkSwordEquip() && mEquipItem != daPyItem_SWORD_e) {
setAnimeEquipSword(1);
} else if (mPressedButtons & 0x04) {
} else if (itemTriggerX()) {
if (checkNewItemChange(0)) {
mReadyItemBtn = dItemBtn_X_e;
return TRUE;
}
} else if (mPressedButtons & 0x08) {
} else if (itemTriggerY()) {
if (checkNewItemChange(1)) {
mReadyItemBtn = dItemBtn_Y_e;
return TRUE;
}
} else if (mPressedButtons & 0x10) {
} else if (itemTriggerZ()) {
if (checkNewItemChange(2)) {
mReadyItemBtn = dItemBtn_Z_e;
return TRUE;
}
} else if (mPressedButtons & 0x01) {
} else if (doTrigger()) {
if (dComIfGp_getDoStatus() == 0x08) { // A button shows "Put Away"
setAnimeUnequip();
}
@@ -1657,12 +1657,12 @@ BOOL daPy_lk_c::checkItemChangeFromButton() {
return procBottleDrink_init(dComIfGp_getSelectItem(mReadyItemBtn));
} else if (checkSetItemTrigger(FAIRY_BOTTLE, 0)) {
return procBottleOpen_init(FAIRY_BOTTLE);
} else if (mPressedButtons & 0x01) {
} else if (doTrigger()) {
if (dComIfGp_getDoStatus() == 0x08) { // A button shows "Put Away"
setAnimeUnequip();
}
}
} else if (mPressedButtons & 0x01) {
} else if (doTrigger()) {
if (dComIfGp_getDoStatus() == 0x08) { // A button shows "Put Away"
setAnimeUnequip();
}
@@ -2098,9 +2098,10 @@ BOOL daPy_lk_c::checkMaskDraw() {
}
/* 801121C8-80112280 .text checkSubjectEnd__9daPy_lk_cFi */
BOOL daPy_lk_c::checkSubjectEnd(int param_1) {
if(dComIfGp_event_runCheck() || (mPressedButtons & 3) || (m34C9 & 0x20) || dComIfGp_checkCameraAttentionStatus(mCameraInfoIdx, 0x2000)) {
if(param_1) {
BOOL daPy_lk_c::checkSubjectEnd(BOOL i_playSound) {
// TODO: these trigger/button checks are likely inlines
if(dComIfGp_event_runCheck() || (mItemTrigger & (BTN_A | BTN_B)) || (mItemButton & BTN_L) || dComIfGp_checkCameraAttentionStatus(mCameraInfoIdx, 0x2000)) {
if(i_playSound) {
mDoAud_seStart(JA_SE_SUBJ_VIEW_OUT);
}
@@ -2317,27 +2318,30 @@ BOOL daPy_lk_c::procScope() {
}
/* 80112AA8-80112B18 .text procSubjectivity_init__9daPy_lk_cFi */
BOOL daPy_lk_c::procSubjectivity_init(int param_1) {
BOOL daPy_lk_c::procSubjectivity_init(BOOL i_crouch) {
commonProcInit(daPyProc_SUBJECTIVITY_e);
mVelocity = 0.0f;
setSubjectMode();
if(param_1 == 0) {
if(!i_crouch) {
setBlendMoveAnime(daPy_HIO_basic_c0::m.field_0xC);
}
m3570 = param_1;
m3570 = i_crouch;
return true;
}
/* 80112B18-80112BEC .text procSubjectivity__9daPy_lk_cFv */
BOOL daPy_lk_c::procSubjectivity() {
dComIfGp_setAStatus(7);
dComIfGp_setAStatus(7); // Show "Return" on the B button
if(checkSubjectEnd(0) || (m3570 != 0 && (m34C9 & 0x40) == 0)) {
if(
checkSubjectEnd(FALSE) ||
(m3570 != 0 && !spActionButton() // Player released R while crouching
)) {
mDoAud_seStart(JA_SE_SUBJ_VIEW_OUT);
if(m3570 != 0) {
if(mEquipItem == daPyItem_NONE_e) {
@@ -3118,7 +3122,7 @@ BOOL daPy_lk_c::startRestartRoom(u32 mode, int eventInfoIdx, f32 param_3, int i_
if (!checkNoResetFlg0(daPyFlg0_UNK4000) && (i_point != 0 || dComIfGp_event_compulsory(this))) {
mDemo.setOriginalDemoType();
if (i_point == 0) {
mDemo.setDemoMode(1);
mDemo.setDemoMode(daPy_demo_c::DEMO_UNK1_e);
}
onNoResetFlg0(daPyFlg0_UNK4000);
changePlayer(this);
+2 -2
View File
@@ -338,7 +338,7 @@ BOOL daPy_lk_c::procTactWait() {
dComIfGp_setAStatus(7);
}
if (m34D2 == 0 || ((mPressedButtons & 2) != 0 && dComIfGp_getAStatus() == 7) || m35AC <= 0.0f) {
if (m34D2 == 0 || (cancelTrigger() && dComIfGp_getAStatus() == 7) || m35AC <= 0.0f) {
if (m34D2 != 0) {
resetActAnimeUpper(UPPER_MOVE2_e, -1.0f);
resetActAnimeUpper(UPPER_MOVE1_e, -1.0f);
@@ -347,7 +347,7 @@ BOOL daPy_lk_c::procTactWait() {
g_dComIfG_gameInfo.play.field_0x4947 = 0;
if ((mPressedButtons & 2) != 0 && m3570 == 5) {
if (cancelTrigger() && m3570 == 5) {
m35AC = -1000.0f;
}