From 977e87a0dc735c98f8f1b25a6bc0839a681520a0 Mon Sep 17 00:00:00 2001 From: SuperDude88 <82904174+SuperDude88@users.noreply.github.com> Date: Fri, 1 Dec 2023 17:18:36 -0500 Subject: [PATCH 1/3] d_a_race_item Matches --- include/d/actor/d_a_race_item.h | 25 +-- include/d/d_com_inf_game.h | 21 ++- src/d/actor/d_a_race_item.cpp | 278 ++++++++++++++++++++++++++++---- src/d/d_a_race_item_static.cpp | 140 +++++++++++++--- 4 files changed, 401 insertions(+), 63 deletions(-) diff --git a/include/d/actor/d_a_race_item.h b/include/d/actor/d_a_race_item.h index 6ca65a916..c18143067 100644 --- a/include/d/actor/d_a_race_item.h +++ b/include/d/actor/d_a_race_item.h @@ -1,24 +1,31 @@ #ifndef D_A_RACE_ITEM_H #define D_A_RACE_ITEM_H -#include "f_op/f_op_actor.h" #include "d/actor/d_a_itembase.h" -class daRaceItem_c : public fopAc_ac_c { +class daRaceItem_c : public daItemBase_c { public: - inline BOOL draw(); - inline BOOL execute(); - void setListStart() {} - void set_mtx(); BOOL Delete(); s32 create(); - void CreateInit(); + BOOL CreateInit(); void checkGet(); + inline BOOL execute(); + void setListStart() {} + // race_item_static functions + void raceItemForceGet(); + void raceItemGet(); + void normalItemGet(); + BOOL startOffsetPos(); + BOOL endOffsetPos(f32, cXyz*, f32, f32, csXyz*); + BOOL checkOffsetPos(); + void set_mtx(cXyz*); public: - /* 0x000 */ daItemBase_c parent; - /* 0x63C */ u8 m63C[0x648 - 0x63C]; + /* 0x63C */ s32 field_0x63C; + /* 0x640 */ u32 field_0x640; + /* 0x644 */ u8 field_0x644; + /* 0x645 */ u8 field_0x645; }; #endif /* D_A_RACE_ITEM_H */ diff --git a/include/d/d_com_inf_game.h b/include/d/d_com_inf_game.h index 29811d452..d78d0ee2b 100644 --- a/include/d/d_com_inf_game.h +++ b/include/d/d_com_inf_game.h @@ -361,6 +361,16 @@ public: void setItemRupeeCount(s32 count) { mItemRupeeCount += count; } void setMessageCountNumber(s16 num) { mMsgCountNumber = num; } + s16 getMiniGameRupee() { return mMiniGameRupee; } + void plusMiniGameRupee(s16 count) { + if(mMiniGameRupee + count > 0) { + mMiniGameRupee += count; + } + else { + mMiniGameRupee = 0; + } + } + void setLkDemoAnmArchive(JKRArchive* i_arc) { mpLkDArc = i_arc; } void setStatus(u16 status) { mStatus = status; } void onStatus(u16 status) { mStatus |= status; } @@ -644,7 +654,8 @@ public: /* 0x4A28 */ u32 mPlayerStatus[2][2]; /* 0x4A38 */ u8 field_0x4A38[0x4A3A - 0x4A38]; /* 0x4A3A */ u8 mMiniGameType; - /* 0x4A3B */ u8 field_0x4A3B[0x4A40 - 0x4A3B]; + /* 0x4A3C */ s16 mMiniGameRupee; + /* 0x4A3D */ u8 field_0x4A3E[0x4A40 - 0x4A3E]; /* 0x4A40 */ __d_timer_info_c mTimerInfo; /* 0x4A54 */ dDlst_window_c* mCurrentWindow; /* 0x4A58 */ view_class* mCurrentView; @@ -2063,6 +2074,14 @@ inline void dComIfGp_setRStatusForce(u8 status) { g_dComIfG_gameInfo.play.setRStatusForce(status); } +inline s16 dComIfGp_getMiniGameRupee() { + return g_dComIfG_gameInfo.play.getMiniGameRupee(); +} + +inline void dComIfGp_plusMiniGameRupee(s16 count) { + g_dComIfG_gameInfo.play.plusMiniGameRupee(count); +} + inline s32 dComIfGp_getWindowNum() { return g_dComIfG_gameInfo.play.getWindowNum(); } inline void dComIfGp_setWindowNum(u8 num) { g_dComIfG_gameInfo.play.setWindowNum(num); } inline dDlst_window_c * dComIfGp_getWindow(int idx) { return g_dComIfG_gameInfo.play.getWindow(idx); } diff --git a/src/d/actor/d_a_race_item.cpp b/src/d/actor/d_a_race_item.cpp index 1bcf43898..766b3e763 100644 --- a/src/d/actor/d_a_race_item.cpp +++ b/src/d/actor/d_a_race_item.cpp @@ -4,64 +4,276 @@ // #include "d/actor/d_a_race_item.h" -#include "dolphin/types.h" +#include "JSystem/JKernel/JKRHeap.h" +#include "d/d_com_inf_game.h" +#include "d/actor/d_a_sea.h" +#include "d/d_item_data.h" +#include "d/d_procname.h" +#include "d/actor/d_a_player_main.h" +#include "m_Do/m_Do_mtx.h" + +static dCcD_SrcCyl l_cyl_src = { + 0, + 0, + 0, + 0, + 0xFFFFFFFF, // Tg damage types + 3, + 0x19, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 4, + 0, + + // Cylinder + 0.0, // X + 0.0, // Y + 0.0, // Z + 0.0, // Radius + 0.0, // Height +}; -/* 00000078-000000F8 .text set_mtx__12daRaceItem_cFv */ void daRaceItem_c::set_mtx() { - /* Nonmatching */ + mpModel->setBaseScale(mScale); + mDoMtx_stack_c::transS(current.pos); + mDoMtx_stack_c::YrotM(current.angle.y); + MTXCopy(mDoMtx_stack_c::get(), mpModel->mBaseTransformMtx); } -/* 000000F8-0000012C .text Delete__12daRaceItem_cFv */ BOOL daRaceItem_c::Delete() { - /* Nonmatching */ + DeleteBase(dItem_data::field_item_res[m_itemNo].mArc); } -/* 0000012C-00000318 .text create__12daRaceItem_cFv */ s32 daRaceItem_c::create() { - /* Nonmatching */ + fopAcM_SetupActor(this, daRaceItem_c); + + m_itemNo = fopAcM_GetParam(this) & 0xFF; + mPickupFlag = fopAcM_GetParam(this) >> 8 & 0x7F; + + if(fopAcM_isItem(this, mPickupFlag) && mPickupFlag != 0x7F) { + setLoadError(); + return cPhs_ERROR_e; + } + else { + s32 phase_state = dComIfG_resLoad(&mPhs, dItem_data::getFieldArc(m_itemNo)); + if (phase_state == cPhs_COMPLEATE_e) { + u32 heap_size = dItem_data::getHeapSize(m_itemNo); + if (!fopAcM_entrySolidHeap(this, &CheckFieldItemCreateHeap, heap_size)) { + return cPhs_ERROR_e; + } + + CreateInit(); + } + + return phase_state; + } } -/* 00000540-000006A4 .text CreateInit__12daRaceItem_cFv */ -void daRaceItem_c::CreateInit() { - /* Nonmatching */ +BOOL daRaceItem_c::CreateInit() { + set_mtx(); + fopAcM_SetMtx(this, mpModel->getBaseTRMtx()); + + mStts.Init(0, 0xFF, this); + mCyl.Set(l_cyl_src); + mCyl.SetStts(&mStts); + f32 height = getHeight(); + f32 radius = getR(); + if (mScale.x > 1.0f) { + height *= mScale.x; + radius *= mScale.x; + } + mCyl.SetR(radius); + mCyl.SetH(height); + + mAcchCir.SetWall(30.0f, 30.0f); + mAcch.Set(¤t.pos, &next.pos, this, 1, &mAcchCir, &speed, 0, 0); + mAcch.ClrWaterNone(); + mAcch.ClrRoofNone(); + + field_0x640 = 0; + field_0x644 = fopAcM_GetParam(this) >> 0xF & 0xF; + + return true; } -/* 000006A4-000006F0 .text checkGet__12daRaceItem_cFv */ void daRaceItem_c::checkGet() { - /* Nonmatching */ + if(field_0x644 == 1 && mCyl.ChkCoHit()) { + normalItemGet(); + } } -/* 000006F0-0000071C .text daRaceItem_Draw__FP12daRaceItem_c */ -static BOOL daRaceItem_Draw(daRaceItem_c*) { - /* Nonmatching */ +static BOOL daRaceItem_Draw(daRaceItem_c* i_this) { + return i_this->DrawBase(); } -/* 0000071C-0000073C .text daRaceItem_Execute__FP12daRaceItem_c */ -static BOOL daRaceItem_Execute(daRaceItem_c*) { - /* Nonmatching */ +static BOOL daRaceItem_Execute(daRaceItem_c* i_this) { + return i_this->execute(); } -/* 0000073C-00000C44 .text execute__12daRaceItem_cFv */ BOOL daRaceItem_c::execute() { - /* Nonmatching */ + field_0x634++; + animPlay(1.0f, 1.0f, 1.0f, 1.0f, 1.0f); + mEyePos = current.pos; + mEyePos.y += mScale.x * dItem_data::getH(m_itemNo) / 2.0f; + + daPy_lk_c* player; + cXyz headPos; + switch(field_0x640) { + case 0: + checkGet(); + + s16 spin = 0xFFFF / daItemBase_c::m_data.mNumFramesPerFullSpin; + fopAcM_addAngleY(this, current.angle.y + spin, spin); + mCyl.SetC(current.pos); + dComIfG_Ccsp()->Set(&mCyl); + + break; + case 1: + player = daPy_getPlayerLinkActorClass(); + headPos = player->getHeadTopPos(); + headPos.y += 15.0f; + current.pos = headPos; + current.angle.z = 0; + current.angle.x = 0; + shape_angle.z = 0; + shape_angle.x = 0; + mScale.setall(1.0f); + + field_0x63C = 0xD; + + speed.set(0.0f, 23.0f, 0.0f); + mGravity = -6.0f; + + mCyl.ClrTgHit(); + mCyl.ClrCoHit(); + mCyl.OffCoSPrmBit(0x1); + mCyl.OffTgSPrmBit(0x1); + + field_0x645 &= 0xFE; + field_0x640 = 2; + case 2: + field_0x63C -= 1; + + player = daPy_getPlayerLinkActorClass(); + headPos = player->getHeadTopPos(); + headPos.y += 15.0f; + current.pos.x = headPos.x; + current.pos.z = headPos.z; + fopAcM_posMoveF(this, 0); + + if(current.pos.y < headPos.y) { + current.pos.y = headPos.y; + } + + if(field_0x63C < 0) { + fopAcM_delete(this); + break; + } + + break; + case 3: + field_0x640 = 4; + case 4: + checkGet(); + + fopAcM_posMoveF(this, mStts.GetCCMoveP()); + mAcch.CrrPos(*dComIfG_Bgsp()); + + if(!(field_0x645 & 1) && !fopAcM_checkStatus(this, 0x100000)) { // looks like !checkOffsetPos() but that isn't an inline + if(mAcch.ChkWaterIn()) { + fopAcM_seStart(this, JA_SE_OBJ_FALL_WATER_S, 0); + fopAcM_delete(this); + } + + if(daSea_ChkArea(current.pos.x, current.pos.z)) { + f32 wave = daSea_calcWave(current.pos.x, current.pos.z); + if(wave != 0.0f && current.pos.y - wave < 0.0f) { + fopAcM_delete(this); + } + } + } + + if(current.pos.y < -5000.0f) { + fopAcM_delete(this); + } + + mCyl.SetC(current.pos); + dComIfG_Ccsp()->Set(&mCyl); + } + + if(mCyl.ChkTgHit() && field_0x644 == 1) { + cCcD_Obj* hitObj = mCyl.GetTgHitObj(); + if (hitObj) { + u32 atType = hitObj->GetAtType(); + if (atType & AT_TYPE_BOOMERANG) { + field_0x645 |= 1; + } else if (atType & AT_TYPE_HOOKSHOT) { + cXyz pos(0.0f, dItem_data::getH(m_itemNo) / 2.0f, 0.0f); + daPy_getPlayerActorClass()->setHookshotCarryOffset(fopAcM_GetID(this), &pos); + } + } + } + + if(field_0x645 & 1) { + fopAc_ac_c* boomerang = (fopAc_ac_c*)fopAcM_SearchByName(PROC_BOOMERANG); + if(boomerang) { + current.pos = boomerang->current.pos; + } + else { + field_0x645 &= 0xFE; + } + } + + if(!checkOffsetPos()) { + mScale.setall(1.0f); + } + + set_mtx(); + + return true; } -/* 00000C44-00000C4C .text daRaceItem_IsDelete__FP12daRaceItem_c */ -static BOOL daRaceItem_IsDelete(daRaceItem_c*) { - /* Nonmatching */ +static bool daRaceItem_IsDelete(daRaceItem_c*) { + return true; } -/* 00000C4C-00000C6C .text daRaceItem_Delete__FP12daRaceItem_c */ -static BOOL daRaceItem_Delete(daRaceItem_c*) { - /* Nonmatching */ +static BOOL daRaceItem_Delete(daRaceItem_c* i_this) { + return i_this->Delete(); } -/* 00000C6C-00000C8C .text daRaceItem_Create__FP10fopAc_ac_c */ -static s32 daRaceItem_Create(fopAc_ac_c*) { - /* Nonmatching */ +static int daRaceItem_Create(fopAc_ac_c* i_this) { + return static_cast(i_this)->create(); } -/* 00000CA8-00000CAC .text setListStart__12daRaceItem_cFv */ -void daRaceItem_c::setListStart() { - /* Nonmatching */ -} + +static actor_method_class l_daRaceItem_Method = { + (process_method_func)daRaceItem_Create, + (process_method_func)daRaceItem_Delete, + (process_method_func)daRaceItem_Execute, + (process_method_func)daRaceItem_IsDelete, + (process_method_func)daRaceItem_Draw, +}; + +extern actor_process_profile_definition g_profile_RACEITEM = { + fpcLy_CURRENT_e, + 7, + fpcPi_CURRENT_e, + PROC_RACEITEM, + &g_fpcLf_Method.mBase, + sizeof(daRaceItem_c), + 0, + 0, + &g_fopAc_Method.base, + 0x00FD, + &l_daRaceItem_Method, + 0x000C4100, + fopAc_ACTOR_e, + fopAc_CULLBOX_0_e, +}; diff --git a/src/d/d_a_race_item_static.cpp b/src/d/d_a_race_item_static.cpp index 41db84efd..ea59d485d 100644 --- a/src/d/d_a_race_item_static.cpp +++ b/src/d/d_a_race_item_static.cpp @@ -3,41 +3,141 @@ // Translation Unit: d_a_race_item_static.cpp // -#include "d/actor/d_a_race_item_static.h" -#include "dolphin/types.h" +#include "d/actor/d_a_race_item.h" +#include "d/d_com_inf_game.h" +#include "d/d_item.h" +#include "d/d_item_data.h" +#include "m_Do/m_Do_mtx.h" -/* 80068A58-80068AA4 .text raceItemForceGet__12daRaceItem_cFv */ void daRaceItem_c::raceItemForceGet() { - /* Nonmatching */ + field_0x640 = 1; + switch(field_0x644) { + case 0: + raceItemGet(); + break; + case 1: + normalItemGet(); + break; + } } -/* 80068AA4-80068D48 .text raceItemGet__12daRaceItem_cFv */ void daRaceItem_c::raceItemGet() { - /* Nonmatching */ + switch(m_itemNo) { + case GREEN_RUPEE: + mDoAud_seStart(0x826, 0, 0, 0); + dComIfGp_plusMiniGameRupee(1); + break; + case BLUE_RUPEE: + mDoAud_seStart(0x835, 0, 0, 0); + dComIfGp_plusMiniGameRupee(5); + break; + case YELLOW_RUPEE: + mDoAud_seStart(0x826, 0, 0, 0); + dComIfGp_plusMiniGameRupee(10); + break; + case RED_RUPEE: + mDoAud_seStart(0x836, 0, 0, 0); + dComIfGp_plusMiniGameRupee(20); + break; + case PURPLE_RUPEE: + mDoAud_seStart(0x826, 0, 0, 0); + dComIfGp_plusMiniGameRupee(50); + break; + case ORANGE_RUPEE: + mDoAud_seStart(0x826, 0, 0, 0); + dComIfGp_plusMiniGameRupee(100); + break; + case SILVER_RUPEE: + mDoAud_seStart(0x826, 0, 0, 0); + dComIfGp_plusMiniGameRupee(200); + break; + } } -/* 80068D48-80068FD0 .text normalItemGet__12daRaceItem_cFv */ void daRaceItem_c::normalItemGet() { - /* Nonmatching */ + field_0x640 = 1; + execItemGet(m_itemNo); + if(mPickupFlag != 0x7F) { + dComIfGs_onItem(mPickupFlag, fopAcM_GetHomeRoomNo(this)); + } + + switch(m_itemNo) { + case GREEN_RUPEE: + mDoAud_seStart(0x826, 0, 0, 0); + break; + case BLUE_RUPEE: + mDoAud_seStart(0x835, 0, 0, 0); + break; + case YELLOW_RUPEE: + mDoAud_seStart(0x836, 0, 0, 0); + break; + case RED_RUPEE: + mDoAud_seStart(0x836, 0, 0, 0); + break; + case PURPLE_RUPEE: + mDoAud_seStart(0x836, 0, 0, 0); + break; + case ORANGE_RUPEE: + mDoAud_seStart(0x836, 0, 0, 0); + break; + case S_MAGIC: + mDoAud_seStart(0x836, 0, 0, 0); + break; + case L_MAGIC: + mDoAud_seStart(0x879, 0, 0, 0); + break; + case BOMB_5: + case BOMB_10: + case BOMB_20: + case BOMB_30: + case ARROW_10: + case ARROW_20: + case ARROW_30: + mDoAud_seStart(0x87A, 0, 0, 0); + break; + case SILVER_RUPEE: + mDoAud_seStart(0x827, 0, 0, 0); + break; + case TRIPLE_HEART: + mDoAud_seStart(0x821, 0, 0, 0); + break; + } } -/* 80068FD0-80068FE0 .text startOffsetPos__12daRaceItem_cFv */ -void daRaceItem_c::startOffsetPos() { - /* Nonmatching */ +BOOL daRaceItem_c::startOffsetPos() { + field_0x640 = 0; + return true; } -/* 80068FE0-8006903C .text endOffsetPos__12daRaceItem_cFfP4cXyzffP5csXyz */ -void daRaceItem_c::endOffsetPos(float, cXyz*, float, float, csXyz*) { - /* Nonmatching */ +BOOL daRaceItem_c::endOffsetPos(f32 param_1, cXyz* param_2, f32 param_3, f32 param_4, csXyz* param_5) { + if(param_5) { + current.angle = *param_5; + } + if(param_2) { + mScale = *param_2; + } + + mGravity = param_1; + speedF = param_4; + speed.y = param_3; + field_0x640 = 3; + + return true; } -/* 8006903C-80069064 .text checkOffsetPos__12daRaceItem_cFv */ -void daRaceItem_c::checkOffsetPos() { - /* Nonmatching */ +BOOL daRaceItem_c::checkOffsetPos() { + BOOL ret = true; + if(field_0x645 & 0x1 || fopAcM_checkStatus(this, 0x100000)) { + ret = false; + } + + return ret; } -/* 80069064-800690E4 .text set_mtx__12daRaceItem_cFP4cXyz */ -void daRaceItem_c::set_mtx(cXyz*) { - /* Nonmatching */ +void daRaceItem_c::set_mtx(cXyz* param_1) { + mpModel->setBaseScale(mScale); + mDoMtx_stack_c::transS(*param_1); + mDoMtx_stack_c::YrotM(current.angle.y); + MTXCopy(mDoMtx_stack_c::get(), mpModel->mBaseTransformMtx); } From e8574384e747677b0488f30276f00dd755cb5564 Mon Sep 17 00:00:00 2001 From: SuperDude88 <82904174+SuperDude88@users.noreply.github.com> Date: Fri, 1 Dec 2023 18:18:16 -0500 Subject: [PATCH 2/3] Inlines --- src/d/actor/d_a_race_item.cpp | 4 ++-- src/d/d_a_race_item_static.cpp | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/d/actor/d_a_race_item.cpp b/src/d/actor/d_a_race_item.cpp index 766b3e763..c63db6cad 100644 --- a/src/d/actor/d_a_race_item.cpp +++ b/src/d/actor/d_a_race_item.cpp @@ -44,7 +44,7 @@ void daRaceItem_c::set_mtx() { mpModel->setBaseScale(mScale); mDoMtx_stack_c::transS(current.pos); mDoMtx_stack_c::YrotM(current.angle.y); - MTXCopy(mDoMtx_stack_c::get(), mpModel->mBaseTransformMtx); + mpModel->setBaseTRMtx(mDoMtx_stack_c::get()); } BOOL daRaceItem_c::Delete() { @@ -186,7 +186,7 @@ BOOL daRaceItem_c::execute() { fopAcM_posMoveF(this, mStts.GetCCMoveP()); mAcch.CrrPos(*dComIfG_Bgsp()); - if(!(field_0x645 & 1) && !fopAcM_checkStatus(this, 0x100000)) { // looks like !checkOffsetPos() but that isn't an inline + if(!(field_0x645 & 1) && !fopAcM_checkHookCarryNow(this)) { // looks like !checkOffsetPos() but that isn't an inline if(mAcch.ChkWaterIn()) { fopAcM_seStart(this, JA_SE_OBJ_FALL_WATER_S, 0); fopAcM_delete(this); diff --git a/src/d/d_a_race_item_static.cpp b/src/d/d_a_race_item_static.cpp index ea59d485d..0613d0a0e 100644 --- a/src/d/d_a_race_item_static.cpp +++ b/src/d/d_a_race_item_static.cpp @@ -127,7 +127,7 @@ BOOL daRaceItem_c::endOffsetPos(f32 param_1, cXyz* param_2, f32 param_3, f32 par BOOL daRaceItem_c::checkOffsetPos() { BOOL ret = true; - if(field_0x645 & 0x1 || fopAcM_checkStatus(this, 0x100000)) { + if(field_0x645 & 0x1 || fopAcM_checkHookCarryNow(this)) { ret = false; } @@ -138,6 +138,6 @@ void daRaceItem_c::set_mtx(cXyz* param_1) { mpModel->setBaseScale(mScale); mDoMtx_stack_c::transS(*param_1); mDoMtx_stack_c::YrotM(current.angle.y); - MTXCopy(mDoMtx_stack_c::get(), mpModel->mBaseTransformMtx); + mpModel->setBaseTRMtx(mDoMtx_stack_c::get()); } From 41366a1dbc6d99e29837bd7926aa0e8141ffe01e Mon Sep 17 00:00:00 2001 From: SuperDude88 <82904174+SuperDude88@users.noreply.github.com> Date: Sat, 2 Dec 2023 23:03:58 -0500 Subject: [PATCH 3/3] Sound IDs Use the enum --- src/d/d_a_race_item_static.cpp | 36 +++++++++++++++++----------------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/src/d/d_a_race_item_static.cpp b/src/d/d_a_race_item_static.cpp index 0613d0a0e..42a1d4166 100644 --- a/src/d/d_a_race_item_static.cpp +++ b/src/d/d_a_race_item_static.cpp @@ -24,31 +24,31 @@ void daRaceItem_c::raceItemForceGet() { void daRaceItem_c::raceItemGet() { switch(m_itemNo) { case GREEN_RUPEE: - mDoAud_seStart(0x826, 0, 0, 0); + mDoAud_seStart(JA_SE_LUPY_GET, 0, 0, 0); dComIfGp_plusMiniGameRupee(1); break; case BLUE_RUPEE: - mDoAud_seStart(0x835, 0, 0, 0); + mDoAud_seStart(JA_SE_BLUE_LUPY_GET, 0, 0, 0); dComIfGp_plusMiniGameRupee(5); break; case YELLOW_RUPEE: - mDoAud_seStart(0x826, 0, 0, 0); + mDoAud_seStart(JA_SE_LUPY_GET, 0, 0, 0); dComIfGp_plusMiniGameRupee(10); break; case RED_RUPEE: - mDoAud_seStart(0x836, 0, 0, 0); + mDoAud_seStart(JA_SE_RED_LUPY_GET, 0, 0, 0); dComIfGp_plusMiniGameRupee(20); break; case PURPLE_RUPEE: - mDoAud_seStart(0x826, 0, 0, 0); + mDoAud_seStart(JA_SE_LUPY_GET, 0, 0, 0); dComIfGp_plusMiniGameRupee(50); break; case ORANGE_RUPEE: - mDoAud_seStart(0x826, 0, 0, 0); + mDoAud_seStart(JA_SE_LUPY_GET, 0, 0, 0); dComIfGp_plusMiniGameRupee(100); break; case SILVER_RUPEE: - mDoAud_seStart(0x826, 0, 0, 0); + mDoAud_seStart(JA_SE_LUPY_GET, 0, 0, 0); dComIfGp_plusMiniGameRupee(200); break; } @@ -63,28 +63,28 @@ void daRaceItem_c::normalItemGet() { switch(m_itemNo) { case GREEN_RUPEE: - mDoAud_seStart(0x826, 0, 0, 0); + mDoAud_seStart(JA_SE_LUPY_GET, 0, 0, 0); break; case BLUE_RUPEE: - mDoAud_seStart(0x835, 0, 0, 0); + mDoAud_seStart(JA_SE_BLUE_LUPY_GET, 0, 0, 0); break; case YELLOW_RUPEE: - mDoAud_seStart(0x836, 0, 0, 0); + mDoAud_seStart(JA_SE_RED_LUPY_GET, 0, 0, 0); break; case RED_RUPEE: - mDoAud_seStart(0x836, 0, 0, 0); + mDoAud_seStart(JA_SE_RED_LUPY_GET, 0, 0, 0); break; case PURPLE_RUPEE: - mDoAud_seStart(0x836, 0, 0, 0); + mDoAud_seStart(JA_SE_RED_LUPY_GET, 0, 0, 0); break; case ORANGE_RUPEE: - mDoAud_seStart(0x836, 0, 0, 0); + mDoAud_seStart(JA_SE_RED_LUPY_GET, 0, 0, 0); break; case S_MAGIC: - mDoAud_seStart(0x836, 0, 0, 0); + mDoAud_seStart(JA_SE_RED_LUPY_GET, 0, 0, 0); break; case L_MAGIC: - mDoAud_seStart(0x879, 0, 0, 0); + mDoAud_seStart(JA_SE_MAGIC_POT_GET_S, 0, 0, 0); break; case BOMB_5: case BOMB_10: @@ -93,13 +93,13 @@ void daRaceItem_c::normalItemGet() { case ARROW_10: case ARROW_20: case ARROW_30: - mDoAud_seStart(0x87A, 0, 0, 0); + mDoAud_seStart(JA_SE_MAGIC_POT_GET_L, 0, 0, 0); break; case SILVER_RUPEE: - mDoAud_seStart(0x827, 0, 0, 0); + mDoAud_seStart(JA_SE_CONSUMP_ITEM_GET, 0, 0, 0); break; case TRIPLE_HEART: - mDoAud_seStart(0x821, 0, 0, 0); + mDoAud_seStart(JA_SE_HEART_PIECE, 0, 0, 0); break; } }