mirror of
https://github.com/zeldaret/tp
synced 2026-06-12 13:35:26 -04:00
big d_a_alink pass (#214)
* d_a_alink pass1 wip * more d_a_alink work * remove asm * more daalink work * 20% dol code decompiled * fixed some nonmatchings for building * a few daalink functions and labeling some HIO data
This commit is contained in:
+115
-10
@@ -6,10 +6,10 @@
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
SECTION_INIT void __check_pad3();
|
||||
SECTION_INIT void __set_debug_bba();
|
||||
SECTION_INIT u8 __get_debug_bba();
|
||||
SECTION_INIT void __start();
|
||||
SECTION_INIT void __check_pad3(void);
|
||||
SECTION_INIT void __set_debug_bba(void);
|
||||
SECTION_INIT u8 __get_debug_bba(void);
|
||||
SECTION_INIT void __start(void);
|
||||
|
||||
//
|
||||
// External References:
|
||||
@@ -51,11 +51,116 @@ SECTION_INIT u8 __get_debug_bba(void) {
|
||||
}
|
||||
|
||||
/* 80003154-800032B0 000054 015C+00 0/0 1/0 0/0 .init __start */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
SECTION_INIT asm void __start() {
|
||||
SECTION_INIT asm void __start(void) {
|
||||
// clang-format off
|
||||
nofralloc
|
||||
#include "asm/init/__start.s"
|
||||
|
||||
bl __init_registers
|
||||
bl __init_hardware
|
||||
li r0, -1
|
||||
stwu r1, -8(r1)
|
||||
stw r0, 4(r1)
|
||||
stw r0, 0(r1)
|
||||
bl __init_data
|
||||
li r0, 0
|
||||
lis r6, 0x8000
|
||||
addi r6, r6, 0x0044
|
||||
stw r0, 0(r6)
|
||||
lis r6, 0x8000
|
||||
addi r6, r6, 0x00F4
|
||||
lwz r6, 0(r6)
|
||||
cmplwi r6, 0
|
||||
beq lbl_8000319C
|
||||
lwz r7, 0xc(r6)
|
||||
b lbl_800031BC
|
||||
|
||||
lbl_8000319C:
|
||||
lis r5, 0x8000
|
||||
addi r5, r5, 0x0034
|
||||
lwz r5, 0(r5)
|
||||
cmplwi r5, 0
|
||||
beq lbl_800031F8
|
||||
lis r7, 0x8000
|
||||
addi r7, r7, 0x30E8
|
||||
lwz r7, 0(r7)
|
||||
|
||||
lbl_800031BC:
|
||||
li r5, 0
|
||||
cmplwi r7, 2
|
||||
beq lbl_800031E8
|
||||
cmplwi r7, 3
|
||||
li r5, 1
|
||||
beq lbl_800031E8
|
||||
cmplwi r7, 4
|
||||
bne lbl_800031F8
|
||||
li r5, 2
|
||||
bl __set_debug_bba
|
||||
b lbl_800031F8
|
||||
|
||||
lbl_800031E8:
|
||||
lis r6, InitMetroTRK@ha
|
||||
addi r6, r6, InitMetroTRK@l
|
||||
mtlr r6
|
||||
blrl
|
||||
|
||||
lbl_800031F8:
|
||||
lis r6, 0x8000
|
||||
addi r6, r6, 0x00F4
|
||||
lwz r5, 0(r6)
|
||||
cmplwi r5, 0
|
||||
beq+ lbl_80003258
|
||||
lwz r6, 8(r5)
|
||||
cmplwi r6, 0
|
||||
beq+ lbl_80003258
|
||||
add r6, r5, r6
|
||||
lwz r14, 0(r6)
|
||||
cmplwi r14, 0
|
||||
beq lbl_80003258
|
||||
addi r15, r6, 4
|
||||
mtctr r14
|
||||
|
||||
lbl_80003230:
|
||||
addi r6, r6, 4
|
||||
lwz r7, 0(r6)
|
||||
add r7, r7, r5
|
||||
stw r7, 0(r6)
|
||||
bdnz lbl_80003230
|
||||
lis r5, 0x8000
|
||||
addi r5, r5, 0x0034
|
||||
rlwinm r7, r15, 0, 0, 0x1a
|
||||
stw r7, 0(r5)
|
||||
b lbl_80003260
|
||||
|
||||
lbl_80003258:
|
||||
li r14, 0
|
||||
li r15, 0
|
||||
|
||||
lbl_80003260:
|
||||
bl DBInit
|
||||
bl OSInit
|
||||
lis r4, 0x8000
|
||||
addi r4, r4, 0x30E6
|
||||
lhz r3, 0(r4)
|
||||
andi. r5, r3, 0x8000
|
||||
beq lbl_80003288
|
||||
andi. r3, r3, 0x7fff
|
||||
cmplwi r3, 1
|
||||
bne lbl_8000328C
|
||||
|
||||
lbl_80003288:
|
||||
bl __check_pad3
|
||||
|
||||
lbl_8000328C:
|
||||
bl __get_debug_bba
|
||||
cmplwi r3, 1
|
||||
bne lbl_8000329C
|
||||
bl InitMetroTRK_BBA
|
||||
|
||||
lbl_8000329C:
|
||||
bl __init_user
|
||||
mr r3, r14
|
||||
mr r4, r15
|
||||
bl main
|
||||
b exit
|
||||
// clang-format on
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
+2246
-640
File diff suppressed because it is too large
Load Diff
+2224
-382
File diff suppressed because it is too large
Load Diff
@@ -37,7 +37,7 @@ f32 daAlink_c::getBombEffScale() const {
|
||||
|
||||
/* 800E37D0-800E37E0 0DE110 0010+00 0/0 0/0 1/1 .text getBombAtR__9daAlink_cCFv */
|
||||
f32 daAlink_c::getBombAtR() const {
|
||||
return daAlinkHIO_bomb_c0::m.mAtRadius;
|
||||
return daAlinkHIO_bomb_c0::m.mAttackRadius;
|
||||
}
|
||||
|
||||
/* 800E37E0-800E37F0 0DE120 0010+00 0/0 0/0 1/1 .text getEnemyBombColorR__9daAlink_cCFv
|
||||
|
||||
+325
-132
@@ -6,32 +6,23 @@ BOOL daAlink_c::checkBoomerangLockAccept() {
|
||||
}
|
||||
|
||||
/* 800E0010-800E00B0 0DA950 00A0+00 0/0 0/0 1/1 .text getBoomSpeed__9daAlink_cFv */
|
||||
// small regalloc
|
||||
#ifdef NONMATCHING
|
||||
f32 daAlink_c::getBoomSpeed() {
|
||||
f32 speed;
|
||||
if (checkBoomerangChargeEndWait()) {
|
||||
speed = daAlinkHIO_boom_c0::m.mFlySpeed2;
|
||||
speed = daAlinkHIO_boom_c0::m.mChargeFlySpeed;
|
||||
} else {
|
||||
speed = daAlinkHIO_boom_c0::m.mFlySpeed;
|
||||
}
|
||||
|
||||
if (i_checkModeFlg(0x400) && mRideAcKeep.getActor() != NULL && mSpeedF > FLOAT_LABEL(lit_6108)) {
|
||||
speed += mSpeedF;
|
||||
if (i_checkModeFlg(0x400)) {
|
||||
fopAc_ac_c* ride_actor = mRideAcKeep.getActor();
|
||||
if (ride_actor != NULL && ride_actor->mSpeedF > FLOAT_LABEL(lit_6108)) {
|
||||
speed += ride_actor->mSpeedF;
|
||||
}
|
||||
}
|
||||
|
||||
return speed;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm f32 daAlink_c::getBoomSpeed() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/getBoomSpeed__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 800E00B0-800E00C0 0DA9F0 0010+00 0/0 0/0 1/1 .text getBoomCatchSpeed__9daAlink_cCFv */
|
||||
f32 daAlink_c::getBoomCatchSpeed() const {
|
||||
@@ -73,14 +64,13 @@ bool daAlink_c::checkBossBabaRoom() {
|
||||
|
||||
/* 800E01CC-800E0210 0DAB0C 0044+00 0/0 1/1 0/0 .text
|
||||
* cancelBoomerangLock__9daAlink_cFP10fopAc_ac_c */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::cancelBoomerangLock(fopAc_ac_c* param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/cancelBoomerangLock__9daAlink_cFP10fopAc_ac_c.s"
|
||||
void daAlink_c::cancelBoomerangLock(fopAc_ac_c* i_actor) {
|
||||
daBoomerang_c* boomerang = (daBoomerang_c*)getBoomerangActor();
|
||||
|
||||
if (boomerang != NULL) {
|
||||
boomerang->cancelLockActor(i_actor);
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E0210-800E0244 0DAB50 0034+00 2/2 0/0 0/0 .text getBoomerangActor__9daAlink_cFv */
|
||||
fopAc_ac_c* daAlink_c::getBoomerangActor() {
|
||||
@@ -111,14 +101,22 @@ bool daAlink_c::checkBoomerangChargeEnd() {
|
||||
|
||||
/* 800E02B8-800E03D0 0DABF8 0118+00 0/0 1/1 0/0 .text
|
||||
* checkBoomerangCarry__9daAlink_cFP10fopAc_ac_c */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm BOOL daAlink_c::checkBoomerangCarry(fopAc_ac_c* param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkBoomerangCarry__9daAlink_cFP10fopAc_ac_c.s"
|
||||
BOOL daAlink_c::checkBoomerangCarry(fopAc_ac_c* i_grabActor) {
|
||||
if (i_checkNoResetFlg0(FLG0_UNK_20) && !checkEventRun() && !i_checkWolf() &&
|
||||
i_checkModeFlg(0x10000000) &&
|
||||
(checkHorseNoUpperAnime() || checkHorseTurnAnime() || checkBoomerangThrowAnime())) {
|
||||
deleteEquipItem(0, 0);
|
||||
seStartOnlyReverb(JA_SE_LK_BOOM_CATCH);
|
||||
i_offNoResetFlg0(FLG0_UNK_20);
|
||||
|
||||
setGrabItemActor(i_grabActor);
|
||||
field_0x33e4 = lit_8785;
|
||||
setGrabUpperAnime(daAlinkHIO_basic_c0::m.mAnmBlendFactor);
|
||||
return 1;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E03D0-800E0440 0DAD10 0070+00 6/6 0/0 0/0 .text initBoomerangUpperAnimeSpeed__9daAlink_cFi
|
||||
*/
|
||||
@@ -143,26 +141,32 @@ BOOL daAlink_c::checkBoomerangAnime() const {
|
||||
|
||||
/* 800E04AC-800E04E8 0DADEC 003C+00 13/13 0/0 0/0 .text checkBoomerangThrowAnime__9daAlink_cCFv */
|
||||
BOOL daAlink_c::checkBoomerangThrowAnime() const {
|
||||
return (mEquipItem == BOOMERANG || i_checkNoResetFlg1(FLG1_UNK_2) || mEquipItem == 0x102) && checkUpperAnime(0x53);
|
||||
return (mEquipItem == BOOMERANG || i_checkNoResetFlg1(FLG1_UNK_2) || mEquipItem == 0x102) &&
|
||||
checkUpperAnime(0x53);
|
||||
}
|
||||
|
||||
/* 800E04E8-800E055C 0DAE28 0074+00 1/1 0/0 0/0 .text setBoomerangReadyQuake__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setBoomerangReadyQuake() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setBoomerangReadyQuake__9daAlink_cFv.s"
|
||||
void daAlink_c::setBoomerangReadyQuake() {
|
||||
f32 tmp_0 = FLOAT_LABEL(lit_6108);
|
||||
dComIfGp_getVibration().StartQuake(1, 1, cXyz(tmp_0, lit_6040, tmp_0));
|
||||
|
||||
i_onNoResetFlg3(FLG3_UNK_4);
|
||||
field_0x3018 = daAlinkHIO_boom_c0::m.mChargeTime;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E055C-800E05E8 0DAE9C 008C+00 2/2 0/0 0/0 .text setBoomerangReadyAnime__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setBoomerangReadyAnime() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setBoomerangReadyAnime__9daAlink_cFv.s"
|
||||
#pragma optimization_level 2
|
||||
void daAlink_c::setBoomerangReadyAnime() {
|
||||
f32 var_f31;
|
||||
if (i_checkAttentionLock()) {
|
||||
var_f31 = daAlinkHIO_boom_c0::m.mIdleAnmSpeed;
|
||||
} else {
|
||||
var_f31 = FLOAT_LABEL(lit_6108);
|
||||
}
|
||||
|
||||
setUpperAnimeBaseSpeed(0x54, var_f31, lit_6109);
|
||||
setBoomerangReadyQuake();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
@@ -177,141 +181,330 @@ void daAlink_c::setBoomerangCatchAnime() {
|
||||
setUpperAnimeParam(0x52, UPPER_2, &daAlinkHIO_boom_c0::m.mCatchAnm);
|
||||
setFacePriBck(0xE8);
|
||||
field_0x2f97 = 254;
|
||||
|
||||
if (mEquipItem != COPY_ROD) {
|
||||
seStartOnlyReverb(JA_SE_LK_BOOM_CATCH);
|
||||
}
|
||||
}
|
||||
|
||||
/* 800E06B8-800E08C4 0DAFF8 020C+00 1/1 0/0 0/0 .text throwBoomerang__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::throwBoomerang() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/throwBoomerang__9daAlink_cFv.s"
|
||||
void daAlink_c::throwBoomerang() {
|
||||
daBoomerang_c* item = (daBoomerang_c*)mItemAcKeep.getActor();
|
||||
i_onNoResetFlg1(FLG1_UNK_2);
|
||||
|
||||
//! @bug `item` pointer is being accessed without checking if NULL first
|
||||
BOOL boomerang_item = fopAcM_GetName(item) == PROC_BOOMERANG;
|
||||
if (boomerang_item) {
|
||||
item->setThrow();
|
||||
item->current.angle.y = shape_angle.y + field_0x59e;
|
||||
item->current.angle.x = -mLookAngleY;
|
||||
|
||||
if (mTargetedActor != NULL) {
|
||||
item->setAimActor(mTargetedActor);
|
||||
}
|
||||
|
||||
item->shape_angle.y = shape_angle.y;
|
||||
mThrowBoomerangAcKeep = mItemAcKeep;
|
||||
dComIfGp_setPlayerStatus0(0, 0x400000);
|
||||
daPy_boomerangMove_c::initDropAngleY();
|
||||
dComIfGp_clearPlayerStatus0(0, 0x80000);
|
||||
mFastShotTime = -1;
|
||||
daPy_boomerangMove_c::offEventKeepFlg();
|
||||
} else {
|
||||
item->mSpeedF = daAlinkHIO_pickUp_c0::m.field_0x28;
|
||||
item->mSpeed.y = daAlinkHIO_pickUp_c0::m.field_0x2C;
|
||||
item->current.angle.y = shape_angle.y;
|
||||
|
||||
fopAcM_cancelCarryNow(item);
|
||||
item = NULL;
|
||||
mEquipItem = NO_ITEM;
|
||||
field_0x2f94 = 0xFF;
|
||||
field_0x2f96 = 0xFE;
|
||||
}
|
||||
|
||||
mItemAcKeep.clearData();
|
||||
mEquipItem = NO_ITEM;
|
||||
field_0x2f94 = 0xFF;
|
||||
field_0x2f96 = 0xFE;
|
||||
|
||||
voiceStart(Z2SE_AL_V_ATTACK_S);
|
||||
|
||||
if (i_checkModeFlg(MODE_RIDING)) {
|
||||
if (checkCanoeRide()) {
|
||||
procCanoeWaitInit(0);
|
||||
} else {
|
||||
procHorseWaitInit();
|
||||
}
|
||||
} else if (mLinkAcch.ChkGroundHit() && boomerang_item) {
|
||||
if (mTargetedActor == NULL && item != NULL) {
|
||||
mTargetedActor = item;
|
||||
field_0x27f4 = item;
|
||||
}
|
||||
|
||||
if (checkZeroSpeedF()) {
|
||||
field_0x2f98 = 3;
|
||||
procAtnActorWaitInit();
|
||||
} else {
|
||||
procAtnActorMoveInit();
|
||||
}
|
||||
|
||||
field_0x2060->initOldFrameMorf(FLOAT_LABEL(lit_6108), 0, 35);
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E08C4-800E0A9C 0DB204 01D8+00 0/0 0/0 1/1 .text returnBoomerang__9daAlink_cFi */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::returnBoomerang(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/returnBoomerang__9daAlink_cFi.s"
|
||||
int daAlink_c::returnBoomerang(int param_0) {
|
||||
dComIfGp_clearPlayerStatus0(0, 0x400000);
|
||||
|
||||
if (mEquipItem == NO_ITEM && !i_checkMagneBootsOn() && mItemAcKeep.getActor() == NULL &&
|
||||
!checkBoardRide() && !checkBoarRide() && !i_checkWolf() &&
|
||||
(mProcID != PROC_HANG_READY || field_0x3198 != 3) && (!checkEventRun() || param_0 != 0) &&
|
||||
(checkNoUpperAnime() || checkPlayerGuard() || checkHorseTurnAnime() ||
|
||||
checkDashDamageAnime() || checkBoomerangAnime()) &&
|
||||
!i_checkModeFlg(0x1BD0810)) {
|
||||
mItemAcKeep = mThrowBoomerangAcKeep;
|
||||
mThrowBoomerangAcKeep.clearData();
|
||||
|
||||
mEquipItem = BOOMERANG;
|
||||
field_0x2f94 = 2;
|
||||
i_onNoResetFlg0(FLG0_UNK_20);
|
||||
|
||||
f32 tmp_0 = FLOAT_LABEL(lit_6108);
|
||||
dComIfGp_getVibration().StartShock(1, 1, cXyz(tmp_0, lit_6040, tmp_0));
|
||||
return 1;
|
||||
}
|
||||
|
||||
mThrowBoomerangAcKeep.clearData();
|
||||
return 0;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E0A9C-800E0B58 0DB3DC 00BC+00 2/2 0/0 0/0 .text checkUpperItemActionBoomerang__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkUpperItemActionBoomerang() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkUpperItemActionBoomerang__9daAlink_cFv.s"
|
||||
int daAlink_c::checkUpperItemActionBoomerang() {
|
||||
if (field_0x3018 != 0) {
|
||||
field_0x3018--;
|
||||
|
||||
if (field_0x3018 == 0) {
|
||||
cancelItemUseQuake(0);
|
||||
}
|
||||
}
|
||||
|
||||
if (checkReadyItem() && !itemButton() && checkBoomerangReadyAnime()) {
|
||||
setThrowBoomerangAnime();
|
||||
return 1;
|
||||
}
|
||||
|
||||
return cancelUpperItemReadyAnime(0);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E0B58-800E0BE4 0DB498 008C+00 1/1 0/0 0/0 .text
|
||||
* checkUpperItemActionBoomerangFly__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkUpperItemActionBoomerangFly() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkUpperItemActionBoomerangFly__9daAlink_cFv.s"
|
||||
void daAlink_c::checkUpperItemActionBoomerangFly() {
|
||||
if (checkBoomerangReadyAnime()) {
|
||||
checkUpperItemActionBoomerang();
|
||||
} else if (checkReadyItem() && itemTrigger()) {
|
||||
setBoomerangReadyAnime();
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E0BE4-800E0D8C 0DB524 01A8+00 4/4 0/0 0/0 .text checkNextActionBoomerang__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkNextActionBoomerang() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkNextActionBoomerang__9daAlink_cFv.s"
|
||||
#pragma optimization_level 2
|
||||
int daAlink_c::checkNextActionBoomerang() {
|
||||
if ((checkBoomerangCatchAnime() &&
|
||||
mUpperFrameCtrl[2].getFrame() <= daAlinkHIO_boom_c0::m.mCatchAnm.mCheckFrame) ||
|
||||
i_checkNoResetFlg1(FLG1_UNK_2)) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (mFastShotTime != 0) {
|
||||
mFastShotTime--;
|
||||
}
|
||||
|
||||
if (!checkBoomerangAnime()) {
|
||||
setBoomerangReadyAnime();
|
||||
setFastShotTimer();
|
||||
|
||||
if (!i_checkAttentionLock()) {
|
||||
field_0x2fe4 = shape_angle.y;
|
||||
}
|
||||
}
|
||||
|
||||
if (!i_checkAttentionLock() && mFastShotTime == 0) {
|
||||
if (i_checkModeFlg(0x400)) {
|
||||
if (checkCanoeRide()) {
|
||||
return procCanoeBoomerangSubjectInit();
|
||||
} else {
|
||||
return procHorseBoomerangSubjectInit();
|
||||
}
|
||||
} else {
|
||||
return procBoomerangSubjectInit();
|
||||
}
|
||||
} else if (i_checkModeFlg(0x400)) {
|
||||
if (checkCanoeRide()) {
|
||||
return procCanoeBoomerangMoveInit();
|
||||
} else {
|
||||
return procHorseBoomerangMoveInit();
|
||||
}
|
||||
} else {
|
||||
return procBoomerangMoveInit();
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E0D8C-800E0E64 0DB6CC 00D8+00 1/1 0/0 0/0 .text checkBoomerangCatchAction__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkBoomerangCatchAction() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkBoomerangCatchAction__9daAlink_cFv.s"
|
||||
int daAlink_c::checkBoomerangCatchAction() {
|
||||
if (i_checkNoResetFlg0(FLG0_UNK_20)) {
|
||||
if (!checkEventRun() && !i_checkWolf() && i_checkModeFlg(0x10000000)) {
|
||||
if (checkNoUpperAnime() || checkHorseTurnAnime() || checkBoomerangThrowAnime()) {
|
||||
if (i_checkModeFlg(0x1) && !i_checkModeFlg(0x400)) {
|
||||
return procBoomerangCatchInit();
|
||||
}
|
||||
|
||||
setBoomerangCatchAnime();
|
||||
}
|
||||
}
|
||||
|
||||
i_offNoResetFlg0(FLG0_UNK_20);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E0E64-800E0F10 0DB7A4 00AC+00 3/3 0/0 0/0 .text setBoomerangSight__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setBoomerangSight() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setBoomerangSight__9daAlink_cFv.s"
|
||||
void daAlink_c::setBoomerangSight() {
|
||||
if (mItemAcKeep.getActor() && !checkBoomerangThrowAnime()) {
|
||||
BOOL check_line = checkSightLine(getBoomLockMax(), &field_0x37e0);
|
||||
|
||||
mSight.setPos(&field_0x37e0);
|
||||
mSight.onDrawFlg();
|
||||
|
||||
daBoomerang_c* boomerang = (daBoomerang_c*)mItemAcKeep.getActor();
|
||||
if (boomerang->getLockReserve() || (check_line && !boomerang->getLockCntMax())) {
|
||||
setItemActionButtonStatus(0x10);
|
||||
itemActionTrigger();
|
||||
}
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E0F10-800E0FA0 0DB850 0090+00 1/1 0/0 0/0 .text procBoomerangSubjectInit__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBoomerangSubjectInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBoomerangSubjectInit__9daAlink_cFv.s"
|
||||
int daAlink_c::procBoomerangSubjectInit() {
|
||||
if (!commonProcInitNotSameProc(PROC_BOOMERANG_SUBJECT)) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
mNormalSpeed = FLOAT_LABEL(lit_6108);
|
||||
initBoomerangUpperAnimeSpeed(1);
|
||||
setSingleAnimeBaseSpeed(ANM_ATN_WAIT_RIGHT, FLOAT_LABEL(lit_6108),
|
||||
daAlinkHIO_boom_c0::m.mStartInterpolation);
|
||||
dComIfGp_setPlayerStatus0(0, 0x80000);
|
||||
current.angle.y = shape_angle.y;
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E0FA0-800E1060 0DB8E0 00C0+00 1/0 0/0 0/0 .text procBoomerangSubject__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBoomerangSubject() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBoomerangSubject__9daAlink_cFv.s"
|
||||
int daAlink_c::procBoomerangSubject() {
|
||||
if (!checkItemActorPointer()) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
if (checkBoomerangReadyAnime()) {
|
||||
setDoStatus(0x12);
|
||||
}
|
||||
|
||||
setShapeAngleToAtnActor(0);
|
||||
|
||||
if (!checkNextAction(0)) {
|
||||
if (setBodyAngleToCamera()) {
|
||||
setBoomerangSight();
|
||||
}
|
||||
} else {
|
||||
mSight.offDrawFlg();
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E1060-800E10F4 0DB9A0 0094+00 1/1 0/0 0/0 .text procBoomerangMoveInit__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBoomerangMoveInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBoomerangMoveInit__9daAlink_cFv.s"
|
||||
int daAlink_c::procBoomerangMoveInit() {
|
||||
if (!commonProcInitNotSameProc(PROC_BOOMERANG_MOVE)) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (checkZeroSpeedF()) {
|
||||
onModeFlg(1);
|
||||
}
|
||||
|
||||
initBoomerangUpperAnimeSpeed(0);
|
||||
setBlendAtnMoveAnime(daAlinkHIO_boom_c0::m.mStartInterpolation);
|
||||
|
||||
dComIfGp_setPlayerStatus0(0, 0x80000);
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E10F4-800E11D8 0DBA34 00E4+00 1/0 0/0 0/0 .text procBoomerangMove__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBoomerangMove() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBoomerangMove__9daAlink_cFv.s"
|
||||
int daAlink_c::procBoomerangMove() {
|
||||
if (!checkItemActorPointer()) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
if (!checkNextAction(0)) {
|
||||
f32 var_f31 = lit_6041;
|
||||
|
||||
if (checkZeroSpeedF()) {
|
||||
onModeFlg(1);
|
||||
|
||||
if (field_0x2f98 != 3) {
|
||||
field_0x2f98 = 3;
|
||||
var_f31 = daAlinkHIO_basic_c0::m.mAnmBlendFactor;
|
||||
}
|
||||
} else {
|
||||
offModeFlg(1);
|
||||
|
||||
daBoomerang_c* boomerang = (daBoomerang_c*)mItemAcKeep.getActor();
|
||||
if (boomerang != NULL) {
|
||||
boomerang->onLockDistanceCancel();
|
||||
}
|
||||
}
|
||||
|
||||
setBlendAtnMoveAnime(var_f31);
|
||||
setBodyAngleXReadyAnime(0);
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E11D8-800E1248 0DBB18 0070+00 1/1 0/0 0/0 .text procBoomerangCatchInit__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBoomerangCatchInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBoomerangCatchInit__9daAlink_cFv.s"
|
||||
int daAlink_c::procBoomerangCatchInit() {
|
||||
if (!commonProcInitNotSameProc(PROC_BOOMERANG_CATCH)) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
setSingleAnimeParam(ANM_BOOMERANG_CATCH, &daAlinkHIO_boom_c0::m.mCatchAnm);
|
||||
setBoomerangCatchAnime();
|
||||
i_offNoResetFlg0(FLG0_UNK_20);
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E1248-800E12E0 0DBB88 0098+00 1/0 0/0 0/0 .text procBoomerangCatch__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBoomerangCatch() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBoomerangCatch__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
int daAlink_c::procBoomerangCatch() {
|
||||
daPy_frameCtrl_c* frameCtrl = mUnderFrameCtrl;
|
||||
i_onEndResetFlg0(ERFLG0_UNK_8000000);
|
||||
|
||||
if (frameCtrl->getFrame() > daAlinkHIO_boom_c0::m.mCatchAnm.mCheckFrame) {
|
||||
onModeFlg(4);
|
||||
}
|
||||
|
||||
if (frameCtrl->checkAnmEnd()) {
|
||||
resetUpperAnime(UPPER_2, lit_6041);
|
||||
checkNextAction(0);
|
||||
} else {
|
||||
checkNextAction(1);
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
+234
-68
@@ -1,43 +1,41 @@
|
||||
/* 8010E48C-8010E52C 108DCC 00A0+00 1/1 0/0 0/0 .text bottleModelCallBack__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::bottleModelCallBack() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/bottleModelCallBack__9daAlink_cFv.s"
|
||||
int daAlink_c::bottleModelCallBack() {
|
||||
if (mItemMode != 0) {
|
||||
mDoMtx_stack_c::copy(mpLinkModel->i_getAnmMtx(field_0x30c2));
|
||||
mDoMtx_stack_c::transM(lit_14616, lit_6041, lit_16570);
|
||||
mDoMtx_stack_c::XYZrotM(cM_deg2s(102.0f), cM_deg2s(-0.5f), cM_deg2s(-122.0f));
|
||||
mDoMtx_copy(mDoMtx_stack_c::get(), mHeldItemModel->i_getAnmMtx(1));
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8010E52C-8010E568 108E6C 003C+00 1/1 0/0 0/0 .text daAlink_bottleModelCallBack__FP8J3DJointi */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daAlink_bottleModelCallBack(J3DJoint* param_0, int param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/daAlink_bottleModelCallBack__FP8J3DJointi.s"
|
||||
static int daAlink_bottleModelCallBack(J3DJoint* i_joint, int param_1) {
|
||||
daAlink_c* link = (daAlink_c*)j3dSys.getModel()->getUserArea();
|
||||
|
||||
if (param_1 == 0) {
|
||||
link->bottleModelCallBack();
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8010E568-8010E584 108EA8 001C+00 1/0 0/0 0/0 .text getBottleOpenAppearItem__9daAlink_cCFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm s32 daAlink_c::getBottleOpenAppearItem() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/getBottleOpenAppearItem__9daAlink_cCFv.s"
|
||||
s32 daAlink_c::getBottleOpenAppearItem() const {
|
||||
if (mProcID == PROC_BOTTLE_OPEN) {
|
||||
return mEquipItem;
|
||||
}
|
||||
|
||||
return -1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8010E584-8010E5D8 108EC4 0054+00 2/2 0/0 0/0 .text checkOilBottleItemNotGet__9daAlink_cFUs */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkOilBottleItemNotGet(u16 param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkOilBottleItemNotGet__9daAlink_cFUs.s"
|
||||
BOOL daAlink_c::checkOilBottleItemNotGet(u16 i_itemNo) {
|
||||
return mProcID != PROC_BOTTLE_GET && mProcID != PROC_BOTTLE_SWING &&
|
||||
checkOilBottleItem(i_itemNo);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8010E5D8-8010EAC4 108F18 04EC+00 7/7 0/0 0/0 .text setBottleModel__9daAlink_cFUs */
|
||||
#pragma push
|
||||
@@ -53,59 +51,154 @@ asm void daAlink_c::setBottleModel(u16 param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::commonBottleDrink(int param_0) {
|
||||
asm int daAlink_c::commonBottleDrink(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/commonBottleDrink__9daAlink_cFi.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8010F45C-8010F54C 109D9C 00F0+00 2/2 0/0 0/0 .text makeFairy__9daAlink_cFP4cXyzUl */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::makeFairy(cXyz* param_0, u32 param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/makeFairy__9daAlink_cFP4cXyzUl.s"
|
||||
fopAc_ac_c* daAlink_c::makeFairy(cXyz* i_pos, u32 i_params) {
|
||||
cXyz fairy_pos;
|
||||
|
||||
if (i_checkModeFlg(0x40000)) {
|
||||
fairy_pos = *i_pos;
|
||||
|
||||
if (i_checkWolf()) {
|
||||
fairy_pos.y -= lit_8247;
|
||||
} else {
|
||||
fairy_pos.y -= lit_6896;
|
||||
}
|
||||
|
||||
i_pos = &fairy_pos;
|
||||
}
|
||||
|
||||
fopAc_ac_c* fairy_actor =
|
||||
(fopAc_ac_c*)fopAcM_fastCreate(PROC_Obj_Yousei, i_params, i_pos, fopAcM_GetRoomNo(this),
|
||||
&shape_angle, NULL, -1, NULL, NULL);
|
||||
|
||||
field_0x285c.setData(fairy_actor);
|
||||
i_onResetFlg0(RFLG0_UNK_400);
|
||||
|
||||
if (checkEventRun() && field_0x285c.getActor() != NULL) {
|
||||
fopAcM_OnStatus(field_0x285c.getActor(), 0x800);
|
||||
}
|
||||
|
||||
return field_0x285c.getActor();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8010F54C-8010F698 109E8C 014C+00 2/2 0/0 0/0 .text procBottleDrinkInit__9daAlink_cFUs
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBottleDrinkInit(u16 param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBottleDrinkInit__9daAlink_cFUs.s"
|
||||
int daAlink_c::procBottleDrinkInit(u16 param_0) {
|
||||
if (mDemo.getDemoMode() == 0x2A) {
|
||||
if (mProcID == PROC_BOTTLE_DRINK) {
|
||||
return 1;
|
||||
}
|
||||
} else {
|
||||
if (!dComIfGp_event_compulsory(this, 0, 0xFFFF)) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
mDemo.i_setSpecialDemoType();
|
||||
}
|
||||
|
||||
commonProcInit(PROC_BOTTLE_DRINK);
|
||||
current.angle.y = shape_angle.y;
|
||||
mNormalSpeed = FLOAT_LABEL(lit_6108);
|
||||
field_0x2f98 = 4;
|
||||
|
||||
setSingleAnimeParam(ANM_BOTTLE_DRINK_START, &daAlinkHIO_bottle_c0::m.mStartDrinkAnm);
|
||||
keepItemData();
|
||||
setBottleModel(param_0);
|
||||
dComIfGp_setPlayerStatus1(0, 0x2000);
|
||||
field_0x3194 = 1;
|
||||
field_0x3008 = 0;
|
||||
|
||||
u32 id = fopAcM_GetID(this);
|
||||
dCam_getBody()->StartEventCamera(0x12, id, "Type", 1, &field_0x3194, 0);
|
||||
mCommonCounter = 0;
|
||||
field_0x300e = 0;
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8010F698-8010F6F4 109FD8 005C+00 1/0 0/0 0/0 .text procBottleDrink__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBottleDrink() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBottleDrink__9daAlink_cFv.s"
|
||||
int daAlink_c::procBottleDrink() {
|
||||
if (field_0x300e != 0) {
|
||||
dComIfGp_evmng_cutEnd(field_0x3184);
|
||||
} else {
|
||||
field_0x300e = commonBottleDrink(0);
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8010F6F4-8010F8E4 10A034 01F0+00 1/1 0/0 0/0 .text procBottleOpenInit__9daAlink_cFUs
|
||||
*/
|
||||
// literals
|
||||
#ifdef NONMATCHING
|
||||
int daAlink_c::procBottleOpenInit(u16 param_0) {
|
||||
if (!dComIfGp_event_compulsory(this, 0, 0xFFFF)) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
mDemo.i_setSpecialDemoType();
|
||||
commonProcInit(PROC_BOTTLE_OPEN);
|
||||
current.angle.y = shape_angle.y;
|
||||
mNormalSpeed = FLOAT_LABEL(lit_6108);
|
||||
field_0x2f98 = 4;
|
||||
|
||||
setSingleAnimeParam(ANM_BOTTLE_OPEN, &daAlinkHIO_bottle_c0::m.mOpenBottleAnm);
|
||||
keepItemData();
|
||||
setBottleModel(param_0);
|
||||
dComIfGp_setPlayerStatus1(0, 0x4000);
|
||||
field_0x300a = 0;
|
||||
field_0x32cc = -1;
|
||||
field_0x3008 = 1;
|
||||
|
||||
if (mEquipItem == FAIRY) {
|
||||
field_0x3194 = 3;
|
||||
} else {
|
||||
field_0x3194 = 2;
|
||||
|
||||
if (mEquipItem == WORM) {
|
||||
field_0x32cc = fopAcM_create(PROC_NPC_WORM, 2, ¤t.pos, fopAcM_GetRoomNo(this),
|
||||
NULL, NULL, -1);
|
||||
field_0x3008 = 0;
|
||||
field_0x300a = 1;
|
||||
}
|
||||
}
|
||||
|
||||
field_0x300e = 0;
|
||||
|
||||
u32 id = fopAcM_GetID(this);
|
||||
dCam_getBody()->StartEventCamera(0x12, id, "Type", 1, &field_0x3194, 0);
|
||||
mCommonCounter = 0;
|
||||
|
||||
field_0x27c8.initialize();
|
||||
|
||||
if (param_0 == 0x67) {
|
||||
setCylAtParam(0x200, 0, 0, 0, 0, 30.0f, 30.0f);
|
||||
}
|
||||
field_0x3010 = 0;
|
||||
|
||||
return 1;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBottleOpenInit(u16 param_0) {
|
||||
asm int daAlink_c::procBottleOpenInit(u16 param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBottleOpenInit__9daAlink_cFUs.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 8010F8E4-8010FC38 10A224 0354+00 1/0 0/0 0/0 .text procBottleOpen__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBottleOpen() {
|
||||
asm int daAlink_c::procBottleOpen() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBottleOpen__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -116,7 +209,7 @@ asm void daAlink_c::procBottleOpen() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBottleSwingInit(fopAc_ac_c* param_0, int param_1) {
|
||||
asm int daAlink_c::procBottleSwingInit(fopAc_ac_c* param_0, int param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBottleSwingInit__9daAlink_cFP10fopAc_ac_ci.s"
|
||||
}
|
||||
@@ -126,31 +219,104 @@ asm void daAlink_c::procBottleSwingInit(fopAc_ac_c* param_0, int param_1) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBottleSwing() {
|
||||
asm int daAlink_c::procBottleSwing() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBottleSwing__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 801102D0-80110518 10AC10 0248+00 2/2 0/0 0/0 .text procBottleGetInit__9daAlink_cFi */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBottleGetInit(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBottleGetInit__9daAlink_cFi.s"
|
||||
int daAlink_c::procBottleGetInit(int param_0) {
|
||||
BOOL proc_pickup = mProcID == PROC_PICK_UP;
|
||||
commonProcInit(PROC_BOTTLE_GET);
|
||||
|
||||
int var_r30;
|
||||
if (mEquipItem == KANTERA) {
|
||||
setSingleAnime(ANM_BOTTLE_GET, daAlinkHIO_bottle_c0::m.mGetAnm.mSpeed, lit_11442,
|
||||
daAlinkHIO_bottle_c0::m.mGetAnm.mEndFrame,
|
||||
daAlinkHIO_bottle_c0::m.mGetAnm.mInterpolation);
|
||||
field_0x2f93 = 0xFE;
|
||||
|
||||
if (proc_pickup) {
|
||||
execItemGet(KANTERA);
|
||||
var_r30 = 0xF8;
|
||||
dComIfGp_setItemOilCount(-dComIfGs_getMaxOil());
|
||||
} else {
|
||||
dComIfGp_setItemOilCount(dComIfGs_getMaxOil());
|
||||
|
||||
if (param_0) {
|
||||
var_r30 = 0x9C;
|
||||
} else {
|
||||
var_r30 = 0x6E;
|
||||
}
|
||||
}
|
||||
|
||||
setGetSubBgm(var_r30);
|
||||
} else {
|
||||
setSingleAnimeParam(ANM_BOTTLE_GET, &daAlinkHIO_bottle_c0::m.mGetAnm);
|
||||
var_r30 = mEquipItem;
|
||||
}
|
||||
|
||||
dComIfGp_setPlayerStatus1(0, 0x4001000);
|
||||
mMsgClassID = -1;
|
||||
field_0x3194 = 0;
|
||||
field_0x32cc = var_r30 + 0x65;
|
||||
|
||||
if (mEquipItem == KANTERA) {
|
||||
field_0x3194 = 12;
|
||||
}
|
||||
|
||||
if (mEquipItem == KANTERA) {
|
||||
resetBasAnime();
|
||||
}
|
||||
|
||||
u32 id = fopAcM_GetID(this);
|
||||
dCam_getBody()->StartEventCamera(0x12, id, "Type", 1, &field_0x3194, 0);
|
||||
|
||||
if (mEquipItem == FAIRY_DROP || mEquipItem == CHUCHU_RARE || mEquipItem == WORM) {
|
||||
setFaceBasicTexture(FTANM_UNK_48);
|
||||
setFaceBasicBck(0x143);
|
||||
} else if (mEquipItem == UGLY_SOUP) {
|
||||
setFaceBasicBck(0x146);
|
||||
}
|
||||
|
||||
// event flag 0x4A40: Ordon Day 1 completed
|
||||
if (mEquipItem == BEE_CHILD && i_dComIfGs_isEventBit(0x4A40)) {
|
||||
dComIfGs_onEventBit(0x4C80); // event flag 0x4C80: Collected Bee Larva on Ordon Day 2
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80110518-80110648 10AE58 0130+00 1/0 0/0 0/0 .text procBottleGet__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBottleGet() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBottleGet__9daAlink_cFv.s"
|
||||
int daAlink_c::procBottleGet() {
|
||||
daPy_frameCtrl_c* frameCtrl = mUnderFrameCtrl;
|
||||
|
||||
simpleAnmPlay(field_0x0718);
|
||||
|
||||
if (frameCtrl->checkAnmEnd() && checkEndMessage(field_0x32cc)) {
|
||||
resetFairyEffect();
|
||||
if (mEquipItem != KANTERA) {
|
||||
deleteEquipItem(0, 0);
|
||||
}
|
||||
|
||||
resetSpecialEvent();
|
||||
} else if (frameCtrl->getFrame() >= lit_8369) {
|
||||
field_0x2f93 = 0xFE;
|
||||
} else if (frameCtrl->getFrame() >= lit_14954) {
|
||||
mItemMode = 0;
|
||||
} else if (frameCtrl->getFrame() >= lit_7808) {
|
||||
mHeldItemModel->getModelData()->getMaterialNodePointer(0)->getShape()->show();
|
||||
field_0x2f93 = 5;
|
||||
mItemMode = 1;
|
||||
}
|
||||
|
||||
if (frameCtrl->checkPass(lit_8779)) {
|
||||
setGetSubBgm(mEquipItem);
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80110648-80110654 10AF88 000C+00 0/0 1/0 0/0 .text Insect_Release__9dInsect_cFv */
|
||||
#pragma push
|
||||
|
||||
+259
-187
@@ -1,146 +1,154 @@
|
||||
#include "rel/d/a/d_a_arrow/d_a_arrow.h"
|
||||
|
||||
/* 800DE64C-800DE740 0D8F8C 00F4+00 1/1 0/0 2/2 .text getArrowFlyData__9daAlink_cCFPfPfi
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::getArrowFlyData(f32* param_0, f32* param_1, int param_2) const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/getArrowFlyData__9daAlink_cCFPfPfi.s"
|
||||
void daAlink_c::getArrowFlyData(f32* o_distance, f32* o_speed, int i_forceCharge) const {
|
||||
if (mEquipItem == PACHINKO) {
|
||||
*o_distance = daAlinkHIO_bow_c0::m.mSlingshotDistance;
|
||||
*o_speed = daAlinkHIO_bow_c0::m.mSlingshotSpeed;
|
||||
} else if (i_dComIfGp_checkPlayerStatus0(0, 0x200000)) {
|
||||
*o_distance = daAlinkHIO_bow_c0::m.mScopeArrowDistance;
|
||||
*o_speed = daAlinkHIO_bow_c0::m.mScopeArrowSpeed;
|
||||
} else if (field_0x301c == 0 || i_forceCharge) {
|
||||
if (field_0x301e == 1) {
|
||||
*o_distance = daAlinkHIO_bow_c0::m.mChargeBombArrowDistance;
|
||||
*o_speed = daAlinkHIO_bow_c0::m.mChargeBombArrowSpeed;
|
||||
} else {
|
||||
*o_distance = daAlinkHIO_bow_c0::m.mChargeArrowDistance;
|
||||
*o_speed = daAlinkHIO_bow_c0::m.mChargeArrowSpeed;
|
||||
}
|
||||
} else if (field_0x301e == 1) {
|
||||
*o_distance = daAlinkHIO_bow_c0::m.mBombArrowDistance;
|
||||
*o_speed = daAlinkHIO_bow_c0::m.mBombArrowSpeed;
|
||||
} else {
|
||||
*o_distance = daAlinkHIO_bow_c0::m.mArrowDistance;
|
||||
*o_speed = daAlinkHIO_bow_c0::m.mArrowSpeed;
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DE740-800DE750 0D9080 0010+00 0/0 0/0 1/1 .text getArrowIncAtR__9daAlink_cCFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::getArrowIncAtR() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/getArrowIncAtR__9daAlink_cCFv.s"
|
||||
f32 daAlink_c::getArrowIncAtR() const {
|
||||
return daAlinkHIO_bow_c0::m.mArrowAttackRadius;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DE750-800DE760 0D9090 0010+00 0/0 0/0 1/1 .text getBombArrowFlyExplodeTime__9daAlink_cCFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::getBombArrowFlyExplodeTime() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/getBombArrowFlyExplodeTime__9daAlink_cCFv.s"
|
||||
s16 daAlink_c::getBombArrowFlyExplodeTime() const {
|
||||
return daAlinkHIO_bow_c0::m.mBombArrowFlyExplodeTime;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DE760-800DE770 0D90A0 0010+00 0/0 0/0 1/1 .text getArrowIncAtMaxStart__9daAlink_cCFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::getArrowIncAtMaxStart() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/getArrowIncAtMaxStart__9daAlink_cCFv.s"
|
||||
f32 daAlink_c::getArrowIncAtMaxStart() const {
|
||||
return daAlinkHIO_bow_c0::m.mArrowIncAttackMaxStart;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DE770-800DE780 0D90B0 0010+00 0/0 0/0 1/1 .text getArrowIncAtMax__9daAlink_cCFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::getArrowIncAtMax() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/getArrowIncAtMax__9daAlink_cCFv.s"
|
||||
f32 daAlink_c::getArrowIncAtMax() const {
|
||||
return daAlinkHIO_bow_c0::m.mArrowIncAttackMax;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DE780-800DE7D4 0D90C0 0054+00 10/10 0/0 0/0 .text checkBowAndSlingItem__9daAlink_cFi */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm BOOL daAlink_c::checkBowAndSlingItem(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkBowAndSlingItem__9daAlink_cFi.s"
|
||||
BOOL daAlink_c::checkBowAndSlingItem(int i_itemNo) {
|
||||
return checkBowItem(i_itemNo) || i_itemNo == PACHINKO;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DE7D4-800DE884 0D9114 00B0+00 1/1 0/0 0/0 .text setSlingModel__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setSlingModel() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setSlingModel__9daAlink_cFv.s"
|
||||
void daAlink_c::setSlingModel() {
|
||||
J3DAnmTransform* bck = (J3DAnmTransform*)mAnmHeap9.loadDataIdx(0x1F9);
|
||||
JKRHeap* heap = setItemHeap();
|
||||
|
||||
J3DModelData* model_data = loadAramBmd(0x319, 0x2C00);
|
||||
mHeldItemModel = initModel(model_data, 0);
|
||||
field_0x730.init(bck, 0, 2, lit_6040, 0, -1, false);
|
||||
|
||||
mDoExt_setCurrentHeap(heap);
|
||||
field_0x2f95 = 5;
|
||||
field_0x2f94 = 103;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DE884-800DE990 0D91C4 010C+00 0/0 1/1 1/1 .text checkBowCameraArrowPosP__9daAlink_cFPsPs */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkBowCameraArrowPosP(s16* param_0, s16* param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkBowCameraArrowPosP__9daAlink_cFPsPs.s"
|
||||
cXyz* daAlink_c::checkBowCameraArrowPosP(s16* param_0, s16* param_1) {
|
||||
if (!checkBowAnime() || mEquipItem == PACHINKO) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
s16 var_28;
|
||||
if (checkHorseRide() && i_checkBoarSingleBattle() && i_dComIfGp_getHorseActor() != NULL) {
|
||||
var_28 = i_dComIfGp_getHorseActor()->shape_angle.y;
|
||||
} else if (i_checkMagneBootsOn()) {
|
||||
var_28 = field_0x3118;
|
||||
} else {
|
||||
var_28 = shape_angle.y;
|
||||
}
|
||||
|
||||
var_28 += field_0x59e;
|
||||
|
||||
mDoMtx_stack_c::transS(field_0x3834);
|
||||
concatMagneBootMtx();
|
||||
mDoMtx_stack_c::ZXYrotM(mLookAngleY, var_28, 0);
|
||||
mDoMtx_stack_c::multVec(&localPos, &field_0x37e0);
|
||||
|
||||
*param_0 = mLookAngleY;
|
||||
*param_1 = var_28;
|
||||
return &field_0x37e0;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DE990-800DE9B8 0D92D0 0028+00 1/0 0/0 0/0 .text checkArrowChargeEnd__9daAlink_cCFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm bool daAlink_c::checkArrowChargeEnd() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkArrowChargeEnd__9daAlink_cCFv.s"
|
||||
bool daAlink_c::checkArrowChargeEnd() const {
|
||||
return checkBowChargeWaitAnime() && field_0x301c == 0;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DE9B8-800DE9E8 0D92F8 0030+00 3/3 0/0 0/0 .text checkBowReadyAnime__9daAlink_cCFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkBowReadyAnime() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkBowReadyAnime__9daAlink_cCFv.s"
|
||||
BOOL daAlink_c::checkBowReadyAnime() const {
|
||||
return checkBowReloadAnime() || checkBowChargeWaitAnime() || checkBowWaitAnime();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DE9E8-800DEA3C 0D9328 0054+00 16/16 0/0 0/0 .text checkBowAnime__9daAlink_cCFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkBowAnime() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkBowAnime__9daAlink_cCFv.s"
|
||||
BOOL daAlink_c::checkBowAnime() const {
|
||||
return checkBowReadyAnime() || checkBowShootAnime();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DEA3C-800DEAE4 0D937C 00A8+00 2/2 0/0 0/0 .text makeArrow__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::makeArrow() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/makeArrow__9daAlink_cFv.s"
|
||||
void daAlink_c::makeArrow() {
|
||||
if (dComIfGs_getArrowNum() != 0) {
|
||||
if (field_0x301e == 1 && dComIfGp_getSelectItemNum(mSelectItemId) == 0) {
|
||||
field_0x301e = 0;
|
||||
}
|
||||
|
||||
fopAc_ac_c* arrow_actor = daArrow_c::makeArrow(this, field_0x301e);
|
||||
mItemAcKeep.setData(arrow_actor);
|
||||
}
|
||||
|
||||
field_0x3018 = 0;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DEAE4-800DEB8C 0D9424 00A8+00 3/3 0/0 0/0 .text deleteArrow__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::deleteArrow() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/deleteArrow__9daAlink_cFv.s"
|
||||
void daAlink_c::deleteArrow() {
|
||||
daArrow_c* arrow = (daArrow_c*)mItemAcKeep.getActor();
|
||||
|
||||
if (arrow != NULL && fopAcM_GetName(arrow) == PROC_ARROW) {
|
||||
if (arrow->checkBombArrow() &&
|
||||
(mDamageTimer == daAlinkHIO_damage_c0::m.mInvincibleTime || i_checkModeFlg(8))) {
|
||||
arrow->setBombArrowExplode();
|
||||
dComIfGp_addSelectItemNum(mSelectItemId, -1);
|
||||
dComIfGp_setItemArrowNumCount(-1);
|
||||
} else {
|
||||
fopAcM_delete(arrow);
|
||||
}
|
||||
mItemAcKeep.clearData();
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DEB8C-800DEBC8 0D94CC 003C+00 6/6 0/0 0/0 .text setBowOrSlingStatus__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setBowOrSlingStatus() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setBowOrSlingStatus__9daAlink_cFv.s"
|
||||
void daAlink_c::setBowOrSlingStatus() {
|
||||
if (mEquipItem == PACHINKO) {
|
||||
dComIfGp_setPlayerStatus0(0, 0x40);
|
||||
} else {
|
||||
dComIfGp_setPlayerStatus0(0, 0x1000);
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DEBC8-800DED88 0D9508 01C0+00 1/1 0/0 0/0 .text changeArrowType__9daAlink_cFv */
|
||||
#pragma push
|
||||
@@ -154,43 +162,77 @@ asm void daAlink_c::changeArrowType() {
|
||||
|
||||
/* 800DED88-800DEE1C 0D96C8 0094+00 1/1 0/0 0/0 .text cancelBowMoveRideNotAtn__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::cancelBowMoveRideNotAtn() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/cancelBowMoveRideNotAtn__9daAlink_cFv.s"
|
||||
#pragma optimization_level 2
|
||||
BOOL daAlink_c::cancelBowMoveRideNotAtn() {
|
||||
return i_checkModeFlg(0x400) && i_checkAttentionLock() && mTargetedActor == NULL;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DEE1C-800DEEDC 0D975C 00C0+00 3/3 0/0 0/0 .text cancelBowMove__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::cancelBowMove() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/cancelBowMove__9daAlink_cFv.s"
|
||||
#pragma optimization_level 2
|
||||
BOOL daAlink_c::cancelBowMove() {
|
||||
if (mTargetedActor == NULL && !i_checkAttentionLock() && mFastShotTime == 0 &&
|
||||
!checkBowReadyAnime() && (!checkBowShootAnime() || mUpperFrameCtrl[2].checkAnmEnd())) {
|
||||
resetUpperAnime(UPPER_2, lit_6041);
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DEEDC-800DEFB8 0D981C 00DC+00 3/3 0/0 0/0 .text setBowReadyAnime__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setBowReadyAnime() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setBowReadyAnime__9daAlink_cFv.s"
|
||||
void daAlink_c::setBowReadyAnime() {
|
||||
if (!checkBowAnime()) {
|
||||
if (mEquipItem == BOMB_ARROW) {
|
||||
if (dComIfGp_getSelectItemNum(mSelectItemId) != 0) {
|
||||
field_0x301e = 1;
|
||||
} else {
|
||||
field_0x301e = 0;
|
||||
}
|
||||
} else {
|
||||
field_0x301e = 0;
|
||||
}
|
||||
}
|
||||
|
||||
setUpperAnimeBase(0xD);
|
||||
|
||||
if (i_checkResetFlg0(RFLG0_UNK_80)) {
|
||||
mItemMode = 0;
|
||||
} else {
|
||||
mItemMode = 3;
|
||||
}
|
||||
|
||||
field_0x2f97 = 5;
|
||||
field_0x2f96 = 4;
|
||||
|
||||
if (mEquipItem == PACHINKO) {
|
||||
changeItemBck(0x1F1, lit_6041);
|
||||
} else {
|
||||
changeItemBck(0x43, lit_6041);
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DEFB8-800DF0BC 0D98F8 0104+00 2/2 0/0 0/0 .text setBowReloadAnime__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setBowReloadAnime() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setBowReloadAnime__9daAlink_cFv.s"
|
||||
void daAlink_c::setBowReloadAnime() {
|
||||
setUpperAnimeParam(9, UPPER_2, &daAlinkHIO_bow_c0::m.mLoadAnm);
|
||||
setFacePriTexture(FTANM_UNK_8);
|
||||
setFacePriBck(0xE5);
|
||||
|
||||
if (mEquipItem == PACHINKO) {
|
||||
changeItemBck(0x1F0, daAlinkHIO_bow_c0::m.mLoadAnm.mStartFrame);
|
||||
field_0x2f97 = 5;
|
||||
seStartOnlyReverb(Z2SE_AL_PACHINKO_DRAW);
|
||||
} else {
|
||||
changeItemBck(0x41, daAlinkHIO_bow_c0::m.mLoadAnm.mStartFrame);
|
||||
field_0x2f97 = 7;
|
||||
seStartOnlyReverb(Z2SE_AL_DRAW_BOW);
|
||||
}
|
||||
|
||||
field_0x2f96 = 0;
|
||||
field_0x301c = daAlinkHIO_bow_c0::m.mChargeArrowTime;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DF0BC-800DF798 0D99FC 06DC+00 2/2 0/0 0/0 .text checkUpperItemActionBow__9daAlink_cFv */
|
||||
#pragma push
|
||||
@@ -203,20 +245,21 @@ asm void daAlink_c::checkUpperItemActionBow() {
|
||||
#pragma pop
|
||||
|
||||
/* 800DF798-800DF814 0DA0D8 007C+00 1/1 0/0 0/0 .text checkUpperItemActionBowFly__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkUpperItemActionBowFly() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkUpperItemActionBowFly__9daAlink_cFv.s"
|
||||
void daAlink_c::checkUpperItemActionBowFly() {
|
||||
if (checkBowAnime()) {
|
||||
checkUpperItemActionBow();
|
||||
setBodyAngleXReadyAnime(0);
|
||||
} else if (checkReadyItem() && itemTrigger()) {
|
||||
setBowReadyAnime();
|
||||
mItemMode = 0;
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DF814-800DFAE8 0DA154 02D4+00 4/4 0/0 0/0 .text checkNextActionBow__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkNextActionBow() {
|
||||
asm int daAlink_c::checkNextActionBow() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkNextActionBow__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -234,81 +277,110 @@ asm void daAlink_c::setBowModel() {
|
||||
|
||||
/* 800DFBC8-800DFC28 0DA508 0060+00 4/4 0/0 0/0 .text checkBowGrabLeftHand__9daAlink_cCFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm bool daAlink_c::checkBowGrabLeftHand() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkBowGrabLeftHand__9daAlink_cCFv.s"
|
||||
bool daAlink_c::checkBowGrabLeftHand() const {
|
||||
return i_checkReinRide() && !checkBowAnime();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DFC28-800DFC70 0DA568 0048+00 6/6 0/0 0/0 .text setBowHangAnime__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setBowHangAnime() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setBowHangAnime__9daAlink_cFv.s"
|
||||
void daAlink_c::setBowHangAnime() {
|
||||
if (checkBowItem(mEquipItem)) {
|
||||
changeItemBck(0x58, FLOAT_LABEL(lit_6108));
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DFC70-800DFCD8 0DA5B0 0068+00 3/3 0/0 0/0 .text setBowNormalAnime__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setBowNormalAnime() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setBowNormalAnime__9daAlink_cFv.s"
|
||||
void daAlink_c::setBowNormalAnime() {
|
||||
if (checkBowItem(mEquipItem)) {
|
||||
changeItemBck(0x59, lit_6041);
|
||||
} else if (mEquipItem == PACHINKO) {
|
||||
changeItemBck(0x1F9, lit_6041);
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DFCD8-800DFD6C 0DA618 0094+00 3/3 0/0 0/0 .text setBowSight__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setBowSight() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setBowSight__9daAlink_cFv.s"
|
||||
void daAlink_c::setBowSight() {
|
||||
if (checkBowChargeWaitAnime() && !i_dComIfGp_checkPlayerStatus0(0, 0x200000)) {
|
||||
cXyz sight_pos;
|
||||
f32 dist;
|
||||
f32 speed;
|
||||
|
||||
getArrowFlyData(&dist, &speed, TRUE);
|
||||
checkSightLine(dist, &sight_pos);
|
||||
mSight.setPos(&sight_pos);
|
||||
mSight.offDrawFlg();
|
||||
} else {
|
||||
mSight.offDrawFlg();
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DFD6C-800DFDDC 0DA6AC 0070+00 1/1 0/0 0/0 .text procBowSubjectInit__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBowSubjectInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBowSubjectInit__9daAlink_cFv.s"
|
||||
int daAlink_c::procBowSubjectInit() {
|
||||
if (!commonProcInitNotSameProc(PROC_BOW_SUBJECT)) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
setSingleAnimeBaseSpeed(ANM_ATN_WAIT_RIGHT, FLOAT_LABEL(lit_6108),
|
||||
daAlinkHIO_bow_c0::m.mStartInterpolation);
|
||||
mNormalSpeed = FLOAT_LABEL(lit_6108);
|
||||
setBowOrSlingStatus();
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DFDDC-800DFE3C 0DA71C 0060+00 1/0 0/0 0/0 .text procBowSubject__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBowSubject() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBowSubject__9daAlink_cFv.s"
|
||||
int daAlink_c::procBowSubject() {
|
||||
setDoStatus(0x12);
|
||||
if (!checkNextAction(0) && setBodyAngleToCamera()) {
|
||||
setBowSight();
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DFE3C-800DFEC0 0DA77C 0084+00 1/1 0/0 0/0 .text procBowMoveInit__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBowMoveInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBowMoveInit__9daAlink_cFv.s"
|
||||
int daAlink_c::procBowMoveInit() {
|
||||
if (!commonProcInitNotSameProc(PROC_BOW_MOVE)) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (checkZeroSpeedF()) {
|
||||
onModeFlg(1);
|
||||
}
|
||||
|
||||
setBlendAtnMoveAnime(daAlinkHIO_bow_c0::m.mStartInterpolation);
|
||||
mCommonCounter = 0;
|
||||
setBowOrSlingStatus();
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DFEC0-800DFFE0 0DA800 0120+00 1/0 0/0 0/0 .text procBowMove__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBowMove() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBowMove__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
int daAlink_c::procBowMove() {
|
||||
cancelBowMove();
|
||||
|
||||
if (mFastShotTime == 0 && mCommonCounter != 0 && checkBowWaitAnime() && !itemButton()) {
|
||||
resetUpperAnime(UPPER_2, lit_6041);
|
||||
}
|
||||
|
||||
mCommonCounter = 1;
|
||||
i_onEndResetFlg0(ERFLG0_UNK_8000000);
|
||||
|
||||
if (!checkNextAction(0)) {
|
||||
f32 var_f31 = lit_6041;
|
||||
|
||||
if (checkZeroSpeedF()) {
|
||||
onModeFlg(1);
|
||||
|
||||
if (field_0x2f98 != 3) {
|
||||
field_0x2f98 = 3;
|
||||
var_f31 = daAlinkHIO_basic_c0::m.mAnmBlendFactor;
|
||||
}
|
||||
current.angle.y = shape_angle.y - 0x4000;
|
||||
} else {
|
||||
offModeFlg(1);
|
||||
}
|
||||
|
||||
setBlendAtnMoveAnime(var_f31);
|
||||
setBodyAngleXReadyAnime(0);
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
+286
-206
@@ -1,179 +1,161 @@
|
||||
#include "rel/d/a/d_a_canoe/d_a_canoe.h"
|
||||
|
||||
/* 800F3BB0-800F3BDC 0EE4F0 002C+00 1/1 0/0 2/2 .text getCanoeMaxSpeed__9daAlink_cCFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::getCanoeMaxSpeed() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/getCanoeMaxSpeed__9daAlink_cCFv.s"
|
||||
f32 daAlink_c::getCanoeMaxSpeed() const {
|
||||
if (checkCanoeSlider()) {
|
||||
return daAlinkHIO_canoe_c0::m.field_0x3C;
|
||||
}
|
||||
|
||||
return daAlinkHIO_canoe_c0::m.field_0x24;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800F3BDC-800F3BEC 0EE51C 0010+00 0/0 0/0 1/1 .text getCanoeBackMaxSpeed__9daAlink_cCFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::getCanoeBackMaxSpeed() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/getCanoeBackMaxSpeed__9daAlink_cCFv.s"
|
||||
f32 daAlink_c::getCanoeBackMaxSpeed() const {
|
||||
return daAlinkHIO_canoe_c0::m.mBackMaxSpeed;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800F3BEC-800F3C18 0EE52C 002C+00 0/0 0/0 1/1 .text getCanoeCres__9daAlink_cCFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::getCanoeCres() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/getCanoeCres__9daAlink_cCFv.s"
|
||||
f32 daAlink_c::getCanoeCres() const {
|
||||
if (checkCanoeSlider()) {
|
||||
return daAlinkHIO_canoe_c0::m.field_0x44;
|
||||
}
|
||||
|
||||
return daAlinkHIO_canoe_c0::m.field_0x28;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800F3C18-800F3C44 0EE558 002C+00 2/2 0/0 0/0 .text getCanoeSpeedRate__9daAlink_cCFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::getCanoeSpeedRate() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/getCanoeSpeedRate__9daAlink_cCFv.s"
|
||||
f32 daAlink_c::getCanoeSpeedRate() const {
|
||||
if (checkCanoeSlider()) {
|
||||
return daAlinkHIO_canoe_c0::m.field_0x40;
|
||||
}
|
||||
|
||||
return daAlinkHIO_canoe_c0::m.field_0x20;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800F3C44-800F3CCC 0EE584 0088+00 0/0 0/0 1/1 .text getCanoeMaxRotSpeed__9daAlink_cCFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::getCanoeMaxRotSpeed() const {
|
||||
asm s16 daAlink_c::getCanoeMaxRotSpeed() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/getCanoeMaxRotSpeed__9daAlink_cCFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800F3CCC-800F3CD8 0EE60C 000C+00 1/1 0/0 1/1 .text getCanoeLocalPaddleTop__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::getCanoeLocalPaddleTop() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/getCanoeLocalPaddleTop__9daAlink_cFv.s"
|
||||
cXyz* daAlink_c::getCanoeLocalPaddleTop() {
|
||||
return (cXyz*)&localPaddleTop;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800F3CD8-800F3CF8 0EE618 0020+00 3/3 0/0 0/0 .text daAlink_searchCanoe__FP10fopAc_ac_cPv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void* daAlink_searchCanoe(fopAc_ac_c* param_0, void* param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/daAlink_searchCanoe__FP10fopAc_ac_cPv.s"
|
||||
static fopAc_ac_c* daAlink_searchCanoe(fopAc_ac_c* param_0, void* param_1) {
|
||||
if (fopAcM_GetName(param_0) == PROC_CANOE &&
|
||||
static_cast<daCanoe_c*>(param_0)->getModel() != NULL) {
|
||||
return param_0;
|
||||
}
|
||||
|
||||
return NULL;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800F3CF8-800F3D58 0EE638 0060+00 0/0 2/2 0/0 .text checkCanoeRideTandem__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkCanoeRideTandem() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkCanoeRideTandem__9daAlink_cFv.s"
|
||||
BOOL daAlink_c::checkCanoeRideTandem() {
|
||||
daCanoe_c* canoe = (daCanoe_c*)mRideAcKeep.getActor();
|
||||
|
||||
if (checkCanoeRide() && canoe != NULL && canoe->checkTandem()) {
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800F3D58-800F3DA0 0EE698 0048+00 7/7 0/0 0/0 .text checkFishingRodAndLureItem__9daAlink_cCFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm BOOL daAlink_c::checkFishingRodAndLureItem() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkFishingRodAndLureItem__9daAlink_cCFv.s"
|
||||
BOOL daAlink_c::checkFishingRodAndLureItem() const {
|
||||
return checkFisingRodLure() || checkFishingRodItem(mEquipItem);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800F3DA0-800F3DFC 0EE6E0 005C+00 4/4 0/0 0/0 .text initFishingRodHand__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::initFishingRodHand() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/initFishingRodHand__9daAlink_cFv.s"
|
||||
void daAlink_c::initFishingRodHand() {
|
||||
field_0x2f94 = 0x65;
|
||||
field_0x2f95 = 0x65;
|
||||
field_0x3018 = 1;
|
||||
|
||||
if (mEquipItem == JEWEL_WORM_ROD || mEquipItem == WORM_ROD) {
|
||||
mItemMode = 0x74;
|
||||
} else if (mEquipItem == JEWEL_BEE_ROD || mEquipItem == BEE_ROD) {
|
||||
mItemMode = 0x76;
|
||||
} else {
|
||||
mItemMode = 0xFF;
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800F3DFC-800F3E4C 0EE73C 0050+00 1/1 0/0 1/1 .text getCanoePaddleMatrix__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::getCanoePaddleMatrix() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/getCanoePaddleMatrix__9daAlink_cFv.s"
|
||||
MtxP daAlink_c::getCanoePaddleMatrix() {
|
||||
mDoMtx_stack_c::copy(getRightItemMatrix());
|
||||
f32 tmp_0 = FLOAT_LABEL(lit_6108);
|
||||
mDoMtx_stack_c::transM(tmp_0, tmp_0, lit_5944);
|
||||
return mDoMtx_stack_c::get();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800F3E4C-800F3EB8 0EE78C 006C+00 0/0 0/0 4/4 .text
|
||||
* checkFishingRodGrab__9daAlink_cCFP10fopAc_ac_c */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkFishingRodGrab(fopAc_ac_c* param_0) const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkFishingRodGrab__9daAlink_cCFP10fopAc_ac_c.s"
|
||||
BOOL daAlink_c::checkFishingRodGrab(fopAc_ac_c* param_0) const {
|
||||
return checkFishingRodAndLureItem() && mItemAcKeep.getID() == fopAcM_GetID(param_0);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800F3EB8-800F3F38 0EE7F8 0080+00 0/0 0/0 2/2 .text
|
||||
* checkCanoePaddleGrab__9daAlink_cCFP10fopAc_ac_c */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkCanoePaddleGrab(fopAc_ac_c* param_0) const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkCanoePaddleGrab__9daAlink_cCFP10fopAc_ac_c.s"
|
||||
BOOL daAlink_c::checkCanoePaddleGrab(fopAc_ac_c* param_0) const {
|
||||
return mEquipItem == 0x10B && checkCanoeRideOwn(param_0);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800F3F38-800F3FC4 0EE878 008C+00 0/0 0/0 1/1 .text checkCanoeFishingRodGrabOrPut__9daAlink_cCFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkCanoeFishingRodGrabOrPut() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkCanoeFishingRodGrabOrPut__9daAlink_cCFv.s"
|
||||
BOOL daAlink_c::checkCanoeFishingRodGrabOrPut() const {
|
||||
return checkFisingRodLure() && checkCanoeRide() &&
|
||||
(checkEquipAnime() || mProcID == PROC_CANOE_PADDLE_PUT ||
|
||||
mProcID == PROC_CANOE_PADDLE_GRAB || mProcID == PROC_CANOE_ROD_GRAB);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800F3FC4-800F4008 0EE904 0044+00 2/2 0/0 0/0 .text initCanoeRide__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::initCanoeRide() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/initCanoeRide__9daAlink_cFv.s"
|
||||
void daAlink_c::initCanoeRide() {
|
||||
field_0x3012 = 1;
|
||||
field_0x3588 = l_waitBaseAnime;
|
||||
field_0x384c = (cXyz*)&l_canoeBaseAnime;
|
||||
mRideStatus = 3;
|
||||
field_0x3010 = 0;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800F4008-800F40E4 0EE948 00DC+00 2/2 0/0 0/0 .text checkCanoeJumpRide__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm BOOL daAlink_c::checkCanoeJumpRide() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkCanoeJumpRide__9daAlink_cFv.s"
|
||||
BOOL daAlink_c::checkCanoeJumpRide() {
|
||||
daCanoe_c* canoe = NULL;
|
||||
|
||||
if (field_0x850[0].ChkCoHit()) {
|
||||
canoe = (daCanoe_c*)field_0x850[0].GetCoHitAc();
|
||||
} else if (field_0x850[1].ChkCoHit()) {
|
||||
canoe = (daCanoe_c*)field_0x850[1].GetCoHitAc();
|
||||
}
|
||||
|
||||
if (mSpeed.y < FLOAT_LABEL(lit_6108) && canoe != NULL && fopAcM_GetName(canoe) == PROC_CANOE &&
|
||||
canoe->checkJumpRideFlg() && !checkDeadHP() &&
|
||||
(mProcID != PROC_FALL || field_0x3010 != 0)) {
|
||||
return procCanoeJumpRideInit(canoe);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800F40E4-800F4140 0EEA24 005C+00 2/2 0/0 0/0 .text setArmReelAnime__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setArmReelAnime() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setArmReelAnime__9daAlink_cFv.s"
|
||||
void daAlink_c::setArmReelAnime() {
|
||||
setUpperAnimeBaseSpeed(0x1FB, lit_6040, lit_6041);
|
||||
mUpperFrameCtrl[2].setRate(FLOAT_LABEL(lit_6108));
|
||||
mNowAnmPackUpper[2].setRatio(lit_6040);
|
||||
field_0x2f97 = 8;
|
||||
i_offNoResetFlg1(FLG1_UNK_8000);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800F4140-800F4490 0EEA80 0350+00 1/1 0/0 0/0 .text setFishingWaitAction__9daAlink_cFv
|
||||
*/
|
||||
@@ -187,25 +169,34 @@ asm void daAlink_c::setFishingWaitAction() {
|
||||
#pragma pop
|
||||
|
||||
/* 800F4490-800F4564 0EEDD0 00D4+00 3/3 0/0 0/0 .text setFishGetFace__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setFishGetFace() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setFishGetFace__9daAlink_cFv.s"
|
||||
void daAlink_c::setFishGetFace() {
|
||||
if (field_0x2fc8 == 1) {
|
||||
setFacePriBck(0x140);
|
||||
} else if (field_0x2fc8 == 2) {
|
||||
setFacePriTexture(FTANM_UNK_7A);
|
||||
setFacePriBck(0x143);
|
||||
} else if (field_0x2fc8 == 3) {
|
||||
setFacePriTexture(FTANM_UNK_7B);
|
||||
setFacePriBck(0x146);
|
||||
} else if (field_0x2fc8 == 4) {
|
||||
setFacePriTexture(FTANM_UNK_7C);
|
||||
setFacePriBck(0x149);
|
||||
} else {
|
||||
resetFacePriAnime();
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800F4564-800F459C 0EEEA4 0038+00 3/3 0/0 0/0 .text
|
||||
* setRideCanoeBasePos__9daAlink_cFP10fopAc_ac_c */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setRideCanoeBasePos(fopAc_ac_c* param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setRideCanoeBasePos__9daAlink_cFP10fopAc_ac_c.s"
|
||||
void daAlink_c::setRideCanoeBasePos(fopAc_ac_c* param_0) {
|
||||
field_0x37c8.x = FLOAT_LABEL(lit_6108);
|
||||
field_0x37c8.y = lit_5944;
|
||||
field_0x37c8.z = lit_20823;
|
||||
|
||||
if (static_cast<daCanoe_c*>(param_0)->checkTandem()) {
|
||||
field_0x37c8.z += lit_20824;
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800F459C-800F47D8 0EEEDC 023C+00 20/20 0/0 0/0 .text setSyncCanoePos__9daAlink_cFv */
|
||||
#pragma push
|
||||
@@ -228,62 +219,151 @@ asm void daAlink_c::canoeCommon() {
|
||||
#pragma pop
|
||||
|
||||
/* 800F4924-800F4A50 0EF264 012C+00 10/10 0/0 0/0 .text checkNextActionCanoe__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkNextActionCanoe() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkNextActionCanoe__9daAlink_cFv.s"
|
||||
int daAlink_c::checkNextActionCanoe() {
|
||||
if ((!checkFishingRodAndLureItem() || mItemAcKeep.getActor() == NULL ||
|
||||
static_cast<dmg_rod_class*>(mItemAcKeep.getActor())->checkRodEquipPermission()) &&
|
||||
checkNextActionFromButton()) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
if (checkBowAnime()) {
|
||||
return checkNextActionBow();
|
||||
} else if (checkBoomerangAnimeAndReturnWait()) {
|
||||
return checkNextActionBoomerang();
|
||||
} else if (checkHookshotAnime()) {
|
||||
return checkNextActionHookshot();
|
||||
} else if (checkGrabAnimeAndThrow()) {
|
||||
return procCanoeGrabMoveInit();
|
||||
} else if (checkCanoeFishingWaitAnime()) {
|
||||
return procCanoeFishingWaitInit();
|
||||
} else {
|
||||
return procCanoeWaitInit(0);
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800F4A50-800F4B90 0EF390 0140+00 2/2 0/0 0/0 .text procCanoeRideInit__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoeRideInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoeRideInit__9daAlink_cFv.s"
|
||||
int daAlink_c::procCanoeRideInit() {
|
||||
commonProcInit(PROC_CANOE_RIDE);
|
||||
setHeavyBoots(0);
|
||||
mRideAcKeep.setData(field_0x27f4);
|
||||
deleteEquipItem(0, 0);
|
||||
daCanoe_c* canoe = (daCanoe_c*)field_0x27f4;
|
||||
|
||||
setSingleAnime(ANM_HANG_CLIMB_TOP, daAlinkHIO_wallCatch_c0::m.mClimbAnm.mSpeed,
|
||||
daAlinkHIO_wallCatch_c0::m.mClimbStartFrame,
|
||||
daAlinkHIO_wallCatch_c0::m.mClimbAnm.mEndFrame,
|
||||
daAlinkHIO_wallCatch_c0::m.mClimbAnm.mInterpolation);
|
||||
setSpecialGravity(FLOAT_LABEL(lit_6108), mMaxFallSpeed, 0);
|
||||
|
||||
f32 tmp_0 = FLOAT_LABEL(lit_6108);
|
||||
mNormalSpeed = tmp_0;
|
||||
mSpeed.y = tmp_0;
|
||||
setRideCanoeBasePos(canoe);
|
||||
|
||||
if ((s16)(fopAcM_searchActorAngleY(canoe, this) - canoe->shape_angle.y) > 0) {
|
||||
shape_angle.y = canoe->shape_angle.y - 0x4000;
|
||||
field_0x3008 = 0;
|
||||
field_0x37c8.x = lit_20991;
|
||||
} else {
|
||||
shape_angle.y = canoe->shape_angle.y + 0x4000;
|
||||
field_0x3008 = 1;
|
||||
field_0x37c8.x = lit_20992;
|
||||
}
|
||||
|
||||
mDoMtx_multVec(canoe->getModelMtx(), &field_0x37c8, ¤t.pos);
|
||||
current.angle.y = shape_angle.y;
|
||||
|
||||
initCanoeRide();
|
||||
field_0x300e = 0x80;
|
||||
swimOutAfter(1);
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800F4B90-800F4C78 0EF4D0 00E8+00 1/0 0/0 0/0 .text procCanoeRide__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoeRide() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoeRide__9daAlink_cFv.s"
|
||||
int daAlink_c::procCanoeRide() {
|
||||
daCanoe_c* canoe = (daCanoe_c*)mRideAcKeep.getActor();
|
||||
if (canoe == NULL) {
|
||||
return checkNextAction(0);
|
||||
}
|
||||
|
||||
mDoMtx_multVec(canoe->getModelMtx(), &field_0x37c8, ¤t.pos);
|
||||
|
||||
daPy_frameCtrl_c* frameCtrl = mUnderFrameCtrl;
|
||||
if (frameCtrl->checkAnmEnd()) {
|
||||
procCanoeWaitInit(1);
|
||||
} else if (frameCtrl->getFrame() < lit_7710) {
|
||||
field_0x300e += 0x180;
|
||||
|
||||
if (field_0x3008 == 0) {
|
||||
canoe->incShapeAngleZ(-field_0x300e);
|
||||
} else {
|
||||
canoe->incShapeAngleZ(field_0x300e);
|
||||
}
|
||||
canoe->incShapeOffsetY(lit_21021);
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800F4C78-800F4D84 0EF5B8 010C+00 4/4 0/0 0/0 .text
|
||||
* procCanoeJumpRideInit__9daAlink_cFP10fopAc_ac_c */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoeJumpRideInit(fopAc_ac_c* param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoeJumpRideInit__9daAlink_cFP10fopAc_ac_c.s"
|
||||
int daAlink_c::procCanoeJumpRideInit(fopAc_ac_c* param_0) {
|
||||
BOOL var_r31;
|
||||
daCanoe_c* canoe = (daCanoe_c*)param_0;
|
||||
|
||||
commonProcInit(PROC_CANOE_JUMP_RIDE);
|
||||
|
||||
if (canoe == NULL) {
|
||||
canoe = (daCanoe_c*)fopAcIt_Judge((fopAcIt_JudgeFunc)daAlink_searchCanoe, NULL);
|
||||
var_r31 = true;
|
||||
} else {
|
||||
var_r31 = false;
|
||||
}
|
||||
|
||||
setHeavyBoots(0);
|
||||
setSingleAnimeParam(ANM_JUMP_LAND, &daAlinkHIO_autoJump_c0::m.mLandAnm);
|
||||
deleteEquipItem(0, 0);
|
||||
|
||||
mRideAcKeep.setData(canoe);
|
||||
setSpecialGravity(FLOAT_LABEL(lit_6108), mMaxFallSpeed, 0);
|
||||
|
||||
f32 tmp_0 = FLOAT_LABEL(lit_6108);
|
||||
mNormalSpeed = tmp_0;
|
||||
mSpeed.y = tmp_0;
|
||||
setRideCanoeBasePos(canoe);
|
||||
mDoMtx_multVec(canoe->getModelMtx(), &field_0x37c8, ¤t.pos);
|
||||
current.angle.y = shape_angle.y;
|
||||
|
||||
initCanoeRide();
|
||||
if (var_r31) {
|
||||
procCanoeWaitInit(2);
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800F4D84-800F4DF8 0EF6C4 0074+00 1/0 0/0 0/0 .text procCanoeJumpRide__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoeJumpRide() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoeJumpRide__9daAlink_cFv.s"
|
||||
int daAlink_c::procCanoeJumpRide() {
|
||||
daCanoe_c* canoe = (daCanoe_c*)mRideAcKeep.getActor();
|
||||
if (canoe == NULL) {
|
||||
return checkNextAction(0);
|
||||
}
|
||||
|
||||
mDoMtx_multVec(canoe->getModelMtx(), &field_0x37c8, ¤t.pos);
|
||||
|
||||
if (mUnderFrameCtrl[0].checkAnmEnd()) {
|
||||
procCanoeWaitInit(1);
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800F4DF8-800F5048 0EF738 0250+00 2/2 0/0 0/0 .text procCanoeGetOffInit__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoeGetOffInit() {
|
||||
asm int daAlink_c::procCanoeGetOffInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoeGetOffInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -293,7 +373,7 @@ asm void daAlink_c::procCanoeGetOffInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoeGetOff() {
|
||||
asm int daAlink_c::procCanoeGetOff() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoeGetOff__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -304,7 +384,7 @@ asm void daAlink_c::procCanoeGetOff() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoeWaitInit(int param_0) {
|
||||
asm int daAlink_c::procCanoeWaitInit(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoeWaitInit__9daAlink_cFi.s"
|
||||
}
|
||||
@@ -314,7 +394,7 @@ asm void daAlink_c::procCanoeWaitInit(int param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoeWait() {
|
||||
asm int daAlink_c::procCanoeWait() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoeWait__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -324,7 +404,7 @@ asm void daAlink_c::procCanoeWait() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoeRowInit(int param_0) {
|
||||
asm int daAlink_c::procCanoeRowInit(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoeRowInit__9daAlink_cFi.s"
|
||||
}
|
||||
@@ -334,7 +414,7 @@ asm void daAlink_c::procCanoeRowInit(int param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoeRow() {
|
||||
asm int daAlink_c::procCanoeRow() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoeRow__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -344,7 +424,7 @@ asm void daAlink_c::procCanoeRow() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoePaddleShiftInit(int param_0) {
|
||||
asm int daAlink_c::procCanoePaddleShiftInit(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoePaddleShiftInit__9daAlink_cFi.s"
|
||||
}
|
||||
@@ -355,7 +435,7 @@ asm void daAlink_c::procCanoePaddleShiftInit(int param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoePaddleShift() {
|
||||
asm int daAlink_c::procCanoePaddleShift() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoePaddleShift__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -365,7 +445,7 @@ asm void daAlink_c::procCanoePaddleShift() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoePaddlePutInit(int param_0) {
|
||||
asm int daAlink_c::procCanoePaddlePutInit(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoePaddlePutInit__9daAlink_cFi.s"
|
||||
}
|
||||
@@ -375,7 +455,7 @@ asm void daAlink_c::procCanoePaddlePutInit(int param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoePaddlePut() {
|
||||
asm int daAlink_c::procCanoePaddlePut() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoePaddlePut__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -385,7 +465,7 @@ asm void daAlink_c::procCanoePaddlePut() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoePaddleGrabInit() {
|
||||
asm int daAlink_c::procCanoePaddleGrabInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoePaddleGrabInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -396,7 +476,7 @@ asm void daAlink_c::procCanoePaddleGrabInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoePaddleGrab() {
|
||||
asm int daAlink_c::procCanoePaddleGrab() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoePaddleGrab__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -407,7 +487,7 @@ asm void daAlink_c::procCanoePaddleGrab() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoeRodGrabInit() {
|
||||
asm int daAlink_c::procCanoeRodGrabInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoeRodGrabInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -417,7 +497,7 @@ asm void daAlink_c::procCanoeRodGrabInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoeRodGrab() {
|
||||
asm int daAlink_c::procCanoeRodGrab() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoeRodGrab__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -427,7 +507,7 @@ asm void daAlink_c::procCanoeRodGrab() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoeFishingWaitInit() {
|
||||
asm int daAlink_c::procCanoeFishingWaitInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoeFishingWaitInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -438,7 +518,7 @@ asm void daAlink_c::procCanoeFishingWaitInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoeFishingWait() {
|
||||
asm int daAlink_c::procCanoeFishingWait() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoeFishingWait__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -448,7 +528,7 @@ asm void daAlink_c::procCanoeFishingWait() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoeFishingReelInit() {
|
||||
asm int daAlink_c::procCanoeFishingReelInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoeFishingReelInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -459,7 +539,7 @@ asm void daAlink_c::procCanoeFishingReelInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoeFishingReel() {
|
||||
asm int daAlink_c::procCanoeFishingReel() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoeFishingReel__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -469,7 +549,7 @@ asm void daAlink_c::procCanoeFishingReel() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoeFishingGetInit() {
|
||||
asm int daAlink_c::procCanoeFishingGetInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoeFishingGetInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -480,7 +560,7 @@ asm void daAlink_c::procCanoeFishingGetInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoeFishingGet() {
|
||||
asm int daAlink_c::procCanoeFishingGet() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoeFishingGet__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -490,7 +570,7 @@ asm void daAlink_c::procCanoeFishingGet() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoeSubjectivityInit() {
|
||||
asm int daAlink_c::procCanoeSubjectivityInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoeSubjectivityInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -501,7 +581,7 @@ asm void daAlink_c::procCanoeSubjectivityInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoeSubjectivity() {
|
||||
asm int daAlink_c::procCanoeSubjectivity() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoeSubjectivity__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -511,7 +591,7 @@ asm void daAlink_c::procCanoeSubjectivity() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoeBowSubjectInit() {
|
||||
asm int daAlink_c::procCanoeBowSubjectInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoeBowSubjectInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -522,7 +602,7 @@ asm void daAlink_c::procCanoeBowSubjectInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoeBowSubject() {
|
||||
asm int daAlink_c::procCanoeBowSubject() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoeBowSubject__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -533,7 +613,7 @@ asm void daAlink_c::procCanoeBowSubject() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoeBowMoveInit() {
|
||||
asm int daAlink_c::procCanoeBowMoveInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoeBowMoveInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -543,7 +623,7 @@ asm void daAlink_c::procCanoeBowMoveInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoeBowMove() {
|
||||
asm int daAlink_c::procCanoeBowMove() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoeBowMove__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -554,7 +634,7 @@ asm void daAlink_c::procCanoeBowMove() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoeGrabMoveInit() {
|
||||
asm int daAlink_c::procCanoeGrabMoveInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoeGrabMoveInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -564,7 +644,7 @@ asm void daAlink_c::procCanoeGrabMoveInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoeGrabMove() {
|
||||
asm int daAlink_c::procCanoeGrabMove() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoeGrabMove__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -575,7 +655,7 @@ asm void daAlink_c::procCanoeGrabMove() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoeBoomerangSubjectInit() {
|
||||
asm int daAlink_c::procCanoeBoomerangSubjectInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoeBoomerangSubjectInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -585,7 +665,7 @@ asm void daAlink_c::procCanoeBoomerangSubjectInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoeBoomerangSubject() {
|
||||
asm int daAlink_c::procCanoeBoomerangSubject() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoeBoomerangSubject__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -595,7 +675,7 @@ asm void daAlink_c::procCanoeBoomerangSubject() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoeBoomerangMoveInit() {
|
||||
asm int daAlink_c::procCanoeBoomerangMoveInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoeBoomerangMoveInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -605,7 +685,7 @@ asm void daAlink_c::procCanoeBoomerangMoveInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoeBoomerangMove() {
|
||||
asm int daAlink_c::procCanoeBoomerangMove() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoeBoomerangMove__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -616,7 +696,7 @@ asm void daAlink_c::procCanoeBoomerangMove() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoeHookshotSubjectInit() {
|
||||
asm int daAlink_c::procCanoeHookshotSubjectInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoeHookshotSubjectInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -626,7 +706,7 @@ asm void daAlink_c::procCanoeHookshotSubjectInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoeHookshotSubject() {
|
||||
asm int daAlink_c::procCanoeHookshotSubject() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoeHookshotSubject__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -636,7 +716,7 @@ asm void daAlink_c::procCanoeHookshotSubject() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoeHookshotMoveInit() {
|
||||
asm int daAlink_c::procCanoeHookshotMoveInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoeHookshotMoveInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -647,7 +727,7 @@ asm void daAlink_c::procCanoeHookshotMoveInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoeHookshotMove() {
|
||||
asm int daAlink_c::procCanoeHookshotMove() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoeHookshotMove__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -657,7 +737,7 @@ asm void daAlink_c::procCanoeHookshotMove() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoeBottleDrinkInit(u16 param_0) {
|
||||
asm int daAlink_c::procCanoeBottleDrinkInit(u16 param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoeBottleDrinkInit__9daAlink_cFUs.s"
|
||||
}
|
||||
@@ -668,7 +748,7 @@ asm void daAlink_c::procCanoeBottleDrinkInit(u16 param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoeBottleDrink() {
|
||||
asm int daAlink_c::procCanoeBottleDrink() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoeBottleDrink__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -678,7 +758,7 @@ asm void daAlink_c::procCanoeBottleDrink() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoeKandelaarPourInit() {
|
||||
asm int daAlink_c::procCanoeKandelaarPourInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoeKandelaarPourInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -688,7 +768,7 @@ asm void daAlink_c::procCanoeKandelaarPourInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCanoeKandelaarPour() {
|
||||
asm int daAlink_c::procCanoeKandelaarPour() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCanoeKandelaarPour__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -709,7 +789,7 @@ asm void daAlink_c::setGroundFishingRodActor() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procFishingCastInit() {
|
||||
asm int daAlink_c::procFishingCastInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procFishingCastInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -719,7 +799,7 @@ asm void daAlink_c::procFishingCastInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procFishingCast() {
|
||||
asm int daAlink_c::procFishingCast() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procFishingCast__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -730,7 +810,7 @@ asm void daAlink_c::procFishingCast() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procFishingFoodInit() {
|
||||
asm int daAlink_c::procFishingFoodInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procFishingFoodInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -740,7 +820,7 @@ asm void daAlink_c::procFishingFoodInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procFishingFood() {
|
||||
asm int daAlink_c::procFishingFood() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procFishingFood__9daAlink_cFv.s"
|
||||
}
|
||||
|
||||
+262
-153
@@ -1,3 +1,5 @@
|
||||
#include "rel/d/a/d_a_cstatue/d_a_cstatue.h"
|
||||
|
||||
/* 800E12E0-800E1310 0DBC20 0030+00 1/1 0/0 0/0 .text checkLv6BossRoom__9daAlink_cFv */
|
||||
BOOL daAlink_c::checkLv6BossRoom() {
|
||||
return checkStageName("D_MN06A");
|
||||
@@ -44,26 +46,18 @@ fopAc_ac_c* daAlink_c::getCopyRodCameraActor() {
|
||||
}
|
||||
|
||||
/* 800E13AC-800E1408 0DBCEC 005C+00 2/2 0/0 0/0 .text initCopyRodUpperAnimeSpeed__9daAlink_cFi */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::initCopyRodUpperAnimeSpeed(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/initCopyRodUpperAnimeSpeed__9daAlink_cFi.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* void daAlink_c::initCopyRodUpperAnimeSpeed(int param_0) {
|
||||
if (checkCopyRodThrowAnime()) {
|
||||
if (param_1 == 0) {
|
||||
mUpperFrameCtrl[2].setRate();
|
||||
void daAlink_c::initCopyRodUpperAnimeSpeed(int param_0) {
|
||||
if (!checkCopyRodThrowAnime()) {
|
||||
if (param_0) {
|
||||
f32 tmp_0 = FLOAT_LABEL(lit_6108);
|
||||
mUpperFrameCtrl[2].setRate(tmp_0);
|
||||
mUpperFrameCtrl[2].setFrame(tmp_0);
|
||||
getNowAnmPackUpper(UPPER_2)->setFrame(tmp_0);
|
||||
} else {
|
||||
mUpperFrameCtrl[2].setRate(daAlinkHIO_boom_c0::m.mIdleAnmSpeed);
|
||||
}
|
||||
f32 tmp = FLOAT_LABEL(lit_6108);
|
||||
mUpperFrameCtrl[2].setRate(tmp);
|
||||
mUpperFrameCtrl[2].setFrame(tmp);
|
||||
|
||||
}
|
||||
} */
|
||||
}
|
||||
|
||||
/* 800E1408-800E145C 0DBD48 0054+00 2/2 0/0 0/0 .text checkForestOldCentury__9daAlink_cFv
|
||||
*/
|
||||
@@ -72,24 +66,17 @@ BOOL daAlink_c::checkForestOldCentury() {
|
||||
}
|
||||
|
||||
/* 800E145C-800E1530 0DBD9C 00D4+00 1/0 0/0 0/0 .text checkCopyRodTopUse__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm BOOL daAlink_c::checkCopyRodTopUse() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkCopyRodTopUse__9daAlink_cFv.s"
|
||||
BOOL daAlink_c::checkCopyRodTopUse() {
|
||||
// Event flag 0x2580: Dominion Rod power restored
|
||||
return (i_dComIfGs_isEventBit(0x2580) && !(mProcID == PROC_UNEQUIP && field_0x300e != 0)) ||
|
||||
i_dStage_stagInfo_GetSaveTbl(dComIfGp_getStageStagInfo()) == 0x15 ||
|
||||
checkForestOldCentury();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E1530-800E158C 0DBE70 005C+00 4/4 0/0 0/0 .text checkCopyRodAnime__9daAlink_cCFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkCopyRodAnime() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkCopyRodAnime__9daAlink_cCFv.s"
|
||||
BOOL daAlink_c::checkCopyRodAnime() const {
|
||||
return checkCopyRodReadyAnime() || checkCopyRodThrowAnime();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E158C-800E15FC 0DBECC 0070+00 2/2 0/0 0/0 .text setCopyRodControllAnime__9daAlink_cFv */
|
||||
void daAlink_c::setCopyRodControllAnime() {
|
||||
@@ -121,49 +108,42 @@ void daAlink_c::setCopyRodModel() {
|
||||
mDoExt_setCurrentHeap(heap);
|
||||
field_0x0724->setFrame(FLOAT_LABEL(lit_6108));
|
||||
field_0x2f94 = 2;
|
||||
field_0x122C[0].SetAtSpl(dCcG_At_Spl_UNK_0);
|
||||
field_0x122C[0].SetAtAtp(0);
|
||||
field_0x122C[0].SetAtSe(20);
|
||||
field_0x122C[0].SetAtHitMark(1);
|
||||
field_0x122C[0].OnAtSetBit();
|
||||
field_0x122C[0].SetAtHitCallback(NULL);
|
||||
field_0x122C[0].SetAtMtrl(0);
|
||||
mAtCps[0].SetAtSpl(dCcG_At_Spl_UNK_0);
|
||||
mAtCps[0].SetAtAtp(0);
|
||||
mAtCps[0].SetAtSe(20);
|
||||
mAtCps[0].SetAtHitMark(1);
|
||||
mAtCps[0].OnAtSetBit();
|
||||
mAtCps[0].SetAtHitCallback(NULL);
|
||||
mAtCps[0].SetAtMtrl(0);
|
||||
mHeldItemModel->i_setBaseTRMtx(mpLinkModel->i_getAnmMtx(field_0x30c0));
|
||||
mHeldItemModel->calc();
|
||||
}
|
||||
|
||||
/* 800E1840-800E191C 0DC180 00DC+00 2/2 0/0 0/0 .text setCopyRodReadyAnime__9daAlink_cFv
|
||||
*/
|
||||
// regalloc
|
||||
#ifdef NONMATCHING
|
||||
#pragma push
|
||||
#pragma optimization_level 2
|
||||
void daAlink_c::setCopyRodReadyAnime() {
|
||||
f32 tmp;
|
||||
f32 speed;
|
||||
if (i_checkAttentionLock()) {
|
||||
tmp = daAlinkHIO_boom_c0::m.valc;
|
||||
speed = daAlinkHIO_boom_c0::m.mIdleAnmSpeed;
|
||||
} else {
|
||||
tmp = FLOAT_LABEL(lit_6108);
|
||||
speed = FLOAT_LABEL(lit_6108);
|
||||
}
|
||||
|
||||
setUpperAnimeBaseSpeed(0x54, tmp, lit_6109);
|
||||
setUpperAnimeBaseSpeed(0x54, speed, lit_6109);
|
||||
|
||||
if (checkCopyRodTopUse()) {
|
||||
seStartSwordCut(Z2SE_AL_COPYROD_READY);
|
||||
} else {
|
||||
seStartSwordCut(Z2SE_AL_COPYROD_READY_OFF);
|
||||
}
|
||||
field_0x122C[0].SetR(lit_8676);
|
||||
field_0x122C[0].SetAtType(0x1000000);
|
||||
|
||||
mAtCps[0].SetR(lit_8676);
|
||||
mAtCps[0].SetAtType(0x1000000);
|
||||
initLockAt();
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setCopyRodReadyAnime() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setCopyRodReadyAnime__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 800E191C-800E1A30 0DC25C 0114+00 1/1 0/0 0/0 .text throwCopyRod__9daAlink_cFv */
|
||||
void daAlink_c::throwCopyRod() {
|
||||
@@ -193,147 +173,276 @@ void daAlink_c::throwCopyRod() {
|
||||
}
|
||||
|
||||
/* 800E1A30-800E1ADC 0DC370 00AC+00 0/0 0/0 1/1 .text returnCopyRod__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::returnCopyRod() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/returnCopyRod__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* void daAlink_c::returnCopyRod() {
|
||||
int daAlink_c::returnCopyRod() {
|
||||
i_offNoResetFlg3(FLG3_COPY_ROD_THROW_AFTER);
|
||||
|
||||
if (mEquipItem == 0x46) {
|
||||
int var_r31;
|
||||
if (mEquipItem == COPY_ROD) {
|
||||
mItemAcKeep = mCopyRodAcKeep;
|
||||
i_onNoResetFlg0(FLG0_UNK_20);
|
||||
cXyz tmp(0, 1, 0);
|
||||
dComIfGp_getVibration().StartShock(1, 1, tmp);
|
||||
var_r31 = 1;
|
||||
|
||||
f32 tmp_0 = FLOAT_LABEL(lit_6108);
|
||||
dComIfGp_getVibration().StartShock(1, 1, cXyz(tmp_0, lit_6040, tmp_0));
|
||||
} else {
|
||||
var_r31 = 0;
|
||||
}
|
||||
|
||||
mCopyRodAcKeep.clearData();
|
||||
} */
|
||||
return var_r31;
|
||||
}
|
||||
|
||||
/* 800E1ADC-800E1BB4 0DC41C 00D8+00 2/2 0/0 0/0 .text checkUpperItemActionCopyRod__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkUpperItemActionCopyRod() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkUpperItemActionCopyRod__9daAlink_cFv.s"
|
||||
BOOL daAlink_c::checkUpperItemActionCopyRod() {
|
||||
if (field_0x3018 != 0) {
|
||||
field_0x3018--;
|
||||
}
|
||||
|
||||
if (checkReadyItem() && !itemButton() && checkCopyRodReadyAnime()) {
|
||||
setUpperAnimeParam(0x53, UPPER_2, &daAlinkHIO_boom_c0::m.mThrowAnm);
|
||||
mSearchBallScale = getCopyRodBallDisMax();
|
||||
|
||||
if (!mSight.getLockFlg()) {
|
||||
mSearchBallScale -= lit_7308;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
return cancelUpperItemReadyAnime(0);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E1BB4-800E1C44 0DC4F4 0090+00 1/1 0/0 0/0 .text checkUpperItemActionCopyRodFly__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkUpperItemActionCopyRodFly() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkUpperItemActionCopyRodFly__9daAlink_cFv.s"
|
||||
void daAlink_c::checkUpperItemActionCopyRodFly() {
|
||||
if (mCopyRodAcKeep.getActor() == NULL) {
|
||||
if (checkCopyRodReadyAnime()) {
|
||||
checkUpperItemActionCopyRod();
|
||||
} else if (checkReadyItem() && itemTrigger()) {
|
||||
setCopyRodReadyAnime();
|
||||
}
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E1C44-800E1D6C 0DC584 0128+00 2/2 0/0 0/0 .text checkNextActionCopyRod__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkNextActionCopyRod() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkNextActionCopyRod__9daAlink_cFv.s"
|
||||
#pragma optimization_level 2
|
||||
int daAlink_c::checkNextActionCopyRod() {
|
||||
if ((checkBoomerangCatchAnime() &&
|
||||
mUpperFrameCtrl[2].getFrame() <= daAlinkHIO_boom_c0::m.mCatchAnm.mCheckFrame) ||
|
||||
i_checkNoResetFlg1(FLG1_UNK_10000)) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (mFastShotTime != 0) {
|
||||
mFastShotTime--;
|
||||
}
|
||||
|
||||
if (!checkCopyRodAnime()) {
|
||||
setCopyRodReadyAnime();
|
||||
setFastShotTimer();
|
||||
|
||||
if (!i_checkAttentionLock()) {
|
||||
field_0x2fe4 = shape_angle.y;
|
||||
}
|
||||
}
|
||||
|
||||
if (!i_checkAttentionLock() && mFastShotTime == 0) {
|
||||
return procCopyRodSubjectInit();
|
||||
}
|
||||
|
||||
return procCopyRodMoveInit();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E1D6C-800E1E20 0DC6AC 00B4+00 1/1 0/0 0/0 .text setCopyRodSight__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setCopyRodSight() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setCopyRodSight__9daAlink_cFv.s"
|
||||
void daAlink_c::setCopyRodSight() {
|
||||
if (mItemAcKeep.getActor() && !checkCopyRodThrowAnime()) {
|
||||
cXyz sight_pos;
|
||||
|
||||
checkSightLine(getCopyRodBallDisMax(), &sight_pos);
|
||||
mSight.setPos(&sight_pos);
|
||||
mSight.onDrawFlg();
|
||||
|
||||
if (mAtCps[0].ChkAtHit()) {
|
||||
mSight.onLockFlg();
|
||||
} else {
|
||||
mSight.offLockFlg();
|
||||
}
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E1E20-800E1EB0 0DC760 0090+00 1/1 0/0 0/0 .text procCopyRodSubjectInit__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCopyRodSubjectInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCopyRodSubjectInit__9daAlink_cFv.s"
|
||||
int daAlink_c::procCopyRodSubjectInit() {
|
||||
if (!commonProcInitNotSameProc(PROC_COPY_ROD_SUBJECT)) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
mNormalSpeed = FLOAT_LABEL(lit_6108);
|
||||
initCopyRodUpperAnimeSpeed(1);
|
||||
setSingleAnimeBaseSpeed(ANM_ATN_WAIT_RIGHT, FLOAT_LABEL(lit_6108), daAlinkHIO_boom_c0::m.mStartInterpolation);
|
||||
|
||||
dComIfGp_setPlayerStatus0(0, 0x80);
|
||||
current.angle.y = shape_angle.y;
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E1EB0-800E1F68 0DC7F0 00B8+00 1/0 0/0 0/0 .text procCopyRodSubject__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCopyRodSubject() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCopyRodSubject__9daAlink_cFv.s"
|
||||
int daAlink_c::procCopyRodSubject() {
|
||||
if (!checkItemActorPointer()) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
if (checkCopyRodReadyAnime()) {
|
||||
setDoStatus(0x12);
|
||||
}
|
||||
|
||||
setShapeAngleToAtnActor(0);
|
||||
|
||||
if (!checkNextAction(0)) {
|
||||
if (setBodyAngleToCamera()) {
|
||||
setCopyRodSight();
|
||||
}
|
||||
} else {
|
||||
mSight.offDrawFlg();
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E1F68-800E1FFC 0DC8A8 0094+00 1/1 0/0 0/0 .text procCopyRodMoveInit__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCopyRodMoveInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCopyRodMoveInit__9daAlink_cFv.s"
|
||||
int daAlink_c::procCopyRodMoveInit() {
|
||||
if (!commonProcInitNotSameProc(PROC_COPY_ROD_MOVE)) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (checkZeroSpeedF()) {
|
||||
onModeFlg(1);
|
||||
}
|
||||
|
||||
initCopyRodUpperAnimeSpeed(0);
|
||||
setBlendAtnMoveAnime(daAlinkHIO_boom_c0::m.mStartInterpolation);
|
||||
|
||||
dComIfGp_setPlayerStatus0(0, 0x80);
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E1FFC-800E20C8 0DC93C 00CC+00 1/0 0/0 0/0 .text procCopyRodMove__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCopyRodMove() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCopyRodMove__9daAlink_cFv.s"
|
||||
int daAlink_c::procCopyRodMove() {
|
||||
if (!checkItemActorPointer()) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
if (!checkNextAction(0)) {
|
||||
f32 var_f31 = lit_6041;
|
||||
|
||||
if (checkZeroSpeedF()) {
|
||||
onModeFlg(1);
|
||||
|
||||
if (field_0x2f98 != 3) {
|
||||
field_0x2f98 = 3;
|
||||
var_f31 = daAlinkHIO_basic_c0::m.mAnmBlendFactor;
|
||||
}
|
||||
} else {
|
||||
offModeFlg(1);
|
||||
}
|
||||
|
||||
setBlendAtnMoveAnime(var_f31);
|
||||
setBodyAngleXReadyAnime(0);
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E20C8-800E21FC 0DCA08 0134+00 1/1 0/0 0/0 .text procCopyRodSwingInit__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCopyRodSwingInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCopyRodSwingInit__9daAlink_cFv.s"
|
||||
int daAlink_c::procCopyRodSwingInit() {
|
||||
commonProcInit(PROC_COPY_ROD_SWING);
|
||||
daCstatue_c* statue = (daCstatue_c*)getCopyRodControllActor();
|
||||
|
||||
if (statue != NULL && ((fopAcM_GetName(statue) == PROC_CSTATUE && !statue->checkNotSmallType()) || fopAcM_GetName(statue) != PROC_CSTATUE)) {
|
||||
setSingleAnimeParam(ANM_COPYROD_SWING_LARGE, &daAlinkHIO_copyRod_c0::m.mBigSwingAnm);
|
||||
field_0x3478 = lit_8781;
|
||||
field_0x347c = lit_13382;
|
||||
field_0x3480 = daAlinkHIO_copyRod_c0::m.mBigSwingAnm.mCheckFrame;
|
||||
field_0x3484 = lit_7807;
|
||||
} else {
|
||||
setSingleAnimeParam(ANM_COPYROD_SWING, &daAlinkHIO_copyRod_c0::m.mSwingAnm);
|
||||
field_0x3478 = lit_7450;
|
||||
field_0x347c = lit_8783;
|
||||
field_0x3480 = daAlinkHIO_copyRod_c0::m.mSwingAnm.mCheckFrame;
|
||||
field_0x3484 = lit_8130;
|
||||
}
|
||||
|
||||
mNormalSpeed = FLOAT_LABEL(lit_6108);
|
||||
current.angle.y = shape_angle.y;
|
||||
mCommonCounter = 1;
|
||||
field_0x300e = 0;
|
||||
|
||||
voiceStart(Z2SE_AL_V_ATTACK_S);
|
||||
mAtCps[0].SetR(lit_11442);
|
||||
mAtCps[0].SetAtType(AT_TYPE_COPY_ROD);
|
||||
cancelLockAt();
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E21FC-800E2308 0DCB3C 010C+00 1/0 0/0 0/0 .text procCopyRodSwing__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCopyRodSwing() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCopyRodSwing__9daAlink_cFv.s"
|
||||
int daAlink_c::procCopyRodSwing() {
|
||||
daPy_frameCtrl_c* frameCtrl = mUnderFrameCtrl;
|
||||
mCommonCounter = 0;
|
||||
|
||||
if (frameCtrl->checkAnmEnd()) {
|
||||
setCopyRodControllAnime();
|
||||
checkNextAction(0);
|
||||
} else if (frameCtrl->getFrame() > field_0x3480 && checkNextAction(1)) {
|
||||
if (i_checkModeFlg(0x1000)) {
|
||||
setCopyRodControllAnime();
|
||||
}
|
||||
} else if (frameCtrl->getFrame() >= field_0x3478 && frameCtrl->getFrame() < field_0x347c) {
|
||||
if (field_0x300e == 0) {
|
||||
seStartSwordCut(Z2SE_AL_COPYROD_SWING);
|
||||
}
|
||||
|
||||
field_0x300e = 1;
|
||||
if (changeCutReverseProc(ANM_CUT_RECOIL_A)) {
|
||||
return 1;
|
||||
}
|
||||
} else {
|
||||
field_0x300e = 0;
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E2308-800E23A4 0DCC48 009C+00 1/0 0/0 0/0 .text procCopyRodReviveInit__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCopyRodReviveInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCopyRodReviveInit__9daAlink_cFv.s"
|
||||
int daAlink_c::procCopyRodReviveInit() {
|
||||
if (!commonProcInitNotSameProc(PROC_COPY_ROD_REVIVE)) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
if (mDemo.getParam0() == 0) {
|
||||
if (mEquipItem != COPY_ROD) {
|
||||
deleteEquipItem(0, 0);
|
||||
mEquipItem = COPY_ROD;
|
||||
setCopyRodModel();
|
||||
}
|
||||
field_0x0724->setFrame(FLOAT_LABEL(lit_6108));
|
||||
}
|
||||
|
||||
setSingleAnimeBase(ANM_GET_MASTER_SWORD);
|
||||
mNormalSpeed = FLOAT_LABEL(lit_6108);
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E23A4-800E23FC 0DCCE4 0058+00 1/0 0/0 0/0 .text procCopyRodRevive__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCopyRodRevive() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCopyRodRevive__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
int daAlink_c::procCopyRodRevive() {
|
||||
simpleAnmPlay(field_0x0724);
|
||||
|
||||
if (mUnderFrameCtrl[0].checkAnmEnd()) {
|
||||
dComIfGp_evmng_cutEnd(field_0x3184);
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
@@ -161,7 +161,7 @@ asm void daAlink_c::setCrawlAutoMoveAimPos() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCrawlStartInit() {
|
||||
asm int daAlink_c::procCrawlStartInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCrawlStartInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -171,7 +171,7 @@ asm void daAlink_c::procCrawlStartInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCrawlStart() {
|
||||
asm int daAlink_c::procCrawlStart() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCrawlStart__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -181,7 +181,7 @@ asm void daAlink_c::procCrawlStart() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCrawlMoveInit(s16 param_0, s16 param_1) {
|
||||
asm int daAlink_c::procCrawlMoveInit(s16 param_0, s16 param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCrawlMoveInit__9daAlink_cFss.s"
|
||||
}
|
||||
@@ -191,7 +191,7 @@ asm void daAlink_c::procCrawlMoveInit(s16 param_0, s16 param_1) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCrawlMove() {
|
||||
asm int daAlink_c::procCrawlMove() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCrawlMove__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -201,7 +201,7 @@ asm void daAlink_c::procCrawlMove() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCrawlAutoMoveInit(int param_0, cXyz* param_1) {
|
||||
asm int daAlink_c::procCrawlAutoMoveInit(int param_0, cXyz* param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCrawlAutoMoveInit__9daAlink_cFiP4cXyz.s"
|
||||
}
|
||||
@@ -211,7 +211,7 @@ asm void daAlink_c::procCrawlAutoMoveInit(int param_0, cXyz* param_1) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCrawlAutoMove() {
|
||||
asm int daAlink_c::procCrawlAutoMove() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCrawlAutoMove__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -221,7 +221,7 @@ asm void daAlink_c::procCrawlAutoMove() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCrawlEndInit(int param_0, s16 param_1, s16 param_2) {
|
||||
asm int daAlink_c::procCrawlEndInit(int param_0, s16 param_1, s16 param_2) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCrawlEndInit__9daAlink_cFiss.s"
|
||||
}
|
||||
@@ -231,7 +231,7 @@ asm void daAlink_c::procCrawlEndInit(int param_0, s16 param_1, s16 param_2) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCrawlEnd() {
|
||||
asm int daAlink_c::procCrawlEnd() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCrawlEnd__9daAlink_cFv.s"
|
||||
}
|
||||
|
||||
+1449
-399
File diff suppressed because it is too large
Load Diff
+385
-247
@@ -1,157 +1,216 @@
|
||||
/* 800D6D94-800D6DA4 0D16D4 0010+00 0/0 0/0 2/2 .text getFreezeR__9daAlink_cCFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::getFreezeR() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/getFreezeR__9daAlink_cCFv.s"
|
||||
s16 daAlink_c::getFreezeR() const {
|
||||
return daAlinkHIO_damage_c0::m.mFreezeR;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800D6DA4-800D6DB4 0D16E4 0010+00 0/0 0/0 2/2 .text getFreezeG__9daAlink_cCFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::getFreezeG() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/getFreezeG__9daAlink_cCFv.s"
|
||||
s16 daAlink_c::getFreezeG() const {
|
||||
return daAlinkHIO_damage_c0::m.mFreezeG;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800D6DB4-800D6DC4 0D16F4 0010+00 0/0 0/0 2/2 .text getFreezeB__9daAlink_cCFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::getFreezeB() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/getFreezeB__9daAlink_cCFv.s"
|
||||
s16 daAlink_c::getFreezeB() const {
|
||||
return daAlinkHIO_damage_c0::m.mFreezeB;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800D6DC4-800D6DF0 0D1704 002C+00 2/2 0/0 0/0 .text checkMiddleBossGoronRoom__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkMiddleBossGoronRoom() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkMiddleBossGoronRoom__9daAlink_cFv.s"
|
||||
bool daAlink_c::checkMiddleBossGoronRoom() {
|
||||
return checkStageName("D_MN04B");
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800D6DF0-800D6E24 0D1730 0034+00 1/0 0/0 0/0 .text setDkCaught__9daAlink_cFP10fopAc_ac_c */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setDkCaught(fopAc_ac_c* param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setDkCaught__9daAlink_cFP10fopAc_ac_c.s"
|
||||
void daAlink_c::setDkCaught(fopAc_ac_c* param_0) {
|
||||
if (!i_checkNoResetFlg1(FLG1_UNK_1)) {
|
||||
i_onNoResetFlg1(FLG1_UNK_1);
|
||||
field_0x28f8 = fopAcM_GetID(param_0);
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800D6E24-800D6F00 0D1764 00DC+00 2/2 0/0 0/0 .text freezeTimerDamage__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::freezeTimerDamage() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/freezeTimerDamage__9daAlink_cFv.s"
|
||||
void daAlink_c::freezeTimerDamage() {
|
||||
field_0x3008--;
|
||||
field_0x300a++;
|
||||
|
||||
if (field_0x300a % 45 == 0) {
|
||||
setDamagePoint(1, 1, 0, 0);
|
||||
}
|
||||
|
||||
if (escapeTrigger()) {
|
||||
field_0x3008 -= 2;
|
||||
}
|
||||
|
||||
if (checkInputOnR() && abs((s16)(mStickAngle - mPrevStickAngle)) > 0x1000) {
|
||||
field_0x3008 -= 2;
|
||||
}
|
||||
|
||||
if (field_0x3008 < 0) {
|
||||
field_0x3008 = 0;
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800D6F00-800D6F2C 0D1840 002C+00 1/0 0/0 0/0 .text onPressedDamage__9daAlink_cFRC4cXyzs */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::onPressedDamage(cXyz const& param_0, s16 param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/onPressedDamage__9daAlink_cFRC4cXyzs.s"
|
||||
void daAlink_c::onPressedDamage(cXyz const& param_0, s16 param_1) {
|
||||
i_onNoResetFlg2(FLG2_UNK_1000);
|
||||
field_0x3104 = param_1;
|
||||
field_0x3744 = param_0;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800D6F2C-800D6FE0 0D186C 00B4+00 3/3 0/0 0/0 .text checkNoLandDamageSlidePolygon__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkNoLandDamageSlidePolygon() {
|
||||
asm BOOL daAlink_c::checkNoLandDamageSlidePolygon() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkNoLandDamageSlidePolygon__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800D6FE0-800D70A0 0D1920 00C0+00 6/6 0/0 0/0 .text checkCutLandDamage__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkCutLandDamage() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkCutLandDamage__9daAlink_cFv.s"
|
||||
void daAlink_c::checkCutLandDamage() {
|
||||
if (!checkEventRun()) {
|
||||
f32 var_f31 = (mFallHeight - current.pos.y) * lit_8782;
|
||||
|
||||
if (var_f31 >= daAlinkHIO_damFall_c0::m.mSmallDmgHeight && !checkNoLandDamageSlidePolygon()) {
|
||||
if (var_f31 >= daAlinkHIO_damFall_c0::m.mBigDmgHeight) {
|
||||
setLandDamagePoint(8);
|
||||
} else {
|
||||
setLandDamagePoint(4);
|
||||
}
|
||||
|
||||
onModeFlg(8);
|
||||
}
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800D70A0-800D7160 0D19E0 00C0+00 2/2 0/0 0/0 .text checkCaughtEscapeCutTurn__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkCaughtEscapeCutTurn() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkCaughtEscapeCutTurn__9daAlink_cFv.s"
|
||||
BOOL daAlink_c::checkCaughtEscapeCutTurn() {
|
||||
if (mLinkAcch.ChkGroundHit() && (i_checkSwordGet() || i_checkWolf()) && checkCutTurnInputTrigger()) {
|
||||
if (i_checkWolf()) {
|
||||
return procWolfRollAttackInit(2, 0);
|
||||
}
|
||||
|
||||
if (mEquipItem != 0x103) {
|
||||
deleteEquipItem(0, 0);
|
||||
setSwordModel();
|
||||
}
|
||||
|
||||
return procCutTurnInit(1, 2);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800D7160-800D7208 0D1AA0 00A8+00 1/0 0/0 0/0 .text setThrowDamage__9daAlink_cFsffiii
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm bool daAlink_c::setThrowDamage(s16 param_0, f32 param_1, f32 param_2, int param_3, int param_4,
|
||||
bool daAlink_c::setThrowDamage(s16 param_0, f32 param_1, f32 param_2, int param_3, int param_4,
|
||||
int param_5) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setThrowDamage__9daAlink_cFsffiii.s"
|
||||
field_0x3408 = param_1;
|
||||
field_0x340c = param_2;
|
||||
field_0x318c = param_3;
|
||||
field_0x2ffe = param_0;
|
||||
|
||||
if (param_4) {
|
||||
i_onEndResetFlg0(ERFLG0_UNK_40);
|
||||
} else {
|
||||
i_onEndResetFlg0(ERFLG0_UNK_80);
|
||||
}
|
||||
|
||||
if (param_5 == 1) {
|
||||
i_onEndResetFlg0(ERFLG0_UNK_40000000);
|
||||
} else if (param_5 == 2) {
|
||||
i_onEndResetFlg1(ERFLG1_UNK_80);
|
||||
}
|
||||
|
||||
if (i_getSumouMode()) {
|
||||
cancelSumouMode();
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800D7208-800D72BC 0D1B48 00B4+00 2/2 0/0 0/0 .text damageMagnification__9daAlink_cFii
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm f32 daAlink_c::damageMagnification(int param_0, int param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/damageMagnification__9daAlink_cFii.s"
|
||||
f32 daAlink_c::damageMagnification(int i_checkZoraMag, int param_1) {
|
||||
f32 base_mag;
|
||||
|
||||
if (param_1 == 0 && i_checkNoResetFlg3(FLG3_UNK_40000000) && !i_checkEndResetFlg2(ERFLG2_UNK_40)) {
|
||||
base_mag = lit_7624; /* 1.5 */
|
||||
} else {
|
||||
base_mag = lit_6040; /* 1.0 */
|
||||
}
|
||||
|
||||
if (i_checkWolf() && !checkCargoCarry() && param_1 == 0) {
|
||||
return /* 2.0 */ lit_7307 * base_mag;
|
||||
}
|
||||
|
||||
if (checkZoraWearAbility() && i_checkZoraMag) {
|
||||
return /* 10.0 */ lit_7625 * base_mag;
|
||||
}
|
||||
|
||||
return base_mag;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800D72BC-800D7478 0D1BFC 01BC+00 6/6 1/1 0/0 .text setDamagePoint__9daAlink_cFiiii */
|
||||
// regalloc and literals
|
||||
#ifdef NONMATCHING
|
||||
int daAlink_c::setDamagePoint(int i_dmgAmount, int i_checkZoraMag, int i_setDmgTimer, int param_3) {
|
||||
if (i_dmgAmount <= 0) {
|
||||
i_dComIfGp_setItemLifeCount(-i_dmgAmount, 0);
|
||||
return 0;
|
||||
}
|
||||
|
||||
f32 magnified_dmgF = (f32)i_dmgAmount * damageMagnification(i_checkZoraMag, param_3);
|
||||
int magnified_dmg = magnified_dmgF;
|
||||
if ((int)(magnified_dmgF * 10.0f) % 10 != 0) {
|
||||
magnified_dmg++;
|
||||
}
|
||||
|
||||
if (i_checkWolf()) {
|
||||
offWolfEyeUp();
|
||||
}
|
||||
|
||||
if (checkMagicArmorNoDamage()) {
|
||||
i_dComIfGp_setItemRupeeCount(-magnified_dmg * 10);
|
||||
} else {
|
||||
i_dComIfGp_setItemLifeCount(-magnified_dmg, 0);
|
||||
}
|
||||
|
||||
i_onResetFlg1(0x400);
|
||||
mSwordUpTimer = 0;
|
||||
|
||||
if (i_setDmgTimer) {
|
||||
mDamageTimer = daAlinkHIO_damage_c0::m.mInvincibleTime;
|
||||
setDamageColorTime();
|
||||
}
|
||||
|
||||
field_0x3006 = 0;
|
||||
|
||||
return 0;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setDamagePoint(int param_0, int param_1, int param_2, int param_3) {
|
||||
asm int daAlink_c::setDamagePoint(int param_0, int param_1, int param_2, int param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setDamagePoint__9daAlink_cFiiii.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 800D7478-800D74A4 0D1DB8 002C+00 6/6 0/0 0/0 .text setDamagePointNormal__9daAlink_cFi
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setDamagePointNormal(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setDamagePointNormal__9daAlink_cFi.s"
|
||||
void daAlink_c::setDamagePointNormal(int i_dmgAmount) {
|
||||
setDamagePoint(i_dmgAmount, FALSE, TRUE, 0);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800D74A4-800D74F4 0D1DE4 0050+00 3/3 0/0 0/0 .text setLandDamagePoint__9daAlink_cFi */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setLandDamagePoint(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setLandDamagePoint__9daAlink_cFi.s"
|
||||
void daAlink_c::setLandDamagePoint(int i_dmgAmount) {
|
||||
i_onEndResetFlg2(ERFLG2_UNK_40);
|
||||
setDamagePoint(i_dmgAmount, FALSE, TRUE, 0);
|
||||
i_offEndResetFlg2(ERFLG2_UNK_40);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800D74F4-800D76C4 0D1E34 01D0+00 11/11 0/0 0/0 .text getDamageVec__9daAlink_cFP12dCcD_GObjInf
|
||||
*/
|
||||
@@ -165,35 +224,29 @@ asm void daAlink_c::getDamageVec(dCcD_GObjInf* param_0) {
|
||||
#pragma pop
|
||||
|
||||
/* 800D76C4-800D7768 0D2004 00A4+00 1/1 0/0 0/0 .text setDashDamage__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setDashDamage() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setDashDamage__9daAlink_cFv.s"
|
||||
void daAlink_c::setDashDamage() {
|
||||
setUpperAnimeParam(0xAD, UPPER_2, &daAlinkHIO_damage_c0::m.mDashDmgAnm);
|
||||
setFacePriBck(0x121);
|
||||
setFacePriTexture(FTANM_UNK_27);
|
||||
voiceStart(Z2SE_AL_V_DAMAGE_S);
|
||||
seStartOnlyReverb(Z2SE_AL_DAMAGE_NORMAL);
|
||||
freeGrabItem();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800D7768-800D77C8 0D20A8 0060+00 2/2 0/0 3/3 .text
|
||||
* checkIcePolygonDamage__9daAlink_cFP13cBgS_PolyInfo */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkIcePolygonDamage(cBgS_PolyInfo* param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkIcePolygonDamage__9daAlink_cFP13cBgS_PolyInfo.s"
|
||||
bool daAlink_c::checkIcePolygonDamage(cBgS_PolyInfo* i_poly) {
|
||||
if (dComIfG_Bgsp().GetPolyAtt0(*i_poly) == 8 && dKy_pol_argument_get(i_poly) & 0x60) {
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800D77C8-800D7820 0D2108 0058+00 8/8 0/0 0/0 .text checkMagicArmorNoDamage__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm BOOL daAlink_c::checkMagicArmorNoDamage() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkMagicArmorNoDamage__9daAlink_cFv.s"
|
||||
BOOL daAlink_c::checkMagicArmorNoDamage() {
|
||||
return checkMagicArmorWearAbility() && !checkMagicArmorHeavy();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800D7820-800D7A98 0D2160 0278+00 1/1 0/0 0/0 .text checkPolyDamage__9daAlink_cFv */
|
||||
#pragma push
|
||||
@@ -217,57 +270,38 @@ asm void daAlink_c::checkElecReturnDamage(dCcD_GObjInf& param_0, fopAc_ac_c** pa
|
||||
#pragma pop
|
||||
|
||||
/* 800D7B18-800D7BE8 0D2458 00D0+00 1/1 0/0 0/0 .text damageTimerCount__9daAlink_cFv */
|
||||
#ifdef NONMATCHING
|
||||
void daAlink_c::damageTimerCount() {
|
||||
if (!i_checkModeFlg(8)) {
|
||||
if (mDamageColorTime != 0) {
|
||||
mDamageColorTime--;
|
||||
}
|
||||
mDamageTimer--;
|
||||
|
||||
if (mProcID != PROC_DK_CAUGHT && i_checkNoResetFlg1(1)) {
|
||||
if (mProcID != PROC_DK_CAUGHT && i_checkNoResetFlg1(FLG1_UNK_1)) {
|
||||
i_offNoResetFlg1(1);
|
||||
}
|
||||
|
||||
if (checkDkCaught2Anime() && i_checkNoResetFlg0(FLG0_UNK_20000)) {
|
||||
if (!checkDkCaught2Anime() && i_checkNoResetFlg0(FLG0_UNK_20000)) {
|
||||
i_offNoResetFlg0(FLG0_UNK_20000);
|
||||
}
|
||||
} else if (mDamageColorTime != 0) {
|
||||
mDamageColorTime--;
|
||||
|
||||
if (mDamageColorTime + mDamageTimer == 0) {
|
||||
if ((mDamageColorTime + mDamageTimer) % 16 == 0) {
|
||||
setDamageColorTime();
|
||||
}
|
||||
}
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::damageTimerCount() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/damageTimerCount__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 800D7BE8-800D7C14 0D2528 002C+00 3/3 0/0 0/0 .text checkHugeAttack__9daAlink_cCFi */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkHugeAttack(int param_0) const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkHugeAttack__9daAlink_cCFi.s"
|
||||
bool daAlink_c::checkHugeAttack(int param_0) const {
|
||||
return param_0 == 2 || param_0 == 7 || param_0 == 11 || param_0 == 14;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800D7C14-800D7C40 0D2554 002C+00 3/3 0/0 0/0 .text checkLargeAttack__9daAlink_cCFi */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkLargeAttack(int param_0) const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkLargeAttack__9daAlink_cCFi.s"
|
||||
bool daAlink_c::checkLargeAttack(int param_0) const {
|
||||
return param_0 == 1 || param_0 == 6 || param_0 == 10 || param_0 == 13;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800D7C40-800D8F3C 0D2580 12FC+00 1/1 0/0 0/0 .text checkDamageAction__9daAlink_cFv */
|
||||
#pragma push
|
||||
@@ -284,7 +318,7 @@ asm BOOL daAlink_c::checkDamageAction() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procDamageInit(dCcD_GObjInf* param_0, int param_1) {
|
||||
asm int daAlink_c::procDamageInit(dCcD_GObjInf* param_0, int param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procDamageInit__9daAlink_cFP12dCcD_GObjInfi.s"
|
||||
}
|
||||
@@ -294,7 +328,7 @@ asm void daAlink_c::procDamageInit(dCcD_GObjInf* param_0, int param_1) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procDamage() {
|
||||
asm int daAlink_c::procDamage() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procDamage__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -305,7 +339,7 @@ asm void daAlink_c::procDamage() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoLargeDamageInit(int param_0, int param_1, s16 param_2, s16 param_3,
|
||||
asm int daAlink_c::procCoLargeDamageInit(int param_0, int param_1, s16 param_2, s16 param_3,
|
||||
dCcD_GObjInf* param_4, int param_5) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoLargeDamageInit__9daAlink_cFiissP12dCcD_GObjInfi.s"
|
||||
@@ -316,7 +350,7 @@ asm void daAlink_c::procCoLargeDamageInit(int param_0, int param_1, s16 param_2,
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoLargeDamage() {
|
||||
asm int daAlink_c::procCoLargeDamage() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoLargeDamage__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -326,7 +360,7 @@ asm void daAlink_c::procCoLargeDamage() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procLargeDamageUpInit(int param_0, int param_1, s16 param_2, s16 param_3) {
|
||||
asm int daAlink_c::procLargeDamageUpInit(int param_0, int param_1, s16 param_2, s16 param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procLargeDamageUpInit__9daAlink_cFiiss.s"
|
||||
}
|
||||
@@ -336,7 +370,7 @@ asm void daAlink_c::procLargeDamageUpInit(int param_0, int param_1, s16 param_2,
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procLargeDamageUp() {
|
||||
asm int daAlink_c::procLargeDamageUp() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procLargeDamageUp__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -347,7 +381,7 @@ asm void daAlink_c::procLargeDamageUp() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoLargeDamageWallInit(int param_0, int param_1, s16 param_2, s16 param_3) {
|
||||
asm int daAlink_c::procCoLargeDamageWallInit(int param_0, int param_1, s16 param_2, s16 param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoLargeDamageWallInit__9daAlink_cFiiss.s"
|
||||
}
|
||||
@@ -355,62 +389,98 @@ asm void daAlink_c::procCoLargeDamageWallInit(int param_0, int param_1, s16 para
|
||||
|
||||
/* 800DAC28-800DAC84 0D5568 005C+00 1/0 0/0 0/0 .text procCoLargeDamageWall__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoLargeDamageWall() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoLargeDamageWall__9daAlink_cFv.s"
|
||||
int daAlink_c::procCoLargeDamageWall() {
|
||||
if (mUnderFrameCtrl[0].checkAnmEnd()) {
|
||||
procCoLargeDamageInit(field_0x3198, field_0x3008, field_0x3080, field_0x3082, NULL, 0);
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DAC84-800DAD90 0D55C4 010C+00 2/2 0/0 0/0 .text procCoPolyDamageInit__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoPolyDamageInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoPolyDamageInit__9daAlink_cFv.s"
|
||||
int daAlink_c::procCoPolyDamageInit() {
|
||||
seStartOnlyReverb(Z2SE_AL_DAMAGE_NORMAL);
|
||||
|
||||
if (!i_checkWolf()) {
|
||||
voiceStart(Z2SE_AL_V_DAMAGE_S);
|
||||
}
|
||||
|
||||
if (checkIronBallWaitAnime()) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
commonProcInit(PROC_POLY_DAMAGE);
|
||||
|
||||
if (i_checkWolf()) {
|
||||
setSingleAnimeWolfParam(WANM_DMG_SMALL, &daAlinkHIO_wlDamage_c0::m.field_0x14);
|
||||
voiceStart(Z2SE_WL_V_DAMAGE);
|
||||
field_0x3478 = daAlinkHIO_wlDamage_c0::m.field_0x14.mCheckFrame;
|
||||
} else {
|
||||
setSingleAnimeParam(ANM_DMG, &daAlinkHIO_damage_c0::m.mFloorDmgAnm);
|
||||
field_0x3478 = daAlinkHIO_damage_c0::m.mFloorDmgAnm.mCheckFrame;
|
||||
}
|
||||
|
||||
mNormalSpeed = FLOAT_LABEL(lit_6108);
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DAD90-800DAE10 0D56D0 0080+00 1/0 0/0 0/0 .text procCoPolyDamage__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoPolyDamage() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoPolyDamage__9daAlink_cFv.s"
|
||||
int daAlink_c::procCoPolyDamage() {
|
||||
if (mUnderFrameCtrl[0].checkAnmEnd()) {
|
||||
commonCheckNextAction(0);
|
||||
} else if (mUnderFrameCtrl[0].getFrame() > field_0x3478) {
|
||||
if (!i_checkWolf()) {
|
||||
onModeFlg(4);
|
||||
}
|
||||
|
||||
commonCheckNextAction(1);
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DAE10-800DB060 0D5750 0250+00 2/2 0/0 0/0 .text procLandDamageInit__9daAlink_cFi */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procLandDamageInit(int param_0) {
|
||||
asm int daAlink_c::procLandDamageInit(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procLandDamageInit__9daAlink_cFi.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DB060-800DB140 0D59A0 00E0+00 1/0 0/0 0/0 .text procLandDamage__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procLandDamage() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procLandDamage__9daAlink_cFv.s"
|
||||
int daAlink_c::procLandDamage() {
|
||||
daPy_frameCtrl_c* frameCtrl = mUnderFrameCtrl;
|
||||
|
||||
if (field_0x3198 != 0) {
|
||||
if (frameCtrl->checkAnmEnd()) {
|
||||
checkNextAction(0);
|
||||
} else if (frameCtrl->getFrame() > daAlinkHIO_damFall_c0::m.mStandAnm.mCheckFrame) {
|
||||
onModeFlg(4);
|
||||
checkNextAction(1);
|
||||
}
|
||||
} else {
|
||||
if (frameCtrl->checkAnmEnd()) {
|
||||
if (field_0x3008 > 0) {
|
||||
field_0x3008--;
|
||||
} else {
|
||||
setSingleAnimeParam(ANM_DMG_FALL_RECOVER, &daAlinkHIO_damFall_c0::m.mStandAnm);
|
||||
field_0x3198 = 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DB140-800DB418 0D5A80 02D8+00 1/1 0/0 0/0 .text
|
||||
* procCoElecDamageInit__9daAlink_cFP10fopAc_ac_cP12dCcD_GObjInfi */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoElecDamageInit(fopAc_ac_c* param_0, dCcD_GObjInf* param_1, int param_2) {
|
||||
asm int daAlink_c::procCoElecDamageInit(fopAc_ac_c* param_0, dCcD_GObjInf* param_1, int param_2) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoElecDamageInit__9daAlink_cFP10fopAc_ac_cP12dCcD_GObjInfi.s"
|
||||
}
|
||||
@@ -420,37 +490,45 @@ asm void daAlink_c::procCoElecDamageInit(fopAc_ac_c* param_0, dCcD_GObjInf* para
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoElecDamage() {
|
||||
asm int daAlink_c::procCoElecDamage() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoElecDamage__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DB5B0-800DB610 0D5EF0 0060+00 2/2 0/0 0/0 .text procStEscapeInit__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procStEscapeInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procStEscapeInit__9daAlink_cFv.s"
|
||||
int daAlink_c::procStEscapeInit() {
|
||||
commonProcInit(PROC_HUMAN_ST_ESCAPE);
|
||||
setSingleAnimeParam(ANM_FROZEN_FREE, &daAlinkHIO_damCaught_c0::m.field_0x0);
|
||||
|
||||
f32 tmp_7 = lit_8502;
|
||||
mUnderFrameCtrl[0].setFrame(tmp_7);
|
||||
getNowAnmPackUnder(UNDER_0)->setFrame(tmp_7);
|
||||
mNormalSpeed = FLOAT_LABEL(lit_6108);
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DB610-800DB6A4 0D5F50 0094+00 1/0 0/0 0/0 .text procStEscape__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procStEscape() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procStEscape__9daAlink_cFv.s"
|
||||
int daAlink_c::procStEscape() {
|
||||
daPy_frameCtrl_c* frameCtrl = mUnderFrameCtrl;
|
||||
i_onEndResetFlg0(ERFLG0_UNK_8000000);
|
||||
|
||||
if (frameCtrl->checkAnmEnd()) {
|
||||
checkNextAction(0);
|
||||
} else if (frameCtrl->getFrame() > daAlinkHIO_damCaught_c0::m.field_0x0.mCheckFrame) {
|
||||
onModeFlg(4);
|
||||
checkNextAction(1);
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DB6A4-800DB860 0D5FE4 01BC+00 1/1 0/0 0/0 .text procDkCaughtInit__9daAlink_cFUi */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procDkCaughtInit(unsigned int param_0) {
|
||||
asm int daAlink_c::procDkCaughtInit(unsigned int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procDkCaughtInit__9daAlink_cFUi.s"
|
||||
}
|
||||
@@ -460,99 +538,159 @@ asm void daAlink_c::procDkCaughtInit(unsigned int param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procDkCaught() {
|
||||
asm int daAlink_c::procDkCaught() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procDkCaught__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DBC98-800DBD1C 0D65D8 0084+00 2/2 0/0 0/0 .text setScreamWaitAnime__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setScreamWaitAnime() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setScreamWaitAnime__9daAlink_cFv.s"
|
||||
void daAlink_c::setScreamWaitAnime() {
|
||||
setSingleAnimeBase(ANM_WAIT_F);
|
||||
voiceStart(Z2SE_AL_V_TERRORED);
|
||||
mCommonCounter = 1;
|
||||
|
||||
f32 tmp_0 = FLOAT_LABEL(lit_6108);
|
||||
dComIfGp_getVibration().StartQuake(5, 1, cXyz(tmp_0, lit_6040, tmp_0));
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DBD1C-800DBDA4 0D665C 0088+00 1/1 0/0 0/0 .text procScreamWaitInit__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procScreamWaitInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procScreamWaitInit__9daAlink_cFv.s"
|
||||
int daAlink_c::procScreamWaitInit() {
|
||||
commonProcInit(PROC_SCREAM_WAIT);
|
||||
|
||||
if (i_checkEndResetFlg1(ERFLG1_UNK_2)) {
|
||||
setScreamWaitAnime();
|
||||
} else {
|
||||
setSingleAnimeBaseSpeed(ANM_WAIT, daAlinkHIO_move_c0::m.mWaitAnmSpeed, daAlinkHIO_basic_c0::m.mAnmBlendFactor);
|
||||
mCommonCounter = 0;
|
||||
}
|
||||
|
||||
current.angle.y = shape_angle.y;
|
||||
mNormalSpeed = FLOAT_LABEL(lit_6108);
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DBDA4-800DBE00 0D66E4 005C+00 1/0 0/0 0/0 .text procScreamWait__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procScreamWait() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procScreamWait__9daAlink_cFv.s"
|
||||
int daAlink_c::procScreamWait() {
|
||||
i_onEndResetFlg0(ERFLG0_UNK_8000000);
|
||||
|
||||
if (!i_checkEndResetFlg1(ERFLG1_UNK_1)) {
|
||||
checkNextAction(0);
|
||||
} else if (mCommonCounter == 0 && i_checkEndResetFlg1(ERFLG1_UNK_2)) {
|
||||
setScreamWaitAnime();
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DBE00-800DBE74 0D6740 0074+00 1/1 0/0 0/0 .text procCoSandWallHitInit__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoSandWallHitInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoSandWallHitInit__9daAlink_cFv.s"
|
||||
int daAlink_c::procCoSandWallHitInit() {
|
||||
if (!commonProcInitNotSameProc(PROC_SAND_WALL_HIT)) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
if (i_checkWolf()) {
|
||||
setSingleAnimeWolfBase(WANM_WAIT_WIND);
|
||||
} else {
|
||||
setSingleAnimeBase(ANM_WAIT_WIND);
|
||||
}
|
||||
|
||||
mNormalSpeed = FLOAT_LABEL(lit_6108);
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DBE74-800DBED8 0D67B4 0064+00 1/0 0/0 0/0 .text procCoSandWallHit__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoSandWallHit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoSandWallHit__9daAlink_cFv.s"
|
||||
int daAlink_c::procCoSandWallHit() {
|
||||
if (mLinkAcch.ChkGroundHit()) {
|
||||
offModeFlg(2);
|
||||
}
|
||||
|
||||
if (!i_checkEndResetFlg1(ERFLG1_UNK_400)) {
|
||||
setDamagePointNormal(1);
|
||||
procCoPolyDamageInit();
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DBED8-800DC214 0D6818 033C+00 1/1 0/0 0/0 .text procCoLavaReturnInit__9daAlink_cFi
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoLavaReturnInit(int param_0) {
|
||||
asm int daAlink_c::procCoLavaReturnInit(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoLavaReturnInit__9daAlink_cFi.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DC214-800DC278 0D6B54 0064+00 1/0 0/0 0/0 .text procCoLavaReturn__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoLavaReturn() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoLavaReturn__9daAlink_cFv.s"
|
||||
int daAlink_c::procCoLavaReturn() {
|
||||
cLib_chaseF(&mSinkShapeOffset, FLOAT_LABEL(lit_6108), lit_7977);
|
||||
|
||||
if (mUnderFrameCtrl[0].checkAnmEnd()) {
|
||||
startRestartRoom(field_0x32cc, 0xC9, field_0x3198, 1);
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DC278-800DC474 0D6BB8 01FC+00 1/1 0/0 0/0 .text procCoSwimFreezeReturnInit__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoSwimFreezeReturnInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoSwimFreezeReturnInit__9daAlink_cFv.s"
|
||||
int daAlink_c::procCoSwimFreezeReturnInit() {
|
||||
if (!dComIfGp_event_compulsory(this, 0, 0xFFFF)) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
mDemo.i_setSpecialDemoType();
|
||||
u32 chk_40000 = i_checkModeFlg(0x40000);
|
||||
|
||||
if (!commonProcInitNotSameProc(PROC_SWIM_FREEZE_RETURN)) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
i_onNoResetFlg0(FLG0_UNK_100);
|
||||
J3DTransformInfo* transInfo = field_0x2060->getOldFrameTransInfo(0);
|
||||
|
||||
f32 var_f31;
|
||||
if (i_checkWolf()) {
|
||||
setSingleAnimeWolfBaseSpeed(WANM_SWIM_WAIT, daAlinkHIO_wlDamNormal_c0::m.field_0x5C, lit_7625);
|
||||
mUnderFrameCtrl[0].setEnd(3);
|
||||
mUnderFrameCtrl[0].setAttribute(0);
|
||||
setFaceBasicTexture(FTANM_UNK_90);
|
||||
field_0x2f9b = 1;
|
||||
var_f31 = daAlinkHIO_wlSwim_c0::m.field_0x48;
|
||||
} else {
|
||||
setSingleAnime(ANM_SWIM_DMG_FREEZE, daAlinkHIO_damNormal_c0::m.field_0x60, FLOAT_LABEL(lit_6108), 5, lit_7625);
|
||||
voiceStart(Z2SE_AL_V_DAMAGE_FREEZE);
|
||||
var_f31 = daAlinkHIO_swim_c0::m.mInitHeight;
|
||||
}
|
||||
|
||||
seStartOnlyReverb(Z2SE_AL_FREEZE);
|
||||
|
||||
if (!chk_40000) {
|
||||
transInfo->mTranslate.y -= var_f31;
|
||||
current.pos.y = mWaterY;
|
||||
}
|
||||
|
||||
field_0x3080 = 0;
|
||||
mDamageTimer = 0;
|
||||
mNormalSpeed = FLOAT_LABEL(lit_6108);
|
||||
i_onNoResetFlg1(FLG1_UNK_40000000);
|
||||
field_0x3194 = 1;
|
||||
|
||||
u32 id = fopAcM_GetID(this);
|
||||
dCam_getBody()->StartEventCamera(9, id, "Type", 1, &field_0x3194, 0);
|
||||
mCommonCounter = 0x2D;
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DC474-800DC548 0D6DB4 00D4+00 1/0 0/0 0/0 .text procCoSwimFreezeReturn__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoSwimFreezeReturn() {
|
||||
asm int daAlink_c::procCoSwimFreezeReturn() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoSwimFreezeReturn__9daAlink_cFv.s"
|
||||
}
|
||||
|
||||
+156
-134
@@ -1,3 +1,5 @@
|
||||
#include "f_op/f_op_msg_mng.h"
|
||||
|
||||
/* 80115C20-80115C50 110560 0030+00 72/72 0/0 0/0 .text checkEventRun__9daAlink_cCFv */
|
||||
BOOL daAlink_c::checkEventRun() const {
|
||||
return i_dComIfGp_event_runCheck() || checkPlayerDemoMode();
|
||||
@@ -37,14 +39,9 @@ asm int daAlink_c::checkDemoAction() {
|
||||
|
||||
/* 80116E60-80116E9C 1117A0 003C+00 4/4 0/0 0/0 .text checkDemoMoveMode__9daAlink_cCFUl
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkDemoMoveMode(u32 param_0) const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkDemoMoveMode__9daAlink_cCFUl.s"
|
||||
bool daAlink_c::checkDemoMoveMode(u32 i_mode) const {
|
||||
return i_mode == 2 || i_mode == 3 || i_mode == 0x26;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80116E9C-80117064 1117DC 01C8+00 1/1 0/0 0/0 .text setDemoMoveData__9daAlink_cFPUlPC4cXyz */
|
||||
#pragma push
|
||||
@@ -77,35 +74,42 @@ asm void daAlink_c::setDemoData() {
|
||||
#pragma pop
|
||||
|
||||
/* 80117B90-80117C34 1124D0 00A4+00 1/1 0/0 0/0 .text resetDemoBck__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::resetDemoBck() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/resetDemoBck__9daAlink_cFv.s"
|
||||
void daAlink_c::resetDemoBck() {
|
||||
mAnmHeap7.resetArcNo();
|
||||
mAnmHeap5.resetArcNo();
|
||||
mAnmHeap6.resetArcNo();
|
||||
mUnderAnmHeap[0].resetArcNo();
|
||||
mUnderAnmHeap[0].resetIdx();
|
||||
mAnmHeap7.resetIdx();
|
||||
mAnmHeap5.resetIdx();
|
||||
mAnmHeap6.resetIdx();
|
||||
|
||||
if (i_checkWolf()) {
|
||||
setSingleAnimeWolfBaseSpeed(WANM_WAIT, daAlinkHIO_wlMoveNoP_c0::m.field_0x14, daAlinkHIO_wlMove_c0::m.field_0x94);
|
||||
setFaceBasicAnime(ANM_WAIT);
|
||||
} else {
|
||||
setSingleAnimeBaseSpeed(ANM_WAIT, daAlinkHIO_move_c0::m.mWaitAnmSpeed, daAlinkHIO_basic_c0::m.mAnmBlendFactor);
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80117C34-80117C90 112574 005C+00 3/3 0/0 0/0 .text endHighModel__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::endHighModel() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/endHighModel__9daAlink_cFv.s"
|
||||
void daAlink_c::endHighModel() {
|
||||
if (field_0x068c != NULL) {
|
||||
mpDemoFCTongueModel->getModelData()->removeTexMtxAnimator(field_0x068c);
|
||||
}
|
||||
|
||||
i_offNoResetFlg1(FLG1_UNK_10);
|
||||
field_0x0698 = NULL;
|
||||
field_0x068c = NULL;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80117C90-80117CF8 1125D0 0068+00 21/21 0/0 0/0 .text resetSpecialEvent__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::resetSpecialEvent() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/resetSpecialEvent__9daAlink_cFv.s"
|
||||
void daAlink_c::resetSpecialEvent() {
|
||||
i_dComIfGp_event_reset();
|
||||
dCam_getBody()->EndEventCamera(fopAcM_GetID(this));
|
||||
endDemoMode();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80117CF8-801180EC 112638 03F4+00 4/4 0/0 0/0 .text endDemoMode__9daAlink_cFv */
|
||||
#pragma push
|
||||
@@ -118,24 +122,36 @@ asm void daAlink_c::endDemoMode() {
|
||||
#pragma pop
|
||||
|
||||
/* 801180EC-80118170 112A2C 0084+00 2/2 0/0 0/0 .text getDemoLookActor__9daAlink_cFv */
|
||||
// weird gameinfo load
|
||||
#ifdef NONMATCHING
|
||||
fopAc_ac_c* daAlink_c::getDemoLookActor() {
|
||||
if (mDemo.getParam0() == 1) {
|
||||
return (fopAc_ac_c*)dComIfGp_event_getPt1();
|
||||
} else if (mDemo.getParam0() == 2) {
|
||||
return (fopAc_ac_c*)dComIfGp_event_getPt2();
|
||||
} else if (mDemo.getParam0() == 3) {
|
||||
return (fopAc_ac_c*)fopAcM_getTalkEventPartner(this);
|
||||
} else if (mDemo.getParam0() == 4) {
|
||||
return getMidnaActor();
|
||||
}
|
||||
|
||||
return NULL;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::getDemoLookActor() {
|
||||
asm fopAc_ac_c* daAlink_c::getDemoLookActor() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/getDemoLookActor__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 80118170-801181A0 112AB0 0030+00 4/4 0/0 0/0 .text checkFlyAtnWait__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm bool daAlink_c::checkFlyAtnWait() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkFlyAtnWait__9daAlink_cFv.s"
|
||||
BOOL daAlink_c::checkFlyAtnWait() {
|
||||
return mDemo.getDemoMode() == 0x17 && (mDemo.getParam1() == 4 || mDemo.getParam1() == 5);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 801181A0-801182D4 112AE0 0134+00 2/2 0/0 0/0 .text setGetItemFace__9daAlink_cFUs */
|
||||
#pragma push
|
||||
@@ -149,14 +165,10 @@ asm void daAlink_c::setGetItemFace(u16 param_0) {
|
||||
|
||||
/* 801182D4-80118308 112C14 0034+00 2/2 0/0 0/0 .text checkGrabTalkActor__9daAlink_cFP10fopAc_ac_c
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkGrabTalkActor(fopAc_ac_c* param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkGrabTalkActor__9daAlink_cFP10fopAc_ac_c.s"
|
||||
BOOL daAlink_c::checkGrabTalkActor(fopAc_ac_c* i_actor) {
|
||||
s16 name = fopAcM_GetName(i_actor);
|
||||
return name == PROC_NPC_KYURY || name == PROC_MYNA || name == PROC_OBJ_SSITEM || name == PROC_TAG_MSG;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80118308-8011856C 112C48 0264+00 2/2 0/0 0/0 .text setTalkStartBack__9daAlink_cFP4cXyz
|
||||
*/
|
||||
@@ -211,14 +223,24 @@ asm void daAlink_c::setTradeItemOutHand() {
|
||||
#pragma pop
|
||||
|
||||
/* 801187B4-80118840 1130F4 008C+00 5/5 0/0 0/0 .text checkEndMessage__9daAlink_cFUl */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkEndMessage(u32 param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkEndMessage__9daAlink_cFUl.s"
|
||||
BOOL daAlink_c::checkEndMessage(u32 param_0) {
|
||||
if (mMsgClassID == -1) {
|
||||
mMsgClassID = fopMsgM_messageSet(param_0, 1000);
|
||||
} else {
|
||||
msg_class* msg = fopMsgM_SearchByID(mMsgClassID);
|
||||
|
||||
if (msg != NULL) {
|
||||
if (msg->field_0xf8 == 14) {
|
||||
msg->field_0xf8 = 16;
|
||||
} else if (msg->field_0xf8 == 0x12) {
|
||||
msg->field_0xf8 = 0x13;
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80118840-801188B0 113180 0070+00 1/1 0/0 0/0 .text setDemoRightHandIndex__9daAlink_cFUs */
|
||||
#pragma push
|
||||
@@ -268,8 +290,8 @@ BOOL daAlink_c::checkFinalBattle() {
|
||||
}
|
||||
|
||||
/* 80118B34-80118BF4 113474 00C0+00 3/3 0/0 0/0 .text checkRestartDead__9daAlink_cFii */
|
||||
BOOL daAlink_c::checkRestartDead(int i_dmgAmount, int param_1) {
|
||||
i_dmgAmount *= (int)damageMagnification(param_1, 1);
|
||||
BOOL daAlink_c::checkRestartDead(int i_dmgAmount, int i_checkZoraMag) {
|
||||
i_dmgAmount *= (int)damageMagnification(i_checkZoraMag, 1);
|
||||
|
||||
if (mProcID != PROC_DEAD && i_dmgAmount >= i_dComIfGs_getLife() && !checkMagicArmorNoDamage() &&
|
||||
!dComIfGs_checkBottle(FAIRY)) {
|
||||
@@ -287,9 +309,9 @@ void daAlink_c::setDeadRideSyncPos() {
|
||||
if (i_checkReinRide()) {
|
||||
setSyncRidePos();
|
||||
} else if (checkSpinnerRide()) {
|
||||
s16 old_angle = mCollisionRot.y;
|
||||
s16 old_angle = shape_angle.y;
|
||||
setSpinnerSyncPos();
|
||||
mCollisionRot.y = old_angle;
|
||||
shape_angle.y = old_angle;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -383,7 +405,7 @@ int daAlink_c::procDemoCommon() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoToolDemoInit() {
|
||||
asm int daAlink_c::procCoToolDemoInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoToolDemoInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -393,7 +415,7 @@ asm void daAlink_c::procCoToolDemoInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoToolDemo() {
|
||||
asm int daAlink_c::procCoToolDemo() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoToolDemo__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -403,7 +425,7 @@ asm void daAlink_c::procCoToolDemo() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoTalkInit() {
|
||||
asm int daAlink_c::procCoTalkInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoTalkInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -413,7 +435,7 @@ asm void daAlink_c::procCoTalkInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoTalk() {
|
||||
asm int daAlink_c::procCoTalk() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoTalk__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -423,7 +445,7 @@ asm void daAlink_c::procCoTalk() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoOpenTreasureInit() {
|
||||
asm int daAlink_c::procCoOpenTreasureInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoOpenTreasureInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -433,7 +455,7 @@ asm void daAlink_c::procCoOpenTreasureInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoOpenTreasure() {
|
||||
asm int daAlink_c::procCoOpenTreasure() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoOpenTreasure__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -443,7 +465,7 @@ asm void daAlink_c::procCoOpenTreasure() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoUnequipInit() {
|
||||
asm int daAlink_c::procCoUnequipInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoUnequipInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -453,7 +475,7 @@ asm void daAlink_c::procCoUnequipInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoUnequip() {
|
||||
asm int daAlink_c::procCoUnequip() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoUnequip__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -505,7 +527,7 @@ asm bool daAlink_c::checkTreasureRupeeReturn(int param_0) const {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoGetItemInit() {
|
||||
asm int daAlink_c::procCoGetItemInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoGetItemInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -515,7 +537,7 @@ asm void daAlink_c::procCoGetItemInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoGetItem() {
|
||||
asm int daAlink_c::procCoGetItem() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoGetItem__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -525,7 +547,7 @@ asm void daAlink_c::procCoGetItem() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoTurnBackInit() {
|
||||
asm int daAlink_c::procCoTurnBackInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoTurnBackInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -535,7 +557,7 @@ asm void daAlink_c::procCoTurnBackInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoTurnBack() {
|
||||
asm int daAlink_c::procCoTurnBack() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoTurnBack__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -545,7 +567,7 @@ asm void daAlink_c::procCoTurnBack() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procDoorOpenInit() {
|
||||
asm int daAlink_c::procDoorOpenInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procDoorOpenInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -555,7 +577,7 @@ asm void daAlink_c::procDoorOpenInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procDoorOpen() {
|
||||
asm int daAlink_c::procDoorOpen() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procDoorOpen__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -565,7 +587,7 @@ asm void daAlink_c::procDoorOpen() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoLookWaitInit() {
|
||||
asm int daAlink_c::procCoLookWaitInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoLookWaitInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -575,7 +597,7 @@ asm void daAlink_c::procCoLookWaitInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoLookWait() {
|
||||
asm int daAlink_c::procCoLookWait() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoLookWait__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -585,7 +607,7 @@ asm void daAlink_c::procCoLookWait() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoDemoPushPullWaitInit() {
|
||||
asm int daAlink_c::procCoDemoPushPullWaitInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoDemoPushPullWaitInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -595,7 +617,7 @@ asm void daAlink_c::procCoDemoPushPullWaitInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoDemoPushMoveInit() {
|
||||
asm int daAlink_c::procCoDemoPushMoveInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoDemoPushMoveInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -615,7 +637,7 @@ asm void daAlink_c::setMonkeyMoveAnime() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procMonkeyMoveInit() {
|
||||
asm int daAlink_c::procMonkeyMoveInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procMonkeyMoveInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -625,7 +647,7 @@ asm void daAlink_c::procMonkeyMoveInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procMonkeyMove() {
|
||||
asm int daAlink_c::procMonkeyMove() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procMonkeyMove__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -635,7 +657,7 @@ asm void daAlink_c::procMonkeyMove() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procDemoBoomerangCatchInit() {
|
||||
asm int daAlink_c::procDemoBoomerangCatchInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procDemoBoomerangCatchInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -645,7 +667,7 @@ asm void daAlink_c::procDemoBoomerangCatchInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procDemoBoomerangCatch() {
|
||||
asm int daAlink_c::procDemoBoomerangCatch() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procDemoBoomerangCatch__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -655,7 +677,7 @@ asm void daAlink_c::procDemoBoomerangCatch() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoDeadInit(int param_0) {
|
||||
asm int daAlink_c::procCoDeadInit(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoDeadInit__9daAlink_cFi.s"
|
||||
}
|
||||
@@ -665,7 +687,7 @@ asm void daAlink_c::procCoDeadInit(int param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoDead() {
|
||||
asm int daAlink_c::procCoDead() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoDead__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -676,7 +698,7 @@ asm void daAlink_c::procCoDead() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoLookAroundInit() {
|
||||
asm int daAlink_c::procCoLookAroundInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoLookAroundInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -686,7 +708,7 @@ asm void daAlink_c::procCoLookAroundInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoLookAround() {
|
||||
asm int daAlink_c::procCoLookAround() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoLookAround__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -697,7 +719,7 @@ asm void daAlink_c::procCoLookAround() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBossAtnWaitInit() {
|
||||
asm int daAlink_c::procBossAtnWaitInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBossAtnWaitInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -708,7 +730,7 @@ asm void daAlink_c::procBossAtnWaitInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoQuakeWaitInit() {
|
||||
asm int daAlink_c::procCoQuakeWaitInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoQuakeWaitInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -718,7 +740,7 @@ asm void daAlink_c::procCoQuakeWaitInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoCaughtInit() {
|
||||
asm int daAlink_c::procCoCaughtInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoCaughtInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -728,7 +750,7 @@ asm void daAlink_c::procCoCaughtInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procLookUpInit() {
|
||||
asm int daAlink_c::procLookUpInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procLookUpInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -738,7 +760,7 @@ asm void daAlink_c::procLookUpInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procLookUp() {
|
||||
asm int daAlink_c::procLookUp() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procLookUp__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -748,7 +770,7 @@ asm void daAlink_c::procLookUp() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procLookUpToGetItemInit() {
|
||||
asm int daAlink_c::procLookUpToGetItemInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procLookUpToGetItemInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -759,7 +781,7 @@ asm void daAlink_c::procLookUpToGetItemInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procLookUpToGetItem() {
|
||||
asm int daAlink_c::procLookUpToGetItem() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procLookUpToGetItem__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -769,7 +791,7 @@ asm void daAlink_c::procLookUpToGetItem() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHandPatInit() {
|
||||
asm int daAlink_c::procHandPatInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHandPatInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -779,7 +801,7 @@ asm void daAlink_c::procHandPatInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHandPat() {
|
||||
asm int daAlink_c::procHandPat() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHandPat__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -789,7 +811,7 @@ asm void daAlink_c::procHandPat() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoFogDeadInit() {
|
||||
asm int daAlink_c::procCoFogDeadInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoFogDeadInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -799,7 +821,7 @@ asm void daAlink_c::procCoFogDeadInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoFogDead() {
|
||||
asm int daAlink_c::procCoFogDead() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoFogDead__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -810,7 +832,7 @@ asm void daAlink_c::procCoFogDead() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procWolfSmellWaitInit() {
|
||||
asm int daAlink_c::procWolfSmellWaitInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procWolfSmellWaitInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -820,7 +842,7 @@ asm void daAlink_c::procWolfSmellWaitInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoNodInit() {
|
||||
asm int daAlink_c::procCoNodInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoNodInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -830,7 +852,7 @@ asm void daAlink_c::procCoNodInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoNod() {
|
||||
asm int daAlink_c::procCoNod() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoNod__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -840,7 +862,7 @@ asm void daAlink_c::procCoNod() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoEyeAwayInit() {
|
||||
asm int daAlink_c::procCoEyeAwayInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoEyeAwayInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -850,7 +872,7 @@ asm void daAlink_c::procCoEyeAwayInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoGlareInit() {
|
||||
asm int daAlink_c::procCoGlareInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoGlareInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -860,7 +882,7 @@ asm void daAlink_c::procCoGlareInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoGlare() {
|
||||
asm int daAlink_c::procCoGlare() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoGlare__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -871,7 +893,7 @@ asm void daAlink_c::procCoGlare() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procGoatStopReadyInit() {
|
||||
asm int daAlink_c::procGoatStopReadyInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procGoatStopReadyInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -881,7 +903,7 @@ asm void daAlink_c::procGoatStopReadyInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procGoatStopReady() {
|
||||
asm int daAlink_c::procGoatStopReady() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procGoatStopReady__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -892,7 +914,7 @@ asm void daAlink_c::procGoatStopReady() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoGetReadySitInit() {
|
||||
asm int daAlink_c::procCoGetReadySitInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoGetReadySitInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -902,7 +924,7 @@ asm void daAlink_c::procCoGetReadySitInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoGetReadySit() {
|
||||
asm int daAlink_c::procCoGetReadySit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoGetReadySit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -912,7 +934,7 @@ asm void daAlink_c::procCoGetReadySit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoTwGateInit() {
|
||||
asm int daAlink_c::procCoTwGateInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoTwGateInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -932,7 +954,7 @@ int daAlink_c::procCoTwGate() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procWolfSnowEscapeInit() {
|
||||
asm int daAlink_c::procWolfSnowEscapeInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procWolfSnowEscapeInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -942,7 +964,7 @@ asm void daAlink_c::procWolfSnowEscapeInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procWolfSnowEscape() {
|
||||
asm int daAlink_c::procWolfSnowEscape() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procWolfSnowEscape__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -952,7 +974,7 @@ asm void daAlink_c::procWolfSnowEscape() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procZoraMoveInit() {
|
||||
asm int daAlink_c::procZoraMoveInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procZoraMoveInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -962,7 +984,7 @@ asm void daAlink_c::procZoraMoveInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procZoraMove() {
|
||||
asm int daAlink_c::procZoraMove() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procZoraMove__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -972,7 +994,7 @@ asm void daAlink_c::procZoraMove() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procLookAroundTurnInit() {
|
||||
asm int daAlink_c::procLookAroundTurnInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procLookAroundTurnInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -982,7 +1004,7 @@ asm void daAlink_c::procLookAroundTurnInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procLookAroundTurn() {
|
||||
asm int daAlink_c::procLookAroundTurn() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procLookAroundTurn__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -993,7 +1015,7 @@ asm void daAlink_c::procLookAroundTurn() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procTradeItemOutInit() {
|
||||
asm int daAlink_c::procTradeItemOutInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procTradeItemOutInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -1003,7 +1025,7 @@ asm void daAlink_c::procTradeItemOutInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procTradeItemOut() {
|
||||
asm int daAlink_c::procTradeItemOut() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procTradeItemOut__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -1023,7 +1045,7 @@ asm void daAlink_c::checkLetterItem(int param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procNotUseItemInit(int param_0) {
|
||||
asm int daAlink_c::procNotUseItemInit(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procNotUseItemInit__9daAlink_cFi.s"
|
||||
}
|
||||
@@ -1033,7 +1055,7 @@ asm void daAlink_c::procNotUseItemInit(int param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procNotUseItem() {
|
||||
asm int daAlink_c::procNotUseItem() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procNotUseItem__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -1043,7 +1065,7 @@ asm void daAlink_c::procNotUseItem() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procSwordReadyInit() {
|
||||
asm int daAlink_c::procSwordReadyInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procSwordReadyInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -1053,7 +1075,7 @@ asm void daAlink_c::procSwordReadyInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procSwordReady() {
|
||||
asm int daAlink_c::procSwordReady() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procSwordReady__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -1073,7 +1095,7 @@ asm void daAlink_c::setSwordPushAnime() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procSwordPushInit() {
|
||||
asm int daAlink_c::procSwordPushInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procSwordPushInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -1083,7 +1105,7 @@ asm void daAlink_c::procSwordPushInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procSwordPush() {
|
||||
asm int daAlink_c::procSwordPush() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procSwordPush__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -1094,7 +1116,7 @@ asm void daAlink_c::procSwordPush() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procGanonFinishInit() {
|
||||
asm int daAlink_c::procGanonFinishInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procGanonFinishInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -1115,7 +1137,7 @@ bool daAlink_c::procGanonFinish() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCutFastReadyInit() {
|
||||
asm int daAlink_c::procCutFastReadyInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCutFastReadyInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -1139,7 +1161,7 @@ int daAlink_c::procMasterSwordStickInit() {
|
||||
setSingleAnimeBase(ANM_DEMO_MASTER_SWORD_STICK);
|
||||
voiceStart(Z2SE_AL_V_MSTR_SW_STICK);
|
||||
mNormalSpeed = FLOAT_LABEL(lit_6108);
|
||||
current.angle.y = mCollisionRot.y;
|
||||
current.angle.y = shape_angle.y;
|
||||
mCommonCounter = 0;
|
||||
|
||||
return 1;
|
||||
@@ -1181,7 +1203,7 @@ int daAlink_c::procMasterSwordPullInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procMasterSwordPull() {
|
||||
asm int daAlink_c::procMasterSwordPull() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procMasterSwordPull__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -1201,10 +1223,10 @@ int daAlink_c::procDungeonWarpReadyInit() {
|
||||
|
||||
u32 id;
|
||||
if (checkItemSetButton(DUNGEON_EXIT) != 2) {
|
||||
id = fopAcM_create(PROC_OBJ_TKS, 0, ¤t.pos, fopAcM_GetRoomNo(this), &mCollisionRot,
|
||||
id = fopAcM_create(PROC_OBJ_TKS, 0, ¤t.pos, fopAcM_GetRoomNo(this), &shape_angle,
|
||||
NULL, -1);
|
||||
} else {
|
||||
id = fopAcM_create(PROC_NPC_TKC, 2, ¤t.pos, fopAcM_GetRoomNo(this), &mCollisionRot,
|
||||
id = fopAcM_create(PROC_NPC_TKC, 2, ¤t.pos, fopAcM_GetRoomNo(this), &shape_angle,
|
||||
NULL, -1);
|
||||
}
|
||||
|
||||
@@ -1216,7 +1238,7 @@ int daAlink_c::procDungeonWarpReadyInit() {
|
||||
commonProcInit(PROC_DUNGEON_WARP_READY);
|
||||
setSingleAnimeBase(ANM_TRADE_ITEM_PULL_OUT);
|
||||
mNormalSpeed = FLOAT_LABEL(lit_6108);
|
||||
current.angle.y = mCollisionRot.y;
|
||||
current.angle.y = shape_angle.y;
|
||||
field_0x32cc = id;
|
||||
mCommonCounter = 0;
|
||||
keepItemData();
|
||||
@@ -1229,7 +1251,7 @@ int daAlink_c::procDungeonWarpReadyInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procDungeonWarpReady() {
|
||||
asm int daAlink_c::procDungeonWarpReady() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procDungeonWarpReady__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -1253,7 +1275,7 @@ bool daAlink_c::procDungeonWarpInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procDungeonWarpInit() {
|
||||
asm int daAlink_c::procDungeonWarpInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procDungeonWarpInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -1273,7 +1295,7 @@ int daAlink_c::procDungeonWarp() {
|
||||
}
|
||||
|
||||
f32 sin = cM_ssin(mCommonCounter);
|
||||
mCollisionRot.y += (s16)(14336.0f * sin);
|
||||
shape_angle.y += (s16)(14336.0f * sin);
|
||||
field_0x300e = 8.0f * sin + 24.0f * (1.0f - mScale.x);
|
||||
|
||||
if (field_0x3012 != 0) {
|
||||
@@ -1293,7 +1315,7 @@ int daAlink_c::procDungeonWarp() {
|
||||
if (checkItemGet(DUNGEON_EXIT, 1)) {
|
||||
int escape =
|
||||
dStage_stagInfo_GetEscapeWarp(i_dComIfGp_getStage()->getStagInfo());
|
||||
dStage_changeScene(escape, 0.0f, 12, -1, mCollisionRot.y, -1);
|
||||
dStage_changeScene(escape, 0.0f, 12, -1, shape_angle.y, -1);
|
||||
dMeter2Info_warpOutProc();
|
||||
} else {
|
||||
dungeonReturnWarp();
|
||||
@@ -1330,7 +1352,7 @@ asm int daAlink_c::procDungeonWarp() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procDungeonWarpSceneStartInit() {
|
||||
asm int daAlink_c::procDungeonWarpSceneStartInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procDungeonWarpSceneStartInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -1340,7 +1362,7 @@ asm void daAlink_c::procDungeonWarpSceneStartInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procDungeonWarpSceneStart() {
|
||||
asm int daAlink_c::procDungeonWarpSceneStart() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procDungeonWarpSceneStart__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -1429,14 +1451,14 @@ void daAlink_c::skipPortalObjWarp() {
|
||||
|
||||
if (i_checkNoResetFlg3(FLG3_UNK_2000000) &&
|
||||
(dComIfGp_TargetWarpPt_get() == 9 && dComIfGp_TransportWarp_check())) {
|
||||
dStage_changeScene(2, FLOAT_LABEL(lit_6108), 0, fopAcM_GetRoomNo(this), mCollisionRot.y,
|
||||
dStage_changeScene(2, FLOAT_LABEL(lit_6108), 0, fopAcM_GetRoomNo(this), shape_angle.y,
|
||||
-1);
|
||||
} else {
|
||||
u32 data = setParamData(dMeter2Info_getWarpRoomNo(), 0, 0xCA, 0);
|
||||
dComIfGs_setTurnRestart(dMeter2Info_getWarpPos(), dMeter2Info_getWarpPlayerNo(),
|
||||
dMeter2Info_getWarpRoomNo(), data);
|
||||
dComIfGp_setNextStage(dMeter2Info_getWarpStageName(), -4, dMeter2Info_getWarpRoomNo(), -1,
|
||||
FLOAT_LABEL(lit_6108), 0, 1, 0, mCollisionRot.y, 1, 0);
|
||||
FLOAT_LABEL(lit_6108), 0, 1, 0, shape_angle.y, 1, 0);
|
||||
}
|
||||
|
||||
if (mProcID == PROC_WARP) {
|
||||
@@ -1477,7 +1499,7 @@ void daAlink_c::checkWarpStart() {
|
||||
if (dMeter2Info_getWarpStatus() == 1) {
|
||||
stage_stag_info_class* stag_info = dComIfGp_getStageStagInfo();
|
||||
u32 exitID = dStage_stagInfo_GetEscapeWarp(stag_info);
|
||||
dStage_changeScene(exitID, FLOAT_LABEL(lit_6108), 0, -1, mCollisionRot.y, -1);
|
||||
dStage_changeScene(exitID, FLOAT_LABEL(lit_6108), 0, -1, shape_angle.y, -1);
|
||||
} else {
|
||||
dungeonReturnWarp();
|
||||
}
|
||||
@@ -1501,7 +1523,7 @@ asm void daAlink_c::warpModelTexScroll() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoWarpInit(int param_0, int param_1) {
|
||||
asm int daAlink_c::procCoWarpInit(int param_0, int param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoWarpInit__9daAlink_cFii.s"
|
||||
}
|
||||
@@ -1511,7 +1533,7 @@ asm void daAlink_c::procCoWarpInit(int param_0, int param_1) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoWarp() {
|
||||
asm int daAlink_c::procCoWarp() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoWarp__9daAlink_cFv.s"
|
||||
}
|
||||
|
||||
@@ -12,8 +12,8 @@ void daAlink_c::setEmitter(u32* param_0, u16 param_1, cXyz const* param_2, csXyz
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setEmitter(u32* param_0, u16 param_1, cXyz const* param_2,
|
||||
csXyz const* param_3) {
|
||||
asm JPABaseEmitter* daAlink_c::setEmitter(u32* param_0, u16 param_1, cXyz const* param_2,
|
||||
csXyz const* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setEmitter__9daAlink_cFPUlUsPC4cXyzPC5csXyz.s"
|
||||
}
|
||||
@@ -22,35 +22,34 @@ asm void daAlink_c::setEmitter(u32* param_0, u16 param_1, cXyz const* param_2,
|
||||
|
||||
/* 80120634-801206C4 11AF74 0090+00 4/4 0/0 0/0 .text
|
||||
* setEmitterPolyColor__9daAlink_cFPUlUsR13cBgS_PolyInfoPC4cXyzPC5csXyz */
|
||||
void daAlink_c::setEmitterPolyColor(u32* param_0, u16 param_1, cBgS_PolyInfo& param_2,
|
||||
cXyz const* param_3, csXyz const* param_4) {
|
||||
JPABaseEmitter* daAlink_c::setEmitterPolyColor(u32* param_0, u16 param_1, cBgS_PolyInfo& param_2,
|
||||
cXyz const* param_3, csXyz const* param_4) {
|
||||
*param_0 = dComIfGp_particle_setPolyColor(*param_0, param_1, param_2, param_3, &mTevStr,
|
||||
param_4, NULL, 0, NULL, -1, NULL);
|
||||
dComIfGp_particle_levelEmitterOnEventMove(*param_0);
|
||||
dComIfGp_particle_getEmitter(*param_0);
|
||||
|
||||
return dComIfGp_particle_getEmitter(*param_0);
|
||||
}
|
||||
|
||||
/* 801206C4-80120778 11B004 00B4+00 2/2 0/0 0/0 .text
|
||||
* setEmitterColor__9daAlink_cFPUlUsPC4cXyzPC5csXyz */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setEmitterColor(u32* param_0, u16 param_1, cXyz const* param_2,
|
||||
csXyz const* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setEmitterColor__9daAlink_cFPUlUsPC4cXyzPC5csXyz.s"
|
||||
JPABaseEmitter* daAlink_c::setEmitterColor(u32* param_0, u16 param_1, cXyz const* param_2,
|
||||
csXyz const* param_3) {
|
||||
*param_0 = dComIfGp_particle_setColor(*param_0, param_1, param_2, &mTevStr, NULL, NULL,
|
||||
FLOAT_LABEL(lit_6108), -1, param_3, NULL, NULL, -1, NULL);
|
||||
dComIfGp_particle_levelEmitterOnEventMove(*param_0);
|
||||
|
||||
return dComIfGp_particle_getEmitter(*param_0);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80120778-801207BC 11B0B8 0044+00 9/9 0/0 0/0 .text stopDrawParticle__9daAlink_cFUl */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::stopDrawParticle(u32 param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/stopDrawParticle__9daAlink_cFUl.s"
|
||||
void daAlink_c::stopDrawParticle(u32 param_0) {
|
||||
JPABaseEmitter* emitter = dComIfGp_particle_getEmitter(param_0);
|
||||
|
||||
if (emitter != NULL) {
|
||||
emitter->stopDrawParticle();
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 801207BC-80120880 11B0FC 00C4+00 1/0 0/0 0/0 .text setEffectFrontRollParam__9daAlink_cFv */
|
||||
#pragma push
|
||||
@@ -93,9 +92,7 @@ asm void daAlink_c::setEffectSmallLandParam() {
|
||||
#pragma pop
|
||||
|
||||
/* 80121000-80121004 11B940 0004+00 1/0 0/0 0/0 .text setEffectLandParam__9daAlink_cFv */
|
||||
void daAlink_c::setEffectLandParam() {
|
||||
/* empty function */
|
||||
}
|
||||
void daAlink_c::setEffectLandParam() {}
|
||||
|
||||
/* 80121004-801211C0 11B944 01BC+00 1/0 0/0 0/0 .text setEffectSumouParam__9daAlink_cFv
|
||||
*/
|
||||
@@ -339,14 +336,14 @@ asm void daAlink_c::setWolfBarrierHitEffect(dBgS_LinChk& param_0) {
|
||||
|
||||
/* 80124144-801241E0 11EA84 009C+00 9/9 0/0 0/0 .text setCutWaterDropEffect__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setCutWaterDropEffect() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setCutWaterDropEffect__9daAlink_cFv.s"
|
||||
void daAlink_c::setCutWaterDropEffect() {
|
||||
if (field_0x32c0 > 0) {
|
||||
cXyz sp18;
|
||||
mDoMtx_multVecZero(mpLinkModel->i_getAnmMtx(1), &sp18);
|
||||
dComIfGp_particle_setColor(0x2A4, &sp18, &mTevStr, NULL, NULL, FLOAT_LABEL(lit_6108), -1,
|
||||
&shape_angle, NULL, NULL, -1, NULL);
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 801241E0-801244E4 11EB20 0304+00 1/1 0/0 0/0 .text setWaterDropEffect__9daAlink_cFv */
|
||||
#pragma push
|
||||
@@ -511,45 +508,44 @@ asm void daAlink_c::setFreezeEffect() {
|
||||
#pragma pop
|
||||
|
||||
/* 80125524-801255BC 11FE64 0098+00 1/1 0/0 0/0 .text setWoodShieldBurnEffect__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setWoodShieldBurnEffect() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setWoodShieldBurnEffect__9daAlink_cFv.s"
|
||||
void daAlink_c::setWoodShieldBurnEffect() {
|
||||
if (field_0x2fcb != 0) {
|
||||
for (int i = 0; i < 2; i++) {
|
||||
JPABaseEmitter* emitter =
|
||||
setEmitter(&field_0x3260[i], effName_42309[i], ¤t.pos, NULL);
|
||||
|
||||
if (emitter != NULL) {
|
||||
emitter->setGlobalRTMatrix(mShieldModel->getBaseTRMtx());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 801255BC-80125628 11FEFC 006C+00 3/3 0/0 0/0 .text clearWoodShieldBurnEffect__9daAlink_cFv */
|
||||
#ifdef NONMATCHING
|
||||
void daAlink_c::clearWoodShieldBurnEffect() {
|
||||
if (field_0x2fcb != 0) {
|
||||
for (int i = 0; i < 2; i++) {
|
||||
stopDrawParticle(field_0x3260[i].field_0x0);
|
||||
stopDrawParticle(field_0x3260[i]);
|
||||
}
|
||||
|
||||
field_0x2fcb = 0;
|
||||
}
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::clearWoodShieldBurnEffect() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/clearWoodShieldBurnEffect__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 80125628-801256EC 11FF68 00C4+00 1/1 0/0 0/0 .text setWoodShieldBurnOutEffect__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setWoodShieldBurnOutEffect() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setWoodShieldBurnOutEffect__9daAlink_cFv.s"
|
||||
void daAlink_c::setWoodShieldBurnOutEffect() {
|
||||
for (int i = 0; i < 2; i++) {
|
||||
JPABaseEmitter* emitter = dComIfGp_particle_setColor(
|
||||
effName_42340[i], ¤t.pos, &mTevStr, NULL, NULL, FLOAT_LABEL(lit_6108), -1);
|
||||
|
||||
if (emitter != NULL) {
|
||||
emitter->setGlobalRTMatrix(mShieldModel->getBaseTRMtx());
|
||||
}
|
||||
}
|
||||
|
||||
field_0x2fcb = 1;
|
||||
clearWoodShieldBurnEffect();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 801256EC-80125778 12002C 008C+00 2/2 0/0 0/0 .text
|
||||
* initBlur__14daAlink_blur_cFfiPC4cXyzPC4cXyzPC4cXyz */
|
||||
@@ -738,6 +734,7 @@ bool daAlink_sight_c::create() {
|
||||
if (!mLockCursor.create()) {
|
||||
return false;
|
||||
}
|
||||
|
||||
ResTIMG* data = (ResTIMG*)dComIfG_getObjectRes(l_arcName, daAlink_c::getSightBti());
|
||||
setSightImage(data);
|
||||
return true;
|
||||
|
||||
+94
-174
@@ -37,8 +37,6 @@ asm void daAlink_c::checkGrabLineCheck() {
|
||||
|
||||
/* 800E3994-800E3A14 0DE2D4 0080+00 1/0 0/0 0/0 .text
|
||||
* setGrabCollisionOffset__9daAlink_cFffP13cBgS_PolyInfo */
|
||||
// matches with literals
|
||||
#ifdef NONMATCHING
|
||||
void daAlink_c::setGrabCollisionOffset(f32 param_0, f32 param_1, cBgS_PolyInfo* param_2) {
|
||||
if (param_2 != NULL) {
|
||||
mPolyInfo4.SetPolyInfo(*param_2);
|
||||
@@ -46,36 +44,28 @@ void daAlink_c::setGrabCollisionOffset(f32 param_0, f32 param_1, cBgS_PolyInfo*
|
||||
mPolyInfo4.ClearPi();
|
||||
}
|
||||
|
||||
field_0x342c = param_0 * 0.8f;
|
||||
field_0x3430 = param_1 * 0.8f;
|
||||
f32 tmp_08 = lit_14064;
|
||||
field_0x342c = tmp_08 * param_0;
|
||||
field_0x3430 = tmp_08 * param_1;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setGrabCollisionOffset(f32 param_0, f32 param_1, cBgS_PolyInfo* param_2) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setGrabCollisionOffset__9daAlink_cFffP13cBgS_PolyInfo.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 800E3A14-800E3A9C 0DE354 0088+00 1/0 0/0 0/0 .text exchangeGrabActor__9daAlink_cFP10fopAc_ac_c
|
||||
*/
|
||||
bool daAlink_c::exchangeGrabActor(fopAc_ac_c* p_actor) {
|
||||
fopAc_ac_c* actor = mGrabItemAcKeep.getActor();
|
||||
|
||||
if (actor == NULL) {
|
||||
return false;
|
||||
}
|
||||
|
||||
fopAcM_cancelCarryNow(actor);
|
||||
actor->mCollisionRot.z = 0;
|
||||
actor->mCollisionRot.x = 0;
|
||||
actor->shape_angle.z = 0;
|
||||
actor->shape_angle.x = 0;
|
||||
|
||||
if (checkGrabCarryActor()) {
|
||||
actor->current.angle.z = 0;
|
||||
actor->current.angle.x = 0;
|
||||
}
|
||||
|
||||
setGrabItemActor(p_actor);
|
||||
return true;
|
||||
}
|
||||
@@ -93,60 +83,41 @@ bool daAlink_c::setForceGrab(fopAc_ac_c* p_actor, int param_1, int param_2) {
|
||||
setGrabUpperAnime(daAlinkHIO_basic_c0::m.mAnmBlendFactor);
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
/* 800E3BCC-800E3C1C 0DE50C 0050+00 2/2 0/0 0/0 .text getGrabThrowRate__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::getGrabThrowRate() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/getGrabThrowRate__9daAlink_cFv.s"
|
||||
f32 daAlink_c::getGrabThrowRate() {
|
||||
if (checkHeavyStateOn(1, 1)) {
|
||||
return lit_6023 * mHeavySpeedMultiplier;
|
||||
}
|
||||
|
||||
return lit_6023;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E3C1C-800E3C6C 0DE55C 0050+00 3/3 0/0 0/0 .text checkGrabThrowAnime__9daAlink_cCFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkGrabThrowAnime() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkGrabThrowAnime__9daAlink_cCFv.s"
|
||||
BOOL daAlink_c::checkGrabThrowAnime() const {
|
||||
return checkGrabUpThrowAnime() || checkGrabSideThrowAnime() || checkGrabHeavyThrowAnime();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E3C6C-800E3C9C 0DE5AC 0030+00 25/25 0/0 0/0 .text checkGrabAnime__9daAlink_cCFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkGrabAnime() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkGrabAnime__9daAlink_cCFv.s"
|
||||
BOOL daAlink_c::checkGrabAnime() const {
|
||||
return checkGrabAnimeUp() || checkGrabAnimeSide() || checkGrabAnimeCarry();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E3C9C-800E3CF4 0DE5DC 0058+00 5/5 0/0 0/0 .text checkGrabAnimeAndThrow__9daAlink_cCFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkGrabAnimeAndThrow() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkGrabAnimeAndThrow__9daAlink_cCFv.s"
|
||||
BOOL daAlink_c::checkGrabAnimeAndThrow() const {
|
||||
return checkGrabAnime() || checkGrabThrowAnime();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E3CF4-800E3D1C 0DE634 0028+00 10/10 0/0 0/0 .text checkGrabCarryActor__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm BOOL daAlink_c::checkGrabCarryActor() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkGrabCarryActor__9daAlink_cFv.s"
|
||||
BOOL daAlink_c::checkGrabCarryActor() {
|
||||
return mGrabItemAcKeep.getActor() != NULL &&
|
||||
fopAcM_CheckCarryType(mGrabItemAcKeep.getActor(), fopAcM_CARRY_TYPE_8);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E3D1C-800E3D6C 0DE65C 0050+00 1/1 0/0 0/0 .text checkGrabSlowMoveActor__9daAlink_cFv */
|
||||
#pragma push
|
||||
@@ -160,24 +131,16 @@ asm void daAlink_c::checkGrabSlowMoveActor() {
|
||||
|
||||
/* 800E3D6C-800E3D94 0DE6AC 0028+00 1/1 0/0 0/0 .text checkGrabHeavyActor__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkGrabHeavyActor() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkGrabHeavyActor__9daAlink_cFv.s"
|
||||
BOOL daAlink_c::checkGrabHeavyActor() {
|
||||
return mGrabItemAcKeep.getActor() != NULL &&
|
||||
fopAcM_CheckCarryType(mGrabItemAcKeep.getActor(), fopAcM_CARRY_HEAVY);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E3D94-800E3DBC 0DE6D4 0028+00 2/2 0/0 0/0 .text checkGrabSideActor__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkGrabSideActor() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkGrabSideActor__9daAlink_cFv.s"
|
||||
BOOL daAlink_c::checkGrabSideActor() {
|
||||
return mGrabItemAcKeep.getActor() != NULL &&
|
||||
fopAcM_CheckCarryType(mGrabItemAcKeep.getActor(), fopAcM_CARRY_SIDE);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E3DBC-800E3F20 0DE6FC 0164+00 5/5 0/0 0/0 .text setGrabUpperAnime__9daAlink_cFf */
|
||||
#pragma push
|
||||
@@ -190,14 +153,15 @@ asm void daAlink_c::setGrabUpperAnime(f32 param_0) {
|
||||
#pragma pop
|
||||
|
||||
/* 800E3F20-800E3F50 0DE860 0030+00 8/8 0/0 0/0 .text checkGrabRooster__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm BOOL daAlink_c::checkGrabRooster() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkGrabRooster__9daAlink_cFv.s"
|
||||
BOOL daAlink_c::checkGrabRooster() {
|
||||
if (mGrabItemAcKeep.getActor() != NULL &&
|
||||
(fopAcM_GetName(mGrabItemAcKeep.getActor()) == PROC_NI ||
|
||||
fopAcM_GetName(mGrabItemAcKeep.getActor()) == PROC_NPC_TKJ2)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80425628-80425634 052348 000C+00 0/1 0/0 0/0 .bss @4421 */
|
||||
@@ -299,14 +263,9 @@ asm void daAlink_c::setCarryArmAngle(f32 param_0, f32 param_1) {
|
||||
#pragma pop
|
||||
|
||||
/* 800E5150-800E5170 0DFA90 0020+00 1/1 0/0 0/0 .text checkGrabNotThrow__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkGrabNotThrow() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkGrabNotThrow__9daAlink_cFv.s"
|
||||
BOOL daAlink_c::checkGrabNotThrow() {
|
||||
return checkGrabCarryActor();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E5170-800E53AC 0DFAB0 023C+00 1/1 0/0 0/0 .text checkNextActionGrab__9daAlink_cFv
|
||||
*/
|
||||
@@ -320,14 +279,13 @@ asm void daAlink_c::checkNextActionGrab() {
|
||||
#pragma pop
|
||||
|
||||
/* 800E53AC-800E53F8 0DFCEC 004C+00 2/2 0/0 0/0 .text initGrabNextMode__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::initGrabNextMode() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/initGrabNextMode__9daAlink_cFv.s"
|
||||
void daAlink_c::initGrabNextMode() {
|
||||
if (!checkGrabAnime()) {
|
||||
setGrabUpperAnime(lit_6041);
|
||||
}
|
||||
|
||||
checkNextAction(0);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E53F8-800E57AC 0DFD38 03B4+00 3/3 0/0 0/0 .text setGrabItemThrow__9daAlink_cFv */
|
||||
#pragma push
|
||||
@@ -361,14 +319,10 @@ asm void daAlink_c::putObjLineCheck(dBgS_LinChk& param_0, cXyz* param_1, fopAc_a
|
||||
#pragma pop
|
||||
|
||||
/* 800E5B6C-800E5BB4 0E04AC 0048+00 3/3 0/0 0/0 .text grabLineCheck__9daAlink_cFP4cXyzP4cXyz */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::grabLineCheck(cXyz* param_0, cXyz* param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/grabLineCheck__9daAlink_cFP4cXyzP4cXyz.s"
|
||||
void daAlink_c::grabLineCheck(cXyz* i_start, cXyz* i_end) {
|
||||
mObjLinChk.Set(i_start, i_end, mGrabItemAcKeep.getActor());
|
||||
dComIfG_Bgsp().LineCross(&mObjLinChk);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E5BB4-800E5CBC 0E04F4 0108+00 6/6 0/0 0/0 .text setGrabItemActor__9daAlink_cFP10fopAc_ac_c
|
||||
*/
|
||||
@@ -385,7 +339,7 @@ asm void daAlink_c::setGrabItemActor(fopAc_ac_c* param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procGrabReadyInit() {
|
||||
asm int daAlink_c::procGrabReadyInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procGrabReadyInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -395,7 +349,7 @@ asm void daAlink_c::procGrabReadyInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procGrabReady() {
|
||||
asm int daAlink_c::procGrabReady() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procGrabReady__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -405,7 +359,7 @@ asm void daAlink_c::procGrabReady() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procGrabUpInit() {
|
||||
asm int daAlink_c::procGrabUpInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procGrabUpInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -415,7 +369,7 @@ asm void daAlink_c::procGrabUpInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procGrabUp() {
|
||||
asm int daAlink_c::procGrabUp() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procGrabUp__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -425,7 +379,7 @@ asm void daAlink_c::procGrabUp() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procGrabMiss() {
|
||||
asm int daAlink_c::procGrabMiss() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procGrabMiss__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -435,7 +389,7 @@ asm void daAlink_c::procGrabMiss() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procGrabThrowInit(int param_0) {
|
||||
asm int daAlink_c::procGrabThrowInit(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procGrabThrowInit__9daAlink_cFi.s"
|
||||
}
|
||||
@@ -445,7 +399,7 @@ asm void daAlink_c::procGrabThrowInit(int param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procGrabThrow() {
|
||||
asm int daAlink_c::procGrabThrow() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procGrabThrow__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -455,7 +409,7 @@ asm void daAlink_c::procGrabThrow() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procGrabPutInit() {
|
||||
asm int daAlink_c::procGrabPutInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procGrabPutInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -465,7 +419,7 @@ asm void daAlink_c::procGrabPutInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procGrabPut() {
|
||||
asm int daAlink_c::procGrabPut() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procGrabPut__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -475,7 +429,7 @@ asm void daAlink_c::procGrabPut() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procGrabWaitInit() {
|
||||
asm int daAlink_c::procGrabWaitInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procGrabWaitInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -485,7 +439,7 @@ asm void daAlink_c::procGrabWaitInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procGrabWait() {
|
||||
asm int daAlink_c::procGrabWait() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procGrabWait__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -496,7 +450,7 @@ asm void daAlink_c::procGrabWait() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procGrabReboundInit(int param_0) {
|
||||
asm int daAlink_c::procGrabReboundInit(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procGrabReboundInit__9daAlink_cFi.s"
|
||||
}
|
||||
@@ -506,7 +460,7 @@ asm void daAlink_c::procGrabReboundInit(int param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procGrabRebound() {
|
||||
asm int daAlink_c::procGrabRebound() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procGrabRebound__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -516,7 +470,7 @@ asm void daAlink_c::procGrabRebound() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procGrabStandInit() {
|
||||
asm int daAlink_c::procGrabStandInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procGrabStandInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -526,7 +480,7 @@ asm void daAlink_c::procGrabStandInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procGrabStand() {
|
||||
asm int daAlink_c::procGrabStand() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procGrabStand__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -550,7 +504,7 @@ bool daAlink_c::checkInsectActorName(fopAc_ac_c* insectActor) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procInsectCatchInit() {
|
||||
asm int daAlink_c::procInsectCatchInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procInsectCatchInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -577,7 +531,7 @@ bool daAlink_c::procInsectCatch() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procPickUpInit() {
|
||||
asm int daAlink_c::procPickUpInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procPickUpInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -587,7 +541,7 @@ asm void daAlink_c::procPickUpInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procPickUp() {
|
||||
asm int daAlink_c::procPickUp() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procPickUp__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -597,7 +551,7 @@ asm void daAlink_c::procPickUp() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procPickPutInit(int param_0) {
|
||||
asm int daAlink_c::procPickPutInit(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procPickPutInit__9daAlink_cFi.s"
|
||||
}
|
||||
@@ -607,7 +561,7 @@ asm void daAlink_c::procPickPutInit(int param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procPickPut() {
|
||||
asm int daAlink_c::procPickPut() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procPickPut__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -625,28 +579,17 @@ asm void daAlink_c::checkSetChainPullAnime(s16 param_0) {
|
||||
|
||||
/* 800E794C-800E7994 0E228C 0048+00 3/3 0/0 0/0 .text getChainStickAngleY__9daAlink_cCFs
|
||||
*/
|
||||
// one instruction off
|
||||
#ifdef NONMATCHING
|
||||
s16 daAlink_c::getChainStickAngleY(s16 param_0) const {
|
||||
s16 tmp = field_0x2fe2 - param_0;
|
||||
s16 angle = field_0x2fe2 - param_0;
|
||||
|
||||
if (tmp >= 14336 && tmp < 32640) {
|
||||
return param_0 + 32640;
|
||||
} else if (tmp <= -14336 && tmp <= -32640) {
|
||||
return field_0x2fe2;
|
||||
if (angle >= 0x3800 && angle < 0x7F80) {
|
||||
return param_0 + 0x7F80;
|
||||
} else if (angle <= -0x3800 && angle > -0x7F80) {
|
||||
return param_0 - 0x7F80;
|
||||
}
|
||||
return param_0 - 32640;
|
||||
|
||||
return field_0x2fe2;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm s16 daAlink_c::getChainStickAngleY(s16 param_0) const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/getChainStickAngleY__9daAlink_cCFs.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 800E7994-800E79F8 0E22D4 0064+00 1/1 0/0 0/0 .text checkChainEmphasys__9daAlink_cFv */
|
||||
#pragma push
|
||||
@@ -662,7 +605,7 @@ asm u8 daAlink_c::checkChainEmphasys() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::searchFmChainPos() {
|
||||
asm u8 daAlink_c::searchFmChainPos() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/searchFmChainPos__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -698,7 +641,7 @@ bool daAlink_c::checkChainBlockPushPull() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procFmChainUpInit() {
|
||||
asm int daAlink_c::procFmChainUpInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procFmChainUpInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -708,7 +651,7 @@ asm void daAlink_c::procFmChainUpInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procFmChainUp() {
|
||||
asm int daAlink_c::procFmChainUp() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procFmChainUp__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -718,7 +661,7 @@ asm void daAlink_c::procFmChainUp() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procFmChainStrongPullInit() {
|
||||
asm int daAlink_c::procFmChainStrongPullInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procFmChainStrongPullInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -729,7 +672,7 @@ asm void daAlink_c::procFmChainStrongPullInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procFmChainStrongPull() {
|
||||
asm int daAlink_c::procFmChainStrongPull() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procFmChainStrongPull__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -747,14 +690,9 @@ asm void daAlink_c::setWallGrabStatus(u8 param_0, u8 param_1) {
|
||||
#pragma pop
|
||||
|
||||
/* 800E7EE4-800E7EF4 0E2824 0010+00 2/2 0/0 0/0 .text getWallGrabStatus__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm int daAlink_c::getWallGrabStatus() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/getWallGrabStatus__9daAlink_cFv.s"
|
||||
int daAlink_c::getWallGrabStatus() {
|
||||
return i_dComIfGp_getRStatus();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E7EF4-800E7F18 0E2834 0024+00 1/1 0/0 0/0 .text wallGrabTrigger__9daAlink_cFv */
|
||||
void daAlink_c::wallGrabTrigger() {
|
||||
@@ -802,43 +740,25 @@ asm void daAlink_c::checkPullBehindWall() {
|
||||
void daAlink_c::offGoatStopGame() {
|
||||
if (mSpecialMode != SMODE_GOAT_STOP) {
|
||||
return;
|
||||
} else {
|
||||
mSpecialMode = 0;
|
||||
}
|
||||
|
||||
mSpecialMode = 0;
|
||||
}
|
||||
|
||||
/* 800E82B0-800E8314 0E2BF0 0064+00 4/4 0/0 0/0 .text
|
||||
* checkGoatCatchActor__9daAlink_cFP10fopAc_ac_c */
|
||||
#ifdef NONMATCHING
|
||||
BOOL daAlink_c::checkGoatCatchActor(fopAc_ac_c* param_0) {
|
||||
s16 name = fopAcM_GetName(param_0);
|
||||
bool check = false;
|
||||
|
||||
if (name == 0x1b1 || name == 0x21) {
|
||||
if (checkSpecialNpc(param_0) || name == 0x106) {
|
||||
check = true;
|
||||
}
|
||||
}
|
||||
|
||||
return check;
|
||||
return name == PROC_E_GOB || (name == PROC_OBJ_GRA && checkSpecialNpc(param_0)) || name == PROC_COW;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm BOOL daAlink_c::checkGoatCatchActor(fopAc_ac_c* param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkGoatCatchActor__9daAlink_cFP10fopAc_ac_c.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 800E8314-800E8334 0E2C54 0020+00 2/2 0/0 0/0 .text getGoatCatchDistance2__9daAlink_cFv
|
||||
*/
|
||||
float daAlink_c::getGoatCatchDistance2() {
|
||||
if (field_0x27f4->mBase.mProcName == 0x216) {
|
||||
f32 daAlink_c::getGoatCatchDistance2() {
|
||||
if (fopAcM_GetName(field_0x27f4) == PROC_B_MGN) {
|
||||
return lit_16066;
|
||||
}
|
||||
|
||||
return lit_16067;
|
||||
}
|
||||
|
||||
@@ -862,7 +782,7 @@ asm void daAlink_c::getPushPullAnimeSpeed() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoPushPullWaitInit(int param_0) {
|
||||
asm int daAlink_c::procCoPushPullWaitInit(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoPushPullWaitInit__9daAlink_cFi.s"
|
||||
}
|
||||
@@ -872,7 +792,7 @@ asm void daAlink_c::procCoPushPullWaitInit(int param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoPushPullWait() {
|
||||
asm int daAlink_c::procCoPushPullWait() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoPushPullWait__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -883,7 +803,7 @@ asm void daAlink_c::procCoPushPullWait() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoPushMoveInit(int param_0, int param_1) {
|
||||
asm int daAlink_c::procCoPushMoveInit(int param_0, int param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoPushMoveInit__9daAlink_cFii.s"
|
||||
}
|
||||
@@ -893,7 +813,7 @@ asm void daAlink_c::procCoPushMoveInit(int param_0, int param_1) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoPushMove() {
|
||||
asm int daAlink_c::procCoPushMove() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoPushMove__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -903,7 +823,7 @@ asm void daAlink_c::procCoPushMove() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procPullMoveInit(int param_0) {
|
||||
asm int daAlink_c::procPullMoveInit(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procPullMoveInit__9daAlink_cFi.s"
|
||||
}
|
||||
@@ -913,7 +833,7 @@ asm void daAlink_c::procPullMoveInit(int param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procPullMove() {
|
||||
asm int daAlink_c::procPullMove() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procPullMove__9daAlink_cFv.s"
|
||||
}
|
||||
|
||||
+41
-92
@@ -1,13 +1,8 @@
|
||||
/* 800DC548-800DC5A4 0D6E88 005C+00 13/13 0/0 0/0 .text checkEnemyGroup__9daAlink_cFP10fopAc_ac_c
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm BOOL daAlink_c::checkEnemyGroup(fopAc_ac_c* param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkEnemyGroup__9daAlink_cFP10fopAc_ac_c.s"
|
||||
BOOL daAlink_c::checkEnemyGroup(fopAc_ac_c* i_actor) {
|
||||
return i_actor != NULL && (fopAcM_GetGroup(i_actor) == 2 || fopAcM_GetName(i_actor) == PROC_E_ZH || checkSpecialNpc(i_actor));
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DC5A4-800DC5DC 0D6EE4 0038+00 4/4 0/0 0/0 .text checkSpecialNpc__9daAlink_cFP10fopAc_ac_c */
|
||||
#pragma push
|
||||
@@ -63,14 +58,9 @@ asm void daAlink_c::setArrowShieldActor(fopAc_ac_c* param_0, int param_1) {
|
||||
|
||||
/* 800DCA2C-800DCA80 0D736C 0054+00 1/1 0/0 2/2 .text
|
||||
* checkWoodShieldEquipNotIronBall__9daAlink_cCFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkWoodShieldEquipNotIronBall() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkWoodShieldEquipNotIronBall__9daAlink_cCFv.s"
|
||||
BOOL daAlink_c::checkWoodShieldEquipNotIronBall() const {
|
||||
return checkWoodShieldEquip() && !checkIronBallEquip();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DCA80-800DCD74 0D73C0 02F4+00 0/0 0/0 1/1 .text
|
||||
* getArrowShieldOffset__9daAlink_cCFPC4cXyzPC5csXyzP4cXyzP4cXyz */
|
||||
@@ -86,98 +76,57 @@ asm void daAlink_c::getArrowShieldOffset(cXyz const* param_0, csXyz const* param
|
||||
|
||||
/* 800DCD74-800DCDF0 0D76B4 007C+00 0/0 0/0 2/2 .text
|
||||
* setArrowShieldPos__9daAlink_cCFP4cXyzP5csXyzPC4cXyzPC4cXyz */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setArrowShieldPos(cXyz* param_0, csXyz* param_1, cXyz const* param_2,
|
||||
cXyz const* param_3) const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setArrowShieldPos__9daAlink_cCFP4cXyzP5csXyzPC4cXyzPC4cXyz.s"
|
||||
void daAlink_c::setArrowShieldPos(cXyz* param_0, csXyz* param_1, cXyz const* param_2,
|
||||
cXyz const* param_3) const {
|
||||
cXyz sp1C;
|
||||
|
||||
mDoMtx_multVecSR(getShieldMtx(), param_3, &sp1C);
|
||||
param_1->x = sp1C.atan2sY_XZ();
|
||||
param_1->y = sp1C.atan2sX_Z();
|
||||
|
||||
mDoMtx_multVec(getShieldMtx(), param_2, param_0);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DCDF0-800DCE6C 0D7730 007C+00 17/17 0/0 0/0 .text checkUpperGuardAnime__9daAlink_cCFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm BOOL daAlink_c::checkUpperGuardAnime() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkUpperGuardAnime__9daAlink_cCFv.s"
|
||||
BOOL daAlink_c::checkUpperGuardAnime() const {
|
||||
return i_checkNoResetFlg2(FLG2_UNK_8000000) && !checkEventRun() && !i_checkNoResetFlg0(FLG0_UNK_2) &&
|
||||
mProcID != PROC_GUARD_BREAK && mProcID != PROC_CUT_REVERSE && mProcID != PROC_GUARD_ATTACK;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DCE6C-800DCF04 0D77AC 0098+00 1/0 0/0 0/0 .text checkPlayerGuard__9daAlink_cCFv */
|
||||
#ifdef NONMATCHING
|
||||
BOOL daAlink_c::checkPlayerGuard() const {
|
||||
bool ret = true;
|
||||
bool bvar2 = true;
|
||||
if (!i_checkSmallUpperGuardAnime()) {
|
||||
bool bvar1 = false;
|
||||
if (i_checkShieldGet() && checkHorseLieAnime()) {
|
||||
bvar1 = true;
|
||||
}
|
||||
if (!bvar1) {
|
||||
bvar2 = false;
|
||||
}
|
||||
}
|
||||
|
||||
if (!bvar2 && !checkUpperGuardAnime()) {
|
||||
ret = false;
|
||||
}
|
||||
|
||||
return ret;
|
||||
return (i_checkSmallUpperGuardAnime() || (i_checkShieldGet() && checkHorseLieAnime())) ||
|
||||
checkUpperGuardAnime();
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm BOOL daAlink_c::checkPlayerGuard() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkPlayerGuard__9daAlink_cCFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 800DCF04-800DCF64 0D7844 0060+00 5/5 0/0 0/0 .text checkPlayerGuardAndAttack__9daAlink_cCFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkPlayerGuardAndAttack() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkPlayerGuardAndAttack__9daAlink_cCFv.s"
|
||||
BOOL daAlink_c::checkPlayerGuardAndAttack() const {
|
||||
return checkPlayerGuard() || mProcID == PROC_GUARD_ATTACK;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DCF64-800DD008 0D78A4 00A4+00 2/2 0/0 0/0 .text checkGuardAccept__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkGuardAccept() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkGuardAccept__9daAlink_cFv.s"
|
||||
BOOL daAlink_c::checkGuardAccept() {
|
||||
return i_checkModeFlg(0x80) && i_checkShieldGet() && !i_checkFmChainGrabAnime() && !checkNotBattleStage();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DD008-800DD018 0D7948 0010+00 11/11 0/0 0/0 .text setUpperGuardAnime__9daAlink_cFf
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setUpperGuardAnime(f32 param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setUpperGuardAnime__9daAlink_cFf.s"
|
||||
void daAlink_c::setUpperGuardAnime(f32) {
|
||||
i_onNoResetFlg2(FLG2_UNK_8000000);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DD018-800DD114 0D7958 00FC+00 1/1 0/0 0/0 .text setShieldGuard__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setShieldGuard() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setShieldGuard__9daAlink_cFv.s"
|
||||
void daAlink_c::setShieldGuard() {
|
||||
if ((mProcID == PROC_GUARD_SLIP && mEquipItem != IRONBALL) || i_checkSmallUpperGuardAnime() ||
|
||||
(checkGuardAccept() && !checkGrabAnime() && !checkUpperReadyThrowAnime() &&
|
||||
!checkDkCaught2Anime() && !checkKandelaarSwingAnime() && !checkCutDashAnime() &&
|
||||
!checkCutDashChargeAnime() && (!checkEquipAnime() || checkUpperGuardAnime()) &&
|
||||
!i_checkRideOn() && checkGuardActionChange())) {
|
||||
i_onNoResetFlg2(FLG2_UNK_8000000);
|
||||
} else {
|
||||
i_offNoResetFlg2(FLG2_UNK_8000000);
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800DD114-800DD1D4 0D7A54 00C0+00 1/1 0/0 0/0 .text setGuardSe__9daAlink_cFP12dCcD_GObjInf */
|
||||
#pragma push
|
||||
@@ -204,7 +153,7 @@ asm void daAlink_c::setSmallGuard(dCcD_GObjInf* param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procGuardSlipInit(int param_0, dCcD_GObjInf* param_1) {
|
||||
asm int daAlink_c::procGuardSlipInit(int param_0, dCcD_GObjInf* param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procGuardSlipInit__9daAlink_cFiP12dCcD_GObjInf.s"
|
||||
}
|
||||
@@ -214,7 +163,7 @@ asm void daAlink_c::procGuardSlipInit(int param_0, dCcD_GObjInf* param_1) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procGuardSlip() {
|
||||
asm int daAlink_c::procGuardSlip() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procGuardSlip__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -225,7 +174,7 @@ asm void daAlink_c::procGuardSlip() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procGuardAttackInit() {
|
||||
asm int daAlink_c::procGuardAttackInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procGuardAttackInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -235,7 +184,7 @@ asm void daAlink_c::procGuardAttackInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procGuardAttack() {
|
||||
asm int daAlink_c::procGuardAttack() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procGuardAttack__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -245,7 +194,7 @@ asm void daAlink_c::procGuardAttack() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procGuardBreakInit() {
|
||||
asm int daAlink_c::procGuardBreakInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procGuardBreakInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -255,7 +204,7 @@ asm void daAlink_c::procGuardBreakInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procGuardBreak() {
|
||||
asm int daAlink_c::procGuardBreak() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procGuardBreak__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -275,7 +224,7 @@ asm bool daAlink_c::procTurnMoveInit(int param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procTurnMove() {
|
||||
asm int daAlink_c::procTurnMove() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procTurnMove__9daAlink_cFv.s"
|
||||
}
|
||||
|
||||
+55
-55
@@ -24,7 +24,7 @@ asm void daAlink_c::getHangDirectionFromAngle() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::hangMoveBgCheck(s16 param_0, cXyz* param_1) {
|
||||
asm BOOL daAlink_c::hangMoveBgCheck(s16 param_0, cXyz* param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/hangMoveBgCheck__9daAlink_cFsP4cXyz.s"
|
||||
}
|
||||
@@ -84,7 +84,7 @@ asm void daAlink_c::checkHangStartSideWall(s16 param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHangStartInit() {
|
||||
asm int daAlink_c::procHangStartInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHangStartInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -94,7 +94,7 @@ asm void daAlink_c::procHangStartInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHangStart() {
|
||||
asm int daAlink_c::procHangStart() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHangStart__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -105,7 +105,7 @@ asm void daAlink_c::procHangStart() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHangFallStartInit(cM3dGPla* param_0) {
|
||||
asm int daAlink_c::procHangFallStartInit(cM3dGPla* param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHangFallStartInit__9daAlink_cFP8cM3dGPla.s"
|
||||
}
|
||||
@@ -115,7 +115,7 @@ asm void daAlink_c::procHangFallStartInit(cM3dGPla* param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHangFallStart() {
|
||||
asm int daAlink_c::procHangFallStart() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHangFallStart__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -125,7 +125,7 @@ asm void daAlink_c::procHangFallStart() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHangUpInit(int param_0) {
|
||||
asm int daAlink_c::procHangUpInit(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHangUpInit__9daAlink_cFi.s"
|
||||
}
|
||||
@@ -135,7 +135,7 @@ asm void daAlink_c::procHangUpInit(int param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHangUp() {
|
||||
asm int daAlink_c::procHangUp() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHangUp__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -145,7 +145,7 @@ asm void daAlink_c::procHangUp() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHangWaitInit() {
|
||||
asm int daAlink_c::procHangWaitInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHangWaitInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -155,7 +155,7 @@ asm void daAlink_c::procHangWaitInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHangWait() {
|
||||
asm int daAlink_c::procHangWait() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHangWait__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -165,7 +165,7 @@ asm void daAlink_c::procHangWait() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHangMoveInit(int param_0) {
|
||||
asm int daAlink_c::procHangMoveInit(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHangMoveInit__9daAlink_cFi.s"
|
||||
}
|
||||
@@ -175,7 +175,7 @@ asm void daAlink_c::procHangMoveInit(int param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHangMove() {
|
||||
asm int daAlink_c::procHangMove() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHangMove__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -185,7 +185,7 @@ asm void daAlink_c::procHangMove() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHangClimbInit(f32 param_0) {
|
||||
asm int daAlink_c::procHangClimbInit(f32 param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHangClimbInit__9daAlink_cFf.s"
|
||||
}
|
||||
@@ -195,7 +195,7 @@ asm void daAlink_c::procHangClimbInit(f32 param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHangClimb() {
|
||||
asm int daAlink_c::procHangClimb() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHangClimb__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -206,7 +206,7 @@ asm void daAlink_c::procHangClimb() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHangWallCatchInit() {
|
||||
asm int daAlink_c::procHangWallCatchInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHangWallCatchInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -216,7 +216,7 @@ asm void daAlink_c::procHangWallCatchInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHangWallCatch() {
|
||||
asm int daAlink_c::procHangWallCatch() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHangWallCatch__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -226,7 +226,7 @@ asm void daAlink_c::procHangWallCatch() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHangReadyInit() {
|
||||
asm int daAlink_c::procHangReadyInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHangReadyInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -236,7 +236,7 @@ asm void daAlink_c::procHangReadyInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHangReady() {
|
||||
asm int daAlink_c::procHangReady() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHangReady__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -247,7 +247,7 @@ asm void daAlink_c::procHangReady() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHangLeverDownInit() {
|
||||
asm int daAlink_c::procHangLeverDownInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHangLeverDownInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -257,7 +257,7 @@ asm void daAlink_c::procHangLeverDownInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHangLeverDown() {
|
||||
asm int daAlink_c::procHangLeverDown() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHangLeverDown__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -309,7 +309,7 @@ asm void daAlink_c::setBossBodyHangPos() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBossBodyHangInit(fopAc_ac_c* param_0) {
|
||||
asm int daAlink_c::procBossBodyHangInit(fopAc_ac_c* param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBossBodyHangInit__9daAlink_cFP10fopAc_ac_c.s"
|
||||
}
|
||||
@@ -319,7 +319,7 @@ asm void daAlink_c::procBossBodyHangInit(fopAc_ac_c* param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBossBodyHang() {
|
||||
asm int daAlink_c::procBossBodyHang() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBossBodyHang__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -413,7 +413,7 @@ asm void daAlink_c::checkLadderFall() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procLadderUpStartInit() {
|
||||
asm int daAlink_c::procLadderUpStartInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procLadderUpStartInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -423,7 +423,7 @@ asm void daAlink_c::procLadderUpStartInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procLadderUpStart() {
|
||||
asm int daAlink_c::procLadderUpStart() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procLadderUpStart__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -434,7 +434,7 @@ asm void daAlink_c::procLadderUpStart() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procLadderUpEndInit(int param_0) {
|
||||
asm int daAlink_c::procLadderUpEndInit(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procLadderUpEndInit__9daAlink_cFi.s"
|
||||
}
|
||||
@@ -444,7 +444,7 @@ asm void daAlink_c::procLadderUpEndInit(int param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procLadderUpEnd() {
|
||||
asm int daAlink_c::procLadderUpEnd() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procLadderUpEnd__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -454,7 +454,7 @@ asm void daAlink_c::procLadderUpEnd() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procLadderDownStartInit() {
|
||||
asm int daAlink_c::procLadderDownStartInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procLadderDownStartInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -465,7 +465,7 @@ asm void daAlink_c::procLadderDownStartInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procLadderDownStart() {
|
||||
asm int daAlink_c::procLadderDownStart() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procLadderDownStart__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -476,7 +476,7 @@ asm void daAlink_c::procLadderDownStart() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procLadderDownEndInit(int param_0) {
|
||||
asm int daAlink_c::procLadderDownEndInit(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procLadderDownEndInit__9daAlink_cFi.s"
|
||||
}
|
||||
@@ -486,7 +486,7 @@ asm void daAlink_c::procLadderDownEndInit(int param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procLadderDownEnd() {
|
||||
asm int daAlink_c::procLadderDownEnd() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procLadderDownEnd__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -496,7 +496,7 @@ asm void daAlink_c::procLadderDownEnd() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procLadderMoveInit(int param_0, int param_1, cXyz* param_2) {
|
||||
asm int daAlink_c::procLadderMoveInit(int param_0, int param_1, cXyz* param_2) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procLadderMoveInit__9daAlink_cFiiP4cXyz.s"
|
||||
}
|
||||
@@ -506,7 +506,7 @@ asm void daAlink_c::procLadderMoveInit(int param_0, int param_1, cXyz* param_2)
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procLadderMove() {
|
||||
asm int daAlink_c::procLadderMove() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procLadderMove__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -672,7 +672,7 @@ asm void daAlink_c::setClimbStartNotGround() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procClimbUpStartInit(int param_0) {
|
||||
asm int daAlink_c::procClimbUpStartInit(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procClimbUpStartInit__9daAlink_cFi.s"
|
||||
}
|
||||
@@ -682,7 +682,7 @@ asm void daAlink_c::procClimbUpStartInit(int param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procClimbUpStart() {
|
||||
asm int daAlink_c::procClimbUpStart() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procClimbUpStart__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -692,7 +692,7 @@ asm void daAlink_c::procClimbUpStart() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procClimbDownStartInit(s16 param_0) {
|
||||
asm int daAlink_c::procClimbDownStartInit(s16 param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procClimbDownStartInit__9daAlink_cFs.s"
|
||||
}
|
||||
@@ -702,7 +702,7 @@ asm void daAlink_c::procClimbDownStartInit(s16 param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procClimbDownStart() {
|
||||
asm int daAlink_c::procClimbDownStart() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procClimbDownStart__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -712,7 +712,7 @@ asm void daAlink_c::procClimbDownStart() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procClimbMoveUpDownInit(int param_0) {
|
||||
asm int daAlink_c::procClimbMoveUpDownInit(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procClimbMoveUpDownInit__9daAlink_cFi.s"
|
||||
}
|
||||
@@ -723,7 +723,7 @@ asm void daAlink_c::procClimbMoveUpDownInit(int param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procClimbMoveUpDown() {
|
||||
asm int daAlink_c::procClimbMoveUpDown() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procClimbMoveUpDown__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -734,7 +734,7 @@ asm void daAlink_c::procClimbMoveUpDown() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procClimbMoveSideInit() {
|
||||
asm int daAlink_c::procClimbMoveSideInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procClimbMoveSideInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -744,7 +744,7 @@ asm void daAlink_c::procClimbMoveSideInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procClimbMoveSide() {
|
||||
asm int daAlink_c::procClimbMoveSide() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procClimbMoveSide__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -754,7 +754,7 @@ asm void daAlink_c::procClimbMoveSide() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procClimbWaitInit(int param_0, int param_1) {
|
||||
asm int daAlink_c::procClimbWaitInit(int param_0, int param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procClimbWaitInit__9daAlink_cFii.s"
|
||||
}
|
||||
@@ -764,7 +764,7 @@ asm void daAlink_c::procClimbWaitInit(int param_0, int param_1) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procClimbWait() {
|
||||
asm int daAlink_c::procClimbWait() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procClimbWait__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -775,7 +775,7 @@ asm void daAlink_c::procClimbWait() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procClimbToRoofInit() {
|
||||
asm int daAlink_c::procClimbToRoofInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procClimbToRoofInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -785,7 +785,7 @@ asm void daAlink_c::procClimbToRoofInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procClimbToRoof() {
|
||||
asm int daAlink_c::procClimbToRoof() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procClimbToRoof__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -858,7 +858,7 @@ asm void daAlink_c::checkNextActionRoofHang() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procRoofHangStartInit(cBgS_PolyInfo const& param_0, cXyz const& param_1,
|
||||
asm int daAlink_c::procRoofHangStartInit(cBgS_PolyInfo const& param_0, cXyz const& param_1,
|
||||
int param_2) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procRoofHangStartInit__9daAlink_cFRC13cBgS_PolyInfoRC4cXyzi.s"
|
||||
@@ -869,7 +869,7 @@ asm void daAlink_c::procRoofHangStartInit(cBgS_PolyInfo const& param_0, cXyz con
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procRoofHangStart() {
|
||||
asm int daAlink_c::procRoofHangStart() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procRoofHangStart__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -880,7 +880,7 @@ asm void daAlink_c::procRoofHangStart() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procRoofHangWaitInit(int param_0) {
|
||||
asm int daAlink_c::procRoofHangWaitInit(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procRoofHangWaitInit__9daAlink_cFi.s"
|
||||
}
|
||||
@@ -890,7 +890,7 @@ asm void daAlink_c::procRoofHangWaitInit(int param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procRoofHangWait() {
|
||||
asm int daAlink_c::procRoofHangWait() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procRoofHangWait__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -900,7 +900,7 @@ asm void daAlink_c::procRoofHangWait() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procRoofHangFrontMoveInit() {
|
||||
asm int daAlink_c::procRoofHangFrontMoveInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procRoofHangFrontMoveInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -911,7 +911,7 @@ asm void daAlink_c::procRoofHangFrontMoveInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procRoofHangFrontMove() {
|
||||
asm int daAlink_c::procRoofHangFrontMove() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procRoofHangFrontMove__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -921,7 +921,7 @@ asm void daAlink_c::procRoofHangFrontMove() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procRoofHangSideMoveInit() {
|
||||
asm int daAlink_c::procRoofHangSideMoveInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procRoofHangSideMoveInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -932,7 +932,7 @@ asm void daAlink_c::procRoofHangSideMoveInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procRoofHangSideMove() {
|
||||
asm int daAlink_c::procRoofHangSideMove() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procRoofHangSideMove__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -943,7 +943,7 @@ asm void daAlink_c::procRoofHangSideMove() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procRoofHangTurnInit() {
|
||||
asm int daAlink_c::procRoofHangTurnInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procRoofHangTurnInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -953,7 +953,7 @@ asm void daAlink_c::procRoofHangTurnInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procRoofHangTurn() {
|
||||
asm int daAlink_c::procRoofHangTurn() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procRoofHangTurn__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -974,7 +974,7 @@ asm void daAlink_c::setRoofHangSwitch() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procRoofSwitchHangInit(fopAc_ac_c* param_0) {
|
||||
asm int daAlink_c::procRoofSwitchHangInit(fopAc_ac_c* param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procRoofSwitchHangInit__9daAlink_cFP10fopAc_ac_c.s"
|
||||
}
|
||||
@@ -984,7 +984,7 @@ asm void daAlink_c::procRoofSwitchHangInit(fopAc_ac_c* param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procRoofSwitchHang() {
|
||||
asm int daAlink_c::procRoofSwitchHang() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procRoofSwitchHang__9daAlink_cFv.s"
|
||||
}
|
||||
|
||||
+51
-49
@@ -40,18 +40,18 @@ cXyz* daAlink_c::getHookshotTopPos() {
|
||||
/* 80108600-80108668 102F40 0068+00 1/0 0/0 0/0 .text checkHookshotReturnMode__9daAlink_cCFv */
|
||||
bool daAlink_c::checkHookshotReturnMode() const {
|
||||
return checkHookshotItem(mEquipItem) &&
|
||||
(mHookshotMode == 4 || mHookshotMode == 5 || mHookshotMode == 6);
|
||||
(mItemMode == 4 || mItemMode == 5 || mItemMode == 6);
|
||||
}
|
||||
|
||||
/* 80108668-801086DC 102FA8 0074+00 1/0 0/0 0/0 .text checkHookshotShootReturnMode__9daAlink_cCFv
|
||||
*/
|
||||
bool daAlink_c::checkHookshotShootReturnMode() const {
|
||||
return (checkHookshotItem(mEquipItem) && mHookshotMode == 3) || checkHookshotReturnMode();
|
||||
return (checkHookshotItem(mEquipItem) && mItemMode == 3) || checkHookshotReturnMode();
|
||||
}
|
||||
|
||||
/* 801086DC-8010871C 10301C 0040+00 6/6 0/0 0/0 .text resetHookshotMode__9daAlink_cFv */
|
||||
void daAlink_c::resetHookshotMode() {
|
||||
mHookshotMode = 0;
|
||||
mItemMode = 0;
|
||||
initLockAt();
|
||||
mSearchBallScale = __float_max[0];
|
||||
}
|
||||
@@ -150,7 +150,7 @@ BOOL daAlink_c::checkBossOctaIealRoom() {
|
||||
/* 80108A18-80108A3C 103358 0024+00 19/19 0/0 0/0 .text checkHookshotWait__9daAlink_cCFv
|
||||
*/
|
||||
BOOL daAlink_c::checkHookshotWait() const {
|
||||
return mHookshotMode == 0 || mHookshotMode == 1;
|
||||
return mItemMode == 0 || mItemMode == 1;
|
||||
}
|
||||
|
||||
/* 80108A3C-80108A90 10337C 0054+00 1/1 0/0 0/0 .text setHookshotCatchNow__9daAlink_cFv
|
||||
@@ -187,7 +187,7 @@ bool daAlink_c::setHookshotCarryOffset(unsigned int actorID, cXyz const* offset)
|
||||
|
||||
fopAc_ac_c* actor = field_0x284c.getActor();
|
||||
if (actor != NULL && fopAcM_checkHookCarryNow(actor) && actorID == field_0x284c.getID()) {
|
||||
field_0x37f8 = *offset;
|
||||
mIronBallCenterPos = *offset;
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -231,16 +231,16 @@ void daAlink_c::setHookshotModel() {
|
||||
field_0x3020 = 0;
|
||||
field_0x3024 = 0;
|
||||
|
||||
field_0x122C[0].SetAtSpl(dCcG_At_Spl_UNK_0);
|
||||
field_0x122C[0].OffAtNoHitMark();
|
||||
field_0x122C[0].SetAtAtp(0);
|
||||
field_0x122C[0].SetR(lit_7808);
|
||||
field_0x122C[0].SetAtSe(8);
|
||||
field_0x122C[0].SetAtType(AT_TYPE_HOOKSHOT);
|
||||
field_0x122C[0].SetAtHitMark(1);
|
||||
field_0x122C[0].OnAtSetBit();
|
||||
field_0x122C[0].SetAtHitCallback(daAlink_hookshotAtHitCallBack);
|
||||
field_0x122C[0].SetAtMtrl(0);
|
||||
mAtCps[0].SetAtSpl(dCcG_At_Spl_UNK_0);
|
||||
mAtCps[0].OffAtNoHitMark();
|
||||
mAtCps[0].SetAtAtp(0);
|
||||
mAtCps[0].SetR(lit_7808);
|
||||
mAtCps[0].SetAtSe(8);
|
||||
mAtCps[0].SetAtType(AT_TYPE_HOOKSHOT);
|
||||
mAtCps[0].SetAtHitMark(1);
|
||||
mAtCps[0].OnAtSetBit();
|
||||
mAtCps[0].SetAtHitCallback(daAlink_hookshotAtHitCallBack);
|
||||
mAtCps[0].SetAtMtrl(0);
|
||||
field_0x076c->init(&mHookshotTopPos, 1);
|
||||
}
|
||||
|
||||
@@ -257,9 +257,9 @@ asm void daAlink_c::setHookshotSight() {
|
||||
/* 80108EEC-80108F64 10382C 0078+00 1/1 0/0 0/0 .text cancelHookshotShot__9daAlink_cFv */
|
||||
void daAlink_c::cancelHookshotShot() {
|
||||
if (checkHookshotItem(mEquipItem) &&
|
||||
(mHookshotMode == 3 || mHookshotMode == 5 || mHookshotMode == 4)) {
|
||||
(mItemMode == 3 || mItemMode == 5 || mItemMode == 4)) {
|
||||
if (mProcID != PROC_HOOKSHOT_MOVE && mProcID != PROC_HOOKSHOT_FLY && mProcID != PROC_HOOKSHOT_SUBJECT) {
|
||||
mHookshotMode = 6;
|
||||
mItemMode = 6;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -268,7 +268,7 @@ void daAlink_c::cancelHookshotShot() {
|
||||
// checkAttentionLock has weird codegen
|
||||
#ifdef NONMATCHING
|
||||
bool daAlink_c::cancelHookshotMove() {
|
||||
if (mFastShotTime == 0 && mHookshotMode == 0) {
|
||||
if (mFastShotTime == 0 && mItemMode == 0) {
|
||||
if (checkHookshotAnime() &&
|
||||
(mTargetedActor == NULL && !i_checkAttentionLock() || !itemButton())) {
|
||||
resetUpperAnime(UPPER_2, -1.0f);
|
||||
@@ -291,24 +291,26 @@ asm bool daAlink_c::cancelHookshotMove() {
|
||||
|
||||
/* 8010903C-80109070 10397C 0034+00 2/2 0/0 0/0 .text
|
||||
* checkHookshotReadyMaterialOffMode__9daAlink_cCFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkHookshotReadyMaterialOffMode() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkHookshotReadyMaterialOffMode__9daAlink_cCFv.s"
|
||||
BOOL daAlink_c::checkHookshotReadyMaterialOffMode() const {
|
||||
return mProcID == PROC_HOOKSHOT_WALL_SHOOT || mProcID == PROC_HORSE_HOOKSHOT_SUBJECT ||
|
||||
mProcID == PROC_SWIM_HOOKSHOT_SUBJECT || mProcID == PROC_HOOKSHOT_SUBJECT;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80109070-801090EC 1039B0 007C+00 5/5 0/0 0/0 .text setHookshotReadyMaterial__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setHookshotReadyMaterial() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setHookshotReadyMaterial__9daAlink_cFv.s"
|
||||
void daAlink_c::setHookshotReadyMaterial() {
|
||||
if (i_checkNoResetFlg2(FLG2_UNK_80000) || checkCasualWearFlg()) {
|
||||
mFallVoiceInit = 0;
|
||||
} else if (checkZoraWearFlg()) {
|
||||
field_0x32cc = 0x37B;
|
||||
mFallVoiceInit = 14;
|
||||
} else if (checkMagicArmorWearFlg()) {
|
||||
field_0x32cc = 0xC80;
|
||||
mFallVoiceInit = 13;
|
||||
} else {
|
||||
field_0x32cc = 0x11C47;
|
||||
mFallVoiceInit = 18;
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 801090EC-80109170 103A2C 0084+00 8/8 0/0 0/0 .text initHookshotUpperAnimeSpeed__9daAlink_cFi */
|
||||
#pragma push
|
||||
@@ -356,7 +358,7 @@ asm void daAlink_c::checkUpperItemActionHookshot() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkNextActionHookshot() {
|
||||
asm int daAlink_c::checkNextActionHookshot() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkNextActionHookshot__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -501,7 +503,7 @@ asm void daAlink_c::commonHookshotWallWait() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHookshotSubjectInit() {
|
||||
asm int daAlink_c::procHookshotSubjectInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHookshotSubjectInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -512,7 +514,7 @@ asm void daAlink_c::procHookshotSubjectInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHookshotSubject() {
|
||||
asm int daAlink_c::procHookshotSubject() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHookshotSubject__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -523,7 +525,7 @@ asm void daAlink_c::procHookshotSubject() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHookshotMoveInit() {
|
||||
asm int daAlink_c::procHookshotMoveInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHookshotMoveInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -533,7 +535,7 @@ asm void daAlink_c::procHookshotMoveInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHookshotMove() {
|
||||
asm int daAlink_c::procHookshotMove() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHookshotMove__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -544,7 +546,7 @@ asm void daAlink_c::procHookshotMove() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHookshotFlyInit() {
|
||||
asm int daAlink_c::procHookshotFlyInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHookshotFlyInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -554,7 +556,7 @@ asm void daAlink_c::procHookshotFlyInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHookshotFly() {
|
||||
asm int daAlink_c::procHookshotFly() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHookshotFly__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -565,7 +567,7 @@ asm void daAlink_c::procHookshotFly() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHookshotRoofWaitInit(int param_0, fopAc_ac_c* param_1, int param_2) {
|
||||
asm int daAlink_c::procHookshotRoofWaitInit(int param_0, fopAc_ac_c* param_1, int param_2) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHookshotRoofWaitInit__9daAlink_cFiP10fopAc_ac_ci.s"
|
||||
}
|
||||
@@ -576,7 +578,7 @@ asm void daAlink_c::procHookshotRoofWaitInit(int param_0, fopAc_ac_c* param_1, i
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHookshotRoofWait() {
|
||||
asm int daAlink_c::procHookshotRoofWait() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHookshotRoofWait__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -587,7 +589,7 @@ asm void daAlink_c::procHookshotRoofWait() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHookshotRoofShootInit(fopAc_ac_c* param_0) {
|
||||
asm int daAlink_c::procHookshotRoofShootInit(fopAc_ac_c* param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHookshotRoofShootInit__9daAlink_cFP10fopAc_ac_c.s"
|
||||
}
|
||||
@@ -598,7 +600,7 @@ asm void daAlink_c::procHookshotRoofShootInit(fopAc_ac_c* param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHookshotRoofShoot() {
|
||||
asm int daAlink_c::procHookshotRoofShoot() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHookshotRoofShoot__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -609,7 +611,7 @@ asm void daAlink_c::procHookshotRoofShoot() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHookshotRoofBootsInit(fopAc_ac_c* param_0) {
|
||||
asm int daAlink_c::procHookshotRoofBootsInit(fopAc_ac_c* param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHookshotRoofBootsInit__9daAlink_cFP10fopAc_ac_c.s"
|
||||
}
|
||||
@@ -620,7 +622,7 @@ asm void daAlink_c::procHookshotRoofBootsInit(fopAc_ac_c* param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHookshotRoofBoots() {
|
||||
asm int daAlink_c::procHookshotRoofBoots() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHookshotRoofBoots__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -630,7 +632,7 @@ asm void daAlink_c::procHookshotRoofBoots() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHookshotWallWaitInit(int param_0, s16 param_1, int param_2) {
|
||||
asm int daAlink_c::procHookshotWallWaitInit(int param_0, s16 param_1, int param_2) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHookshotWallWaitInit__9daAlink_cFisi.s"
|
||||
}
|
||||
@@ -641,7 +643,7 @@ asm void daAlink_c::procHookshotWallWaitInit(int param_0, s16 param_1, int param
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHookshotWallWait() {
|
||||
asm int daAlink_c::procHookshotWallWait() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHookshotWallWait__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -651,7 +653,7 @@ asm void daAlink_c::procHookshotWallWait() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHookshotWallShootInit() {
|
||||
asm int daAlink_c::procHookshotWallShootInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHookshotWallShootInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -662,7 +664,7 @@ asm void daAlink_c::procHookshotWallShootInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHookshotWallShoot() {
|
||||
asm int daAlink_c::procHookshotWallShoot() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHookshotWallShoot__9daAlink_cFv.s"
|
||||
}
|
||||
|
||||
+117
-157
@@ -9,14 +9,13 @@ static asm void* daAlink_searchBoar(fopAc_ac_c* param_0, void* param_1) {
|
||||
#pragma pop
|
||||
|
||||
/* 800EC758-800EC76C 0E7098 0014+00 1/1 0/0 0/0 .text daAlink_searchCoach__FP10fopAc_ac_cPv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daAlink_searchCoach(fopAc_ac_c* param_0, void* param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/daAlink_searchCoach__FP10fopAc_ac_cPv.s"
|
||||
static fopAc_ac_c* daAlink_searchCoach(fopAc_ac_c* param_0, void* param_1) {
|
||||
if (fopAcM_GetName(param_0) == PROC_NPC_COACH) {
|
||||
return param_0;
|
||||
}
|
||||
|
||||
return NULL;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800EC76C-800EC7B0 0E70AC 0044+00 3/3 0/0 0/0 .text checkHorseZeldaBowMode__9daAlink_cFv */
|
||||
#pragma push
|
||||
@@ -41,35 +40,29 @@ asm void daAlink_c::setHorseZeldaDamage() {
|
||||
|
||||
/* 800EC7DC-800EC814 0E711C 0038+00 2/2 0/0 0/0 .text checkHorseDashAccept__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm bool daAlink_c::checkHorseDashAccept() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkHorseDashAccept__9daAlink_cFv.s"
|
||||
BOOL daAlink_c::checkHorseDashAccept() {
|
||||
return !checkStageName("F_SP103");
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800EC814-800EC87C 0E7154 0068+00 1/1 0/0 0/0 .text checkCowGame__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkCowGame() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkCowGame__9daAlink_cFv.s"
|
||||
BOOL daAlink_c::checkCowGame() {
|
||||
return checkStageName("F_SP00") &&
|
||||
(dComIfGp_getStartStageLayer() == 4 || dComIfGp_getStartStageLayer() == 5);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800EC87C-800EC8F8 0E71BC 007C+00 2/2 0/0 0/0 .text getReinRideDirection__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::getReinRideDirection() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/getReinRideDirection__9daAlink_cFv.s"
|
||||
int daAlink_c::getReinRideDirection() {
|
||||
s16 angle = fopAcM_searchActorAngleY(field_0x27f4, this) - field_0x27f4->shape_angle.y;
|
||||
|
||||
if (fopAcM_GetName(field_0x27f4) == PROC_HORSE && abs(angle) > 0x6800) {
|
||||
return DIR_BACKWARD;
|
||||
} else if (angle > 0) {
|
||||
return DIR_LEFT;
|
||||
}
|
||||
|
||||
return DIR_RIGHT;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800EC8F8-800ECA3C 0E7238 0144+00 1/1 0/0 0/0 .text checkReinRideBgCheck__9daAlink_cFv
|
||||
*/
|
||||
@@ -83,14 +76,19 @@ asm void daAlink_c::checkReinRideBgCheck() {
|
||||
#pragma pop
|
||||
|
||||
/* 800ECA3C-800ECAAC 0E737C 0070+00 3/3 0/0 0/0 .text commonInitForceRideRein__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::commonInitForceRideRein() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/commonInitForceRideRein__9daAlink_cFv.s"
|
||||
void daAlink_c::commonInitForceRideRein() {
|
||||
setHeavyBoots(0);
|
||||
onModeFlg(0x400);
|
||||
field_0x2fc0 = 0;
|
||||
field_0x2fab = 0x13;
|
||||
field_0x3002 = 0;
|
||||
field_0x3004 = 0;
|
||||
field_0x30a6 = 0;
|
||||
|
||||
initServiceWaitTime();
|
||||
mAttentionInfo.field_0xa = 0x46;
|
||||
mUnderFrameCtrl[0].onEndFlg();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800ECAAC-800ECB58 0E73EC 00AC+00 1/1 0/0 0/0 .text initForceRideBoar__9daAlink_cFv */
|
||||
#pragma push
|
||||
@@ -103,14 +101,14 @@ asm void daAlink_c::initForceRideBoar() {
|
||||
#pragma pop
|
||||
|
||||
/* 800ECB58-800ECBD0 0E7498 0078+00 4/4 0/0 0/0 .text initForceRideHorse__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::initForceRideHorse() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/initForceRideHorse__9daAlink_cFv.s"
|
||||
void daAlink_c::initForceRideHorse() {
|
||||
commonInitForceRideRein();
|
||||
mRideStatus = 1;
|
||||
mRideAcKeep.setData(i_dComIfGp_getHorseActor());
|
||||
field_0x384c = (cXyz*)&l_horseBaseAnime;
|
||||
i_dComIfGp_getHorseActor()->onRideFlg();
|
||||
mZ2Link.setRiding(true);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800ECBD0-800ECD90 0E7510 01C0+00 5/5 0/0 0/0 .text rideGetOff__9daAlink_cFv */
|
||||
#pragma push
|
||||
@@ -124,34 +122,20 @@ asm void daAlink_c::rideGetOff() {
|
||||
|
||||
/* 800ECD90-800ECDC4 0E76D0 0034+00 1/1 0/0 0/0 .text checkHorseNotDamageReaction__9daAlink_cCFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkHorseNotDamageReaction() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkHorseNotDamageReaction__9daAlink_cCFv.s"
|
||||
BOOL daAlink_c::checkHorseNotDamageReaction() const {
|
||||
return mProcID == PROC_HORSE_TURN || mProcID == PROC_HORSE_JUMP || mProcID == PROC_HORSE_HANG ||
|
||||
mProcID == PROC_HORSE_LAND;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800ECDC4-800ECDEC 0E7704 0028+00 1/1 0/0 2/2 .text checkHorseWaitLashAnime__9daAlink_cCFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkHorseWaitLashAnime() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkHorseWaitLashAnime__9daAlink_cCFv.s"
|
||||
BOOL daAlink_c::checkHorseWaitLashAnime() const {
|
||||
return checkHorseUnderDashStartAnime() && i_checkModeFlg(1);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800ECDEC-800ECE10 0E772C 0024+00 1/1 0/0 0/0 .text checkHorseReinLeftOnly__9daAlink_cCFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkHorseReinLeftOnly() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkHorseReinLeftOnly__9daAlink_cCFv.s"
|
||||
BOOL daAlink_c::checkHorseReinLeftOnly() const {
|
||||
return (field_0x2fab & 8) && !(field_0x2fab & 0x10);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800ECE10-800ECF04 0E7750 00F4+00 2/2 0/0 0/0 .text getReinHandType__9daAlink_cCFv */
|
||||
#pragma push
|
||||
@@ -165,35 +149,22 @@ asm void daAlink_c::getReinHandType() const {
|
||||
|
||||
/* 800ECF04-800ECF5C 0E7844 0058+00 5/5 0/0 1/1 .text checkHorseLieAnime__9daAlink_cCFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm BOOL daAlink_c::checkHorseLieAnime() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkHorseLieAnime__9daAlink_cCFv.s"
|
||||
BOOL daAlink_c::checkHorseLieAnime() const {
|
||||
return checkUnderMove0BckNoArc(ANM_HORSE_CROUCH) || checkUpperHorseLieAnime();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800ECF5C-800ECF9C 0E789C 0040+00 0/0 0/0 3/3 .text checkHorseSubjectivity__9daAlink_cCFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkHorseSubjectivity() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkHorseSubjectivity__9daAlink_cCFv.s"
|
||||
BOOL daAlink_c::checkHorseSubjectivity() const {
|
||||
return i_dComIfGp_checkPlayerStatus0(0, 0x2000) || mProcID == PROC_HORSE_BOW_SUBJECT ||
|
||||
mProcID == PROC_HORSE_HOOKSHOT_SUBJECT || mProcID == PROC_HORSE_BOOMERANG_SUBJECT;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800ECF9C-800ECFF4 0E78DC 0058+00 2/2 0/0 0/0 .text setHorseSwordUpAnime__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setHorseSwordUpAnime() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setHorseSwordUpAnime__9daAlink_cFv.s"
|
||||
void daAlink_c::setHorseSwordUpAnime() {
|
||||
setUpperAnimeBaseSpeed(0xCC, daAlinkHIO_horse_c0::m.mSwordUpAnmSpeed, daAlinkHIO_horse_c0::m.mSwordUpInterpolation);
|
||||
setFaceBck(0xE8, 1, 0xFFFF);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800ECFF4-800ED074 0E7934 0080+00 1/1 0/0 0/0 .text setHorseTurnUpperAnime__9daAlink_cFi */
|
||||
#pragma push
|
||||
@@ -206,14 +177,9 @@ asm void daAlink_c::setHorseTurnUpperAnime(int param_0) {
|
||||
#pragma pop
|
||||
|
||||
/* 800ED074-800ED0D4 0E79B4 0060+00 9/9 0/0 0/0 .text checkHorseNoUpperAnime__9daAlink_cCFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm BOOL daAlink_c::checkHorseNoUpperAnime() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkHorseNoUpperAnime__9daAlink_cCFv.s"
|
||||
BOOL daAlink_c::checkHorseNoUpperAnime() const {
|
||||
return checkHorseTiredAnime() || checkNoUpperAnime() || checkHorseSwordUpAnime();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800ED0D4-800ED1F0 0E7A14 011C+00 0/0 0/0 2/2 .text getHorseReinHandPos__9daAlink_cFP4cXyzP4cXyz
|
||||
*/
|
||||
@@ -247,14 +213,9 @@ asm void daAlink_c::setHorseStirrup() {
|
||||
#pragma pop
|
||||
|
||||
/* 800ED4B8-800ED4DC 0E7DF8 0024+00 1/1 0/0 0/0 .text changeBoarRunRide__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::changeBoarRunRide() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/changeBoarRunRide__9daAlink_cFv.s"
|
||||
void daAlink_c::changeBoarRunRide() {
|
||||
static_cast<e_wb_class*>(mRideAcKeep.getActor())->setRunRideMode();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800ED4DC-800ED78C 0E7E1C 02B0+00 7/7 0/0 0/0 .text setSyncHorsePos__9daAlink_cFv */
|
||||
#pragma push
|
||||
@@ -287,14 +248,13 @@ asm void daAlink_c::setSyncBoarRunPos() {
|
||||
#pragma pop
|
||||
|
||||
/* 800EDA24-800EDA78 0E8364 0054+00 33/33 0/0 0/0 .text setSyncRidePos__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setSyncRidePos() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setSyncRidePos__9daAlink_cFv.s"
|
||||
void daAlink_c::setSyncRidePos() {
|
||||
if (checkHorseRide()) {
|
||||
setSyncHorsePos();
|
||||
} else {
|
||||
setSyncBoarPos();
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800EDA78-800EDB48 0E83B8 00D0+00 6/6 0/0 0/0 .text setHorseTurnAnime__9daAlink_cFv */
|
||||
#pragma push
|
||||
@@ -525,7 +485,7 @@ asm void daAlink_c::setHorseGetOff(int param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseRideInit() {
|
||||
asm int daAlink_c::procHorseRideInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseRideInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -535,7 +495,7 @@ asm void daAlink_c::procHorseRideInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseRide() {
|
||||
asm int daAlink_c::procHorseRide() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseRide__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -546,7 +506,7 @@ asm void daAlink_c::procHorseRide() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseGetOffInit(int param_0) {
|
||||
asm int daAlink_c::procHorseGetOffInit(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseGetOffInit__9daAlink_cFi.s"
|
||||
}
|
||||
@@ -556,7 +516,7 @@ asm void daAlink_c::procHorseGetOffInit(int param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseGetOff() {
|
||||
asm int daAlink_c::procHorseGetOff() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseGetOff__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -567,7 +527,7 @@ asm void daAlink_c::procHorseGetOff() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseWaitInit() {
|
||||
asm int daAlink_c::procHorseWaitInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseWaitInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -577,7 +537,7 @@ asm void daAlink_c::procHorseWaitInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseWait() {
|
||||
asm int daAlink_c::procHorseWait() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseWait__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -587,7 +547,7 @@ asm void daAlink_c::procHorseWait() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseTurnInit() {
|
||||
asm int daAlink_c::procHorseTurnInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseTurnInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -597,7 +557,7 @@ asm void daAlink_c::procHorseTurnInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseTurn() {
|
||||
asm int daAlink_c::procHorseTurn() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseTurn__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -607,7 +567,7 @@ asm void daAlink_c::procHorseTurn() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseJumpInit() {
|
||||
asm int daAlink_c::procHorseJumpInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseJumpInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -617,7 +577,7 @@ asm void daAlink_c::procHorseJumpInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseJump() {
|
||||
asm int daAlink_c::procHorseJump() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseJump__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -627,7 +587,7 @@ asm void daAlink_c::procHorseJump() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseLandInit() {
|
||||
asm int daAlink_c::procHorseLandInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseLandInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -637,7 +597,7 @@ asm void daAlink_c::procHorseLandInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseLand() {
|
||||
asm int daAlink_c::procHorseLand() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseLand__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -647,7 +607,7 @@ asm void daAlink_c::procHorseLand() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseSubjectivityInit() {
|
||||
asm int daAlink_c::procHorseSubjectivityInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseSubjectivityInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -658,7 +618,7 @@ asm void daAlink_c::procHorseSubjectivityInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseSubjectivity() {
|
||||
asm int daAlink_c::procHorseSubjectivity() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseSubjectivity__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -668,7 +628,7 @@ asm void daAlink_c::procHorseSubjectivity() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseCutInit() {
|
||||
asm int daAlink_c::procHorseCutInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseCutInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -678,7 +638,7 @@ asm void daAlink_c::procHorseCutInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseCut() {
|
||||
asm int daAlink_c::procHorseCut() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseCut__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -688,7 +648,7 @@ asm void daAlink_c::procHorseCut() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseCutChargeReadyInit() {
|
||||
asm int daAlink_c::procHorseCutChargeReadyInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseCutChargeReadyInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -698,7 +658,7 @@ asm void daAlink_c::procHorseCutChargeReadyInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseCutChargeReady() {
|
||||
asm int daAlink_c::procHorseCutChargeReady() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseCutChargeReady__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -709,7 +669,7 @@ asm void daAlink_c::procHorseCutChargeReady() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseCutTurnInit() {
|
||||
asm int daAlink_c::procHorseCutTurnInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseCutTurnInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -719,7 +679,7 @@ asm void daAlink_c::procHorseCutTurnInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseCutTurn() {
|
||||
asm int daAlink_c::procHorseCutTurn() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseCutTurn__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -730,7 +690,7 @@ asm void daAlink_c::procHorseCutTurn() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseDamageInit(dCcD_GObjInf* param_0) {
|
||||
asm int daAlink_c::procHorseDamageInit(dCcD_GObjInf* param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseDamageInit__9daAlink_cFP12dCcD_GObjInf.s"
|
||||
}
|
||||
@@ -740,7 +700,7 @@ asm void daAlink_c::procHorseDamageInit(dCcD_GObjInf* param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseDamage() {
|
||||
asm int daAlink_c::procHorseDamage() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseDamage__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -750,7 +710,7 @@ asm void daAlink_c::procHorseDamage() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseBowSubjectInit() {
|
||||
asm int daAlink_c::procHorseBowSubjectInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseBowSubjectInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -761,7 +721,7 @@ asm void daAlink_c::procHorseBowSubjectInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseBowSubject() {
|
||||
asm int daAlink_c::procHorseBowSubject() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseBowSubject__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -772,7 +732,7 @@ asm void daAlink_c::procHorseBowSubject() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseBowMoveInit() {
|
||||
asm int daAlink_c::procHorseBowMoveInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseBowMoveInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -782,7 +742,7 @@ asm void daAlink_c::procHorseBowMoveInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseBowMove() {
|
||||
asm int daAlink_c::procHorseBowMove() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseBowMove__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -793,7 +753,7 @@ asm void daAlink_c::procHorseBowMove() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseGrabMoveInit() {
|
||||
asm int daAlink_c::procHorseGrabMoveInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseGrabMoveInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -803,7 +763,7 @@ asm void daAlink_c::procHorseGrabMoveInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseGrabMove() {
|
||||
asm int daAlink_c::procHorseGrabMove() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseGrabMove__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -814,7 +774,7 @@ asm void daAlink_c::procHorseGrabMove() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseBoomerangSubjectInit() {
|
||||
asm int daAlink_c::procHorseBoomerangSubjectInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseBoomerangSubjectInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -824,7 +784,7 @@ asm void daAlink_c::procHorseBoomerangSubjectInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseBoomerangSubject() {
|
||||
asm int daAlink_c::procHorseBoomerangSubject() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseBoomerangSubject__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -834,7 +794,7 @@ asm void daAlink_c::procHorseBoomerangSubject() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseBoomerangMoveInit() {
|
||||
asm int daAlink_c::procHorseBoomerangMoveInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseBoomerangMoveInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -844,7 +804,7 @@ asm void daAlink_c::procHorseBoomerangMoveInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseBoomerangMove() {
|
||||
asm int daAlink_c::procHorseBoomerangMove() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseBoomerangMove__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -855,7 +815,7 @@ asm void daAlink_c::procHorseBoomerangMove() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseHookshotSubjectInit() {
|
||||
asm int daAlink_c::procHorseHookshotSubjectInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseHookshotSubjectInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -865,7 +825,7 @@ asm void daAlink_c::procHorseHookshotSubjectInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseHookshotSubject() {
|
||||
asm int daAlink_c::procHorseHookshotSubject() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseHookshotSubject__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -875,7 +835,7 @@ asm void daAlink_c::procHorseHookshotSubject() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseHookshotMoveInit() {
|
||||
asm int daAlink_c::procHorseHookshotMoveInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseHookshotMoveInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -886,7 +846,7 @@ asm void daAlink_c::procHorseHookshotMoveInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseHookshotMove() {
|
||||
asm int daAlink_c::procHorseHookshotMove() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseHookshotMove__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -896,7 +856,7 @@ asm void daAlink_c::procHorseHookshotMove() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseBottleDrinkInit(u16 param_0) {
|
||||
asm int daAlink_c::procHorseBottleDrinkInit(u16 param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseBottleDrinkInit__9daAlink_cFUs.s"
|
||||
}
|
||||
@@ -907,7 +867,7 @@ asm void daAlink_c::procHorseBottleDrinkInit(u16 param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseBottleDrink() {
|
||||
asm int daAlink_c::procHorseBottleDrink() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseBottleDrink__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -917,7 +877,7 @@ asm void daAlink_c::procHorseBottleDrink() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseKandelaarPourInit() {
|
||||
asm int daAlink_c::procHorseKandelaarPourInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseKandelaarPourInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -927,7 +887,7 @@ asm void daAlink_c::procHorseKandelaarPourInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseKandelaarPour() {
|
||||
asm int daAlink_c::procHorseKandelaarPour() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseKandelaarPour__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -938,7 +898,7 @@ asm void daAlink_c::procHorseKandelaarPour() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseComebackInit() {
|
||||
asm int daAlink_c::procHorseComebackInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseComebackInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -948,7 +908,7 @@ asm void daAlink_c::procHorseComebackInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseComeback() {
|
||||
asm int daAlink_c::procHorseComeback() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseComeback__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -958,7 +918,7 @@ asm void daAlink_c::procHorseComeback() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseRunInit() {
|
||||
asm int daAlink_c::procHorseRunInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseRunInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -968,7 +928,7 @@ asm void daAlink_c::procHorseRunInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseRun() {
|
||||
asm int daAlink_c::procHorseRun() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseRun__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -979,7 +939,7 @@ asm void daAlink_c::procHorseRun() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseHangInit(dCcD_GObjInf* param_0, int param_1) {
|
||||
asm int daAlink_c::procHorseHangInit(dCcD_GObjInf* param_0, int param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseHangInit__9daAlink_cFP12dCcD_GObjInfi.s"
|
||||
}
|
||||
@@ -989,7 +949,7 @@ asm void daAlink_c::procHorseHangInit(dCcD_GObjInf* param_0, int param_1) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseHang() {
|
||||
asm int daAlink_c::procHorseHang() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseHang__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -1000,7 +960,7 @@ asm void daAlink_c::procHorseHang() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseGetKeyInit() {
|
||||
asm int daAlink_c::procHorseGetKeyInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseGetKeyInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -1010,7 +970,7 @@ asm void daAlink_c::procHorseGetKeyInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseGetKey() {
|
||||
asm int daAlink_c::procHorseGetKey() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseGetKey__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -1021,7 +981,7 @@ asm void daAlink_c::procHorseGetKey() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseLookDownInit() {
|
||||
asm int daAlink_c::procHorseLookDownInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseLookDownInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -1031,7 +991,7 @@ asm void daAlink_c::procHorseLookDownInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHorseLookDown() {
|
||||
asm int daAlink_c::procHorseLookDown() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHorseLookDown__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -1041,7 +1001,7 @@ asm void daAlink_c::procHorseLookDown() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBoarRunInit() {
|
||||
asm int daAlink_c::procBoarRunInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBoarRunInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -1051,7 +1011,7 @@ asm void daAlink_c::procBoarRunInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBoarRun() {
|
||||
asm int daAlink_c::procBoarRun() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBoarRun__9daAlink_cFv.s"
|
||||
}
|
||||
|
||||
@@ -1,3 +1,24 @@
|
||||
#include "dolphin/types.h"
|
||||
#include "d/a/d_a_alink.h"
|
||||
#include "JSystem/J2DGraph/J2DAnmLoader.h"
|
||||
#include "JSystem/J3DGraphLoader/J3DAnmLoader.h"
|
||||
#include "JSystem/JMath/JMath.h"
|
||||
#include "SSystem/SComponent/c_math.h"
|
||||
#include "Z2AudioLib/Z2AudioMgr.h"
|
||||
#include "d/com/d_com_inf_game.h"
|
||||
#include "d/msg/d_msg_object.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
#include "m_Do/m_Do_audio.h"
|
||||
#include "m_Do/m_Do_ext.h"
|
||||
#include "m_Do/m_Do_mtx.h"
|
||||
#include "rel/d/a/d_a_crod/d_a_crod.h"
|
||||
#include "rel/d/a/d_a_horse/d_a_horse.h"
|
||||
#include "rel/d/a/d_a_scene_exit/d_a_scene_exit.h"
|
||||
#include "rel/d/a/d_a_mg_rod/d_a_mg_rod.h"
|
||||
#include "rel/d/a/d_a_spinner/d_a_spinner.h"
|
||||
#include "rel/d/a/obj/d_a_obj_carry/d_a_obj_carry.h"
|
||||
#include "rel/d/a/tag/d_a_tag_magne/d_a_tag_magne.h"
|
||||
|
||||
/* 800E23FC-800E243C 0DCD3C 0040+00 6/6 0/0 0/0 .text concatMagneBootMtx__9daAlink_cFv */
|
||||
void daAlink_c::concatMagneBootMtx() {
|
||||
if (i_checkMagneBootsOn()) {
|
||||
@@ -22,8 +43,8 @@ void daAlink_c::multVecMagneBootInvMtx(cXyz* vec) {
|
||||
|
||||
/* 800E24B0-800E251C 0DCDF0 006C+00 2/2 0/0 0/0 .text
|
||||
* commonMagneLineCheck__9daAlink_cFP4cXyzP4cXyz */
|
||||
int daAlink_c::commonMagneLineCheck(cXyz* param_0, cXyz* param_1) {
|
||||
mMagneLineChk.Set(param_0, param_1, this);
|
||||
int daAlink_c::commonMagneLineCheck(cXyz* i_start, cXyz* i_end) {
|
||||
mMagneLineChk.Set(i_start, i_end, this);
|
||||
|
||||
if (dComIfG_Bgsp().LineCross(&mMagneLineChk) && daTagMagne_c::checkMagnetCode(mMagneLineChk)) {
|
||||
return 1;
|
||||
@@ -34,14 +55,9 @@ int daAlink_c::commonMagneLineCheck(cXyz* param_0, cXyz* param_1) {
|
||||
|
||||
/* 800E251C-800E2580 0DCE5C 0064+00 2/2 0/0 0/0 .text checkBootsMoveAnime__9daAlink_cFi
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkBootsMoveAnime(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkBootsMoveAnime__9daAlink_cFi.s"
|
||||
BOOL daAlink_c::checkBootsMoveAnime(int param_0) {
|
||||
return (checkHeavyStateOn(param_0, 1) && !i_checkNoResetFlg0(FLG0_UNDERWATER)) || checkDkCaught2Anime();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E2580-800E2738 0DCEC0 01B8+00 17/17 0/0 0/0 .text setHeavyBoots__9daAlink_cFi */
|
||||
#pragma push
|
||||
@@ -116,20 +132,26 @@ int daAlink_c::checkMagneBootsFly() {
|
||||
}
|
||||
|
||||
/* 800E3048-800E30DC 0DD988 0094+00 2/2 0/0 0/0 .text procBootsEquipInit__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBootsEquipInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBootsEquipInit__9daAlink_cFv.s"
|
||||
int daAlink_c::procBootsEquipInit() {
|
||||
commonProcInit(PROC_BOOTS_EQUIP);
|
||||
setSingleAnimeParam(ANM_HVY_BOOTS_PUT_ON, &daAlinkHIO_magneBoots_c0::m.mEquipAnm);
|
||||
|
||||
if (checkUpperReadyThrowAnime()) {
|
||||
resetUpperAnime(UPPER_2, lit_6041);
|
||||
dComIfGp_clearPlayerStatus0(0, ~0x400030);
|
||||
}
|
||||
|
||||
current.angle.y = shape_angle.y;
|
||||
mNormalSpeed = FLOAT_LABEL(lit_6108);
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800E30DC-800E3218 0DDA1C 013C+00 1/0 0/0 0/0 .text procBootsEquip__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBootsEquip() {
|
||||
asm int daAlink_c::procBootsEquip() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBootsEquip__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -150,7 +172,7 @@ asm int daAlink_c::procMagneBootsFlyInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procMagneBootsFly() {
|
||||
asm int daAlink_c::procMagneBootsFly() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procMagneBootsFly__9daAlink_cFv.s"
|
||||
}
|
||||
|
||||
+188
-122
@@ -1,49 +1,34 @@
|
||||
/* 80105A84-80105A98 1003C4 0014+00 1/1 0/0 0/0 .text daAlink_searchIceLeaf__FP10fopAc_ac_cPv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daAlink_searchIceLeaf(fopAc_ac_c* param_0, void* param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/daAlink_searchIceLeaf__FP10fopAc_ac_cPv.s"
|
||||
static fopAc_ac_c* daAlink_searchIceLeaf(fopAc_ac_c* i_actor, void* param_1) {
|
||||
if (fopAcM_GetName(i_actor) == PROC_Obj_IceLeaf) {
|
||||
return i_actor;
|
||||
}
|
||||
|
||||
return NULL;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80105A98-80105ABC 1003D8 0024+00 3/3 0/0 0/0 .text checkSnowCode__9daAlink_cCFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkSnowCode() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkSnowCode__9daAlink_cCFv.s"
|
||||
bool daAlink_c::checkSnowCode() const {
|
||||
return field_0x2fa8 == 6 || field_0x2fa8 == 5;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80105ABC-80105B10 1003FC 0054+00 1/1 0/0 1/1 .text
|
||||
* checkSnowCodePolygon__9daAlink_cFR13cBgS_PolyInfo */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkSnowCodePolygon(cBgS_PolyInfo& param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkSnowCodePolygon__9daAlink_cFR13cBgS_PolyInfo.s"
|
||||
bool daAlink_c::checkSnowCodePolygon(cBgS_PolyInfo& i_poly) {
|
||||
int code = dComIfG_Bgsp().GetSpecialCode(i_poly);
|
||||
return code == 6 || code == 5;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80105B10-80105B58 100450 0048+00 2/2 0/0 0/0 .text checkBoardRestart__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkBoardRestart() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkBoardRestart__9daAlink_cFv.s"
|
||||
bool daAlink_c::checkBoardRestart() {
|
||||
return (mRideStatus == 0 && mRideAcKeep.getActor() != NULL) && fopAcM_GetName(mRideAcKeep.getActor()) == PROC_Obj_IceLeaf;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80105B58-80106534 100498 09DC+00 7/7 0/0 0/0 .text boardCommon__9daAlink_cFi */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::boardCommon(int param_0) {
|
||||
asm int daAlink_c::boardCommon(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/boardCommon__9daAlink_cFi.s"
|
||||
}
|
||||
@@ -51,58 +36,61 @@ asm void daAlink_c::boardCommon(int param_0) {
|
||||
|
||||
/* 80106534-8010658C 100E74 0058+00 6/6 0/0 0/0 .text setCommonBoardAnime__9daAlink_cFi
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setCommonBoardAnime(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setCommonBoardAnime__9daAlink_cFi.s"
|
||||
void daAlink_c::setCommonBoardAnime(int param_0) {
|
||||
setDoubleAnime(FLOAT_LABEL(lit_6108), daAlinkHIO_board_c0::m.mStandAnmSpeed, lit_6040,
|
||||
param_0 != 0 ? ANM_RIDE_FRONT : ANM_RIDE_WAIT, ANM_RIDE_STOP,
|
||||
11, daAlinkHIO_board_c0::m.mStandInterpolation);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8010658C-80106618 100ECC 008C+00 5/5 0/0 0/0 .text checkNextActionBoard__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkNextActionBoard() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkNextActionBoard__9daAlink_cFv.s"
|
||||
int daAlink_c::checkNextActionBoard() {
|
||||
if (checkNextActionFromButton()) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
if ((!doButton() && (mProcID == PROC_BOARD_ROW || mProcID == PROC_BOARD_TURN)) ||
|
||||
mProcID == PROC_BOARD_CUT || mProcID == PROC_BOARD_ROW || mProcID == PROC_BOARD_JUMP) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
return procBoardWaitInit(NULL);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80106618-80106650 100F58 0038+00 2/2 0/0 0/0 .text checkBoardSwordTriggerAction__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkBoardSwordTriggerAction() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkBoardSwordTriggerAction__9daAlink_cFv.s"
|
||||
int daAlink_c::checkBoardSwordTriggerAction() {
|
||||
if (i_checkModeFlg(2)) {
|
||||
return procBoardCutInit();
|
||||
} else {
|
||||
return procBoardWaitInit(NULL);
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80106650-801066B8 100F90 0068+00 3/3 0/0 0/0 .text
|
||||
* commonProcBoardInit__9daAlink_cFQ29daAlink_c12daAlink_PROC */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::commonProcBoardInit(daAlink_c::daAlink_PROC param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/commonProcBoardInit__9daAlink_cFQ29daAlink_c12daAlink_PROC.s"
|
||||
int daAlink_c::commonProcBoardInit(daAlink_c::daAlink_PROC i_procID) {
|
||||
if (mProcID == i_procID) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
u32 check = i_checkModeFlg(2);
|
||||
commonProcInit(i_procID);
|
||||
|
||||
if (check) {
|
||||
onModeFlg(2);
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 801066B8-801066EC 100FF8 0034+00 1/1 0/0 0/0 .text getBoardRowAnmSpeed__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::getBoardRowAnmSpeed() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/getBoardRowAnmSpeed__9daAlink_cFv.s"
|
||||
f32 daAlink_c::getBoardRowAnmSpeed() {
|
||||
return daAlinkHIO_board_c0::m.mPushAnmMinSpeed +
|
||||
((daAlinkHIO_board_c0::m.mPushAnmMaxSpeed - daAlinkHIO_board_c0::m.mPushAnmMinSpeed) *
|
||||
(lit_6040 - (mNormalSpeed / daAlinkHIO_board_c0::m.mFastPushSwitchSpeed)));
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 801066EC-80106774 10102C 0088+00 3/3 0/0 0/0 .text setBoardLandAnime__9daAlink_cFv */
|
||||
#pragma push
|
||||
@@ -118,28 +106,35 @@ asm void daAlink_c::setBoardLandAnime() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBoardRideInit() {
|
||||
asm int daAlink_c::procBoardRideInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBoardRideInit__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 801069D0-80106A38 101310 0068+00 1/0 0/0 0/0 .text procBoardRide__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBoardRide() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBoardRide__9daAlink_cFv.s"
|
||||
int daAlink_c::procBoardRide() {
|
||||
field_0x2f99 = 15;
|
||||
|
||||
if (mLinkAcch.ChkGroundHit()) {
|
||||
if (field_0x280c.getActor()) {
|
||||
shape_angle.y = field_0x280c.getActor()->shape_angle.y + -0x4000;
|
||||
current.angle.y = shape_angle.y;
|
||||
procBoardWaitInit(field_0x280c.getActor());
|
||||
} else {
|
||||
checkNextAction(1);
|
||||
}
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80106A38-80106BCC 101378 0194+00 13/13 0/0 0/0 .text
|
||||
* procBoardWaitInit__9daAlink_cFP10fopAc_ac_c */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBoardWaitInit(fopAc_ac_c* param_0) {
|
||||
asm int daAlink_c::procBoardWaitInit(fopAc_ac_c* param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBoardWaitInit__9daAlink_cFP10fopAc_ac_c.s"
|
||||
}
|
||||
@@ -149,119 +144,190 @@ asm void daAlink_c::procBoardWaitInit(fopAc_ac_c* param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBoardWait() {
|
||||
asm int daAlink_c::procBoardWait() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBoardWait__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80106E88-80106F00 1017C8 0078+00 1/1 0/0 0/0 .text procBoardRowInit__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBoardRowInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBoardRowInit__9daAlink_cFv.s"
|
||||
int daAlink_c::procBoardRowInit() {
|
||||
commonProcInit(PROC_BOARD_ROW);
|
||||
setSingleAnimeBaseSpeed(ANM_RIDE_KICK, getBoardRowAnmSpeed(), daAlinkHIO_board_c0::m.mPushInterpolation);
|
||||
i_onResetFlg1(0x40);
|
||||
field_0x3008 = 4;
|
||||
field_0x3010 = 1;
|
||||
field_0x3012 = 0;
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80106F00-80107060 101840 0160+00 1/0 0/0 0/0 .text procBoardRow__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBoardRow() {
|
||||
asm int daAlink_c::procBoardRow() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBoardRow__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80107060-801070DC 1019A0 007C+00 1/1 0/0 0/0 .text procBoardTurnInit__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBoardTurnInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBoardTurnInit__9daAlink_cFv.s"
|
||||
int daAlink_c::procBoardTurnInit() {
|
||||
commonProcInit(PROC_BOARD_TURN);
|
||||
setSingleAnime(ANM_RIDE_JUMP, FLOAT_LABEL(lit_6108), lit_6040, daAlinkHIO_board_c0::m.mAirborneAnm.mEndFrame, lit_6109);
|
||||
mNormalSpeed = FLOAT_LABEL(lit_6108);
|
||||
field_0x3010 = shape_angle.y + 0x8000;
|
||||
field_0x3012 = 0;
|
||||
field_0x300a = 0;
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 801070DC-80107218 101A1C 013C+00 1/0 0/0 0/0 .text procBoardTurn__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBoardTurn() {
|
||||
asm int daAlink_c::procBoardTurn() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBoardTurn__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80107218-80107300 101B58 00E8+00 4/4 0/0 0/0 .text procBoardJumpInit__9daAlink_cFfi */
|
||||
#ifdef NONMATCHING
|
||||
int daAlink_c::procBoardJumpInit(f32 param_0, int param_1) {
|
||||
commonProcInit(PROC_BOARD_JUMP);
|
||||
field_0x3008 = 0;
|
||||
field_0x3012 = 1;
|
||||
|
||||
setSingleAnime(ANM_RIDE_JUMP, FLOAT_LABEL(lit_6108),
|
||||
daAlinkHIO_board_c0::m.mAirborneAnm.mStartFrame,
|
||||
daAlinkHIO_board_c0::m.mAirborneAnm.mEndFrame,
|
||||
daAlinkHIO_board_c0::m.mAirborneAnm.mInterpolation);
|
||||
|
||||
if (param_1 == 0) {
|
||||
mSpeed.y = cLib_minMaxLimit(param_0, daAlinkHIO_board_c0::m.mMinJumpSpeedY, daAlinkHIO_board_c0::m.mMaxJumpSpeedY);
|
||||
}
|
||||
|
||||
field_0x3010 = 0;
|
||||
seStartOnlyReverb(Z2SE_AL_SNOBO_JUMP);
|
||||
return 1;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBoardJumpInit(f32 param_0, int param_1) {
|
||||
asm int daAlink_c::procBoardJumpInit(f32 param_0, int param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBoardJumpInit__9daAlink_cFfi.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 80107300-801073D0 101C40 00D0+00 1/0 0/0 0/0 .text procBoardJump__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBoardJump() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBoardJump__9daAlink_cFv.s"
|
||||
int daAlink_c::procBoardJump() {
|
||||
if (boardCommon(1)) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
if (!checkNextActionBoard()) {
|
||||
if (!i_checkModeFlg(2)) {
|
||||
setBoardLandAnime();
|
||||
procBoardWaitInit(NULL);
|
||||
} else if (field_0x3012 != 0 && field_0x3010 == 0 && field_0x2060->getOldFrameRate() < lit_8782) {
|
||||
setSingleAnime(ANM_RIDE_JUMP, daAlinkHIO_board_c0::m.mAirborneAnm.mSpeed,
|
||||
daAlinkHIO_board_c0::m.mAirborneAnm.mStartFrame,
|
||||
daAlinkHIO_board_c0::m.mAirborneAnm.mEndFrame,
|
||||
lit_6041);
|
||||
field_0x3010 = 1;
|
||||
}
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 801073D0-80107418 101D10 0048+00 1/1 0/0 0/0 .text procBoardSubjectivityInit__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBoardSubjectivityInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBoardSubjectivityInit__9daAlink_cFv.s"
|
||||
int daAlink_c::procBoardSubjectivityInit() {
|
||||
commonProcBoardInit(PROC_BOARD_SUBJECTIVITY);
|
||||
setSubjectMode();
|
||||
setCommonBoardAnime(0);
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80107418-801074AC 101D58 0094+00 1/0 0/0 0/0 .text procBoardSubjectivity__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBoardSubjectivity() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBoardSubjectivity__9daAlink_cFv.s"
|
||||
int daAlink_c::procBoardSubjectivity() {
|
||||
i_onResetFlg0(0x4000000);
|
||||
s16 old_shape_angle = shape_angle.y;
|
||||
s16 old_angle = current.angle.y;
|
||||
|
||||
if (boardCommon(0)) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
shape_angle.y = old_shape_angle;
|
||||
|
||||
if (checkSubjectEnd(1)) {
|
||||
procBoardWaitInit(NULL);
|
||||
} else {
|
||||
setRideSubjectAngle(old_angle);
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 801074AC-8010755C 101DEC 00B0+00 3/3 0/0 0/0 .text procBoardCutInit__9daAlink_cFv */
|
||||
// matches with literals
|
||||
#ifdef NONMATCHING
|
||||
int daAlink_c::procBoardCutInit() {
|
||||
commonProcBoardInit(PROC_BOARD_CUT);
|
||||
|
||||
bool var_r31 = false;
|
||||
if (checkUnderMove0BckNoArc(ANM_RIDE_CUT_TURN_CHARGE)) {
|
||||
if (mUnderFrameCtrl[0].getFrame() > daAlinkHIO_cut_c0::m.mNormalSwingDuration) {
|
||||
var_r31 = true;
|
||||
}
|
||||
}
|
||||
|
||||
setCommonBoardAnime(0);
|
||||
setCutDash(1, var_r31);
|
||||
field_0x3012 = 0;
|
||||
|
||||
return 1;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBoardCutInit() {
|
||||
asm int daAlink_c::procBoardCutInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBoardCutInit__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 8010755C-801075D4 101E9C 0078+00 1/0 0/0 0/0 .text procBoardCut__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBoardCut() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBoardCut__9daAlink_cFv.s"
|
||||
int daAlink_c::procBoardCut() {
|
||||
if (boardCommon(1)) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
checkCutTurnCharge();
|
||||
if (!checkNextActionBoard() && checkNoUpperAnime()) {
|
||||
procBoardWaitInit(NULL);
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 801075D4-80107744 101F14 0170+00 2/2 0/0 0/0 .text procBoardCutTurnInit__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBoardCutTurnInit() {
|
||||
asm int daAlink_c::procBoardCutTurnInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBoardCutTurnInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -271,7 +337,7 @@ asm void daAlink_c::procBoardCutTurnInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procBoardCutTurn() {
|
||||
asm int daAlink_c::procBoardCutTurn() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procBoardCutTurn__9daAlink_cFv.s"
|
||||
}
|
||||
|
||||
+297
-164
@@ -1,107 +1,98 @@
|
||||
/* 8011243C-80112458 10CD7C 001C+00 1/0 0/0 0/0 .text getIronBallCenterPos__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm bool daAlink_c::getIronBallCenterPos() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/getIronBallCenterPos__9daAlink_cFv.s"
|
||||
cXyz* daAlink_c::getIronBallCenterPos() {
|
||||
if (mEquipItem == IRONBALL) {
|
||||
return &mIronBallCenterPos;
|
||||
}
|
||||
|
||||
return NULL;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80112458-80112474 10CD98 001C+00 1/0 0/0 0/0 .text getIronBallBgHit__9daAlink_cCFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm bool daAlink_c::getIronBallBgHit() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/getIronBallBgHit__9daAlink_cCFv.s"
|
||||
s16 daAlink_c::getIronBallBgHit() const {
|
||||
if (mEquipItem == IRONBALL) {
|
||||
return field_0x301c;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80112474-801124B4 10CDB4 0040+00 0/0 2/2 1/1 .text checkIronBallThrowMode__9daAlink_cCFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkIronBallThrowMode() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkIronBallThrowMode__9daAlink_cCFv.s"
|
||||
bool daAlink_c::checkIronBallThrowMode() const {
|
||||
return mEquipItem == IRONBALL &&
|
||||
(field_0x3018 == 4 || field_0x3018 == 5 || field_0x3018 == 6 || field_0x3018 == 3);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 801124B4-801124FC 10CDF4 0048+00 0/0 1/1 1/1 .text checkIronBallThrowReturnMode__9daAlink_cCFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkIronBallThrowReturnMode() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkIronBallThrowReturnMode__9daAlink_cCFv.s"
|
||||
bool daAlink_c::checkIronBallThrowReturnMode() const {
|
||||
return mEquipItem == IRONBALL && (field_0x3018 == 4 || field_0x3018 == 5 || field_0x3018 == 6 ||
|
||||
field_0x3018 == 7 || field_0x3018 == 3);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 801124FC-80112524 10CE3C 0028+00 1/0 0/0 0/0 .text checkIronBallReturn__9daAlink_cCFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm bool daAlink_c::checkIronBallReturn() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkIronBallReturn__9daAlink_cCFv.s"
|
||||
bool daAlink_c::checkIronBallReturn() const {
|
||||
return mEquipItem == IRONBALL && field_0x3018 == 7;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80112524-80112568 10CE64 0044+00 1/0 0/0 0/0 .text checkIronBallGroundStop__9daAlink_cCFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm bool daAlink_c::checkIronBallGroundStop() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkIronBallGroundStop__9daAlink_cCFv.s"
|
||||
bool daAlink_c::checkIronBallGroundStop() const {
|
||||
return mEquipItem == IRONBALL && field_0x3018 != 0 && field_0x3018 != 8 && field_0x301e == 0 &&
|
||||
field_0x301e < 10;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80112568-80112628 10CEA8 00C0+00 5/5 0/0 0/0 .text setIronBallWaitUpperAnime__9daAlink_cFi */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setIronBallWaitUpperAnime(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setIronBallWaitUpperAnime__9daAlink_cFi.s"
|
||||
void daAlink_c::setIronBallWaitUpperAnime(int param_0) {
|
||||
if (!checkIronBallWaitAnime() && !checkIronBallPreSwingAnime() &&
|
||||
(field_0x3018 == 0 || field_0x3018 == 8) && (param_0 || checkNoUpperAnime())) {
|
||||
setUpperAnimeBaseSpeed(0x19C, daAlinkHIO_ironBall_c0::m.mWaitAnmSpeed,
|
||||
daAlinkHIO_basic_c0::m.mAnmBlendFactor);
|
||||
setFacePriBck(0xE8);
|
||||
field_0x2f96 = 254;
|
||||
field_0x2f97 = 5;
|
||||
field_0x3018 = 0;
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80112628-801126F8 10CF68 00D0+00 1/1 0/0 0/0 .text checkIronBallDelete__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkIronBallDelete() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkIronBallDelete__9daAlink_cFv.s"
|
||||
void daAlink_c::checkIronBallDelete() {
|
||||
if (mProcID == PROC_IRON_BALL_SUBJECT || mProcID == PROC_IRON_BALL_MOVE ||
|
||||
mProcID == PROC_IRON_BALL_THROW || mProcID == PROC_IRON_BALL_RETURN) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (field_0x3018 == 1 || field_0x3018 == 2 || field_0x3018 == 3 ||
|
||||
((field_0x3018 == 0 || field_0x3018 == 8) && !checkIronBallWaitAnime() &&
|
||||
!checkEquipAnime() &&
|
||||
(!i_checkModeFlg(4) || i_checkModeFlg(0x70C52) || !mLinkAcch.ChkGroundHit()))) {
|
||||
deleteEquipItem(1, 0);
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 801126F8-80112768 10D038 0070+00 2/2 0/0 0/0 .text setIronBallReturn__9daAlink_cFi */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setIronBallReturn(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setIronBallReturn__9daAlink_cFi.s"
|
||||
void daAlink_c::setIronBallReturn(int param_0) {
|
||||
if (param_0 && field_0x301e != 0) {
|
||||
field_0x301e--;
|
||||
} else if (field_0x3018 != 7) {
|
||||
field_0x3018 = 7;
|
||||
field_0x301e = 0;
|
||||
seStartOnlyReverb(Z2SE_AL_IB_PULLBACK);
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80112768-801127F0 10D0A8 0088+00 2/2 0/0 0/0 .text setIronBallBgCheckPos__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setIronBallBgCheckPos() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setIronBallBgCheckPos__9daAlink_cFv.s"
|
||||
void daAlink_c::setIronBallBgCheckPos() {
|
||||
cXyz sp8;
|
||||
mDoMtx_stack_c::transS(*mIronBallChainPos);
|
||||
mDoMtx_stack_c::ZXYrotM(*mIronBallChainAngle);
|
||||
mDoMtx_stack_c::multVec(&l_ironBallCenterVec, &sp8);
|
||||
|
||||
mIronBallBgChkPos.set(sp8.x, (sp8.y - lit_14621) - mSearchBallScale, sp8.z);
|
||||
cLib_chaseF(&mSearchBallScale, FLOAT_LABEL(lit_6108), lit_7307);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 801127F0-80112C80 10D130 0490+00 1/1 0/0 0/0 .text setIronBallModel__9daAlink_cFv */
|
||||
#pragma push
|
||||
@@ -114,9 +105,7 @@ asm void daAlink_c::setIronBallModel() {
|
||||
#pragma pop
|
||||
|
||||
/* 80112C80-80112C84 10D5C0 0004+00 2/2 2/2 0/0 .text __ct__5csXyzFv */
|
||||
extern "C" void __ct__5csXyzFv() {
|
||||
/* empty function */
|
||||
}
|
||||
extern "C" void __ct__5csXyzFv() {}
|
||||
|
||||
/* 80112C84-80112E7C 10D5C4 01F8+00 1/1 0/0 0/0 .text
|
||||
* setIronBallGroundVec__9daAlink_cFPC4cXyzP4cXyz */
|
||||
@@ -141,14 +130,18 @@ asm void daAlink_c::setIronBallChainPos() {
|
||||
#pragma pop
|
||||
|
||||
/* 80113CA0-80113D58 10E5E0 00B8+00 1/1 0/0 0/0 .text checkIronBallReturnChange__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkIronBallReturnChange() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkIronBallReturnChange__9daAlink_cFv.s"
|
||||
BOOL daAlink_c::checkIronBallReturnChange() {
|
||||
if (mProcID != PROC_IRON_BALL_THROW ||
|
||||
(!(mLookAngleY > 0x400) && mIronBallBgChkPos.y < (current.pos.y - lit_8472)) ||
|
||||
(mLookAngleY > 0x400 && mItemMode == 0x64) ||
|
||||
(field_0xFB8.ChkAtHit() && field_0xFB8.GetAtHitGObj() != NULL &&
|
||||
static_cast<dCcD_GObjInf*>(field_0xFB8.GetAtHitGObj())->ChkTgIronBallRebound())) {
|
||||
setIronBallReturn(0);
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80113D58-801150E4 10E698 138C+00 1/1 0/0 0/0 .text setIronBallPos__9daAlink_cFv */
|
||||
#pragma push
|
||||
@@ -162,137 +155,277 @@ asm void daAlink_c::setIronBallPos() {
|
||||
|
||||
/* 801150E4-8011510C 10FA24 0028+00 10/10 0/0 0/0 .text checkIronBallAnime__9daAlink_cCFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm BOOL daAlink_c::checkIronBallAnime() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkIronBallAnime__9daAlink_cCFv.s"
|
||||
BOOL daAlink_c::checkIronBallAnime() const {
|
||||
return checkIronBallPreSwingAnime() || checkIronBallSwingAnime();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8011510C-801151E0 10FA4C 00D4+00 1/1 0/0 0/0 .text setIronBallReadyAnime__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setIronBallReadyAnime() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setIronBallReadyAnime__9daAlink_cFv.s"
|
||||
void daAlink_c::setIronBallReadyAnime() {
|
||||
resetUpperAnime(UPPER_2, lit_6041);
|
||||
setSingleAnime(ANM_IRONBALL_ATTACK, daAlinkHIO_ironBall_c0::m.mPrepareAnmSpeed, FLOAT_LABEL(lit_6108),
|
||||
0x15, daAlinkHIO_ironBall_c0::m.mPrepareInterpolation);
|
||||
setUpperAnimeBaseSpeed(0x19A, daAlinkHIO_ironBall_c0::m.mPrepareAnmSpeed, lit_6041);
|
||||
mNowAnmPackUpper[2].setRatio(FLOAT_LABEL(lit_6108));
|
||||
voiceStart(Z2SE_AL_V_SWING_IB);
|
||||
|
||||
field_0xFB8.OffAtSetBit();
|
||||
field_0xFB8.ResetAtHit();
|
||||
field_0xFB8.SetAtAtp(2);
|
||||
|
||||
field_0x301e = 10;
|
||||
field_0x3020 = 0;
|
||||
field_0x3494 = lit_7808;
|
||||
mSearchBallScale = FLOAT_LABEL(lit_6108);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 801151E0-80115254 10FB20 0074+00 2/2 0/0 0/0 .text setIronBallBaseAnime__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setIronBallBaseAnime() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setIronBallBaseAnime__9daAlink_cFv.s"
|
||||
void daAlink_c::setIronBallBaseAnime() {
|
||||
if (checkIronBallSwingAnime() && !checkUnderMove0BckNoArc(ANM_IRONBALL_TURN)) {
|
||||
setSingleAnimeBaseSpeed(ANM_IRONBALL_TURN, daAlinkHIO_ironBall_c0::m.mTurnAnmSpeed, daAlinkHIO_ironBall_c0::m.mTurnInterpolation);
|
||||
mUnderFrameCtrl[0].setFrame(mUpperFrameCtrl[2].getFrame());
|
||||
getNowAnmPackUnder(UNDER_0)->setFrame(mUpperFrameCtrl[2].getFrame());
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80115254-801153F8 10FB94 01A4+00 1/1 0/0 0/0 .text checkUpperItemActionIronBall__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkUpperItemActionIronBall() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkUpperItemActionIronBall__9daAlink_cFv.s"
|
||||
BOOL daAlink_c::checkUpperItemActionIronBall() {
|
||||
if (!itemButton() && checkReadyItem()) {
|
||||
field_0x3020 = 1;
|
||||
}
|
||||
|
||||
if (checkIronBallPreSwingAnime()) {
|
||||
daPy_frameCtrl_c* frameCtrl = mUnderFrameCtrl;
|
||||
if (field_0x3020 != 0 && frameCtrl->checkPass(lit_10286)) {
|
||||
return procIronBallThrowInit();
|
||||
}
|
||||
|
||||
if (frameCtrl->checkAnmEnd()) {
|
||||
if (i_checkModeFlg(1)) {
|
||||
setSingleAnimeBaseSpeed(ANM_IRONBALL_TURN, daAlinkHIO_ironBall_c0::m.mTurnAnmSpeed, daAlinkHIO_ironBall_c0::m.mTurnInterpolation);
|
||||
}
|
||||
|
||||
u16 upperId = getMainBckData(ANM_IRONBALL_TURN)->m_upperID;
|
||||
setUpperAnimeBaseSpeed(upperId, daAlinkHIO_ironBall_c0::m.mTurnAnmSpeed, daAlinkHIO_ironBall_c0::m.mTurnInterpolation);
|
||||
field_0x3018 = 2;
|
||||
seStartOnlyReverb(Z2SE_AL_IB_SWING);
|
||||
return 1;
|
||||
}
|
||||
|
||||
if (frameCtrl->getFrame() > lit_8781) {
|
||||
field_0x3018 = 1;
|
||||
}
|
||||
} else {
|
||||
daPy_frameCtrl_c* frameCtrl = &mUpperFrameCtrl[2];
|
||||
|
||||
if (field_0x3020 != 0 && frameCtrl->checkPass(lit_10193)) {
|
||||
return procIronBallThrowInit();
|
||||
} else if (frameCtrl->checkPass(FLOAT_LABEL(lit_6108))) {
|
||||
seStartOnlyReverb(Z2SE_AL_IB_SWING);
|
||||
}
|
||||
}
|
||||
|
||||
return cancelUpperItemReadyAnime(0);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 801153F8-801154E4 10FD38 00EC+00 2/2 0/0 0/0 .text checkNextActionIronBall__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkNextActionIronBall() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkNextActionIronBall__9daAlink_cFv.s"
|
||||
#pragma optimization_level 2
|
||||
int daAlink_c::checkNextActionIronBall() {
|
||||
if (mFastShotTime != 0) {
|
||||
mFastShotTime--;
|
||||
}
|
||||
|
||||
if (!checkIronBallAnime()) {
|
||||
setIronBallReadyAnime();
|
||||
setFastShotTimer();
|
||||
|
||||
if (!i_checkAttentionLock()) {
|
||||
field_0x2fe4 = shape_angle.y;
|
||||
}
|
||||
}
|
||||
|
||||
if (!i_checkAttentionLock() && mFastShotTime == 0) {
|
||||
return procIronBallSubjectInit();
|
||||
} else {
|
||||
return procIronBallMoveInit();
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 801154E4-80115564 10FE24 0080+00 1/1 0/0 0/0 .text procIronBallSubjectInit__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procIronBallSubjectInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procIronBallSubjectInit__9daAlink_cFv.s"
|
||||
int daAlink_c::procIronBallSubjectInit() {
|
||||
if (!commonProcInitNotSameProc(PROC_IRON_BALL_SUBJECT)) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
mNormalSpeed = FLOAT_LABEL(lit_6108);
|
||||
|
||||
if (checkIronBallAnime()) {
|
||||
setIronBallBaseAnime();
|
||||
}
|
||||
|
||||
current.angle.y = shape_angle.y;
|
||||
dComIfGp_setPlayerStatus0(0, 0x400);
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80115564-801155EC 10FEA4 0088+00 1/0 0/0 0/0 .text procIronBallSubject__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procIronBallSubject() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procIronBallSubject__9daAlink_cFv.s"
|
||||
int daAlink_c::procIronBallSubject() {
|
||||
if (checkIronBallAnime()) {
|
||||
setDoStatus(0x12);
|
||||
}
|
||||
|
||||
setShapeAngleToAtnActor(0);
|
||||
|
||||
if (!checkNextAction(0) && itemButton() && field_0x3018 == 2) {
|
||||
setBodyAngleToCamera();
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 801155EC-80115674 10FF2C 0088+00 1/1 0/0 0/0 .text procIronBallMoveInit__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procIronBallMoveInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procIronBallMoveInit__9daAlink_cFv.s"
|
||||
int daAlink_c::procIronBallMoveInit() {
|
||||
if (!commonProcInitNotSameProc(PROC_IRON_BALL_MOVE)) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (checkZeroSpeedF()) {
|
||||
onModeFlg(1);
|
||||
}
|
||||
|
||||
if (checkIronBallPreSwingAnime()) {
|
||||
mNormalSpeed = FLOAT_LABEL(lit_6108);
|
||||
}
|
||||
|
||||
dComIfGp_setPlayerStatus0(0, 0x400);
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80115674-8011577C 10FFB4 0108+00 1/0 0/0 0/0 .text procIronBallMove__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procIronBallMove() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procIronBallMove__9daAlink_cFv.s"
|
||||
int daAlink_c::procIronBallMove() {
|
||||
if (checkIronBallAnime()) {
|
||||
setDoStatus(0x12);
|
||||
}
|
||||
|
||||
setShapeAngleToAtnActor(0);
|
||||
|
||||
if (!checkNextAction(0)) {
|
||||
f32 var_f31 = lit_6041;
|
||||
|
||||
if (checkIronBallPreSwingAnime()) {
|
||||
mNormalSpeed = FLOAT_LABEL(lit_6108);
|
||||
}
|
||||
|
||||
if (checkZeroSpeedF()) {
|
||||
onModeFlg(1);
|
||||
|
||||
if (field_0x2f98 != 2) {
|
||||
field_0x2f98 = 2;
|
||||
var_f31 = daAlinkHIO_basic_c0::m.mAnmBlendFactor;
|
||||
}
|
||||
} else {
|
||||
offModeFlg(1);
|
||||
}
|
||||
|
||||
if (i_checkModeFlg(1)) {
|
||||
setIronBallBaseAnime();
|
||||
} else {
|
||||
setBlendAtnMoveAnime(var_f31);
|
||||
}
|
||||
|
||||
setBodyAngleXReadyAnime(0);
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8011577C-80115860 1100BC 00E4+00 1/1 0/0 0/0 .text procIronBallThrowInit__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procIronBallThrowInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procIronBallThrowInit__9daAlink_cFv.s"
|
||||
int daAlink_c::procIronBallThrowInit() {
|
||||
commonProcInit(PROC_IRON_BALL_THROW);
|
||||
setSingleAnime(ANM_IRONBALL_ATTACK, daAlinkHIO_ironBall_c0::m.mPreThrowAnmSpeed, lit_34957, 30, daAlinkHIO_ironBall_c0::m.mPreThrowAnmInterpolation);
|
||||
field_0x2f99 = 12;
|
||||
field_0x3588 = l_ironBallBaseAnime;
|
||||
mNormalSpeed = FLOAT_LABEL(lit_6108);
|
||||
current.angle.y = shape_angle.y;
|
||||
mCommonCounter = 0;
|
||||
field_0x3018 = 3;
|
||||
field_0x3024 = 0;
|
||||
field_0x3026 = 0;
|
||||
|
||||
voiceStart(Z2SE_AL_V_THROW_IB);
|
||||
seStartOnlyReverb(Z2SE_AL_IB_THROW);
|
||||
field_0xFB8.SetAtAtp(3);
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80115860-801159F0 1101A0 0190+00 1/0 0/0 0/0 .text procIronBallThrow__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procIronBallThrow() {
|
||||
asm int daAlink_c::procIronBallThrow() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procIronBallThrow__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 801159F0-80115AA0 110330 00B0+00 2/2 0/0 0/0 .text procIronBallReturnInit__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procIronBallReturnInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procIronBallReturnInit__9daAlink_cFv.s"
|
||||
int daAlink_c::procIronBallReturnInit() {
|
||||
commonProcInit(PROC_IRON_BALL_RETURN);
|
||||
|
||||
if (field_0x3018 == 8) {
|
||||
mCommonCounter = 1;
|
||||
setSingleAnimeParam(ANM_IRONBALL_CATCH, &daAlinkHIO_ironBall_c0::m.mCatchAnm);
|
||||
field_0x2f99 = 12;
|
||||
} else {
|
||||
setSingleAnimeBaseSpeed(ANM_IRONBALL_PULL, daAlinkHIO_ironBall_c0::m.mPullAnmSpeed, daAlinkHIO_ironBall_c0::m.mPullInterpolation);
|
||||
field_0x2f99 = 12;
|
||||
mCommonCounter = 0;
|
||||
}
|
||||
|
||||
field_0x3588 = l_ironBallBaseAnime;
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80115AA0-80115C20 1103E0 0180+00 1/0 0/0 0/0 .text procIronBallReturn__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procIronBallReturn() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procIronBallReturn__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
int daAlink_c::procIronBallReturn() {
|
||||
daPy_frameCtrl_c* frameCtrl = mUnderFrameCtrl;
|
||||
|
||||
if (mEquipItem != IRONBALL) {
|
||||
return checkWaitAction();
|
||||
}
|
||||
|
||||
field_0x2f99 = 4;
|
||||
|
||||
if (field_0x3018 == 8 && mCommonCounter == 0) {
|
||||
mCommonCounter = 1;
|
||||
setSingleAnimeParam(ANM_IRONBALL_CATCH, &daAlinkHIO_ironBall_c0::m.mCatchAnm);
|
||||
field_0x2f99 = 12;
|
||||
seStartOnlyReverb(Z2SE_AL_IB_CATCH);
|
||||
|
||||
f32 tmp_0 = FLOAT_LABEL(lit_6108);
|
||||
dComIfGp_getVibration().StartShock(3, 1, cXyz(tmp_0, lit_6040, tmp_0));
|
||||
} else if (frameCtrl->checkAnmEnd()) {
|
||||
if (field_0x3018 == 8) {
|
||||
field_0x3018 = 0;
|
||||
setIronBallWaitUpperAnime(1);
|
||||
checkNextAction(0);
|
||||
}
|
||||
} else if (field_0x3018 == 8 && frameCtrl->getFrame() > daAlinkHIO_ironBall_c0::m.mCatchAnm.mCheckFrame) {
|
||||
field_0x3018 = 0;
|
||||
setIronBallWaitUpperAnime(1);
|
||||
|
||||
if (!checkNextAction(1)) {
|
||||
field_0x3018 = 8;
|
||||
resetUpperAnime(UPPER_2, FLOAT_LABEL(lit_6108));
|
||||
}
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
+123
-110
@@ -1,88 +1,96 @@
|
||||
/* 80110654-80110668 10AF94 0014+00 1/1 0/0 0/0 .text daAlink_searchTagKandelaar__FP10fopAc_ac_cPv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daAlink_searchTagKandelaar(fopAc_ac_c* param_0, void* param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/daAlink_searchTagKandelaar__FP10fopAc_ac_cPv.s"
|
||||
static fopAc_ac_c* daAlink_searchTagKandelaar(fopAc_ac_c* i_actor, void* param_1) {
|
||||
if (fopAcM_GetName(i_actor) == PROC_TAG_LANTERN) {
|
||||
return i_actor;
|
||||
}
|
||||
|
||||
return NULL;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80110668-801106E8 10AFA8 0080+00 1/1 0/0 0/0 .text daAlink_searchTagKtOnFire__FP10fopAc_ac_cPv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daAlink_searchTagKtOnFire(fopAc_ac_c* param_0, void* param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/daAlink_searchTagKtOnFire__FP10fopAc_ac_cPv.s"
|
||||
static fopAc_ac_c* daAlink_searchTagKtOnFire(fopAc_ac_c* i_actor, void* param_1) {
|
||||
daAlink_c* link = daAlink_getAlinkActorClass();
|
||||
|
||||
if (fopAcM_GetName(i_actor) == PROC_Tag_KtOnFire &&
|
||||
i_actor->current.pos.abs2(link->current.pos) < lit_26816 &&
|
||||
fopAcM_seenActorAngleY(link, i_actor) < 0x3000) {
|
||||
return i_actor;
|
||||
}
|
||||
|
||||
return NULL;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 801106E8-8011078C 10B028 00A4+00 1/0 0/0 0/0 .text setKandelaarMtx__9daAlink_cFPA4_fii
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setKandelaarMtx(f32 (*param_0)[4], int param_1, int param_2) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setKandelaarMtx__9daAlink_cFPA4_fii.s"
|
||||
void daAlink_c::setKandelaarMtx(Mtx i_mtx, int param_1, int param_2) {
|
||||
if (field_0x06fc != NULL) {
|
||||
if (i_checkNoResetFlg2(FLG2_UNK_1)) {
|
||||
deleteEquipItem(0, 1);
|
||||
}
|
||||
|
||||
i_onEndResetFlg1(ERFLG1_UNK_4);
|
||||
|
||||
field_0x06fc->i_setBaseTRMtx(i_mtx);
|
||||
if (param_1 == 0) {
|
||||
i_onEndResetFlg1(ERFLG1_UNK_8);
|
||||
}
|
||||
|
||||
if (param_2 != 0) {
|
||||
i_onEndResetFlg1(ERFLG1_UNK_10);
|
||||
}
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8011078C-801107BC 10B0CC 0030+00 2/2 0/0 0/0 .text checkWaterInKandelaarOffset__9daAlink_cFf */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkWaterInKandelaarOffset(f32 param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkWaterInKandelaarOffset__9daAlink_cFf.s"
|
||||
BOOL daAlink_c::checkWaterInKandelaarOffset(f32 param_0) {
|
||||
f32 tmp_65 = lit_17593; // tmp can be removed with literals
|
||||
f32 base_y_pos;
|
||||
if (i_checkModeFlg(0x40)) {
|
||||
base_y_pos = mRightFootPos.y;
|
||||
} else {
|
||||
base_y_pos = current.pos.y;
|
||||
}
|
||||
|
||||
return param_0 > tmp_65 + base_y_pos;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 801107BC-80110840 10B0FC 0084+00 2/2 0/0 0/0 .text checkWaterInKandelaar__9daAlink_cFf
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkWaterInKandelaar(f32 param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkWaterInKandelaar__9daAlink_cFf.s"
|
||||
void daAlink_c::checkWaterInKandelaar(f32 param_0) {
|
||||
if (i_checkNoResetFlg2(FLG2_UNK_1) && checkWaterInKandelaarOffset(param_0)) {
|
||||
if (mEquipItem == KANTERA) {
|
||||
deleteEquipItem(1, 1);
|
||||
} else {
|
||||
offKandelaarModel();
|
||||
seStartOnlyReverb(Z2SE_AL_ITEM_TAKEOUT);
|
||||
}
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80110840-8011087C 10B180 003C+00 13/13 0/0 0/0 .text offKandelaarModel__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::offKandelaarModel() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/offKandelaarModel__9daAlink_cFv.s"
|
||||
void daAlink_c::offKandelaarModel() {
|
||||
i_offNoResetFlg2(0x10000001);
|
||||
mZ2Link.setKanteraState(0);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8011087C-801108B4 10B1BC 0038+00 1/0 0/0 0/0 .text checkUseKandelaar__9daAlink_cFi */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm bool daAlink_c::checkUseKandelaar(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkUseKandelaar__9daAlink_cFi.s"
|
||||
bool daAlink_c::checkUseKandelaar(int param_0) {
|
||||
return (param_0 == 0 && i_checkNoResetFlg2(FLG2_UNK_1)) ||
|
||||
(param_0 != 0 && mEquipItem == KANTERA);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 801108B4-801108EC 10B1F4 0038+00 1/0 0/0 0/0 .text checkKandelaarSwing__9daAlink_cCFi
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm bool daAlink_c::checkKandelaarSwing(int param_0) const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkKandelaarSwing__9daAlink_cCFi.s"
|
||||
bool daAlink_c::checkKandelaarSwing(int param_0) const {
|
||||
if ((checkKandelaarSwingAnime() || mProcID == PROC_KANDELAAR_SWING) && (dComIfGs_getOil() != 0 || param_0 == 0)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 801108EC-80110BEC 10B22C 0300+00 1/1 0/0 0/0 .text kandelaarModelCallBack__9daAlink_cFv */
|
||||
#pragma push
|
||||
@@ -96,35 +104,30 @@ asm void daAlink_c::kandelaarModelCallBack() {
|
||||
|
||||
/* 80110BEC-80110C28 10B52C 003C+00 1/1 0/0 0/0 .text daAlink_kandelaarModelCallBack__FP8J3DJointi
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daAlink_kandelaarModelCallBack(J3DJoint* param_0, int param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/daAlink_kandelaarModelCallBack__FP8J3DJointi.s"
|
||||
static int daAlink_kandelaarModelCallBack(J3DJoint* param_0, int param_1) {
|
||||
daAlink_c* link = (daAlink_c*)j3dSys.getModel()->getUserArea();
|
||||
|
||||
if (param_1 == 0) {
|
||||
link->kandelaarModelCallBack();
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80110C28-80110C6C 10B568 0044+00 1/0 0/0 0/0 .text getKandelaarFlamePos__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm bool daAlink_c::getKandelaarFlamePos() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/getKandelaarFlamePos__9daAlink_cFv.s"
|
||||
cXyz* daAlink_c::getKandelaarFlamePos() {
|
||||
if ((!i_checkNoResetFlg2((daPy_FLG2)0x20001) && !i_checkEndResetFlg1(ERFLG1_UNK_4)) || i_checkWolf() || !i_checkNoResetFlg1(FLG1_UNK_80)) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
return &mKandelaarFlamePos;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80110C6C-80110C94 10B5AC 0028+00 3/3 0/0 0/0 .text checkKandelaarEquipAnime__9daAlink_cCFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm BOOL daAlink_c::checkKandelaarEquipAnime() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkKandelaarEquipAnime__9daAlink_cCFv.s"
|
||||
BOOL daAlink_c::checkKandelaarEquipAnime() const {
|
||||
return checkUpperAnime(0x264) || checkUpperAnime(0x268);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80110C94-80110E80 10B5D4 01EC+00 1/1 0/0 0/0 .text preKandelaarDraw__9daAlink_cFv */
|
||||
#pragma push
|
||||
@@ -138,9 +141,7 @@ asm void daAlink_c::preKandelaarDraw() {
|
||||
|
||||
/* 80110E80-80110E84 10B7C0 0004+00 0/0 3/0 0/0 .text
|
||||
* setTevColor__11J3DTevBlockFUlPC13J3DGXColorS10 */
|
||||
void J3DTevBlock::setTevColor(u32 param_0, J3DGXColorS10 const* param_1) {
|
||||
/* empty function */
|
||||
}
|
||||
void J3DTevBlock::setTevColor(u32 param_0, J3DGXColorS10 const* param_1) {}
|
||||
|
||||
/* 80110E84-80110F88 10B7C4 0104+00 4/4 0/0 0/0 .text setKandelaarModel__9daAlink_cFv */
|
||||
#pragma push
|
||||
@@ -154,14 +155,16 @@ asm void daAlink_c::setKandelaarModel() {
|
||||
|
||||
/* 80110F88-80110FE0 10B8C8 0058+00 3/3 0/0 0/0 .text resetOilBottleModel__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::resetOilBottleModel() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/resetOilBottleModel__9daAlink_cFv.s"
|
||||
void daAlink_c::resetOilBottleModel() {
|
||||
deleteEquipItem(0, 1);
|
||||
|
||||
if (field_0x300e != 0) {
|
||||
setKandelaarModel();
|
||||
mEquipItem = KANTERA;
|
||||
}
|
||||
|
||||
returnKeepItemData();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80110FE0-801110B8 10B920 00D8+00 3/3 0/0 0/0 .text commonKandelaarPourInit__9daAlink_cFv */
|
||||
#pragma push
|
||||
@@ -198,39 +201,49 @@ asm void daAlink_c::initKandelaarSwing() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procKandelaarSwingInit() {
|
||||
asm int daAlink_c::procKandelaarSwingInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procKandelaarSwingInit__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 801115CC-8011167C 10BF0C 00B0+00 1/0 0/0 0/0 .text procKandelaarSwing__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procKandelaarSwing() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procKandelaarSwing__9daAlink_cFv.s"
|
||||
int daAlink_c::procKandelaarSwing() {
|
||||
daPy_frameCtrl_c* frameCtrl = mUnderFrameCtrl;
|
||||
|
||||
if (frameCtrl->checkAnmEnd()) {
|
||||
if (mDemo.getDemoMode() == 0x27) {
|
||||
dComIfGp_evmng_cutEnd(field_0x3184);
|
||||
} else {
|
||||
checkNextAction(0);
|
||||
}
|
||||
} else if (frameCtrl->getFrame() > field_0x3478 && mDemo.getDemoMode() != 0x27) {
|
||||
onModeFlg(4);
|
||||
checkNextAction(1);
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8011167C-80111724 10BFBC 00A8+00 1/1 0/0 0/0 .text procKandelaarPourInit__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procKandelaarPourInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procKandelaarPourInit__9daAlink_cFv.s"
|
||||
int daAlink_c::procKandelaarPourInit() {
|
||||
if (!dComIfGp_event_compulsory(this, 0, 0xFBFF)) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
mDemo.i_setSpecialDemoType();
|
||||
commonProcInit(PROC_KANDELAAR_POUR);
|
||||
current.angle.y = shape_angle.y;
|
||||
mNormalSpeed = FLOAT_LABEL(lit_6108);
|
||||
field_0x2f98 = 4;
|
||||
setSingleAnimeParam(ANM_OIL_BOTTLE_POUR_START, &daAlinkHIO_kandelaar_c0::m.mBeginUnkAnm);
|
||||
commonKandelaarPourInit();
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80111724-8011174C 10C064 0028+00 1/0 0/0 0/0 .text procKandelaarPour__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procKandelaarPour() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procKandelaarPour__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
int daAlink_c::procKandelaarPour() {
|
||||
commonKandelaarPour(0);
|
||||
return 1;
|
||||
}
|
||||
+1140
-505
File diff suppressed because it is too large
Load Diff
@@ -112,20 +112,18 @@ void daAlink_c::setSpinnerSyncPos() {
|
||||
daSpinner_c* spinner = (daSpinner_c*)mRideAcKeep.getActor();
|
||||
|
||||
mDoMtx_multVecZero(spinner->getModelMtx(), ¤t.pos);
|
||||
mDoMtx_stack_c::ZXYrotS(spinner->mCollisionRot);
|
||||
mDoMtx_stack_c::YrotM(mCollisionRot.y - spinner->mCollisionRot.y);
|
||||
mDoMtx_MtxToRot(mDoMtx_stack_c::get(), &mCollisionRot);
|
||||
mDoMtx_stack_c::ZXYrotS(spinner->shape_angle);
|
||||
mDoMtx_stack_c::YrotM(shape_angle.y - spinner->shape_angle.y);
|
||||
mDoMtx_MtxToRot(mDoMtx_stack_c::get(), &shape_angle);
|
||||
field_0x37a4 = spinner->current.pos;
|
||||
}
|
||||
|
||||
/* 8010DC64-8010DDCC 1085A4 0168+00 1/1 0/0 0/0 .text procSpinnerReadyInit__9daAlink_cFv
|
||||
*/
|
||||
// matches with literals
|
||||
#ifdef NONMATCHING
|
||||
int daAlink_c::procSpinnerReadyInit() {
|
||||
fopAc_ac_c* spinner = (fopAc_ac_c*)fopAcM_fastCreate(
|
||||
PROC_SPINNER, daSpinner_c::getWaitArg(), ¤t.pos, fopAcM_GetRoomNo(this),
|
||||
&mCollisionRot, NULL, -1, NULL, NULL);
|
||||
&shape_angle, NULL, -1, NULL, NULL);
|
||||
|
||||
if (spinner == NULL) {
|
||||
return 0;
|
||||
@@ -133,20 +131,20 @@ int daAlink_c::procSpinnerReadyInit() {
|
||||
|
||||
commonProcInit(PROC_SPINNER_READY);
|
||||
mRideAcKeep.setData(spinner);
|
||||
setSingleAnime(ANM_VJUMP_START, daAlinkHIO_smallJump_c0::m.mSmallJumpAnm.mRate, 6.0f,
|
||||
daAlinkHIO_smallJump_c0::m.mSmallJumpAnm.mEndF,
|
||||
setSingleAnime(ANM_VJUMP_START, daAlinkHIO_smallJump_c0::m.mSmallJumpAnm.mSpeed, lit_7977,
|
||||
daAlinkHIO_smallJump_c0::m.mSmallJumpAnm.mEndFrame,
|
||||
daAlinkHIO_smallJump_c0::m.mSmallJumpAnm.mInterpolation);
|
||||
mNormalSpeed = 0.0f;
|
||||
mNormalSpeed = FLOAT_LABEL(lit_6108);
|
||||
setHeavyBoots(0);
|
||||
|
||||
mSpeed.y = 26.0f;
|
||||
mSpeed.y = lit_7451;
|
||||
voiceStart(Z2SE_AL_V_JUMP_S);
|
||||
seStartOnlyReverb(Z2SE_AL_SPINNER_START);
|
||||
|
||||
field_0x2f99 = 15;
|
||||
deleteEquipItem(TRUE, TRUE);
|
||||
|
||||
current.angle.y = mCollisionRot.y;
|
||||
current.angle.y = shape_angle.y;
|
||||
field_0x3588 = l_waitBaseAnime;
|
||||
field_0x33b0 = field_0x3588.y;
|
||||
field_0x34d4 = l_waitBaseAnime;
|
||||
@@ -154,16 +152,6 @@ int daAlink_c::procSpinnerReadyInit() {
|
||||
|
||||
return 1;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm int daAlink_c::procSpinnerReadyInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procSpinnerReadyInit__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 8010DDCC-8010DE64 10870C 0098+00 1/0 0/0 0/0 .text procSpinnerReady__9daAlink_cFv */
|
||||
int daAlink_c::procSpinnerReady() {
|
||||
@@ -211,7 +199,7 @@ int daAlink_c::procSpinnerWaitInit() {
|
||||
mNormalSpeed = 0.0f;
|
||||
mCommonCounter = 0;
|
||||
|
||||
field_0x300e = mCollisionRot.y;
|
||||
field_0x300e = shape_angle.y;
|
||||
field_0x3010 = 0;
|
||||
field_0x3198 = ANM_RIDE_CROUCH;
|
||||
field_0x33b0 = 70.0f;
|
||||
@@ -259,13 +247,13 @@ int daAlink_c::procSpinnerWait() {
|
||||
s16 angle = field_0x33ac * 384.0f * field_0x33ac;
|
||||
|
||||
if (direction == DIR_LEFT) {
|
||||
mCollisionRot.y += angle;
|
||||
shape_angle.y += angle;
|
||||
} else if (direction == DIR_RIGHT) {
|
||||
mCollisionRot.y -= angle;
|
||||
shape_angle.y -= angle;
|
||||
}
|
||||
|
||||
current.angle.y = mCollisionRot.y;
|
||||
field_0x300e = mCollisionRot.y;
|
||||
current.angle.y = shape_angle.y;
|
||||
field_0x300e = shape_angle.y;
|
||||
}
|
||||
} else {
|
||||
if (checkSetItemTrigger(SPINNER) || swordSwingTrigger() || itemSetBtn == 2) {
|
||||
@@ -316,20 +304,20 @@ int daAlink_c::procSpinnerWait() {
|
||||
}
|
||||
} else if (spinner->getButtonJump() && field_0x3198 != ANM_RIDE_JUMP) {
|
||||
field_0x3198 = ANM_RIDE_JUMP;
|
||||
setSingleAnime(ANM_RIDE_JUMP, 0.0f, daAlinkHIO_board_c0::m.mAirborneAnm.mStart,
|
||||
daAlinkHIO_board_c0::m.mAirborneAnm.mEndF,
|
||||
setSingleAnime(ANM_RIDE_JUMP, 0.0f, daAlinkHIO_board_c0::m.mAirborneAnm.mStartFrame,
|
||||
daAlinkHIO_board_c0::m.mAirborneAnm.mEndFrame,
|
||||
daAlinkHIO_board_c0::m.mAirborneAnm.mInterpolation);
|
||||
field_0x3010 = 0;
|
||||
} else if (field_0x3198 == ANM_RIDE_JUMP) {
|
||||
if (!spinner->getJumpFlg()) {
|
||||
setSingleAnime(ANM_RIDE_JUMP_LAND, daAlinkHIO_board_c0::m.mLandAnm.mRate,
|
||||
daAlinkHIO_board_c0::m.mLandAnm.mStart, 16,
|
||||
setSingleAnime(ANM_RIDE_JUMP_LAND, daAlinkHIO_board_c0::m.mLandAnm.mSpeed,
|
||||
daAlinkHIO_board_c0::m.mLandAnm.mStartFrame, 16,
|
||||
daAlinkHIO_board_c0::m.mLandAnm.mInterpolation);
|
||||
field_0x3198 = ANM_RIDE_JUMP_LAND;
|
||||
} else if (field_0x3010 == 0 && field_0x2060->getOldFrameRate() < 0.01f) {
|
||||
setSingleAnime(ANM_RIDE_JUMP, daAlinkHIO_board_c0::m.mAirborneAnm.mRate,
|
||||
daAlinkHIO_board_c0::m.mAirborneAnm.mStart,
|
||||
daAlinkHIO_board_c0::m.mAirborneAnm.mEndF, -1.0f);
|
||||
setSingleAnime(ANM_RIDE_JUMP, daAlinkHIO_board_c0::m.mAirborneAnm.mSpeed,
|
||||
daAlinkHIO_board_c0::m.mAirborneAnm.mStartFrame,
|
||||
daAlinkHIO_board_c0::m.mAirborneAnm.mEndFrame, -1.0f);
|
||||
field_0x3010 = 1;
|
||||
}
|
||||
} else if ((field_0x3198 == ANM_RIDE_JUMP_LAND && frameCtrl->checkAnmEnd()) ||
|
||||
@@ -341,7 +329,7 @@ int daAlink_c::procSpinnerWait() {
|
||||
}
|
||||
|
||||
setSpinnerSyncPos();
|
||||
mCollisionRot.y = field_0x300e;
|
||||
shape_angle.y = field_0x300e;
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
+109
-51
@@ -1,12 +1,20 @@
|
||||
/* 800EA844-800EA8D0 0E5184 008C+00 5/5 0/0 0/0 .text checkSumouVsActor__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkSumouVsActor() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkSumouVsActor__9daAlink_cFv.s"
|
||||
BOOL daAlink_c::checkSumouVsActor() {
|
||||
mCargoCarryAcKeep.setActor();
|
||||
|
||||
if (mCargoCarryAcKeep.getActor() == NULL) {
|
||||
cancelSumouMode();
|
||||
procWaitInit();
|
||||
return false;
|
||||
}
|
||||
|
||||
if (mSpecialMode == 0xD || mSpecialMode == 0xB || mSpecialMode == 0xC || mSpecialMode == 0xE) {
|
||||
procSumouWinLoseInit();
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800EA8D0-800EA908 0E5210 0038+00 5/5 0/0 0/0 .text cancelSumouMode__9daAlink_cFv */
|
||||
void daAlink_c::cancelSumouMode() {
|
||||
@@ -26,20 +34,34 @@ void daAlink_c::setSumouPunchStatus() {
|
||||
}
|
||||
|
||||
/* 800EA950-800EAA28 0E5290 00D8+00 4/4 0/0 0/0 .text procSumouReadyInit__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procSumouReadyInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procSumouReadyInit__9daAlink_cFv.s"
|
||||
int daAlink_c::procSumouReadyInit() {
|
||||
if (!commonProcInitNotSameProc(PROC_SUMOU_READY)) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
setSingleAnimeBaseMorf(ANM_SUMOU_MIAU, FLOAT_LABEL(lit_6108));
|
||||
mNormalSpeed = FLOAT_LABEL(lit_6108);
|
||||
current.angle.y = shape_angle.y;
|
||||
field_0x3588 = l_waitBaseAnime;
|
||||
field_0x34d4 = field_0x3588;
|
||||
field_0x2f99 = 4;
|
||||
mSpecialMode = 1;
|
||||
mCommonCounter = 0;
|
||||
field_0x300e = 0;
|
||||
deleteEquipItem(0, 1);
|
||||
|
||||
if (mThrowBoomerangAcKeep.getActor() != NULL) {
|
||||
static_cast<daBoomerang_c*>(mThrowBoomerangAcKeep.getActor())->onForceDelete();
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800EAA28-800EAC4C 0E5368 0224+00 1/0 0/0 0/0 .text procSumouReady__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procSumouReady() {
|
||||
asm int daAlink_c::procSumouReady() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procSumouReady__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -49,7 +71,7 @@ asm void daAlink_c::procSumouReady() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procSumouMoveInit() {
|
||||
asm int daAlink_c::procSumouMoveInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procSumouMoveInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -59,7 +81,7 @@ asm void daAlink_c::procSumouMoveInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procSumouMove() {
|
||||
asm int daAlink_c::procSumouMove() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procSumouMove__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -67,20 +89,31 @@ asm void daAlink_c::procSumouMove() {
|
||||
|
||||
/* 800EB208-800EB2BC 0E5B48 00B4+00 4/4 0/0 0/0 .text procSumouSideMoveInit__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procSumouSideMoveInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procSumouSideMoveInit__9daAlink_cFv.s"
|
||||
int daAlink_c::procSumouSideMoveInit() {
|
||||
commonProcInit(PROC_SUMOU_SIDE_MOVE);
|
||||
mSpecialMode = 0x16;
|
||||
field_0x2f98 = 3;
|
||||
current.angle.y = shape_angle.y + -0x4000;
|
||||
field_0x594 = daAlinkHIO_atnMove_c0::m.mMaxSpeed;
|
||||
setSingleAnimeBase(ANM_SUMOU_FIGHT_WAIT);
|
||||
|
||||
field_0x3198 = 0x141;
|
||||
setSumouPunchStatus();
|
||||
setDoStatusEmphasys(0x15);
|
||||
dComIfGp_setAdvanceDirection(5);
|
||||
|
||||
field_0x2f99 = 12;
|
||||
setFootEffectProcType(5);
|
||||
field_0x3008 = 15;
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800EB2BC-800EB624 0E5BFC 0368+00 1/0 0/0 0/0 .text procSumouSideMove__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procSumouSideMove() {
|
||||
asm int daAlink_c::procSumouSideMove() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procSumouSideMove__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -91,7 +124,7 @@ asm void daAlink_c::procSumouSideMove() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procSumouActionInit(int param_0, int param_1, int param_2) {
|
||||
asm int daAlink_c::procSumouActionInit(int param_0, int param_1, int param_2) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procSumouActionInit__9daAlink_cFiii.s"
|
||||
}
|
||||
@@ -101,7 +134,7 @@ asm void daAlink_c::procSumouActionInit(int param_0, int param_1, int param_2) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procSumouAction() {
|
||||
asm int daAlink_c::procSumouAction() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procSumouAction__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -109,31 +142,46 @@ asm void daAlink_c::procSumouAction() {
|
||||
|
||||
/* 800EC0F8-800EC170 0E6A38 0078+00 1/1 0/0 0/0 .text procSumouStaggerInit__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procSumouStaggerInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procSumouStaggerInit__9daAlink_cFv.s"
|
||||
int daAlink_c::procSumouStaggerInit() {
|
||||
commonProcInit(PROC_SUMOU_STAGGER);
|
||||
|
||||
if (mSpecialMode == 0x11) {
|
||||
mSpecialMode = 0x20;
|
||||
} else {
|
||||
mSpecialMode = 0x1F;
|
||||
}
|
||||
|
||||
setSingleAnimeBase(ANM_SUMOU_STAGGER);
|
||||
mNormalSpeed = FLOAT_LABEL(lit_6108);
|
||||
field_0x2f99 = 12;
|
||||
field_0x3008 = 30;
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800EC170-800EC20C 0E6AB0 009C+00 1/0 0/0 0/0 .text procSumouStagger__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procSumouStagger() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procSumouStagger__9daAlink_cFv.s"
|
||||
int daAlink_c::procSumouStagger() {
|
||||
field_0x2f99 = 4;
|
||||
|
||||
if (!checkSumouVsActor()) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
field_0x3008--;
|
||||
if (mSpecialMode == 0x1C || mSpecialMode == 0x21 || mSpecialMode == 0x1B) {
|
||||
procSumouActionInit(0, 0, 0);
|
||||
} else if (field_0x3008 == 0) {
|
||||
procSumouSideMoveInit();
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800EC20C-800EC3D8 0E6B4C 01CC+00 1/1 0/0 0/0 .text procSumouWinLoseInit__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procSumouWinLoseInit() {
|
||||
asm int daAlink_c::procSumouWinLoseInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procSumouWinLoseInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -143,27 +191,37 @@ asm void daAlink_c::procSumouWinLoseInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procSumouWinLose() {
|
||||
asm int daAlink_c::procSumouWinLose() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procSumouWinLose__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800EC538-800EC5F4 0E6E78 00BC+00 1/0 0/0 0/0 .text procSumouShikoInit__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procSumouShikoInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procSumouShikoInit__9daAlink_cFv.s"
|
||||
int daAlink_c::procSumouShikoInit() {
|
||||
if (!commonProcInitNotSameProc(PROC_SUMOU_SHIKO)) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
setSingleAnimeBase(ANM_SUMOU_SHIKO);
|
||||
mNormalSpeed = FLOAT_LABEL(lit_6108);
|
||||
field_0x3588 = l_waitBaseAnime;
|
||||
field_0x34d4 = field_0x3588;
|
||||
field_0x2f99 = 12;
|
||||
mCommonCounter = 0;
|
||||
mSpecialMode = 0;
|
||||
|
||||
setFootEffectProcType(5);
|
||||
deleteEquipItem(0, 1);
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 800EC5F4-800EC724 0E6F34 0130+00 1/0 0/0 0/0 .text procSumouShiko__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procSumouShiko() {
|
||||
asm int daAlink_c::procSumouShiko() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procSumouShiko__9daAlink_cFv.s"
|
||||
}
|
||||
|
||||
+198
-150
@@ -1,106 +1,120 @@
|
||||
/* 80101890-801018E4 0FC1D0 0054+00 6/6 0/0 0/0 .text checkZoraWearMaskDraw__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm BOOL daAlink_c::checkZoraWearMaskDraw() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkZoraWearMaskDraw__9daAlink_cFv.s"
|
||||
BOOL daAlink_c::checkZoraWearMaskDraw() {
|
||||
return checkZoraWearAbility() && !i_checkNoResetFlg0(FLG0_UNK_100);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 801018E4-80101934 0FC224 0050+00 1/1 0/0 0/0 .text checkAcceptUseItemInWater__9daAlink_cCFUs */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkAcceptUseItemInWater(u16 param_0) const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkAcceptUseItemInWater__9daAlink_cCFUs.s"
|
||||
BOOL daAlink_c::checkAcceptUseItemInWater(u16 i_itemNo) const {
|
||||
return i_itemNo == HVY_BOOTS || i_itemNo == WATER_BOMB || checkHookshotItem(i_itemNo);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80101934-801019B8 0FC274 0084+00 4/4 0/0 0/0 .text swimDeleteItem__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::swimDeleteItem() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/swimDeleteItem__9daAlink_cFv.s"
|
||||
void daAlink_c::swimDeleteItem() {
|
||||
if (!checkHookshotItem(mEquipItem) && (mEquipItem != 0x103 || !checkBootsOrArmorHeavy())) {
|
||||
deleteEquipItem(1, 1);
|
||||
}
|
||||
|
||||
if (i_checkNoResetFlg2(FLG2_UNK_1)) {
|
||||
offKandelaarModel();
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 801019B8-80101A18 0FC2F8 0060+00 11/11 0/0 0/0 .text getZoraSwim__9daAlink_cCFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm bool daAlink_c::getZoraSwim() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/getZoraSwim__9daAlink_cCFv.s"
|
||||
bool daAlink_c::getZoraSwim() const {
|
||||
return checkUnderMove0BckNoArc(ANM_SWIM_C) || checkUnderMove0BckNoArc(ANM_SWIM_ZORA_START);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80101A18-80101AA8 0FC358 0090+00 6/6 0/0 0/0 .text getSwimFrontMaxSpeed__9daAlink_cCFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::getSwimFrontMaxSpeed() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/getSwimFrontMaxSpeed__9daAlink_cCFv.s"
|
||||
f32 daAlink_c::getSwimFrontMaxSpeed() const {
|
||||
if (checkBootsOrArmorHeavy()) {
|
||||
return daAlinkHIO_swim_c0::m.mUnderwaterMaxSinkSpeed;
|
||||
} else if (checkZoraWearAbility()) {
|
||||
return lit_8130;
|
||||
} else if (checkSwimDashMode()) {
|
||||
return daAlinkHIO_swim_c0::m.mDMaxSpeed;
|
||||
} else {
|
||||
return daAlinkHIO_swim_c0::m.mMaxForwardSpeed;
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80101AA8-80101B44 0FC3E8 009C+00 5/5 0/0 0/0 .text getSwimMaxFallSpeed__9daAlink_cCFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::getSwimMaxFallSpeed() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/getSwimMaxFallSpeed__9daAlink_cCFv.s"
|
||||
f32 daAlink_c::getSwimMaxFallSpeed() const {
|
||||
if (mProcID == PROC_DIVE_JUMP) {
|
||||
return -daAlinkHIO_swim_c0::m.mMaxUnderwaterSpeed;
|
||||
} else if (checkBootsOrArmorHeavy()) {
|
||||
return daAlinkHIO_swim_c0::m.mBootsMaxSinkSpeed;
|
||||
} else if (getZoraSwim()) {
|
||||
return daAlinkHIO_swim_c0::m.mMaxSinkSpeed;
|
||||
} else {
|
||||
return daAlinkHIO_swim_c0::m.mInitMaxSinkSpeed;
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80101B44-80101C94 0FC484 0150+00 1/1 0/0 0/0 .text checkOxygenTimer__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkOxygenTimer() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkOxygenTimer__9daAlink_cFv.s"
|
||||
void daAlink_c::checkOxygenTimer() {
|
||||
BOOL hide_timer;
|
||||
|
||||
if (!i_checkNoResetFlg0(FLG0_UNK_100) || (i_checkModeFlg(MODE_SWIMMING) && mWaterY > lit_7808 + current.pos.y)) {
|
||||
hide_timer = false;
|
||||
} else {
|
||||
hide_timer = true;
|
||||
}
|
||||
|
||||
if (dComIfGp_getOxygenShowFlag()) {
|
||||
if (checkZoraWearAbility()) {
|
||||
offOxygenTimer();
|
||||
} else if (hide_timer) {
|
||||
s32 max = dComIfGp_getMaxOxygen();
|
||||
dComIfGp_setOxygenCount(max);
|
||||
|
||||
if (field_0x2fbe < 90) {
|
||||
field_0x2fbe++;
|
||||
} else {
|
||||
offOxygenTimer();
|
||||
}
|
||||
} else if (!checkEventRun()) {
|
||||
dComIfGp_setOxygenCount(-1);
|
||||
}
|
||||
} else if (!hide_timer && !checkZoraWearAbility()) {
|
||||
if (field_0x2fbe != 0) {
|
||||
field_0x2fbe--;
|
||||
} else {
|
||||
dComIfGp_onOxygenShowFlag();
|
||||
dComIfGp_setOxygen(dComIfGp_getMaxOxygen());
|
||||
}
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80101C94-80101CB8 0FC5D4 0024+00 3/3 0/0 0/0 .text offOxygenTimer__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::offOxygenTimer() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/offOxygenTimer__9daAlink_cFv.s"
|
||||
void daAlink_c::offOxygenTimer() {
|
||||
dComIfGp_offOxygenShowFlag();
|
||||
s32 max = dComIfGp_getMaxOxygen();
|
||||
dComIfGp_setOxygen(max);
|
||||
|
||||
field_0x2fbe = 90;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80101CB8-80101CF4 0FC5F8 003C+00 2/2 0/0 0/0 .text checkPossibleWaterInMode__9daAlink_cCFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm bool daAlink_c::checkPossibleWaterInMode() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkPossibleWaterInMode__9daAlink_cCFv.s"
|
||||
BOOL daAlink_c::checkPossibleWaterInMode() const {
|
||||
return i_checkModeFlg(MODE_VINE_CLIMB) || i_dComIfGp_checkPlayerStatus1(0, 0x2000000) || mProcID == PROC_HOOKSHOT_FLY;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80101CF4-80101D70 0FC634 007C+00 18/18 0/0 0/0 .text
|
||||
* setWaterInAnmRate__9daAlink_cFP16daPy_frameCtrl_cf */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setWaterInAnmRate(daPy_frameCtrl_c* param_0, f32 param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setWaterInAnmRate__9daAlink_cFP16daPy_frameCtrl_cf.s"
|
||||
void daAlink_c::setWaterInAnmRate(daPy_frameCtrl_c* i_frameCtrl, f32 i_rate) {
|
||||
if (i_checkNoResetFlg0(FLG0_UNDERWATER)) {
|
||||
if (checkZoraWearAbility()) {
|
||||
i_rate *= daAlinkHIO_magneBoots_c0::m.mZoraWaterAnmSpeed;
|
||||
} else {
|
||||
i_rate *= daAlinkHIO_magneBoots_c0::m.mWaterWalkAnmRate;
|
||||
}
|
||||
}
|
||||
|
||||
i_frameCtrl->setRate(i_rate);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80101D70-801023E4 0FC6B0 0674+00 2/2 0/0 0/0 .text swimBgCheck__9daAlink_cFf */
|
||||
#pragma push
|
||||
@@ -125,14 +139,36 @@ asm void daAlink_c::setSpeedAndAngleSwim() {
|
||||
|
||||
/* 801029C8-80102B1C 0FD308 0154+00 3/3 0/0 0/0 .text checkNextActionSwim__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkNextActionSwim() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkNextActionSwim__9daAlink_cFv.s"
|
||||
int daAlink_c::checkNextActionSwim() {
|
||||
if (checkSwimButtonMove() && getZoraSwim()) {
|
||||
field_0x3000 = 30;
|
||||
}
|
||||
|
||||
if ((checkZoraWearAbility() && !checkHeavyStateOn(1, 1)) || i_checkNoResetFlg0(FLG0_UNK_100)) {
|
||||
setTalkStatus();
|
||||
}
|
||||
|
||||
if (orderTalk(1)) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
if (mAttList != NULL && mAttList->mType == 7 && i_checkNoResetFlg0(FLG0_UNK_100) && fopAcM_GetName(field_0x27f4) == PROC_CANOE) {
|
||||
setDoStatus(0x17);
|
||||
|
||||
if (doTrigger()) {
|
||||
return procCanoeRideInit();
|
||||
}
|
||||
} else if (checkSwimButtonMove() && !checkZoraSwimMove()) {
|
||||
if (checkSwimButtonAccept()) {
|
||||
return procSwimDiveInit();
|
||||
}
|
||||
|
||||
field_0x3000 = 30;
|
||||
return procSwimMoveInit();
|
||||
}
|
||||
|
||||
return checkNextActionFromButton();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80102B1C-80103058 0FD45C 053C+00 3/3 0/0 0/0 .text checkSwimAction__9daAlink_cFi */
|
||||
#pragma push
|
||||
@@ -148,13 +184,36 @@ asm void daAlink_c::checkSwimAction(int param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkSwimUpAction() {
|
||||
asm int daAlink_c::checkSwimUpAction() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkSwimUpAction__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 801032C8-80103398 0FDC08 00D0+00 8/8 0/0 0/0 .text swimOutAfter__9daAlink_cFi */
|
||||
// setInWater needs work
|
||||
#ifdef NONMATCHING
|
||||
void daAlink_c::swimOutAfter(int param_0) {
|
||||
i_onNoResetFlg0(FLG0_UNK_100);
|
||||
i_onEndResetFlg1(ERFLG1_UNK_100);
|
||||
mZ2Link.setInWater(false);
|
||||
|
||||
if (i_checkNoResetFlg0(FLG0_UNDERWATER)) {
|
||||
i_offNoResetFlg0(FLG0_UNDERWATER);
|
||||
} else {
|
||||
field_0x2b98 = FLOAT_LABEL(lit_6108);
|
||||
field_0x2f98 = 4;
|
||||
}
|
||||
|
||||
field_0x3750 = cXyz::Zero;
|
||||
field_0x3000 = 0;
|
||||
offOxygenTimer();
|
||||
|
||||
if (checkSwimMoveHandAnime() || checkZoraSwimDamageAnime()) {
|
||||
resetUpperAnime(UPPER_2, lit_6109);
|
||||
}
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -163,16 +222,16 @@ asm void daAlink_c::swimOutAfter(int param_0) {
|
||||
#include "asm/d/a/d_a_alink/swimOutAfter__9daAlink_cFi.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 80103398-801033CC 0FDCD8 0034+00 1/1 0/0 0/0 .text checkSwimFall__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkSwimFall() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkSwimFall__9daAlink_cFv.s"
|
||||
bool daAlink_c::checkSwimFall() {
|
||||
if (!i_checkNoResetFlg0(FLG0_UNK_80) || current.pos.y > mWaterY + l_autoUpHeight) {
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 801033CC-80103698 0FDD0C 02CC+00 1/1 0/0 0/0 .text checkSwimOutAction__9daAlink_cFv */
|
||||
#pragma push
|
||||
@@ -196,73 +255,56 @@ asm void daAlink_c::setSwimMoveAnime() {
|
||||
|
||||
/* 80103EE0-80103F08 0FE820 0028+00 5/5 0/0 0/0 .text checkSwimButtonAccept__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkSwimButtonAccept() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkSwimButtonAccept__9daAlink_cFv.s"
|
||||
bool daAlink_c::checkSwimButtonAccept() {
|
||||
return i_dComIfGp_getDoStatus() == 0x41 || i_dComIfGp_getDoStatus() == 0x4C;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80103F08-80103F24 0FE848 001C+00 4/4 0/0 0/0 .text checkUpSwimButtonAccept__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkUpSwimButtonAccept() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkUpSwimButtonAccept__9daAlink_cFv.s"
|
||||
bool daAlink_c::checkUpSwimButtonAccept() {
|
||||
return i_dComIfGp_getDoStatus() == 0x97;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80103F24-80103F94 0FE864 0070+00 2/2 0/0 0/0 .text checkSwimButtonMove__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkSwimButtonMove() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkSwimButtonMove__9daAlink_cFv.s"
|
||||
BOOL daAlink_c::checkSwimButtonMove() {
|
||||
return !i_checkNoResetFlg0(FLG0_UNK_100) && (checkSwimButtonAccept() || checkUpSwimButtonAccept()) && doButton();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80103F94-80103FE8 0FE8D4 0054+00 3/3 0/0 0/0 .text checkZoraSwimMove__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkZoraSwimMove() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkZoraSwimMove__9daAlink_cFv.s"
|
||||
BOOL daAlink_c::checkZoraSwimMove() {
|
||||
return checkSwimButtonMove() || field_0x3000 != 0;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80103FE8-80104034 0FE928 004C+00 2/2 0/0 0/0 .text checkSwimNeckUpDown__9daAlink_cCFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkSwimNeckUpDown() const {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkSwimNeckUpDown__9daAlink_cCFv.s"
|
||||
BOOL daAlink_c::checkSwimNeckUpDown() const {
|
||||
return !i_checkNoResetFlg0(FLG0_UNK_100) && checkUnderMove0BckNoArc(ANM_SWIM_WAIT);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80104034-801040F8 0FE974 00C4+00 3/3 0/0 0/0 .text setSwimUpDownOffset__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setSwimUpDownOffset() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setSwimUpDownOffset__9daAlink_cFv.s"
|
||||
void daAlink_c::setSwimUpDownOffset() {
|
||||
mCommonCounter += (s16)((cM_rndF(lit_16570) + lit_27477) * lit_27476);
|
||||
|
||||
f32 var_f1;
|
||||
if (i_checkWolf()) {
|
||||
if (checkHeavyStateOn(1, 1)) {
|
||||
var_f1 = daAlinkHIO_wlSwim_c0::m.field_0x98;
|
||||
} else {
|
||||
var_f1 = daAlinkHIO_wlSwim_c0::m.field_0x6C;
|
||||
}
|
||||
} else {
|
||||
var_f1 = daAlinkHIO_swim_c0::m.mWaitVibrationIntensity;
|
||||
}
|
||||
|
||||
field_0x2b98 = var_f1 * cM_ssin(mCommonCounter);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 801040F8-801041E8 0FEA38 00F0+00 2/2 0/0 0/0 .text procSwimUpInit__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procSwimUpInit() {
|
||||
asm int daAlink_c::procSwimUpInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procSwimUpInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -272,7 +314,7 @@ asm void daAlink_c::procSwimUpInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procSwimUp() {
|
||||
asm int daAlink_c::procSwimUp() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procSwimUp__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -282,7 +324,7 @@ asm void daAlink_c::procSwimUp() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procSwimWaitInit(int param_0) {
|
||||
asm int daAlink_c::procSwimWaitInit(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procSwimWaitInit__9daAlink_cFi.s"
|
||||
}
|
||||
@@ -292,7 +334,7 @@ asm void daAlink_c::procSwimWaitInit(int param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procSwimWait() {
|
||||
asm int daAlink_c::procSwimWait() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procSwimWait__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -302,7 +344,7 @@ asm void daAlink_c::procSwimWait() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procSwimMoveInit() {
|
||||
asm int daAlink_c::procSwimMoveInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procSwimMoveInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -312,7 +354,7 @@ asm void daAlink_c::procSwimMoveInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procSwimMove() {
|
||||
asm int daAlink_c::procSwimMove() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procSwimMove__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -322,7 +364,7 @@ asm void daAlink_c::procSwimMove() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procSwimDiveInit() {
|
||||
asm int daAlink_c::procSwimDiveInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procSwimDiveInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -332,7 +374,7 @@ asm void daAlink_c::procSwimDiveInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procSwimDive() {
|
||||
asm int daAlink_c::procSwimDive() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procSwimDive__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -342,7 +384,7 @@ asm void daAlink_c::procSwimDive() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procSwimHookshotSubjectInit() {
|
||||
asm int daAlink_c::procSwimHookshotSubjectInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procSwimHookshotSubjectInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -352,7 +394,7 @@ asm void daAlink_c::procSwimHookshotSubjectInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procSwimHookshotSubject() {
|
||||
asm int daAlink_c::procSwimHookshotSubject() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procSwimHookshotSubject__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -362,7 +404,7 @@ asm void daAlink_c::procSwimHookshotSubject() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procSwimHookshotMoveInit() {
|
||||
asm int daAlink_c::procSwimHookshotMoveInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procSwimHookshotMoveInit__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -373,7 +415,7 @@ asm void daAlink_c::procSwimHookshotMoveInit() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procSwimHookshotMove() {
|
||||
asm int daAlink_c::procSwimHookshotMove() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procSwimHookshotMove__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -384,7 +426,7 @@ asm void daAlink_c::procSwimHookshotMove() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procSwimDamageInit(dCcD_GObjInf* param_0) {
|
||||
asm int daAlink_c::procSwimDamageInit(dCcD_GObjInf* param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procSwimDamageInit__9daAlink_cFP12dCcD_GObjInf.s"
|
||||
}
|
||||
@@ -394,7 +436,7 @@ asm void daAlink_c::procSwimDamageInit(dCcD_GObjInf* param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procSwimDamage() {
|
||||
asm int daAlink_c::procSwimDamage() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procSwimDamage__9daAlink_cFv.s"
|
||||
}
|
||||
@@ -405,18 +447,24 @@ asm void daAlink_c::procSwimDamage() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procOctaIealSpitInit() {
|
||||
asm int daAlink_c::procOctaIealSpitInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procOctaIealSpitInit__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80105A00-80105A84 100340 0084+00 1/0 0/0 0/0 .text procOctaIealSpit__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procOctaIealSpit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procOctaIealSpit__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
int daAlink_c::procOctaIealSpit() {
|
||||
if (mDemo.getDemoMode() == 0x2E) {
|
||||
i_cancelOriginalDemo();
|
||||
}
|
||||
|
||||
cLib_addCalc(&mNormalSpeed, FLOAT_LABEL(lit_6108), lit_5943, field_0x3478, lit_9054);
|
||||
field_0x2f99 = 7;
|
||||
|
||||
if (mUnderFrameCtrl[0].checkAnmEnd()) {
|
||||
procSwimWaitInit(0);
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
@@ -1,4 +1,53 @@
|
||||
/* 801406A8-80140888 13AFE8 01E0+00 0/0 1/1 0/0 .text initStatusWindow__9daAlink_cFv */
|
||||
// regalloc
|
||||
#ifdef NONMATCHING
|
||||
void daAlink_c::initStatusWindow() {
|
||||
u16 var_r28;
|
||||
u16 var_r30;
|
||||
u16 var_r31;
|
||||
|
||||
i_onNoResetFlg2(FLG2_STATUS_WINDOW_DRAW);
|
||||
|
||||
void* tmpBuffer = new (0x20) void*[0x500];
|
||||
|
||||
if (i_checkWolf()) {
|
||||
var_r28 = 0x2FF;
|
||||
var_r31 = 0x408;
|
||||
var_r30 = 0x3A7;
|
||||
changeModelDataDirectWolf(0);
|
||||
} else {
|
||||
var_r28 = 0x26A;
|
||||
var_r31 = 0x3AF;
|
||||
var_r30 = 0x32C;
|
||||
|
||||
if (checkZoraWearAbility() && !checkZoraWearMaskDraw()) {
|
||||
field_0x06f0->hide();
|
||||
}
|
||||
changeModelDataDirect(0);
|
||||
}
|
||||
|
||||
dComIfGp_getAnmArchive()->readIdxResource(tmpBuffer, 0x1400, var_r28);
|
||||
m_sWindowBck = new mDoExt_bckAnm();
|
||||
J3DAnmTransform* bck = (J3DAnmTransform*)J3DAnmLoaderDataBase::load(tmpBuffer, J3DLOADER_UNK_FLAG0);
|
||||
m_sWindowBck->init(bck, 1, 2, 1.0f, 0, -1, false);
|
||||
|
||||
tmpBuffer = new (0x20) void*[0x100];
|
||||
|
||||
dComIfGp_getAnmArchive()->readIdxResource(tmpBuffer, 0x400, var_r31);
|
||||
J3DAnmTexPattern* btp = (J3DAnmTexPattern*)J3DAnmLoaderDataBase::load(tmpBuffer, J3DLOADER_UNK_FLAG0);
|
||||
btp->setFrame(0.0f);
|
||||
btp->searchUpdateMaterialID(field_0x06c0);
|
||||
field_0x06c0->entryTexNoAnimator(btp);
|
||||
|
||||
tmpBuffer = new (0x20) void*[0x100];
|
||||
|
||||
dComIfGp_getAnmArchive()->readIdxResource(tmpBuffer, 0x400, var_r30);
|
||||
J3DAnmTextureSRTKey* btk = (J3DAnmTextureSRTKey*)J3DAnmLoaderDataBase::load(tmpBuffer, J3DLOADER_UNK_FLAG0);
|
||||
btk->setFrame(0.0f);
|
||||
btk->searchUpdateMaterialID(field_0x06c0);
|
||||
field_0x06c0->entryTexMtxAnimator(btk);
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -7,6 +56,7 @@ asm void daAlink_c::initStatusWindow() {
|
||||
#include "asm/d/a/d_a_alink/initStatusWindow__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 80140888-80140984 13B1C8 00FC+00 0/0 1/1 0/0 .text statusWindowExecute__9daAlink_cFPC4cXyzs */
|
||||
void daAlink_c::statusWindowExecute(cXyz const* param_0, s16 param_1) {
|
||||
|
||||
@@ -59,10 +59,10 @@ int daAlink_c::procGrassWhistleGetInit() {
|
||||
|
||||
commonProcInit(PROC_GRASS_WHISTLE_GET);
|
||||
mNormalSpeed = 0.0f;
|
||||
current.angle.y = mCollisionRot.y;
|
||||
current.angle.y = shape_angle.y;
|
||||
field_0x2f98 = 4;
|
||||
|
||||
setSingleAnimeParam(ANM_BOTTLE_SWING_DOWN, &daAlinkHIO_bottle_c0::m.field_0x50);
|
||||
setSingleAnimeParam(ANM_BOTTLE_SWING_DOWN, &daAlinkHIO_bottle_c0::m.mSwingDownAnm);
|
||||
field_0x2f92 = 0xFE;
|
||||
field_0x280c.setData(field_0x27f4);
|
||||
|
||||
@@ -70,10 +70,10 @@ int daAlink_c::procGrassWhistleGetInit() {
|
||||
mCommonCounter = yobikusa->getType();
|
||||
field_0x300e = yobikusa->getPathID();
|
||||
field_0x3010 = yobikusa->isPlayerCorrect();
|
||||
field_0x3012 = yobikusa->mCollisionRot.y + 0x8000;
|
||||
field_0x37c8.set(yobikusa->current.pos.x + cM_ssin(yobikusa->mCollisionRot.y) * 50.0f,
|
||||
field_0x3012 = yobikusa->shape_angle.y + 0x8000;
|
||||
field_0x37c8.set(yobikusa->current.pos.x + cM_ssin(yobikusa->shape_angle.y) * 50.0f,
|
||||
yobikusa->current.pos.y + 50.0f,
|
||||
yobikusa->current.pos.z + cM_scos(yobikusa->mCollisionRot.y) * 50.0f);
|
||||
yobikusa->current.pos.z + cM_scos(yobikusa->shape_angle.y) * 50.0f);
|
||||
voiceStart(Z2SE_AL_V_SWING_BOTTLE);
|
||||
return 1;
|
||||
}
|
||||
@@ -112,7 +112,7 @@ int daAlink_c::procGrassWhistleGet() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procGrassWhistleWaitInit(int param_0, int param_1, int param_2, s16 param_3,
|
||||
asm int daAlink_c::procGrassWhistleWaitInit(int param_0, int param_1, int param_2, s16 param_3,
|
||||
cXyz* param_4) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procGrassWhistleWaitInit__9daAlink_cFiiisP4cXyz.s"
|
||||
@@ -124,69 +124,92 @@ asm void daAlink_c::procGrassWhistleWaitInit(int param_0, int param_1, int param
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procGrassWhistleWait() {
|
||||
asm int daAlink_c::procGrassWhistleWait() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procGrassWhistleWait__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80111FF0-801120C8 10C930 00D8+00 2/2 0/0 0/0 .text procCoHorseCallWaitInit__9daAlink_cFi */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoHorseCallWaitInit(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoHorseCallWaitInit__9daAlink_cFi.s"
|
||||
int daAlink_c::procCoHorseCallWaitInit(int param_0) {
|
||||
commonProcInit(PROC_HORSE_CALL_WAIT);
|
||||
|
||||
if (param_0 == 4) {
|
||||
field_0x3010 = 2;
|
||||
} else if (param_0 == 1) {
|
||||
field_0x3010 = 0x3D;
|
||||
} else {
|
||||
field_0x3010 = 0x10;
|
||||
}
|
||||
|
||||
if (i_checkWolf()) {
|
||||
setSingleAnimeWolfBaseSpeed(WANM_WAIT, daAlinkHIO_wlMove_c0::m.field_0x70, lit_6109);
|
||||
} else {
|
||||
setSingleAnimeBaseSpeed(ANM_WAIT, daAlinkHIO_move_c0::m.mWaitAnmSpeed, lit_6109);
|
||||
}
|
||||
|
||||
setGrassCancelStatus(0);
|
||||
dComIfGp_setPlayerStatus1(0, 0x4000000);
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 801120C8-801121B4 10CA08 00EC+00 1/0 0/0 0/0 .text procCoHorseCallWait__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procCoHorseCallWait() {
|
||||
asm int daAlink_c::procCoHorseCallWait() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procCoHorseCallWait__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 801121B4-80112220 10CAF4 006C+00 1/0 0/0 0/0 .text procHawkCatchInit__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHawkCatchInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHawkCatchInit__9daAlink_cFv.s"
|
||||
int daAlink_c::procHawkCatchInit() {
|
||||
if (mProcID == PROC_HAWK_SUBJECT || !commonProcInitNotSameProc(PROC_HAWK_CATCH)) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
setSingleAnimeBase(ANM_HAWK_CATCH);
|
||||
deleteEquipItem(0, 1);
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80112220-80112278 10CB60 0058+00 1/0 0/0 0/0 .text procHawkCatch__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHawkCatch() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHawkCatch__9daAlink_cFv.s"
|
||||
int daAlink_c::procHawkCatch() {
|
||||
if (mUnderFrameCtrl[0].checkAnmEnd()) {
|
||||
dComIfGp_evmng_cutEnd(field_0x3184);
|
||||
procHawkSubjectInit();
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80112278-80112304 10CBB8 008C+00 2/2 0/0 0/0 .text procHawkSubjectInit__9daAlink_cFv
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHawkSubjectInit() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHawkSubjectInit__9daAlink_cFv.s"
|
||||
int daAlink_c::procHawkSubjectInit() {
|
||||
if (!commonProcInitNotSameProc(PROC_HAWK_SUBJECT)) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
setSingleAnimeBase(ANM_HAWK_WAIT);
|
||||
|
||||
fopAc_ac_c* actor = (fopAc_ac_c*)fopAcIt_Judge((fopAcIt_JudgeFunc)daAlink_searchHawk, NULL);
|
||||
if (actor != NULL) {
|
||||
field_0x280c.setData(actor);
|
||||
}
|
||||
|
||||
mCommonCounter = 0;
|
||||
field_0x59e = 0;
|
||||
deleteEquipItem(0, 1);
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80112304-8011243C 10CC44 0138+00 1/0 0/0 0/0 .text procHawkSubject__9daAlink_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::procHawkSubject() {
|
||||
asm int daAlink_c::procHawkSubject() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procHawkSubject__9daAlink_cFv.s"
|
||||
}
|
||||
|
||||
+1432
-733
File diff suppressed because it is too large
Load Diff
@@ -143,7 +143,7 @@ int daItemBase_c::DrawBase() {
|
||||
|
||||
/* 80144C30-80144C7C 13F570 004C+00 1/0 1/0 9/0 .text RotateYBase__12daItemBase_cFv */
|
||||
void daItemBase_c::RotateYBase() {
|
||||
mCollisionRot.y += (s16)(0xFFFF / getData().field_0x1c);
|
||||
shape_angle.y += (s16)(0xFFFF / getData().field_0x1c);
|
||||
}
|
||||
|
||||
/* 80144C7C-80144CA0 13F5BC 0024+00 1/0 1/0 5/0 .text setListStart__12daItemBase_cFv */
|
||||
|
||||
+2
-2
@@ -2109,7 +2109,7 @@ void daNpcT_c::setPos(cXyz i_pos) {
|
||||
/* 8014A99C-8014AA18 1452DC 007C+00 0/0 0/0 29/29 .text setAngle__8daNpcT_cF5csXyz */
|
||||
void daNpcT_c::setAngle(csXyz i_angle) {
|
||||
current.angle = i_angle;
|
||||
mCollisionRot = current.angle;
|
||||
shape_angle = current.angle;
|
||||
field_0xd78 = current.angle;
|
||||
field_0xd7e = field_0xd78;
|
||||
next.angle = current.angle;
|
||||
@@ -2118,7 +2118,7 @@ void daNpcT_c::setAngle(csXyz i_angle) {
|
||||
/* 8014AA18-8014AA40 145358 0028+00 0/0 0/0 138/138 .text setAngle__8daNpcT_cFs */
|
||||
void daNpcT_c::setAngle(s16 i_angle) {
|
||||
current.angle.y = i_angle;
|
||||
mCollisionRot.y = current.angle.y;
|
||||
shape_angle.y = current.angle.y;
|
||||
field_0xd78.y = current.angle.y;
|
||||
field_0xd7e.y = field_0xd78.y;
|
||||
next.angle.y = current.angle.y;
|
||||
|
||||
+14
-14
@@ -284,7 +284,7 @@ void daItem_c::setBaseMtx() {
|
||||
/* 8015B190-8015B1C8 155AD0 0038+00 1/1 0/0 0/0 .text setBaseMtx_0__8daItem_cFv */
|
||||
void daItem_c::setBaseMtx_0() {
|
||||
mDoMtx_stack_c::transS(current.pos);
|
||||
mDoMtx_stack_c::ZXYrotM(mCollisionRot);
|
||||
mDoMtx_stack_c::ZXYrotM(shape_angle);
|
||||
}
|
||||
|
||||
/* ############################################################################################## */
|
||||
@@ -301,7 +301,7 @@ void daItem_c::setBaseMtx_1() {
|
||||
mDoMtx_stack_c::transS(current.pos);
|
||||
mDoMtx_stack_c::transM(0.0f, y, 0.0f);
|
||||
|
||||
mDoMtx_stack_c::ZXYrotM(mCollisionRot);
|
||||
mDoMtx_stack_c::ZXYrotM(shape_angle);
|
||||
mDoMtx_stack_c::transM(0.0f, -y, 0.0f);
|
||||
}
|
||||
#else
|
||||
@@ -647,8 +647,8 @@ int daItem_c::_daItem_create() {
|
||||
orig.angle.x = 0;
|
||||
current.angle.z = 0;
|
||||
current.angle.x = 0;
|
||||
mCollisionRot.z = 0;
|
||||
mCollisionRot.x = 0;
|
||||
shape_angle.z = 0;
|
||||
shape_angle.x = 0;
|
||||
|
||||
field_0x95d = true;
|
||||
}
|
||||
@@ -744,7 +744,7 @@ int daItem_c::_daItem_execute() {
|
||||
}
|
||||
|
||||
mDoMtx_stack_c::transS(current.pos);
|
||||
mDoMtx_stack_c::ZXYrotM(mCollisionRot);
|
||||
mDoMtx_stack_c::ZXYrotM(shape_angle);
|
||||
mDoMtx_stack_c::inverse();
|
||||
mDoMtx_stack_c::multVec(&carry_pos, &carry_pos);
|
||||
daPy_getPlayerActorClass()->setHookshotCarryOffset(fopAcM_GetID(this), &carry_pos);
|
||||
@@ -865,8 +865,8 @@ SECTION_SDATA2 static f32 lit_4404 = 15.0f;
|
||||
void daItem_c::procInitSimpleGetDemo() {
|
||||
current.pos = daPy_getPlayerActorClass()->getItemPos();
|
||||
current.pos.y += 15.0f;
|
||||
mCollisionRot.z = 0;
|
||||
mCollisionRot.x = 0;
|
||||
shape_angle.z = 0;
|
||||
shape_angle.x = 0;
|
||||
mScale = field_0x930;
|
||||
fopAcM_SetSpeed(this, 0, getData().field_0x2c, 0);
|
||||
fopAcM_SetGravity(this, getData().field_0x30);
|
||||
@@ -1076,8 +1076,8 @@ void daItem_c::mode_water_init() {
|
||||
f32 tmp_0 = FLOAT_LABEL(lit_3857);
|
||||
fopAcM_SetSpeed(this, tmp_0, tmp_0, tmp_0);
|
||||
fopAcM_SetSpeedF(this, tmp_0);
|
||||
mCollisionRot.z = 0;
|
||||
mCollisionRot.x = 0;
|
||||
shape_angle.z = 0;
|
||||
shape_angle.x = 0;
|
||||
field_0x940 = 0;
|
||||
mScale = field_0x930;
|
||||
}
|
||||
@@ -1361,9 +1361,9 @@ int daItem_c::itemActionForRupee() {
|
||||
}
|
||||
|
||||
if (field_0x94b == 0) {
|
||||
mCollisionRot.x += getData().field_0x1a;
|
||||
shape_angle.x += getData().field_0x1a;
|
||||
} else {
|
||||
mCollisionRot.x = 0;
|
||||
shape_angle.x = 0;
|
||||
}
|
||||
|
||||
return 1;
|
||||
@@ -1466,7 +1466,7 @@ int daItem_c::initAction() {
|
||||
|
||||
if (isHeart(m_itemNo)) {
|
||||
mSpeedF = (cM_rndF(5.0f) + 20.0f) - 15.0f;
|
||||
mCollisionRot.z = cM_rndFX(getData().field_0x2a);
|
||||
shape_angle.z = cM_rndFX(getData().field_0x2a);
|
||||
}
|
||||
|
||||
field_0x949 = 0;
|
||||
@@ -1530,8 +1530,8 @@ asm void daItem_c::initSpeed(int param_0) {
|
||||
void daItem_c::initAngle() {
|
||||
current.angle.z = 0;
|
||||
current.angle.x = 0;
|
||||
mCollisionRot.z = 0;
|
||||
mCollisionRot.x = 0;
|
||||
shape_angle.z = 0;
|
||||
shape_angle.x = 0;
|
||||
}
|
||||
|
||||
/* 8015DE50-8015DE70 158790 0020+00 1/0 0/0 0/0 .text daItem_Draw__FP8daItem_c */
|
||||
|
||||
@@ -245,7 +245,7 @@ int daPy_boomerangMove_c::posMove(cXyz* param_0, s16* param_1, fopAc_ac_c* param
|
||||
daAlink_c* link = daAlink_getAlinkActorClass();
|
||||
if ((param_2 == NULL || !link->checkBoomerangCarry(param_2)) &&
|
||||
(m_eventKeepFlg == 0 || field_0x0 != 0)) {
|
||||
s16 tmp = (m_dropAngleY + link->mCollisionRot.y) + cM_rndF(2048.0f);
|
||||
s16 tmp = (m_dropAngleY + link->shape_angle.y) + cM_rndF(2048.0f);
|
||||
|
||||
param_0->x = link->current.pos.x + field_0x8 * cM_ssin(tmp);
|
||||
param_0->z = link->current.pos.z + field_0x8 * cM_scos(tmp);
|
||||
@@ -472,7 +472,7 @@ void* daPy_anmHeap_c::loadData(u16 i_resId) {
|
||||
if (mArcNo == 0xFFFF) {
|
||||
dComIfGp_getAnmArchive()->readIdxResource(mBuffer, mBufferSize, i_resId);
|
||||
JKRHeap* heap = setAnimeHeap();
|
||||
void* data = J3DAnmLoaderDataBase::load(mBuffer, UNK_FLAG0);
|
||||
void* data = J3DAnmLoaderDataBase::load(mBuffer, J3DLOADER_UNK_FLAG0);
|
||||
mDoExt_setCurrentHeap(heap);
|
||||
return data;
|
||||
}
|
||||
@@ -607,7 +607,7 @@ void daPy_sightPacket_c::setSight() {
|
||||
mDoLib_project(&mPos, &tmp);
|
||||
mDoMtx_stack_c::transS(tmp.x, tmp.y, tmp.z);
|
||||
mDoMtx_stack_c::scaleM(32.0f, 32.0f, 32.0f);
|
||||
mDoMtx_stack_c::copy(field_0x14);
|
||||
mDoMtx_copy(mDoMtx_stack_c::get(), field_0x14);
|
||||
dComIfGd_set2DXlu(this);
|
||||
}
|
||||
|
||||
@@ -635,7 +635,7 @@ BOOL daPy_py_c::checkMasterSwordEquip() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm bool daPy_py_c::checkWoodShieldEquip() {
|
||||
asm BOOL daPy_py_c::checkWoodShieldEquip() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_player/checkWoodShieldEquip__9daPy_py_cFv.s"
|
||||
}
|
||||
|
||||
+2
-2
@@ -448,7 +448,7 @@ void dBgS::Move() {
|
||||
cBgS_ChkElm* elm = m_chk_element;
|
||||
for (int i = 0; i < 0x100; i++) {
|
||||
if (elm->ChkUsed()) {
|
||||
elm->m_bgw_base_ptr->CalcDiffShapeAngleY(elm->m_actor_ptr->mCollisionRot.y);
|
||||
elm->m_bgw_base_ptr->CalcDiffShapeAngleY(elm->m_actor_ptr->shape_angle.y);
|
||||
}
|
||||
elm++;
|
||||
}
|
||||
@@ -462,7 +462,7 @@ bool dBgS::Regist(dBgW_Base* pbgw, fopAc_ac_c* p_actor) {
|
||||
}
|
||||
|
||||
if (p_actor != NULL && pbgw->ChkMoveBg()) {
|
||||
pbgw->SetOldShapeAngleY(p_actor->mCollisionRot.y);
|
||||
pbgw->SetOldShapeAngleY(p_actor->shape_angle.y);
|
||||
pbgw->SetRoomId(fopAcM_GetRoomNo(p_actor));
|
||||
}
|
||||
|
||||
|
||||
+12
-10
@@ -213,8 +213,8 @@ SECTION_SDATA2 static f32 lit_4092 = 1000.0f;
|
||||
// matches with literals
|
||||
#ifdef NONMATCHING
|
||||
dBgS_Acch::dBgS_Acch() {
|
||||
SetPolyPassChk(&GetPolyPassChkInfo());
|
||||
SetGrpPassChk(&GetGrpPassChkInfo());
|
||||
SetPolyPassChk(GetPolyPassChkInfo());
|
||||
SetGrpPassChk(GetGrpPassChkInfo());
|
||||
|
||||
m_flags = 0;
|
||||
SetRoofNone();
|
||||
@@ -309,17 +309,12 @@ void dBgS_Acch::GroundCheckInit(dBgS& param_0) {
|
||||
}
|
||||
}
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80424B20-80424B2C 051840 000C+00 1/1 0/0 0/0 .bss @4166 */
|
||||
static u8 lit_4166[12];
|
||||
|
||||
/* 80424B2C-80424B80 05184C 0050+04 1/1 0/0 0/0 .bss tmpRoofChk$4165 */
|
||||
static u8 tmpRoofChk[80 + 4 /* padding */];
|
||||
// static dBgS_RoofChk tmpRoofChk;
|
||||
|
||||
/* 80076350-8007654C 070C90 01FC+00 2/2 0/0 0/0 .text GroundCheck__9dBgS_AcchFR4dBgS */
|
||||
// issues with tmpRoofChk
|
||||
#ifdef NONMATCHING
|
||||
/* 80424B2C-80424B80 05184C 0050+04 1/1 0/0 0/0 .bss tmpRoofChk$4165 */
|
||||
static dBgS_RoofChk tmpRoofChk;
|
||||
|
||||
void dBgS_Acch::GroundCheck(dBgS& param_0) {
|
||||
if (!(m_flags & GRND_NONE)) {
|
||||
cXyz grnd_pos;
|
||||
@@ -369,6 +364,13 @@ void dBgS_Acch::GroundCheck(dBgS& param_0) {
|
||||
}
|
||||
}
|
||||
#else
|
||||
/* ############################################################################################## */
|
||||
/* 80424B20-80424B2C 051840 000C+00 1/1 0/0 0/0 .bss @4166 */
|
||||
static u8 lit_4166[12];
|
||||
|
||||
/* 80424B2C-80424B80 05184C 0050+04 1/1 0/0 0/0 .bss tmpRoofChk$4165 */
|
||||
static u8 tmpRoofChk[80 + 4 /* padding */];
|
||||
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
|
||||
@@ -170,7 +170,7 @@ int dBgS_MoveBgActor::MoveBGCreate(char const* p_name, int dzb_id, MoveBGActor_S
|
||||
u32 param_3, Mtx* param_4) {
|
||||
if (param_4 == NULL) {
|
||||
mDoMtx_stack_c::transS(current.pos.x, current.pos.y, current.pos.z);
|
||||
mDoMtx_stack_c::YrotM(mCollisionRot.y);
|
||||
mDoMtx_stack_c::YrotM(shape_angle.y);
|
||||
mDoMtx_stack_c::scaleM(mScale.x, mScale.y, mScale.z);
|
||||
PSMTXCopy(mDoMtx_stack_c::get(), field_0x56c);
|
||||
} else {
|
||||
@@ -220,7 +220,7 @@ bool dBgS_MoveBgActor::MoveBGExecute() {
|
||||
bool ret = Execute(&tmp);
|
||||
if (tmp == NULL) {
|
||||
mDoMtx_stack_c::transS(current.pos.x, current.pos.y, current.pos.z);
|
||||
mDoMtx_stack_c::YrotM(mCollisionRot.y);
|
||||
mDoMtx_stack_c::YrotM(shape_angle.y);
|
||||
mDoMtx_stack_c::scaleM(mScale.x, mScale.y, mScale.z);
|
||||
PSMTXCopy(mDoMtx_stack_c::get(), field_0x56c);
|
||||
} else {
|
||||
|
||||
+3
-2
@@ -9,6 +9,7 @@
|
||||
#include "d/com/d_com_inf_game.h"
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/mtx/mtxvec.h"
|
||||
#include "rel/d/a/d_a_horse/d_a_horse.h"
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
@@ -476,7 +477,7 @@ void cBgW::GlobalVtx() {
|
||||
/* 80079484-80079564 073DC4 00E0+00 1/1 0/0 0/0 .text SetVtx__4cBgWFv */
|
||||
// matches with literals
|
||||
#ifdef NONMATCHING
|
||||
int cBgW::SetVtx() {
|
||||
bool cBgW::SetVtx() {
|
||||
if (field_0x88 & 0x10) {
|
||||
pm_vtx_tbl = NULL;
|
||||
} else if (field_0x88 & 0x1) {
|
||||
@@ -1136,7 +1137,7 @@ s32 cBgW::GetGrpRoomIndex(cBgS_PolyInfo const& poly) const {
|
||||
return 0xFF;
|
||||
}
|
||||
|
||||
int room_index = pm_bgd->m_g_tbl[tmp].field_0x2a;
|
||||
room_index = pm_bgd->m_g_tbl[tmp].field_0x2a;
|
||||
if (room_index >= 0xFF) {
|
||||
room_index = 0xFF;
|
||||
}
|
||||
|
||||
+14
-14
@@ -126,28 +126,28 @@ u16 cc_pl_cut_bit_get() {
|
||||
daPy_py_c* link = (daPy_py_c*)dComIfGp_getPlayer(0);
|
||||
|
||||
u16 bit = 0;
|
||||
if (link->getCutType() == daPy_py_c::TYPE_CUT_VERTICAL) {
|
||||
if (link->getCutType() == daPy_py_c::CUT_TYPE_NM_VERTICAL) {
|
||||
bit = 0x1;
|
||||
} else if (link->getCutType() == daPy_py_c::TYPE_CUT_STAB) {
|
||||
} else if (link->getCutType() == daPy_py_c::CUT_TYPE_NM_STAB) {
|
||||
bit = 0x2;
|
||||
} else if (link->getCutType() == daPy_py_c::TYPE_CUT_STAB_COMBO) {
|
||||
} else if (link->getCutType() == daPy_py_c::CUT_TYPE_COMBO_STAB) {
|
||||
bit = 0x200;
|
||||
} else if (link->getCutType() == daPy_py_c::TYPE_CUT_SWEEP) {
|
||||
} else if (link->getCutType() == daPy_py_c::CUT_TYPE_NM_RIGHT) {
|
||||
bit = 0x4;
|
||||
} else if (link->getCutType() == daPy_py_c::TYPE_CUT_HORIZONTAL) {
|
||||
} else if (link->getCutType() == daPy_py_c::CUT_TYPE_NM_LEFT) {
|
||||
bit = 0x8;
|
||||
} else if (link->getCutType() == daPy_py_c::TYPE_CUT_LEFT_SWEEP_FINISH) {
|
||||
} else if (link->getCutType() == daPy_py_c::CUT_TYPE_FINISH_LEFT) {
|
||||
bit = 0x20;
|
||||
} else if (link->getCutType() == daPy_py_c::TYPE_CUT_DOWN_FINISH) {
|
||||
} else if (link->getCutType() == daPy_py_c::CUT_TYPE_FINISH_VERTICAL) {
|
||||
bit = 0x40;
|
||||
} else if (link->getCutType() == daPy_py_c::TYPE_CUT_TURN_RIGHT || link->getCutType() == 9 ||
|
||||
} else if (link->getCutType() == daPy_py_c::CUT_TYPE_TURN_RIGHT || link->getCutType() == 9 ||
|
||||
link->getCutType() == 43 ||
|
||||
link->getCutType() == daPy_py_c::TYPE_CUT_LARGE_TURN_RIGHT) {
|
||||
link->getCutType() == daPy_py_c::CUT_TYPE_LARGE_TURN_RIGHT) {
|
||||
bit = 0x80;
|
||||
} else if (link->getCutType() == daPy_py_c::TYPE_CUT_TURN_LEFT ||
|
||||
link->getCutType() == daPy_py_c::TYPE_CUT_LARGE_TURN_LEFT) {
|
||||
} else if (link->getCutType() == daPy_py_c::CUT_TYPE_TURN_LEFT ||
|
||||
link->getCutType() == daPy_py_c::CUT_TYPE_LARGE_TURN_LEFT) {
|
||||
bit = 0x800;
|
||||
} else if (link->getCutType() == daPy_py_c::TYPE_CUT_JUMP) {
|
||||
} else if (link->getCutType() == daPy_py_c::CUT_TYPE_JUMP) {
|
||||
bit = 0x100;
|
||||
} else if (link->getCutType() == 40 || link->getCutType() == 41) {
|
||||
bit = 0x400;
|
||||
@@ -465,8 +465,8 @@ fopAc_ac_c* cc_at_check(fopAc_ac_c* p_enemy, dCcU_AtInfo* p_info) {
|
||||
}
|
||||
|
||||
if (p_info->mHitType == HIT_TYPE_LINK_NORMAL_ATTACK &&
|
||||
link->getCutType() == daPy_py_c::TYPE_CUT_HEAD) {
|
||||
p_info->mHitDirection = link->mCollisionRot.y;
|
||||
link->getCutType() == daPy_py_c::CUT_TYPE_HEAD_JUMP) {
|
||||
p_info->mHitDirection = link->shape_angle.y;
|
||||
}
|
||||
|
||||
if (p_info->mpCollider->ChkAtType(AT_TYPE_HOOKSHOT) &&
|
||||
|
||||
+205
-235
@@ -424,23 +424,23 @@ void dComIfG_play_c::clearItemBombNumCount(u8 i_item) {
|
||||
mItemBombNumCount[i_item] = 0;
|
||||
}
|
||||
|
||||
void dComIfG_play_c::setNowVibration(u8 vib_status) {
|
||||
mNowVibration = vib_status;
|
||||
void dComIfG_play_c::setNowVibration(u8 i_vibration) {
|
||||
mNowVibration = i_vibration;
|
||||
}
|
||||
|
||||
u32 dComIfG_play_c::getNowVibration() {
|
||||
return mNowVibration;
|
||||
}
|
||||
|
||||
void dComIfG_play_c::setStartStage(dStage_startStage_c* p_startStage) {
|
||||
void dComIfG_play_c::setStartStage(dStage_startStage_c* i_startStage) {
|
||||
mLayerOld = mStartStage.getLayer();
|
||||
mStartStage = *p_startStage;
|
||||
mStartStage = *i_startStage;
|
||||
}
|
||||
|
||||
/* 8002B3F4-8002B434 025D34 0040+00 1/1 0/0 0/0 .text dComIfG_get_timelayer__FPi */
|
||||
void dComIfG_get_timelayer(int* layer) {
|
||||
void dComIfG_get_timelayer(int* i_layer) {
|
||||
if (dKy_daynight_check()) {
|
||||
*layer += 1;
|
||||
*i_layer += 1;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1062,7 +1062,7 @@ int dComIfG_play_c::getLayerNo_common_common(const char* stageName, int roomId,
|
||||
|
||||
// Stage is Fishing Pond or Hena's Hut
|
||||
else if (!strcmp(stageName, "F_SP127") || !strcmp(stageName, "R_SP127")) {
|
||||
switch (g_env_light[0x12fe]) {
|
||||
switch (g_env_light.field_0x12fe) {
|
||||
case 1:
|
||||
layer = 0;
|
||||
break;
|
||||
@@ -1189,8 +1189,8 @@ void dComIfG_play_c::drawSimpleModel() {
|
||||
|
||||
/* 8002CAF0-8002CB30 027430 0040+00 0/0 0/0 16/16 .text
|
||||
* addSimpleModel__14dComIfG_play_cFP12J3DModelDataiUc */
|
||||
int dComIfG_play_c::addSimpleModel(J3DModelData* i_modelData, int roomNo, u8 drawBG) {
|
||||
if (mSimpleModel != NULL && mSimpleModel->addModel(i_modelData, roomNo, drawBG)) {
|
||||
int dComIfG_play_c::addSimpleModel(J3DModelData* i_modelData, int i_roomNo, u8 i_drawBG) {
|
||||
if (mSimpleModel != NULL && mSimpleModel->addModel(i_modelData, i_roomNo, i_drawBG)) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
@@ -1199,9 +1199,9 @@ int dComIfG_play_c::addSimpleModel(J3DModelData* i_modelData, int roomNo, u8 dra
|
||||
|
||||
/* 8002CB30-8002CB68 027470 0038+00 0/0 0/0 16/16 .text
|
||||
* removeSimpleModel__14dComIfG_play_cFP12J3DModelDatai */
|
||||
int dComIfG_play_c::removeSimpleModel(J3DModelData* i_modelData, int roomNo) {
|
||||
int dComIfG_play_c::removeSimpleModel(J3DModelData* i_modelData, int i_roomNo) {
|
||||
if (mSimpleModel != NULL) {
|
||||
mSimpleModel->removeModel(i_modelData, roomNo);
|
||||
mSimpleModel->removeModel(i_modelData, i_roomNo);
|
||||
return 1;
|
||||
}
|
||||
|
||||
@@ -1210,38 +1210,38 @@ int dComIfG_play_c::removeSimpleModel(J3DModelData* i_modelData, int roomNo) {
|
||||
|
||||
/* 8002CB68-8002CB94 0274A8 002C+00 0/0 0/0 16/16 .text
|
||||
* entrySimpleModel__14dComIfG_play_cFP8J3DModeli */
|
||||
void dComIfG_play_c::entrySimpleModel(J3DModel* i_model, int roomNo) {
|
||||
void dComIfG_play_c::entrySimpleModel(J3DModel* i_model, int i_roomNo) {
|
||||
if (mSimpleModel != NULL) {
|
||||
mSimpleModel->entry(i_model, roomNo);
|
||||
mSimpleModel->entry(i_model, i_roomNo);
|
||||
}
|
||||
}
|
||||
|
||||
void dComIfG_play_c::setTimerNowTimeMs(int time) {
|
||||
mTimerInfo.mTimerNowTimeMs = time;
|
||||
void dComIfG_play_c::setTimerNowTimeMs(int i_time) {
|
||||
mTimerInfo.mTimerNowTimeMs = i_time;
|
||||
}
|
||||
|
||||
int dComIfG_play_c::getTimerNowTimeMs() {
|
||||
return mTimerInfo.mTimerNowTimeMs;
|
||||
}
|
||||
|
||||
void dComIfG_play_c::setTimerLimitTimeMs(int time) {
|
||||
mTimerInfo.mTimerLimitTimeMs = time;
|
||||
void dComIfG_play_c::setTimerLimitTimeMs(int i_time) {
|
||||
mTimerInfo.mTimerLimitTimeMs = i_time;
|
||||
}
|
||||
|
||||
int dComIfG_play_c::getTimerLimitTimeMs() {
|
||||
return mTimerInfo.mTimerLimitTimeMs;
|
||||
}
|
||||
|
||||
void dComIfG_play_c::setTimerMode(int mode) {
|
||||
mTimerInfo.mTimerMode = mode;
|
||||
void dComIfG_play_c::setTimerMode(int i_mode) {
|
||||
mTimerInfo.mTimerMode = i_mode;
|
||||
}
|
||||
|
||||
int dComIfG_play_c::getTimerMode() {
|
||||
return mTimerInfo.mTimerMode;
|
||||
}
|
||||
|
||||
void dComIfG_play_c::setTimerType(u8 type) {
|
||||
mTimerInfo.mTimerType = type;
|
||||
void dComIfG_play_c::setTimerType(u8 i_type) {
|
||||
mTimerInfo.mTimerType = i_type;
|
||||
}
|
||||
|
||||
u8 dComIfG_play_c::getTimerType() {
|
||||
@@ -1249,8 +1249,8 @@ u8 dComIfG_play_c::getTimerType() {
|
||||
}
|
||||
|
||||
/* 8002CBD4-8002CBDC -00001 0008+00 0/0 0/0 0/0 .text setTimerPtr__14dComIfG_play_cFP8dTimer_c */
|
||||
void dComIfG_play_c::setTimerPtr(dTimer_c* ptr) {
|
||||
mTimerInfo.mTimerPtr = ptr;
|
||||
void dComIfG_play_c::setTimerPtr(dTimer_c* i_ptr) {
|
||||
mTimerInfo.mTimerPtr = i_ptr;
|
||||
}
|
||||
|
||||
/* 8002CBDC-8002CBE4 02751C 0008+00 6/6 7/7 15/15 .text getTimerPtr__14dComIfG_play_cFv
|
||||
@@ -1281,7 +1281,7 @@ SECTION_SDATA extern GXColor g_blackColor = {0, 0, 0, 255};
|
||||
|
||||
/* 8002CC54-8002CD44 027594 00F0+00 1/1 1/1 0/0 .text dComIfG_changeOpeningScene__FP11scene_classs
|
||||
*/
|
||||
int dComIfG_changeOpeningScene(scene_class* scene, s16 procName) {
|
||||
int dComIfG_changeOpeningScene(scene_class* i_scene, s16 i_procName) {
|
||||
dComIfGp_offEnableNextStage();
|
||||
dComIfGp_setNextStage("F_SP102", 100, 0, 10);
|
||||
mDoAud_setSceneName(dComIfGp_getNextStageName(), dComIfGp_getNextStageRoomNo(),
|
||||
@@ -1292,28 +1292,28 @@ int dComIfG_changeOpeningScene(scene_class* scene, s16 procName) {
|
||||
mDoGph_gInf_c::setFadeColor(*(JUtility::TColor*)&g_blackColor);
|
||||
}
|
||||
|
||||
fopScnM_ChangeReq(scene, procName, 0, 30);
|
||||
fopScnM_ReRequest(procName, 0);
|
||||
fopScnM_ChangeReq(i_scene, i_procName, 0, 30);
|
||||
fopScnM_ReRequest(i_procName, 0);
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* 8002CD44-8002CDB8 027684 0074+00 0/0 2/2 0/0 .text dComIfG_resetToOpening__FP11scene_class */
|
||||
BOOL dComIfG_resetToOpening(scene_class* scene) {
|
||||
BOOL dComIfG_resetToOpening(scene_class* i_scene) {
|
||||
if (mDoRst::isReturnToMenu() || !mDoRst::isReset() ||
|
||||
mDoGph_gInf_c::getFader()->getStatus() == 2) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
dComIfG_changeOpeningScene(scene, PROC_OPENING_SCENE);
|
||||
dComIfG_changeOpeningScene(i_scene, PROC_OPENING_SCENE);
|
||||
mDoAud_bgmStop(30);
|
||||
mDoAud_resetProcess();
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int phase_1(char* arc_name) {
|
||||
if (!dComIfG_setObjectRes(arc_name, 0, NULL)) {
|
||||
OSReport_Error("%s.arc Read Error !!\n", arc_name);
|
||||
static int phase_1(char* i_arcName) {
|
||||
if (!dComIfG_setObjectRes(i_arcName, 0, NULL)) {
|
||||
OSReport_Error("%s.arc Read Error !!\n", i_arcName);
|
||||
return cPhs_ERROR_e;
|
||||
}
|
||||
|
||||
@@ -1321,11 +1321,11 @@ static int phase_1(char* arc_name) {
|
||||
}
|
||||
|
||||
/* 8002CE38-8002CEB4 027778 007C+00 1/0 0/0 0/0 .text phase_2__FPc */
|
||||
static int phase_2(char* arc_name) {
|
||||
int syncStatus = dComIfG_syncObjectRes(arc_name);
|
||||
static int phase_2(char* i_arcName) {
|
||||
int syncStatus = dComIfG_syncObjectRes(i_arcName);
|
||||
|
||||
if (syncStatus < 0) {
|
||||
OSReport_Error("%s.arc Sync Read Error !!\n", arc_name);
|
||||
OSReport_Error("%s.arc Sync Read Error !!\n", i_arcName);
|
||||
return cPhs_ERROR_e;
|
||||
} else {
|
||||
return syncStatus > 0 ? 0 : 2;
|
||||
@@ -1339,7 +1339,7 @@ static int phase_3(char*) {
|
||||
|
||||
/* 8002CEBC-8002CEFC 0277FC 0040+00 0/0 7/7 550/550 .text
|
||||
* dComIfG_resLoad__FP30request_of_phase_process_classPCc */
|
||||
int dComIfG_resLoad(request_of_phase_process_class* i_phase, char const* arc_name) {
|
||||
int dComIfG_resLoad(request_of_phase_process_class* i_phase, char const* i_arcName) {
|
||||
static int (*l_method[3])(void*) = {(int (*)(void*))phase_1, (int (*)(void*))phase_2,
|
||||
(int (*)(void*))phase_3};
|
||||
|
||||
@@ -1347,12 +1347,12 @@ int dComIfG_resLoad(request_of_phase_process_class* i_phase, char const* arc_nam
|
||||
return cPhs_COMPLEATE_e;
|
||||
}
|
||||
|
||||
return dComLbG_PhaseHandler(i_phase, l_method, (void*)arc_name);
|
||||
return dComLbG_PhaseHandler(i_phase, l_method, (void*)i_arcName);
|
||||
}
|
||||
|
||||
/* 8002CEFC-8002CF5C 02783C 0060+00 1/0 0/0 0/0 .text phase_01__FP12phaseParam_c */
|
||||
static int phase_01(phaseParam_c* phase) {
|
||||
if (dComIfG_setObjectRes(phase->mResName, 0, phase->mpHeap) == 0) {
|
||||
static int phase_01(phaseParam_c* i_phasePrm) {
|
||||
if (dComIfG_setObjectRes(i_phasePrm->mResName, 0, i_phasePrm->mpHeap) == 0) {
|
||||
return 5;
|
||||
}
|
||||
|
||||
@@ -1360,8 +1360,8 @@ static int phase_01(phaseParam_c* phase) {
|
||||
}
|
||||
|
||||
/* 8002CF5C-8002CFB8 02789C 005C+00 1/0 0/0 0/0 .text phase_02__FP12phaseParam_c */
|
||||
static int phase_02(phaseParam_c* phase) {
|
||||
int syncStatus = dComIfG_syncObjectRes(phase->mResName);
|
||||
static int phase_02(phaseParam_c* i_phasePrm) {
|
||||
int syncStatus = dComIfG_syncObjectRes(i_phasePrm->mResName);
|
||||
if (syncStatus < 0) {
|
||||
return 5;
|
||||
} else {
|
||||
@@ -1371,12 +1371,12 @@ static int phase_02(phaseParam_c* phase) {
|
||||
|
||||
/* 8002CFB8-8002CFC0 0278F8 0008+00 1/0 0/0 0/0 .text phase_03__FP12phaseParam_c */
|
||||
static int phase_03(phaseParam_c*) {
|
||||
return false;
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* 8002CFC0-8002D008 027900 0048+00 1/1 3/3 0/0 .text
|
||||
* dComIfG_resLoad__FP30request_of_phase_process_classPCcP7JKRHeap */
|
||||
int dComIfG_resLoad(request_of_phase_process_class* i_phase, char const* resName, JKRHeap* heap) {
|
||||
int dComIfG_resLoad(request_of_phase_process_class* i_phase, char const* i_resName, JKRHeap* i_heap) {
|
||||
static int (*l_method[3])(void*) = {(int (*)(void*))phase_01, (int (*)(void*))phase_02,
|
||||
(int (*)(void*))phase_03};
|
||||
|
||||
@@ -1384,42 +1384,42 @@ int dComIfG_resLoad(request_of_phase_process_class* i_phase, char const* resName
|
||||
return cPhs_COMPLEATE_e;
|
||||
}
|
||||
|
||||
phaseParam_c param(resName, heap);
|
||||
phaseParam_c param(i_resName, i_heap);
|
||||
return dComLbG_PhaseHandler(i_phase, l_method, ¶m);
|
||||
}
|
||||
|
||||
/* 8002D008-8002D06C 027948 0064+00 1/1 10/10 540/540 .text
|
||||
* dComIfG_resDelete__FP30request_of_phase_process_classPCc */
|
||||
int dComIfG_resDelete(request_of_phase_process_class* i_phase, char const* resName) {
|
||||
int dComIfG_resDelete(request_of_phase_process_class* i_phase, char const* i_resName) {
|
||||
if (i_phase->id != cPhs_TWO_e) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
dComIfG_deleteObjectResMain(resName);
|
||||
dComIfG_deleteObjectResMain(i_resName);
|
||||
i_phase->id = cPhs_ZERO_e;
|
||||
return 1;
|
||||
}
|
||||
|
||||
s8 dComIfGp_getReverb(int roomNo) {
|
||||
return dStage_roomRead_dt_c_GetReverbStage(*dComIfGp_getStageRoom(), roomNo);
|
||||
s8 dComIfGp_getReverb(int i_roomNo) {
|
||||
return dStage_roomRead_dt_c_GetReverbStage(*dComIfGp_getStageRoom(), i_roomNo);
|
||||
}
|
||||
|
||||
/* 8002D0B4-8002D1AC 0279F4 00F8+00 0/0 3/3 34/34 .text
|
||||
* dComIfGd_setSimpleShadow__FP4cXyzffR13cBgS_PolyInfosfP9_GXTexObj */
|
||||
int dComIfGd_setSimpleShadow(cXyz* pos, f32 param_1, f32 param_2, cBgS_PolyInfo& param_3, s16 angle,
|
||||
f32 param_5, _GXTexObj* tex) {
|
||||
int dComIfGd_setSimpleShadow(cXyz* i_pos, f32 param_1, f32 param_2, cBgS_PolyInfo& param_3, s16 i_angle,
|
||||
f32 param_5, GXTexObj* i_tex) {
|
||||
if (param_3.ChkSetInfo() && -1000000000.0f != param_1) {
|
||||
cM3dGPla plane;
|
||||
dComIfG_Bgsp().GetTriPla(param_3, &plane);
|
||||
|
||||
return dComIfGd_setSimpleShadow(pos, param_1, param_2, &plane.mNormal, angle, param_5, tex);
|
||||
return dComIfGd_setSimpleShadow(i_pos, param_1, param_2, &plane.mNormal, i_angle, param_5, i_tex);
|
||||
} else {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
/* 8002D1AC-8002D25C 027AEC 00B0+00 0/0 0/0 1/1 .text dComIfGp_getMapTrans__FiPfPfPs */
|
||||
int dComIfGp_getMapTrans(int roomNo, f32* transX, f32* transY, s16* angle) {
|
||||
int dComIfGp_getMapTrans(int i_roomNo, f32* o_transX, f32* o_transY, s16* o_angle) {
|
||||
dStage_Multi_c* multi = dComIfGp_getMulti();
|
||||
if (multi == NULL) {
|
||||
return 0;
|
||||
@@ -1427,10 +1427,10 @@ int dComIfGp_getMapTrans(int roomNo, f32* transX, f32* transY, s16* angle) {
|
||||
|
||||
dStage_Mult_info* info = multi->mInfo;
|
||||
for (int i = 0; i < multi->field_0x0; i++) {
|
||||
if (roomNo == info->mRoomNo) {
|
||||
*transX = info->mTransX;
|
||||
*transY = info->mTransY;
|
||||
*angle = info->mAngle;
|
||||
if (i_roomNo == info->mRoomNo) {
|
||||
*o_transX = info->mTransX;
|
||||
*o_transY = info->mTransY;
|
||||
*o_angle = info->mAngle;
|
||||
return 1;
|
||||
}
|
||||
info++;
|
||||
@@ -1440,8 +1440,8 @@ int dComIfGp_getMapTrans(int roomNo, f32* transX, f32* transY, s16* angle) {
|
||||
}
|
||||
|
||||
/* 8002D25C-8002D2AC 027B9C 0050+00 0/0 3/3 3/3 .text dComIfGp_getRoomCamera__Fi */
|
||||
stage_camera_class* dComIfGp_getRoomCamera(int roomNo) {
|
||||
dStage_roomStatus_c* status = dComIfGp_roomControl_getStatusRoomDt(roomNo);
|
||||
stage_camera_class* dComIfGp_getRoomCamera(int i_roomNo) {
|
||||
dStage_roomStatus_c* status = dComIfGp_roomControl_getStatusRoomDt(i_roomNo);
|
||||
|
||||
if (status == NULL) {
|
||||
return NULL;
|
||||
@@ -1451,8 +1451,8 @@ stage_camera_class* dComIfGp_getRoomCamera(int roomNo) {
|
||||
}
|
||||
|
||||
/* 8002D2AC-8002D2FC 027BEC 0050+00 0/0 3/3 3/3 .text dComIfGp_getRoomArrow__Fi */
|
||||
stage_arrow_class* dComIfGp_getRoomArrow(int roomNo) {
|
||||
dStage_roomStatus_c* status = dComIfGp_roomControl_getStatusRoomDt(roomNo);
|
||||
stage_arrow_class* dComIfGp_getRoomArrow(int i_roomNo) {
|
||||
dStage_roomStatus_c* status = dComIfGp_roomControl_getStatusRoomDt(i_roomNo);
|
||||
|
||||
if (status == NULL) {
|
||||
return NULL;
|
||||
@@ -1462,41 +1462,41 @@ stage_arrow_class* dComIfGp_getRoomArrow(int roomNo) {
|
||||
}
|
||||
|
||||
/* 8002D2FC-8002D554 027C3C 0258+00 2/2 7/7 4/4 .text dComIfGp_setNextStage__FPCcsScScfUliScsii */
|
||||
void dComIfGp_setNextStage(char const* stage, s16 point, s8 roomNo, s8 layer, f32 lastSpeed,
|
||||
u32 lastMode, int setPoint, s8 wipe, s16 lastAngle, int param_9,
|
||||
int wipeSpeedT) {
|
||||
if (layer >= 15) {
|
||||
layer = -1;
|
||||
void dComIfGp_setNextStage(char const* i_stage, s16 i_point, s8 i_roomNo, s8 i_layer, f32 i_lastSpeed,
|
||||
u32 i_lastMode, int i_setPoint, s8 i_wipe, s16 i_lastAngle, int param_9,
|
||||
int i_wipeSpeedT) {
|
||||
if (i_layer >= 15) {
|
||||
i_layer = -1;
|
||||
}
|
||||
|
||||
if (dComIfGs_isPlayerFieldLastStayFieldDataExistFlag() &&
|
||||
daPy_getLinkPlayerActorClass() != NULL) {
|
||||
s8 curPoint = (s8)daPy_getLinkPlayerActorClass()->current.mRoomNo;
|
||||
cXyz pos = dMapInfo_n::getMapPlayerPos();
|
||||
s16 angle = daPy_getLinkPlayerActorClass()->mCollisionRot.y;
|
||||
s16 angle = daPy_getLinkPlayerActorClass()->shape_angle.y;
|
||||
u8 level = dComIfGp_getNowLevel();
|
||||
dComIfGs_setPlayerFieldLastStayInfo(dComIfGp_getStartStageName(), pos, angle, curPoint,
|
||||
level);
|
||||
}
|
||||
|
||||
// Set Key Num to 2 if loading Wagon Escort after King Bulblin 2
|
||||
if (!strcmp(stage, "F_SP121") && roomNo == 13 && (point == 99 || point == 98) && layer == 2) {
|
||||
if (!strcmp(i_stage, "F_SP121") && i_roomNo == 13 && (i_point == 99 || i_point == 98) && i_layer == 2) {
|
||||
dComIfGs_setKeyNum(6, 2);
|
||||
} else {
|
||||
dComIfGs_setKeyNum(6, 0);
|
||||
}
|
||||
|
||||
if (daAlink_getAlinkActorClass() != NULL) {
|
||||
daAlink_getAlinkActorClass()->setLastSceneMode(&lastMode);
|
||||
daAlink_getAlinkActorClass()->setLastSceneMode(&i_lastMode);
|
||||
}
|
||||
|
||||
char* saveName = (char*)dMeter2Info_getSaveStageName();
|
||||
if (strcmp(saveName, "") && strcmp(stage, saveName)) {
|
||||
if (strcmp(saveName, "") && strcmp(i_stage, saveName)) {
|
||||
dMeter2Info_setSaveStageName("");
|
||||
}
|
||||
|
||||
u8 wipe_speed;
|
||||
switch (wipeSpeedT) {
|
||||
switch (i_wipeSpeedT) {
|
||||
case 0:
|
||||
wipe_speed = 26;
|
||||
break;
|
||||
@@ -1514,15 +1514,15 @@ void dComIfGp_setNextStage(char const* stage, s16 point, s8 roomNo, s8 layer, f3
|
||||
break;
|
||||
}
|
||||
|
||||
g_dComIfG_gameInfo.play.setNextStage(stage, roomNo, point, layer, wipe, wipe_speed);
|
||||
g_dComIfG_gameInfo.info.getRestart().setLastSceneInfo(lastSpeed, lastMode, lastAngle);
|
||||
if (setPoint) {
|
||||
dComIfGs_setStartPoint(point);
|
||||
g_dComIfG_gameInfo.play.setNextStage(i_stage, i_roomNo, i_point, i_layer, i_wipe, wipe_speed);
|
||||
g_dComIfG_gameInfo.info.getRestart().setLastSceneInfo(i_lastSpeed, i_lastMode, i_lastAngle);
|
||||
if (i_setPoint) {
|
||||
dComIfGs_setStartPoint(i_point);
|
||||
}
|
||||
}
|
||||
|
||||
void dComIfGp_setNextStage(char const* stage, s16 point, s8 roomNo, s8 layer) {
|
||||
dComIfGp_setNextStage(stage, point, roomNo, layer, 0.0f, 0, 1, 0, 0, 1, 0);
|
||||
void dComIfGp_setNextStage(char const* i_stage, s16 i_point, s8 i_roomNo, s8 i_layer) {
|
||||
dComIfGp_setNextStage(i_stage, i_point, i_roomNo, i_layer, 0.0f, 0, 1, 0, 0, 1, 0);
|
||||
}
|
||||
|
||||
BOOL dComIfGs_isStageTbox(int i_stageNo, int i_no) {
|
||||
@@ -1705,29 +1705,29 @@ u16 dComIfGs_getMaxLifeGauge() {
|
||||
return (dComIfGs_getMaxLife() / 5) * 4;
|
||||
}
|
||||
|
||||
void dComIfGs_setSelectItemIndex(int i_no, u8 item_index) {
|
||||
g_dComIfG_gameInfo.info.getPlayer().getPlayerStatusA().setSelectItemIndex(i_no, item_index);
|
||||
void dComIfGs_setSelectItemIndex(int i_no, u8 i_slotNo) {
|
||||
g_dComIfG_gameInfo.info.getPlayer().getPlayerStatusA().setSelectItemIndex(i_no, i_slotNo);
|
||||
dComIfGp_setSelectItem(i_no);
|
||||
}
|
||||
|
||||
void dComIfGs_setMixItemIndex(int i_no, u8 item_index) {
|
||||
g_dComIfG_gameInfo.info.getPlayer().getPlayerStatusA().setMixItemIndex(i_no, item_index);
|
||||
void dComIfGs_setMixItemIndex(int i_no, u8 i_slotNo) {
|
||||
g_dComIfG_gameInfo.info.getPlayer().getPlayerStatusA().setMixItemIndex(i_no, i_slotNo);
|
||||
}
|
||||
|
||||
/* 8002DD3C-8002DDC8 02867C 008C+00 3/3 1/1 0/0 .text dComIfGs_getSelectMixItemNoArrowIndex__Fi */
|
||||
u8 dComIfGs_getSelectMixItemNoArrowIndex(int index) {
|
||||
u8 item_index = dComIfGs_getSelectItemIndex(index);
|
||||
u8 mix_index = dComIfGs_getMixItemIndex(index);
|
||||
u8 dComIfGs_getSelectMixItemNoArrowIndex(int i_selmixItemIdx) {
|
||||
u8 sel_item_slotNo = dComIfGs_getSelectItemIndex(i_selmixItemIdx);
|
||||
u8 mix_item_slotNo = dComIfGs_getMixItemIndex(i_selmixItemIdx);
|
||||
|
||||
if (item_index >= SLOT_15 && item_index < SLOT_18) {
|
||||
return item_index;
|
||||
if (sel_item_slotNo >= SLOT_15 && sel_item_slotNo < SLOT_18) {
|
||||
return sel_item_slotNo;
|
||||
}
|
||||
|
||||
if (mix_index != NO_ITEM && mix_index >= SLOT_15 && mix_index < SLOT_18) {
|
||||
return mix_index;
|
||||
if (mix_item_slotNo != NO_ITEM && mix_item_slotNo >= SLOT_15 && mix_item_slotNo < SLOT_18) {
|
||||
return mix_item_slotNo;
|
||||
}
|
||||
|
||||
return NO_ITEM;
|
||||
return 0xFF;
|
||||
}
|
||||
|
||||
u8 dComIfGs_getMixItemIndex(int i_no) {
|
||||
@@ -1735,37 +1735,37 @@ u8 dComIfGs_getMixItemIndex(int i_no) {
|
||||
}
|
||||
|
||||
/* 8002DDF4-8002DF1C 028734 0128+00 1/1 13/13 0/0 .text dComIfGp_setSelectItem__Fi */
|
||||
void dComIfGp_setSelectItem(int index) {
|
||||
if (index == SELECT_ITEM_DOWN) {
|
||||
if (dComIfGs_getSelectItemIndex(index) != NO_ITEM) {
|
||||
u8 selectItemIdx = dComIfGs_getSelectItemIndex(index);
|
||||
g_dComIfG_gameInfo.play.setSelectItem(index, selectItemIdx);
|
||||
void dComIfGp_setSelectItem(int i_selItemIdx) {
|
||||
if (i_selItemIdx == SELECT_ITEM_DOWN) {
|
||||
if (dComIfGs_getSelectItemIndex(i_selItemIdx) != 0xFF) {
|
||||
u8 selItem_slotNo = dComIfGs_getSelectItemIndex(i_selItemIdx);
|
||||
g_dComIfG_gameInfo.play.setSelectItem(i_selItemIdx, selItem_slotNo);
|
||||
|
||||
if (selectItemIdx == NO_ITEM) {
|
||||
dComIfGs_setSelectItemIndex(index, NO_ITEM);
|
||||
if (selItem_slotNo == 0xFF) {
|
||||
dComIfGs_setSelectItemIndex(i_selItemIdx, 0xFF);
|
||||
}
|
||||
} else {
|
||||
g_dComIfG_gameInfo.play.setSelectItem(index, NO_ITEM);
|
||||
g_dComIfG_gameInfo.play.setSelectItem(i_selItemIdx, NO_ITEM);
|
||||
}
|
||||
} else if (dComIfGs_getSelectItemIndex(index) != NO_ITEM) {
|
||||
u8 item = dComIfGs_getItem(dComIfGs_getSelectItemIndex(index), false);
|
||||
g_dComIfG_gameInfo.play.setSelectItem(index, item);
|
||||
} else if (dComIfGs_getSelectItemIndex(i_selItemIdx) != 0xFF) {
|
||||
u8 item = dComIfGs_getItem(dComIfGs_getSelectItemIndex(i_selItemIdx), false);
|
||||
g_dComIfG_gameInfo.play.setSelectItem(i_selItemIdx, item);
|
||||
|
||||
if (item == NO_ITEM) {
|
||||
dComIfGs_setSelectItemIndex(index, NO_ITEM);
|
||||
dComIfGs_setSelectItemIndex(i_selItemIdx, 0xFF);
|
||||
}
|
||||
} else {
|
||||
g_dComIfG_gameInfo.play.setSelectItem(index, NO_ITEM);
|
||||
g_dComIfG_gameInfo.play.setSelectItem(i_selItemIdx, NO_ITEM);
|
||||
}
|
||||
}
|
||||
|
||||
/* 8002DF1C-8002E048 02885C 012C+00 4/4 19/19 0/0 .text dComIfGp_getSelectItem__Fi */
|
||||
u8 dComIfGp_getSelectItem(int index) {
|
||||
u8 playItem = g_dComIfG_gameInfo.play.getSelectItem(index);
|
||||
u8 dComIfGp_getSelectItem(int i_selItemIdx) {
|
||||
u8 playItem = g_dComIfG_gameInfo.play.getSelectItem(i_selItemIdx);
|
||||
|
||||
if ((index == SELECT_ITEM_X || index == SELECT_ITEM_Y) &&
|
||||
dComIfGs_getMixItemIndex(index) != NO_ITEM) {
|
||||
u8 saveItem = dComIfGs_getItem(dComIfGs_getMixItemIndex(index), false);
|
||||
if ((i_selItemIdx == SELECT_ITEM_X || i_selItemIdx == SELECT_ITEM_Y) &&
|
||||
dComIfGs_getMixItemIndex(i_selItemIdx) != 0xFF) {
|
||||
u8 saveItem = dComIfGs_getItem(dComIfGs_getMixItemIndex(i_selItemIdx), false);
|
||||
|
||||
if (saveItem == BOW) {
|
||||
saveItem = playItem;
|
||||
@@ -1962,27 +1962,26 @@ u8 dComIfGs_getBottleMax() {
|
||||
}
|
||||
|
||||
/* 8002E5C0-8002E688 028F00 00C8+00 0/0 11/11 0/0 .text dComIfGp_getSelectItemNum__Fi */
|
||||
int dComIfGp_getSelectItemNum(int index) {
|
||||
u8 selectItem = dComIfGp_getSelectItem(index);
|
||||
int itemNum = 0;
|
||||
s16 dComIfGp_getSelectItemNum(int i_selItemIdx) {
|
||||
u8 selectItem = dComIfGp_getSelectItem(i_selItemIdx);
|
||||
s16 itemNum = 0;
|
||||
|
||||
if (selectItem == NORMAL_BOMB || selectItem == WATER_BOMB || selectItem == POKE_BOMB ||
|
||||
selectItem == BOMB_ARROW) {
|
||||
selectItem = dComIfGs_getSelectMixItemNoArrowIndex(index) - SLOT_15;
|
||||
selectItem = dComIfGs_getSelectMixItemNoArrowIndex(i_selItemIdx) - SLOT_15;
|
||||
itemNum = dComIfGs_getBombNum(selectItem);
|
||||
} else if (selectItem == PACHINKO) {
|
||||
itemNum = dComIfGs_getPachinkoNum();
|
||||
} else if (selectItem == BEE_CHILD) {
|
||||
selectItem = dComIfGs_getSelectItemIndex(index);
|
||||
itemNum = dComIfGs_getBottleNum(selectItem - SLOT_11);
|
||||
itemNum = dComIfGs_getBottleNum(dComIfGs_getSelectItemIndex(i_selItemIdx) - SLOT_11);
|
||||
}
|
||||
|
||||
return itemNum;
|
||||
}
|
||||
|
||||
/* 8002E688-8002E714 028FC8 008C+00 0/0 5/5 0/0 .text dComIfGp_getSelectItemMaxNum__Fi */
|
||||
int dComIfGp_getSelectItemMaxNum(int index) {
|
||||
u8 selectItem = dComIfGp_getSelectItem(index);
|
||||
int dComIfGp_getSelectItemMaxNum(int i_selItemIdx) {
|
||||
u8 selectItem = dComIfGp_getSelectItem(i_selItemIdx);
|
||||
int itemNum = 0;
|
||||
|
||||
if (selectItem == BOMB_BAG_LV1) {
|
||||
@@ -2000,42 +1999,41 @@ int dComIfGp_getSelectItemMaxNum(int index) {
|
||||
}
|
||||
|
||||
/* 8002E714-8002E83C 029054 0128+00 0/0 2/2 0/0 .text dComIfGp_setSelectItemNum__Fis */
|
||||
void dComIfGp_setSelectItemNum(int index, s16 num) {
|
||||
u8 selectItem = dComIfGp_getSelectItem(index);
|
||||
void dComIfGp_setSelectItemNum(int i_selItemIdx, s16 i_num) {
|
||||
u8 selectItem = dComIfGp_getSelectItem(i_selItemIdx);
|
||||
|
||||
if (selectItem == NORMAL_BOMB || selectItem == WATER_BOMB || selectItem == POKE_BOMB ||
|
||||
selectItem == BOMB_ARROW) {
|
||||
u8 mix_index = dComIfGs_getSelectMixItemNoArrowIndex(index) - SLOT_15;
|
||||
u8 mix_slotNo = dComIfGs_getSelectMixItemNoArrowIndex(i_selItemIdx) - SLOT_15;
|
||||
|
||||
if (num > dComIfGs_getBombMax(selectItem)) {
|
||||
num = dComIfGs_getBombMax(selectItem);
|
||||
if (i_num > dComIfGs_getBombMax(selectItem)) {
|
||||
i_num = dComIfGs_getBombMax(selectItem);
|
||||
}
|
||||
dComIfGs_setBombNum(mix_index, num);
|
||||
dComIfGs_setBombNum(mix_slotNo, i_num);
|
||||
} else if (selectItem == PACHINKO) {
|
||||
dComIfGs_setPachinkoNum(num);
|
||||
dComIfGs_setPachinkoNum(i_num);
|
||||
} else if (selectItem == BEE_CHILD) {
|
||||
u8 bottle_idx = dComIfGs_getSelectItemIndex(index) - SLOT_11;
|
||||
u8 bottle_slot_no = dComIfGs_getSelectItemIndex(i_selItemIdx) - SLOT_11;
|
||||
|
||||
if (num > dComIfGs_getBottleMax()) {
|
||||
num = dComIfGs_getBottleMax();
|
||||
if (i_num > dComIfGs_getBottleMax()) {
|
||||
i_num = dComIfGs_getBottleMax();
|
||||
}
|
||||
dComIfGs_setBottleNum(bottle_idx, num);
|
||||
dComIfGs_setBottleNum(bottle_slot_no, i_num);
|
||||
}
|
||||
}
|
||||
|
||||
/* 8002E83C-8002E910 02917C 00D4+00 0/0 5/5 0/0 .text dComIfGp_addSelectItemNum__Fis */
|
||||
void dComIfGp_addSelectItemNum(int index, s16 num) {
|
||||
u8 selectItem = dComIfGp_getSelectItem(index);
|
||||
void dComIfGp_addSelectItemNum(int i_selItemIdx, s16 i_num) {
|
||||
u8 selectItem = dComIfGp_getSelectItem(i_selItemIdx);
|
||||
|
||||
if (selectItem == NORMAL_BOMB || selectItem == WATER_BOMB || selectItem == POKE_BOMB ||
|
||||
selectItem == BOMB_ARROW) {
|
||||
u8 mix_index = dComIfGs_getSelectMixItemNoArrowIndex(index) - SLOT_15;
|
||||
dComIfGp_setItemBombNumCount(mix_index, num);
|
||||
u8 slot_no = dComIfGs_getSelectMixItemNoArrowIndex(i_selItemIdx) - SLOT_15;
|
||||
dComIfGp_setItemBombNumCount(slot_no, i_num);
|
||||
} else if (selectItem == PACHINKO) {
|
||||
dComIfGp_setItemPachinkoNumCount(num);
|
||||
dComIfGp_setItemPachinkoNumCount(i_num);
|
||||
} else if (selectItem == BEE_CHILD) {
|
||||
selectItem = dComIfGs_getSelectItemIndex(index);
|
||||
dComIfGs_addBottleNum(selectItem - SLOT_11, num);
|
||||
dComIfGs_addBottleNum(dComIfGs_getSelectItemIndex(i_selItemIdx) - SLOT_11, i_num);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2062,8 +2060,8 @@ void dComIfGs_gameStart() {
|
||||
dComIfGp_setNextStage(name, point, roomNo, -1, 0.0f, 0, 1, 0, 0, 0, 0);
|
||||
}
|
||||
|
||||
u32 dComIfG_getTrigA(u32 pad) {
|
||||
return mDoCPd_c::getTrigA(pad);
|
||||
u32 dComIfG_getTrigA(u32 i_padNo) {
|
||||
return mDoCPd_c::getTrigA(i_padNo);
|
||||
}
|
||||
|
||||
/* ############################################################################################## */
|
||||
@@ -2093,7 +2091,7 @@ asm void dComIfGp_calcNowRegion() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void dComIfG_getNowCalcRegion() {
|
||||
static asm u8 dComIfG_getNowCalcRegion() {
|
||||
nofralloc
|
||||
#include "asm/d/com/d_com_inf_game/dComIfG_getNowCalcRegion__Fv.s"
|
||||
}
|
||||
@@ -2166,45 +2164,45 @@ void dComIfGs_setSelectEquipShield(u8 i_itemNo) {
|
||||
g_dComIfG_gameInfo.info.getPlayer().getPlayerStatusA().setSelectEquip(COLLECT_SHIELD, i_itemNo);
|
||||
}
|
||||
|
||||
void dComIfGs_setKeyNum(int i_stageNo, u8 keyNum) {
|
||||
void dComIfGs_setKeyNum(int i_stageNo, u8 i_keyNum) {
|
||||
if (dComIfGp_getStageStagInfo()) {
|
||||
stage_stag_info_class* stag_info = dComIfGp_getStageStagInfo();
|
||||
|
||||
if (i_stageNo == i_dStage_stagInfo_GetSaveTbl(stag_info)) {
|
||||
dComIfGs_setKeyNum(keyNum);
|
||||
dComIfGs_setKeyNum(i_keyNum);
|
||||
}
|
||||
}
|
||||
|
||||
g_dComIfG_gameInfo.info.getSavedata().getSave(i_stageNo).getBit().setKeyNum(keyNum);
|
||||
g_dComIfG_gameInfo.info.getSavedata().getSave(i_stageNo).getBit().setKeyNum(i_keyNum);
|
||||
}
|
||||
|
||||
/* 8002F0E0-8002F128 029A20 0048+00 1/1 0/0 0/0 .text dComIfGs_setWarpItemData__FiPCc4cXyzsScUcUc
|
||||
*/
|
||||
static void dComIfGs_setWarpItemData(int param_0, char const* stage, cXyz pos, s16 angle, s8 roomNo,
|
||||
static void dComIfGs_setWarpItemData(int, char const* i_stage, cXyz i_pos, s16 i_angle, s8 i_roomNo,
|
||||
u8 param_5, u8 param_6) {
|
||||
g_dComIfG_gameInfo.play.setWarpItemData(stage, pos, angle, roomNo, param_5, param_6);
|
||||
g_dComIfG_gameInfo.play.setWarpItemData(i_stage, i_pos, i_angle, i_roomNo, param_5, param_6);
|
||||
}
|
||||
|
||||
void dComIfG_play_c::setWarpItemData(char const* stage, cXyz pos, s16 angle, s8 roomNo, u8 param_4,
|
||||
void dComIfG_play_c::setWarpItemData(char const* i_stage, cXyz i_pos, s16 i_angle, s8 i_roomNo, u8 param_4,
|
||||
u8 param_5) {
|
||||
strcpy(mWarpItemStage, stage);
|
||||
mWarpItemPos.set(pos);
|
||||
mWarpItemAngle = angle;
|
||||
mWarpItemRoom = roomNo;
|
||||
strcpy(mWarpItemStage, i_stage);
|
||||
mWarpItemPos.set(i_pos);
|
||||
mWarpItemAngle = i_angle;
|
||||
mWarpItemRoom = i_roomNo;
|
||||
field_0x4fac = param_5;
|
||||
field_0x4fab = param_4;
|
||||
}
|
||||
|
||||
void dComIfGs_setWarpItemData(char const* stage, cXyz pos, s16 angle, s8 roomNo, u8 param_4,
|
||||
void dComIfGs_setWarpItemData(char const* i_stage, cXyz i_pos, s16 i_angle, s8 i_roomNo, u8 param_4,
|
||||
u8 param_5) {
|
||||
dComIfGs_setWarpItemData(0, stage, pos, angle, roomNo, param_4, param_5);
|
||||
dComIfGs_setLastWarpMarkItemData(stage, pos, angle, roomNo, param_4, param_5);
|
||||
dComIfGs_setWarpItemData(0, i_stage, i_pos, i_angle, i_roomNo, param_4, param_5);
|
||||
dComIfGs_setLastWarpMarkItemData(i_stage, i_pos, i_angle, i_roomNo, param_4, param_5);
|
||||
}
|
||||
|
||||
void dComIfGs_setLastWarpMarkItemData(const char* stage, cXyz pos, s16 angle, s8 roomNo, u8 unk1,
|
||||
u8 unk2) {
|
||||
g_dComIfG_gameInfo.info.getPlayer().getPlayerLastMarkInfo().setWarpItemData(stage, pos, angle,
|
||||
roomNo, unk1, unk2);
|
||||
void dComIfGs_setLastWarpMarkItemData(const char* i_stage, cXyz i_pos, s16 i_angle, s8 i_roomNo,
|
||||
u8 param_4, u8 param_5) {
|
||||
g_dComIfG_gameInfo.info.getPlayer().getPlayerLastMarkInfo().setWarpItemData(
|
||||
i_stage, i_pos, i_angle, i_roomNo, param_4, param_5);
|
||||
}
|
||||
|
||||
const char* dComIfGs_getWarpStageName() {
|
||||
@@ -2228,9 +2226,7 @@ BOOL dComIfGs_getWarpMarkFlag() {
|
||||
return dComIfGs_getLastWarpAcceptStage() >= 0;
|
||||
}
|
||||
|
||||
void dComIfGs_setWarpMarkFlag(u8) {
|
||||
/* empty function */
|
||||
}
|
||||
void dComIfGs_setWarpMarkFlag(u8) {}
|
||||
|
||||
/* 8002F314-8002F328 029C54 0014+00 0/0 0/0 1/1 .text __ct__19dComIfG_resLoader_cFv */
|
||||
dComIfG_resLoader_c::dComIfG_resLoader_c() {
|
||||
@@ -2250,10 +2246,10 @@ dComIfG_resLoader_c::~dComIfG_resLoader_c() {
|
||||
}
|
||||
|
||||
/* 8002F3B4-8002F434 029CF4 0080+00 0/0 0/0 1/1 .text load__19dComIfG_resLoader_cFPPCcP7JKRHeap */
|
||||
int dComIfG_resLoader_c::load(char const** param_0, JKRHeap* heap) {
|
||||
field_0x0 = param_0;
|
||||
int dComIfG_resLoader_c::load(char const** i_resNameTbl, JKRHeap* i_heap) {
|
||||
field_0x0 = i_resNameTbl;
|
||||
|
||||
int phase_state = dComIfG_resLoad(&field_0x4, field_0x0[field_0xc], heap);
|
||||
int phase_state = dComIfG_resLoad(&field_0x4, field_0x0[field_0xc], i_heap);
|
||||
if (phase_state == cPhs_COMPLEATE_e) {
|
||||
if (field_0x0[field_0xc + 1][0] != 0) {
|
||||
field_0xc++;
|
||||
@@ -2266,25 +2262,23 @@ int dComIfG_resLoader_c::load(char const** param_0, JKRHeap* heap) {
|
||||
}
|
||||
|
||||
/* 8002F434-8002F478 029D74 0044+00 0/0 12/12 12/12 .text dComIfG_getStageRes__FPCc */
|
||||
void* dComIfG_getStageRes(char const* resName) {
|
||||
return dComIfG_getStageRes("Stg_00", resName);
|
||||
void* dComIfG_getStageRes(char const* i_resName) {
|
||||
return dComIfG_getStageRes("Stg_00", i_resName);
|
||||
}
|
||||
|
||||
/* 8002F478-8002F4BC 029DB8 0044+00 0/0 1/1 0/0 .text dComIfG_getOldStageRes__FPCc */
|
||||
void* dComIfG_getOldStageRes(char const* resName) {
|
||||
return dComIfG_getStageRes("Xtg_00", resName);
|
||||
void* dComIfG_getOldStageRes(char const* i_resName) {
|
||||
return dComIfG_getStageRes("Xtg_00", i_resName);
|
||||
}
|
||||
|
||||
char* dComIfG_getRoomArcName(int roomNo) {
|
||||
char* dComIfG_getRoomArcName(int i_roomNo) {
|
||||
static char buf[32];
|
||||
sprintf(buf, "R%02d_00", roomNo);
|
||||
sprintf(buf, "R%02d_00", i_roomNo);
|
||||
return buf;
|
||||
}
|
||||
|
||||
/* 8002F500-8002F504 029E40 0004+00 0/0 1/1 0/0 .text dComIfGp_ret_wp_set__FSc */
|
||||
void dComIfGp_ret_wp_set(s8) {
|
||||
/* empty function */
|
||||
}
|
||||
void dComIfGp_ret_wp_set(s8) {}
|
||||
|
||||
void dComIfGp_world_dark_set(u8 param_0) {
|
||||
g_dComIfG_gameInfo.mWorldDark = param_0;
|
||||
@@ -2294,14 +2288,14 @@ u8 dComIfGp_world_dark_get() {
|
||||
return g_dComIfG_gameInfo.mWorldDark;
|
||||
}
|
||||
|
||||
int dComIfG_TimerStart(int mode, s16 time) {
|
||||
if (mode == dComIfG_getTimerMode()) {
|
||||
int dComIfG_TimerStart(int i_mode, s16 i_time) {
|
||||
if (i_mode == dComIfG_getTimerMode()) {
|
||||
dTimer_c* timer = dComIfG_getTimerPtr();
|
||||
if (timer != NULL) {
|
||||
if (time == 0) {
|
||||
timer->start(mode);
|
||||
if (i_time == 0) {
|
||||
timer->start(i_mode);
|
||||
} else {
|
||||
timer->start(mode, time);
|
||||
timer->start(i_mode, i_time);
|
||||
}
|
||||
return 1;
|
||||
} else {
|
||||
@@ -2312,8 +2306,8 @@ int dComIfG_TimerStart(int mode, s16 time) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
int dComIfG_TimerStop(int mode) {
|
||||
if (mode == dComIfG_getTimerMode()) {
|
||||
int dComIfG_TimerStop(int i_mode) {
|
||||
if (i_mode == dComIfG_getTimerMode()) {
|
||||
dTimer_c* timer = dComIfG_getTimerPtr();
|
||||
if (timer != NULL) {
|
||||
timer->stop(4);
|
||||
@@ -2326,8 +2320,8 @@ int dComIfG_TimerStop(int mode) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
int dComIfG_TimerReStart(int mode) {
|
||||
if (mode == dComIfG_getTimerMode()) {
|
||||
int dComIfG_TimerReStart(int i_mode) {
|
||||
if (i_mode == dComIfG_getTimerMode()) {
|
||||
dTimer_c* timer = dComIfG_getTimerPtr();
|
||||
if (timer != NULL) {
|
||||
timer->restart(4);
|
||||
@@ -2340,8 +2334,8 @@ int dComIfG_TimerReStart(int mode) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
int dComIfG_TimerEnd(int mode, int param_1) {
|
||||
if (mode == dComIfG_getTimerMode()) {
|
||||
int dComIfG_TimerEnd(int i_mode, int param_1) {
|
||||
if (i_mode == dComIfG_getTimerMode()) {
|
||||
dTimer_c* timer = dComIfG_getTimerPtr();
|
||||
if (timer != NULL) {
|
||||
timer->end(param_1);
|
||||
@@ -2355,8 +2349,8 @@ int dComIfG_TimerEnd(int mode, int param_1) {
|
||||
}
|
||||
|
||||
/* 8002F72C-8002F79C 02A06C 0070+00 0/0 0/0 2/2 .text dComIfG_TimerDeleteCheck__Fi */
|
||||
int dComIfG_TimerDeleteCheck(int mode) {
|
||||
if (mode == dComIfG_getTimerMode()) {
|
||||
int dComIfG_TimerDeleteCheck(int i_mode) {
|
||||
if (i_mode == dComIfG_getTimerMode()) {
|
||||
dTimer_c* timer = dComIfG_getTimerPtr();
|
||||
if (timer != NULL) {
|
||||
return timer->deleteCheck();
|
||||
@@ -2368,8 +2362,8 @@ int dComIfG_TimerDeleteCheck(int mode) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
int dComIfG_TimerDeleteRequest(int mode) {
|
||||
if (mode == dComIfG_getTimerMode()) {
|
||||
int dComIfG_TimerDeleteRequest(int i_mode) {
|
||||
if (i_mode == dComIfG_getTimerMode()) {
|
||||
dTimer_c* timer = dComIfG_getTimerPtr();
|
||||
if (timer != NULL) {
|
||||
timer->deleteRequest();
|
||||
@@ -2434,31 +2428,13 @@ bool dComIfGs_shake_kandelaar_check() {
|
||||
return check;
|
||||
}
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80451D20-80451D28 000320 0008+00 1/1 0/0 0/0 .sdata2 @7580 */
|
||||
SECTION_SDATA2 static f64 lit_7580 = 0.6;
|
||||
|
||||
/* 8002FA54-8002FA84 02A394 0030+00 0/0 4/4 96/96 .text dComIfGs_wolfeye_effect_check__Fv
|
||||
*/
|
||||
#ifdef NONMATCHING
|
||||
int dComIfGs_wolfeye_effect_check() {
|
||||
BOOL ret = 0;
|
||||
if (g_env_light.field_0xf3d == 1 && g_env_light.field_0xf40 > 0.6) {
|
||||
ret = 1;
|
||||
}
|
||||
bool dComIfGs_wolfeye_effect_check() {
|
||||
dScnKy_env_light_c* env_light = i_dKy_getEnvlight();
|
||||
|
||||
return ret;
|
||||
return env_light->field_0xf3d == 1 && env_light->field_0xf40 > 0.6;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm int dComIfGs_wolfeye_effect_check() {
|
||||
nofralloc
|
||||
#include "asm/d/com/d_com_inf_game/dComIfGs_wolfeye_effect_check__Fv.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
void dComIfGs_Grass_hide_Set(s8 param_0) {
|
||||
g_dComIfG_gameInfo.field_0x1ddfc = param_0;
|
||||
@@ -2491,58 +2467,52 @@ BOOL dComIfGp_TransportWarp_check() {
|
||||
|
||||
/* 8002FB20-8002FB80 02A460 0060+00 2/2 6/6 0/0 .text
|
||||
* dComLbG_PhaseHandler__FP30request_of_phase_process_classPPFPv_iPv */
|
||||
int dComLbG_PhaseHandler(request_of_phase_process_class* param_0, cPhs__Handler* param_1,
|
||||
void* param_2) {
|
||||
int ret = cPhs_Handler(param_0, param_1, param_2);
|
||||
switch (ret) {
|
||||
int dComLbG_PhaseHandler(request_of_phase_process_class* i_phaseReq, cPhs__Handler* i_handler,
|
||||
void* i_data) {
|
||||
int phase = cPhs_Handler(i_phaseReq, i_handler, i_data);
|
||||
switch (phase) {
|
||||
case 2:
|
||||
ret = dComLbG_PhaseHandler(param_0, param_1, param_2);
|
||||
phase = dComLbG_PhaseHandler(i_phaseReq, i_handler, i_data);
|
||||
break;
|
||||
case 1:
|
||||
case 3:
|
||||
break;
|
||||
}
|
||||
return ret;
|
||||
|
||||
return phase;
|
||||
}
|
||||
|
||||
/* 8002FB80-8002FC3C 02A4C0 00BC+00 0/0 1/1 1/1 .text dComIfGs_onVisitedRoom__Fi */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dComIfGs_onVisitedRoom(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/com/d_com_inf_game/dComIfGs_onVisitedRoom__Fi.s"
|
||||
void dComIfGs_onVisitedRoom(int i_roomNo) {
|
||||
dStage_FileList2_dt_c* fileList = dStage_roomControl_c::getFileList2(i_roomNo);
|
||||
|
||||
if (fileList != NULL && fileList->field_0x13 < 0x40) {
|
||||
u8 region = dComIfG_getNowCalcRegion();
|
||||
if (region != 0xFF && !dComIfGs_isRegionBit(region)) {
|
||||
dComIfGs_onRegionBit(region);
|
||||
}
|
||||
|
||||
s32 stayNo = dComIfGp_roomControl_getStayNo();
|
||||
dStage_FileList2_dt_c* list = dStage_roomControl_c::getFileList2(stayNo);
|
||||
dComIfGs_onSaveVisitedRoom(list->field_0x13, i_roomNo);
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8002FC3C-8002FC98 02A57C 005C+00 0/0 0/0 1/1 .text dComIfGs_offVisitedRoom__Fi */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dComIfGs_offVisitedRoom(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/com/d_com_inf_game/dComIfGs_offVisitedRoom__Fi.s"
|
||||
void dComIfGs_offVisitedRoom(int i_roomNo) {
|
||||
s32 stayNo = dComIfGp_roomControl_getStayNo();
|
||||
dStage_FileList2_dt_c* list = dStage_roomControl_c::getFileList2(stayNo);
|
||||
|
||||
dComIfGs_offSaveVisitedRoom(list->field_0x13, i_roomNo);
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8002FC98-8002FCF4 02A5D8 005C+00 0/0 1/1 0/0 .text dComIfGs_isVisitedRoom__Fi */
|
||||
// instructions swapped
|
||||
#ifdef NONMATCHING
|
||||
BOOL dComIfGs_isVisitedRoom(int param_0) {
|
||||
int stayNo = dComIfGp_roomControl_getStayNo();
|
||||
s32 stayNo = dComIfGp_roomControl_getStayNo();
|
||||
dStage_FileList2_dt_c* fileList = dStage_roomControl_c::getFileList2(stayNo);
|
||||
|
||||
return dComIfGs_isSaveVisitedRoom(fileList->field_0x13, param_0);
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm BOOL dComIfGs_isVisitedRoom(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/com/d_com_inf_game/dComIfGs_isVisitedRoom__Fi.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 8002FCF4-8002FD08 02A634 0014+00 0/0 1/1 0/0 .text dComIfGs_staffroll_next_go__Fv */
|
||||
void dComIfGs_staffroll_next_go() {
|
||||
|
||||
@@ -1081,10 +1081,10 @@ bool dAttention_c::chaseAttention() {
|
||||
|
||||
if (!chkFlag(0x4000)) {
|
||||
cSGlobe g1(actor->mAttentionInfo.mPosition - mOwnerAttnPos);
|
||||
cSAngle a1(g1.U() - mpPlayer->mCollisionRot.y);
|
||||
cSAngle a1(g1.U() - mpPlayer->shape_angle.y);
|
||||
|
||||
cSGlobe g2(mOwnerAttnPos - actor->mAttentionInfo.mPosition);
|
||||
cSAngle a2(g2.U() - actor->mCollisionRot.y);
|
||||
cSAngle a2(g2.U() - actor->shape_angle.y);
|
||||
|
||||
u32 type;
|
||||
f32 weight = calcWeight(0x4C, actor, g1.R(), a1.Val(), a2.Val(), &type);
|
||||
@@ -1850,7 +1850,7 @@ f32 dAttention_c::LockonReleaseDistanse() {
|
||||
|
||||
int idx = mLockOnList[mLockOnOffset].mType + actor->mAttentionInfo.field_0x0[0];
|
||||
cSGlobe tmp_g(actor->mAttentionInfo.mPosition - mOwnerAttnPos);
|
||||
cSAngle tmp_a(tmp_g.U() - mpPlayer->mCollisionRot.y);
|
||||
cSAngle tmp_a(tmp_g.U() - mpPlayer->shape_angle.y);
|
||||
|
||||
return distace_angle_adjust(dist_table[idx].field_0x8, tmp_a, 1.0f) + dist_table[idx].field_0x4;
|
||||
}
|
||||
|
||||
+1
-1
@@ -3553,7 +3553,7 @@ asm void dCam_getAngleX(camera_class* param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dCam_getControledAngleY(camera_class* param_0) {
|
||||
asm s16 dCam_getControledAngleY(camera_class* param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/d_camera/dCam_getControledAngleY__FP12camera_class.s"
|
||||
}
|
||||
|
||||
+10
-6
@@ -249,7 +249,7 @@ extern "C" extern void* __vt__Q214JStudio_JStage13TCreateObject[4];
|
||||
extern "C" extern void* __vt__Q215JStudio_JAudio213TCreateObject[4];
|
||||
extern "C" extern void* __vt__Q217JStudio_JParticle13TCreateObject[6];
|
||||
extern "C" u8 mDemoArcName__20dStage_roomControl_c[10 + 2 /* padding */];
|
||||
extern "C" extern u8 data_80450B74[4];
|
||||
extern "C" extern Z2SoundStarter* data_80450B74;
|
||||
extern "C" u8 mEmitterMng__13dPa_control_c[4];
|
||||
|
||||
//
|
||||
@@ -790,7 +790,7 @@ int dDemo_setDemoData(fopAc_ac_c* param_0, u8 param_1, mDoExt_McaMorf* param_2,
|
||||
}
|
||||
|
||||
if (flags & 8) {
|
||||
param_0->mCollisionRot = demo_actor->getRatate();
|
||||
param_0->shape_angle = demo_actor->getRatate();
|
||||
}
|
||||
|
||||
if (flags & 4) {
|
||||
@@ -1427,6 +1427,10 @@ bool dDemo_system_c::JSGFindObject(JStage::TObject** p_TObj, char const* actorNa
|
||||
/* 80451DE0-80451DE8 0003E0 0008+00 1/1 0/0 0/0 .sdata2 @5123 */
|
||||
SECTION_SDATA2 static f64 lit_5123 = 1.0 / 29.999998435378155;
|
||||
|
||||
inline Z2SoundStarter* Z2GetSoundStarter() {
|
||||
return data_80450B74;
|
||||
}
|
||||
|
||||
/* 80039678-80039910 033FB8 0298+00 0/0 1/1 0/0 .text create__7dDemo_cFv */
|
||||
#ifdef NONMATCHING
|
||||
void dDemo_c::create() {
|
||||
@@ -1442,10 +1446,10 @@ void dDemo_c::create() {
|
||||
|
||||
m_control->setSecondPerFrame(1.0 / 29.999998435378155);
|
||||
m_control->setFactory(m_factory);
|
||||
m_control->appendCreateObject(m_stage);
|
||||
m_control->appendCreateObject(m_audio);
|
||||
m_control->appendCreateObject(m_particle);
|
||||
m_control->appendCreateObject(m_message);
|
||||
m_factory->appendCreateObject(m_stage);
|
||||
m_factory->appendCreateObject(m_audio);
|
||||
m_factory->appendCreateObject(m_particle);
|
||||
m_factory->appendCreateObject(m_message);
|
||||
|
||||
m_system->setObject(m_object);
|
||||
m_data = NULL;
|
||||
|
||||
+2
-13
@@ -1220,24 +1220,13 @@ void item_func_HAWK_EYE() {
|
||||
}
|
||||
|
||||
/* 800986C4-80098718 093004 0054+00 1/0 0/0 0/0 .text item_func_WOOD_STICK__Fv */
|
||||
// load instructions are switched
|
||||
#ifdef NONMATCHING
|
||||
void item_func_WOOD_STICK() {
|
||||
dComIfGs_setCollectSword(COLLECT_WOODEN_SWORD);
|
||||
dComIfGs_setSelectEquipSword(WOOD_STICK);
|
||||
|
||||
dComIfGs_onSwitch(28, dComIfGp_roomControl_getStayNo()); // wrong order
|
||||
s32 roomNo = dComIfGp_roomControl_getStayNo();
|
||||
dComIfGs_onSwitch(28, roomNo);
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void item_func_WOOD_STICK() {
|
||||
nofralloc
|
||||
#include "asm/d/d_item/item_func_WOOD_STICK__Fv.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
void item_func_BOOMERANG() {
|
||||
dComIfGs_setItem(SLOT_0, BOOMERANG);
|
||||
|
||||
+7
-7
@@ -367,7 +367,7 @@ SECTION_DATA static void* lit_4017[8] = {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dRes_info_c::loaderBasicBmd(u32 param_0, void* param_1) {
|
||||
asm J3DModelData* dRes_info_c::loaderBasicBmd(u32 param_0, void* param_1) {
|
||||
nofralloc
|
||||
#include "asm/d/d_resorce/loaderBasicBmd__11dRes_info_cFUlPv.s"
|
||||
}
|
||||
@@ -686,8 +686,8 @@ void dRes_info_c::dump_long(dRes_info_c* param_0, int param_1) {
|
||||
"No Command Archive ArcHeader(size) SolidHeap(size) Resource Cnt ArchiveName\n");
|
||||
|
||||
for (int i = 0; i < param_1; i++) {
|
||||
if (getCount() != 0) {
|
||||
JKRArchive* archive = getArchive();
|
||||
if (param_0->getCount() != 0) {
|
||||
JKRArchive* archive = param_0->getArchive();
|
||||
header = NULL;
|
||||
blockSize1 = 0;
|
||||
|
||||
@@ -696,15 +696,15 @@ void dRes_info_c::dump_long(dRes_info_c* param_0, int param_1) {
|
||||
blockSize1 = myGetMemBlockSize0(header);
|
||||
}
|
||||
|
||||
JKRSolidHeap* dataHeap = mDataHeap;
|
||||
JKRSolidHeap* dataHeap = param_0->mDataHeap;
|
||||
blockSize2 = 0;
|
||||
if (dataHeap != NULL) {
|
||||
blockSize2 = myGetMemBlockSize0((void*)dataHeap);
|
||||
}
|
||||
|
||||
JUTReportConsole_f("%2d %08x %08x %08x(%6x) %08x(%5x) %08x %3d %s\n", i, getDMCommand(),
|
||||
archive, header, blockSize1, &mDataHeap, blockSize2, mRes,
|
||||
getArchiveName());
|
||||
JUTReportConsole_f("%2d %08x %08x %08x(%6x) %08x(%5x) %08x %3d %s\n", i,
|
||||
param_0->getDMCommand(), archive, header, blockSize1,
|
||||
¶m_0->mDataHeap, blockSize2, param_0->mRes, param_0->getArchiveName());
|
||||
}
|
||||
param_0++;
|
||||
}
|
||||
|
||||
@@ -382,13 +382,6 @@ asm int dEvt_control_c::talkCheck(dEvt_order_c* param_0) {
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80379D80-80379D80 0063E0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_DEAD static char const* const stringBase_80379DA3 = "DEFAULT_TALK_XY";
|
||||
#pragma pop
|
||||
|
||||
/* 80041B58-80041C90 03C498 0138+00 1/1 0/0 0/0 .text
|
||||
* talkXyCheck__14dEvt_control_cFP12dEvt_order_c */
|
||||
int dEvt_control_c::talkXyCheck(dEvt_order_c* p_order) {
|
||||
|
||||
@@ -805,6 +805,8 @@ SECTION_SDATA2 static f32 lit_4669 = -1.0f;
|
||||
#ifdef NONMATCHING
|
||||
// matches besides floats
|
||||
void dEvDtStaff_c::specialProcSound() {
|
||||
SoundData* data = (SoundData*)&mData;
|
||||
|
||||
int staffId = i_dComIfGp_evmng_getMyStaffId("SOUND", NULL, 0);
|
||||
if (staffId == -1) {
|
||||
return;
|
||||
@@ -843,7 +845,7 @@ void dEvDtStaff_c::specialProcSound() {
|
||||
specialProc_WaitProc(staffId);
|
||||
break;
|
||||
case 'NOMS':
|
||||
if (mSoundWait <= dDemo_c::getFrameNoMsg()) {
|
||||
if (data->timer <= dDemo_c::getFrameNoMsg()) {
|
||||
dComIfGp_evmng_cutEnd(staffId);
|
||||
}
|
||||
break;
|
||||
@@ -876,9 +878,9 @@ SECTION_DEAD static char const* const stringBase_80379E65 = "SCALE";
|
||||
|
||||
/* 80044CB8-80044EE4 03F5F8 022C+00 1/1 0/0 0/0 .text specialProcCreate__12dEvDtStaff_cFv
|
||||
*/
|
||||
// matches with literals
|
||||
#ifdef NONMATCHING
|
||||
void dEvDtStaff_c::specialProcCreate() {
|
||||
// regalloc
|
||||
char* name;
|
||||
u32 arg;
|
||||
cXyz pos;
|
||||
@@ -1097,12 +1099,12 @@ void dEvDtStaff_c::specialProcDirector() {
|
||||
dStage_MapEvent_dt_c* mapEvent = dEvt_control_c::searchMapEventData(data->unk);
|
||||
if (mapEvent != NULL) {
|
||||
if (mapEvent->mType == 0) {
|
||||
data->mSoundWait = mapEvent->field_0x14;
|
||||
data->unk2 = mapEvent->field_0x14;
|
||||
} else {
|
||||
data->mSoundWait = -1;
|
||||
data->unk2 = -1;
|
||||
}
|
||||
} else {
|
||||
data->mSoundWait = 0;
|
||||
data->unk2 = 0;
|
||||
}
|
||||
break;
|
||||
case 'CAST':
|
||||
@@ -1176,9 +1178,9 @@ void dEvDtStaff_c::specialProcDirector() {
|
||||
case 'NEXT':
|
||||
break;
|
||||
case 'VIBR':
|
||||
if (data->mSoundWait > 0) {
|
||||
data->mSoundWait--;
|
||||
if (data->mSoundWait == 0) {
|
||||
if (data->unk2 > 0) {
|
||||
data->unk2--;
|
||||
if (data->unk2 == 0) {
|
||||
dComIfGp_getVibration().StopQuake(0x1F);
|
||||
}
|
||||
} else {
|
||||
@@ -1197,8 +1199,8 @@ void dEvDtStaff_c::specialProcDirector() {
|
||||
}
|
||||
break;
|
||||
case 'MAPT':
|
||||
data->mSoundWait--;
|
||||
if (data->mSoundWait <= 0) {
|
||||
data->unk2--;
|
||||
if (data->unk2 <= 0) {
|
||||
dComIfGp_evmng_cutEnd(staffId);
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -1044,7 +1044,7 @@ void dEvent_manager_c::cutEnd(int cutIndex) {
|
||||
return;
|
||||
} else if (cutIndex == -1) {
|
||||
return;
|
||||
} else if (field_0x1aa == -1) {
|
||||
} else if (mCurrentEventCompositId == -1) {
|
||||
return;
|
||||
} else {
|
||||
// instruction swap
|
||||
|
||||
@@ -745,10 +745,10 @@ asm void dKyr_rain_move() {
|
||||
static bool d_krain_cut_turn_check() {
|
||||
daPy_py_c* player = (daPy_py_c*)dComIfGp_getPlayer(0);
|
||||
|
||||
return player != NULL && (player->getCutType() == daPy_py_c::TYPE_CUT_TURN_RIGHT ||
|
||||
player->getCutType() == daPy_py_c::TYPE_CUT_TURN_LEFT ||
|
||||
player->getCutType() == daPy_py_c::TYPE_CUT_LARGE_TURN_LEFT ||
|
||||
player->getCutType() == daPy_py_c::TYPE_CUT_LARGE_TURN_RIGHT);
|
||||
return player != NULL && (player->getCutType() == daPy_py_c::CUT_TYPE_TURN_RIGHT ||
|
||||
player->getCutType() == daPy_py_c::CUT_TYPE_TURN_LEFT ||
|
||||
player->getCutType() == daPy_py_c::CUT_TYPE_LARGE_TURN_LEFT ||
|
||||
player->getCutType() == daPy_py_c::CUT_TYPE_LARGE_TURN_RIGHT);
|
||||
}
|
||||
|
||||
/* ############################################################################################## */
|
||||
@@ -2027,8 +2027,8 @@ asm void dKyr_evil_draw(f32 (*param_0)[4], u8** param_1) {
|
||||
|
||||
/* 8006F160-8006F168 069AA0 0008+00 0/0 1/0 0/0 .text getKandelaarFlamePos__9daPy_py_cFv
|
||||
*/
|
||||
bool daPy_py_c::getKandelaarFlamePos() {
|
||||
return false;
|
||||
cXyz* daPy_py_c::getKandelaarFlamePos() {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/* 8037A578-8037A578 006BD8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
|
||||
@@ -533,7 +533,7 @@ SECTION_SDATA2 static u8 lit_4378[4] = {
|
||||
SECTION_SDATA2 static f32 lit_4379 = 1.0f;
|
||||
|
||||
// remove these once float data is fixed
|
||||
inline u32 tmp_dComIfGp_particle_set(u16 param_1, const cXyz* param_2, const dKy_tevstr_c* param_3,
|
||||
inline JPABaseEmitter* tmp_dComIfGp_particle_set(u16 param_1, const cXyz* param_2, const dKy_tevstr_c* param_3,
|
||||
const csXyz* param_4, const cXyz* param_5, u8 param_6,
|
||||
dPa_levelEcallBack* param_7, s8 param_8,
|
||||
const GXColor* param_9, const GXColor* param_10,
|
||||
@@ -543,7 +543,7 @@ inline u32 tmp_dComIfGp_particle_set(u16 param_1, const cXyz* param_2, const dKy
|
||||
param_9, param_10, param_11, lit_4379);
|
||||
}
|
||||
|
||||
inline u32 tmp_dComIfGp_particle_set(u16 param_0, const cXyz* param_1, const csXyz* param_2,
|
||||
inline JPABaseEmitter* tmp_dComIfGp_particle_set(u16 param_0, const cXyz* param_1, const csXyz* param_2,
|
||||
const cXyz* param_3) {
|
||||
return tmp_dComIfGp_particle_set(param_0, param_1, NULL, param_2, param_3, 0xFF, NULL, -1, NULL,
|
||||
NULL, NULL);
|
||||
@@ -920,7 +920,7 @@ static void wether_move_rain() {
|
||||
|
||||
if (g_env_light.mSnowCount == 0 && cam != NULL) {
|
||||
// Stage is not Fishing Pond
|
||||
if (strcmp(dComIfGp_getStartStageName(), "R_SP127") || cam->field_0xd8.y > 0.0f) {
|
||||
if (strcmp(dComIfGp_getStartStageName(), "R_SP127") || cam->mLookat.mEye.y > 0.0f) {
|
||||
if (g_env_light.mRainCount < 125.0f) {
|
||||
mDoAud_rainPlay(FALSE);
|
||||
} else {
|
||||
@@ -1503,14 +1503,14 @@ void dKyw_wether_proc() {
|
||||
if (!strcmp(dComIfGp_getStartStageName(), "F_SP108") ||
|
||||
!strcmp(dComIfGp_getStartStageName(), "F_SP127") ||
|
||||
(!strcmp(dComIfGp_getStartStageName(), "F_SP121") &&
|
||||
FLOAT_LABEL(lit_4378) != g_env_light.field_0x11d8)) {
|
||||
FLOAT_LABEL(lit_4378) != g_env_light.mDiceWeatherTime)) {
|
||||
if (!dKy_darkworld_check()) {
|
||||
// Stage is Hyrule Field
|
||||
if (!strcmp(dComIfGp_getStartStageName(), "F_SP121") || g_env_light.mDaytime >= 75.0f ||
|
||||
g_env_light.mDaytime <= 120.0f) {
|
||||
// Stage is Hyrule Field
|
||||
if (!strcmp(dComIfGp_getStartStageName(), "F_SP121") &&
|
||||
g_env_light.field_0x12c9 >= 1 && g_env_light.field_0x12c9 < 6) {
|
||||
g_env_light.mDiceWeatherMode >= 1 && g_env_light.mDiceWeatherMode < 6) {
|
||||
dKy_get_dayofweek();
|
||||
cLib_addCalc(&g_env_light.field_0xebc, lit_4379, lit_5362, lit_5363, lit_4770);
|
||||
g_env_light.mMoyaMode = 7;
|
||||
|
||||
@@ -324,10 +324,10 @@ int dMeter2_c::_create() {
|
||||
|
||||
mMaxMagic = dComIfGs_getMaxMagic();
|
||||
|
||||
mNowOil = dComIfGs_getOil();
|
||||
mNowOil = (s16)dComIfGs_getOil();
|
||||
dComIfGp_setItemNowOil(mNowOil);
|
||||
|
||||
mMaxOil = dComIfGs_getMaxOil();
|
||||
mMaxOil = (s16)dComIfGs_getMaxOil();
|
||||
|
||||
mNowOxygen = dComIfGp_getOxygen();
|
||||
dComIfGp_setNowOxygen(mNowOxygen);
|
||||
|
||||
@@ -1812,7 +1812,7 @@ SECTION_SDATA2 static u32 lit_5199 = 0xFFFFFFFF;
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm u32 dPa_control_c::set(u8 param_0, u16 param_1, cXyz const* param_2,
|
||||
asm JPABaseEmitter* dPa_control_c::set(u8 param_0, u16 param_1, cXyz const* param_2,
|
||||
dKy_tevstr_c const* param_3, csXyz const* param_4, cXyz const* param_5,
|
||||
u8 param_6, dPa_levelEcallBack* param_7, s8 param_8,
|
||||
_GXColor const* param_9, _GXColor const* param_10, cXyz const* param_11,
|
||||
|
||||
+79
-98
@@ -242,8 +242,8 @@ void dSv_player_status_a_c::init() {
|
||||
unk10 = 0;
|
||||
|
||||
for (int i = 0; i < MAX_SELECT_ITEM; i++) {
|
||||
mSelectItem[i] = NO_ITEM;
|
||||
mMixItem[i] = NO_ITEM;
|
||||
mSelectItem[i] = 0xFF;
|
||||
mMixItem[i] = 0xFF;
|
||||
dComIfGp_setSelectItem(i);
|
||||
}
|
||||
|
||||
@@ -268,9 +268,9 @@ void dSv_player_status_a_c::init() {
|
||||
}
|
||||
}
|
||||
|
||||
void dSv_player_status_a_c::setSelectItemIndex(int i_no, u8 item_index) {
|
||||
void dSv_player_status_a_c::setSelectItemIndex(int i_no, u8 i_slotNo) {
|
||||
if (i_no < MAX_SELECT_ITEM) {
|
||||
mSelectItem[i_no] = item_index;
|
||||
mSelectItem[i_no] = i_slotNo;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -281,9 +281,9 @@ u8 dSv_player_status_a_c::getSelectItemIndex(int i_no) const {
|
||||
return 0;
|
||||
}
|
||||
|
||||
void dSv_player_status_a_c::setMixItemIndex(int i_no, u8 item_index) {
|
||||
void dSv_player_status_a_c::setMixItemIndex(int i_no, u8 i_slotNo) {
|
||||
if (i_no < MAX_SELECT_ITEM) {
|
||||
mMixItem[i_no] = item_index;
|
||||
mMixItem[i_no] = i_slotNo;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -312,6 +312,7 @@ BOOL dSv_player_status_a_c::isMagicFlag(u8 i_magic) const {
|
||||
if (i_magic == 0) {
|
||||
return i_dComIfGs_isEventBit(0x2304); // Magic Unlocked
|
||||
}
|
||||
|
||||
return (mMagicFlag & (u8)(1 << i_magic)) ? TRUE : FALSE;
|
||||
}
|
||||
|
||||
@@ -423,7 +424,7 @@ void dSv_player_last_mark_info_c::init() {
|
||||
}
|
||||
|
||||
void dSv_player_last_mark_info_c::setWarpItemData(const char* i_name, const cXyz& i_pos,
|
||||
s16 i_angle, s8 i_roomNo, u8 unk1, u8 unk2) {
|
||||
s16 i_angle, s8 i_roomNo, u8, u8) {
|
||||
strcpy(mName, i_name);
|
||||
mPos.set(i_pos);
|
||||
mAngleY = i_angle;
|
||||
@@ -437,25 +438,25 @@ void dSv_player_item_c::init() {
|
||||
}
|
||||
}
|
||||
|
||||
void dSv_player_item_c::setItem(int item_slot, u8 i_itemNo) {
|
||||
if (item_slot < MAX_ITEM_SLOTS) {
|
||||
mItems[item_slot] = i_itemNo;
|
||||
void dSv_player_item_c::setItem(int i_slotNo, u8 i_itemNo) {
|
||||
if (i_slotNo < MAX_ITEM_SLOTS) {
|
||||
mItems[i_slotNo] = i_itemNo;
|
||||
setLineUpItem();
|
||||
}
|
||||
|
||||
for (int i = DEFAULT_SELECT_ITEM_INDEX; i < MAX_SELECT_ITEM - 1; i++) {
|
||||
if (item_slot == dComIfGs_getSelectItemIndex(i)) {
|
||||
if (i_slotNo == dComIfGs_getSelectItemIndex(i)) {
|
||||
dComIfGp_setSelectItem(i);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
u8 dSv_player_item_c::getItem(int slot_no, bool check_combo) const {
|
||||
if (slot_no < MAX_ITEM_SLOTS) {
|
||||
if (check_combo) {
|
||||
u8 dSv_player_item_c::getItem(int i_slotNo, bool i_checkCombo) const {
|
||||
if (i_slotNo < MAX_ITEM_SLOTS) {
|
||||
if (i_checkCombo) {
|
||||
for (int i = 0; i < SELECT_ITEM_NUM; i++) {
|
||||
if ((slot_no == dComIfGs_getSelectItemIndex(i) ||
|
||||
slot_no == dComIfGs_getMixItemIndex(i)) &&
|
||||
if ((i_slotNo == dComIfGs_getSelectItemIndex(i) ||
|
||||
i_slotNo == dComIfGs_getMixItemIndex(i)) &&
|
||||
dComIfGs_getMixItemIndex(i) != NO_ITEM) {
|
||||
u8 select_item = mItems[dComIfGs_getSelectItemIndex(i)];
|
||||
u8 mix_item = mItems[dComIfGs_getMixItemIndex(i)];
|
||||
@@ -516,14 +517,16 @@ u8 dSv_player_item_c::getItem(int slot_no, bool check_combo) const {
|
||||
}
|
||||
}
|
||||
}
|
||||
return mItems[slot_no];
|
||||
return mItems[i_slotNo];
|
||||
}
|
||||
|
||||
return NO_ITEM;
|
||||
}
|
||||
|
||||
static u8 i_item_lst[23] = {0x0A, 0x08, 0x06, 0x02, 0x09, 0x04, 0x03, 0x00, 0x01, 0x17, 0x14, 0x05,
|
||||
0x0F, 0x10, 0x11, 0x0B, 0x0C, 0x0D, 0x0E, 0x13, 0x12, 0x16, 0x15};
|
||||
static u8 i_item_lst[23] = {
|
||||
0x0A, 0x08, 0x06, 0x02, 0x09, 0x04, 0x03, 0x00, 0x01, 0x17, 0x14, 0x05,
|
||||
0x0F, 0x10, 0x11, 0x0B, 0x0C, 0x0D, 0x0E, 0x13, 0x12, 0x16, 0x15,
|
||||
};
|
||||
|
||||
/* 800332F8-80033354 02DC38 005C+00 2/2 0/0 0/0 .text setLineUpItem__17dSv_player_item_cFv */
|
||||
// this is close
|
||||
@@ -554,10 +557,11 @@ asm void dSv_player_item_c::setLineUpItem() {
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
u8 dSv_player_item_c::getLineUpItem(int slot_no) const {
|
||||
if (slot_no < MAX_ITEM_SLOTS) {
|
||||
return mItemSlots[slot_no];
|
||||
u8 dSv_player_item_c::getLineUpItem(int i_slotNo) const {
|
||||
if (i_slotNo < MAX_ITEM_SLOTS) {
|
||||
return mItemSlots[i_slotNo];
|
||||
}
|
||||
|
||||
return NO_ITEM;
|
||||
}
|
||||
|
||||
@@ -771,13 +775,13 @@ u8 dSv_player_item_c::checkEmptyBottle() {
|
||||
return bottleNum;
|
||||
}
|
||||
|
||||
void dSv_player_item_c::setBombBagItemIn(u8 curBomb, u8 newBomb, bool setNum) {
|
||||
void dSv_player_item_c::setBombBagItemIn(u8 i_curBomb, u8 i_newBomb, bool i_setNum) {
|
||||
for (int i = 0; i < 3; i++) {
|
||||
if (curBomb == mItems[i + SLOT_15]) {
|
||||
setItem(i + SLOT_15, newBomb);
|
||||
if (i_curBomb == mItems[i + SLOT_15]) {
|
||||
setItem(i + SLOT_15, i_newBomb);
|
||||
|
||||
if (setNum == true && newBomb != BOMB_BAG_LV1) {
|
||||
dComIfGs_setBombNum(i, dComIfGs_getBombMax(newBomb));
|
||||
if (i_setNum == true && i_newBomb != BOMB_BAG_LV1) {
|
||||
dComIfGs_setBombNum(i, dComIfGs_getBombMax(i_newBomb));
|
||||
}
|
||||
|
||||
for (int j = 0; j < 3; j++) {
|
||||
@@ -790,16 +794,16 @@ void dSv_player_item_c::setBombBagItemIn(u8 curBomb, u8 newBomb, bool setNum) {
|
||||
}
|
||||
}
|
||||
|
||||
void dSv_player_item_c::setBombBagItemIn(u8 curBomb, u8 newBomb, u8 bombNum, bool setNum) {
|
||||
void dSv_player_item_c::setBombBagItemIn(u8 i_curBomb, u8 i_newBomb, u8 i_bombNum, bool i_setNum) {
|
||||
for (int i = 0; i < 3; i++) {
|
||||
if (curBomb == mItems[i + SLOT_15]) {
|
||||
setItem(i + SLOT_15, newBomb);
|
||||
if (i_curBomb == mItems[i + SLOT_15]) {
|
||||
setItem(i + SLOT_15, i_newBomb);
|
||||
|
||||
if (setNum == 1 && newBomb != BOMB_BAG_LV1) {
|
||||
if (bombNum > dComIfGs_getBombMax(newBomb)) {
|
||||
bombNum = dComIfGs_getBombMax(newBomb);
|
||||
if (i_setNum == 1 && i_newBomb != BOMB_BAG_LV1) {
|
||||
if (i_bombNum > dComIfGs_getBombMax(i_newBomb)) {
|
||||
i_bombNum = dComIfGs_getBombMax(i_newBomb);
|
||||
}
|
||||
dComIfGs_setBombNum(i, bombNum);
|
||||
dComIfGs_setBombNum(i, i_bombNum);
|
||||
}
|
||||
|
||||
for (int j = 0; j < 3; j++) {
|
||||
@@ -812,12 +816,12 @@ void dSv_player_item_c::setBombBagItemIn(u8 curBomb, u8 newBomb, u8 bombNum, boo
|
||||
}
|
||||
}
|
||||
|
||||
void dSv_player_item_c::setEmptyBombBagItemIn(u8 newBomb, bool setNum) {
|
||||
setBombBagItemIn(BOMB_BAG_LV1, newBomb, setNum);
|
||||
void dSv_player_item_c::setEmptyBombBagItemIn(u8 i_newBomb, bool i_setNum) {
|
||||
setBombBagItemIn(BOMB_BAG_LV1, i_newBomb, i_setNum);
|
||||
}
|
||||
|
||||
void dSv_player_item_c::setEmptyBombBagItemIn(u8 newBomb, u8 bombNum, bool setNum) {
|
||||
setBombBagItemIn(BOMB_BAG_LV1, newBomb, bombNum, setNum);
|
||||
void dSv_player_item_c::setEmptyBombBagItemIn(u8 i_newBomb, u8 i_bombNum, bool i_setNum) {
|
||||
setBombBagItemIn(BOMB_BAG_LV1, i_newBomb, i_bombNum, i_setNum);
|
||||
}
|
||||
|
||||
void dSv_player_item_c::setEmptyBombBag() {
|
||||
@@ -829,20 +833,20 @@ void dSv_player_item_c::setEmptyBombBag() {
|
||||
}
|
||||
}
|
||||
|
||||
void dSv_player_item_c::setEmptyBombBag(u8 newBomb, u8 bombNum) {
|
||||
void dSv_player_item_c::setEmptyBombBag(u8 i_newBomb, u8 i_bombNum) {
|
||||
for (int i = 0; i < 3; i++) {
|
||||
if (dComIfGs_getItem((u8)(i + SLOT_15), true) == NO_ITEM) {
|
||||
dComIfGs_setItem((u8)(i + SLOT_15), newBomb);
|
||||
dComIfGs_setItem((u8)(i + SLOT_15), i_newBomb);
|
||||
|
||||
if (newBomb == BOMB_BAG_LV1) {
|
||||
if (i_newBomb == BOMB_BAG_LV1) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (bombNum > dComIfGs_getBombMax(newBomb)) {
|
||||
bombNum = dComIfGs_getBombMax(newBomb);
|
||||
if (i_bombNum > dComIfGs_getBombMax(i_newBomb)) {
|
||||
i_bombNum = dComIfGs_getBombMax(i_newBomb);
|
||||
}
|
||||
|
||||
dComIfGs_setBombNum(i, bombNum);
|
||||
dComIfGs_setBombNum(i, i_bombNum);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -895,17 +899,17 @@ void dSv_player_item_c::setBaitItem(u8 i_itemNo) {
|
||||
switch (i_itemNo) {
|
||||
case BEE_CHILD: {
|
||||
i_dComIfGs_isItemFirstBit(ZORAS_JEWEL) ? mItems[SLOT_20] = JEWEL_BEE_ROD :
|
||||
mItems[SLOT_20] = BEE_ROD;
|
||||
mItems[SLOT_20] = BEE_ROD;
|
||||
break;
|
||||
}
|
||||
case WORM: {
|
||||
i_dComIfGs_isItemFirstBit(ZORAS_JEWEL) ? mItems[SLOT_20] = JEWEL_WORM_ROD :
|
||||
mItems[SLOT_20] = WORM_ROD;
|
||||
mItems[SLOT_20] = WORM_ROD;
|
||||
break;
|
||||
}
|
||||
case NO_ITEM: {
|
||||
i_dComIfGs_isItemFirstBit(ZORAS_JEWEL) ? mItems[SLOT_20] = JEWEL_ROD :
|
||||
mItems[SLOT_20] = FISHING_ROD_1;
|
||||
mItems[SLOT_20] = FISHING_ROD_1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -922,41 +926,19 @@ void dSv_player_get_item_c::init() {
|
||||
}
|
||||
|
||||
/* 80033E60-80033E94 02E7A0 0034+00 0/0 3/3 1/1 .text onFirstBit__21dSv_player_get_item_cFUc */
|
||||
// this is a few instructions off
|
||||
#ifdef NONMATCHING
|
||||
void dSv_player_get_item_c::onFirstBit(u8 i_itemNo) {
|
||||
mItemFlags[i_itemNo >> 5] |= (1 << (i_itemNo & 0x1F));
|
||||
mItemFlags[i_itemNo / 32] |= (1 << (i_itemNo % 32));
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dSv_player_get_item_c::onFirstBit(u8 i_itemNo) {
|
||||
nofralloc
|
||||
#include "asm/d/save/d_save/onFirstBit__21dSv_player_get_item_cFUc.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 80033E94-80033EC8 02E7D4 0034+00 0/0 7/7 1/1 .text offFirstBit__21dSv_player_get_item_cFUc */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dSv_player_get_item_c::offFirstBit(u8 i_itemNo) {
|
||||
nofralloc
|
||||
#include "asm/d/save/d_save/offFirstBit__21dSv_player_get_item_cFUc.s"
|
||||
void dSv_player_get_item_c::offFirstBit(u8 i_itemNo) {
|
||||
mItemFlags[i_itemNo / 32] &= ~(1 << (i_itemNo % 32));
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80033EC8-80033F00 02E808 0038+00 4/4 87/87 2/2 .text isFirstBit__21dSv_player_get_item_cCFUc */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm int dSv_player_get_item_c::isFirstBit(u8 i_itemNo) const {
|
||||
nofralloc
|
||||
#include "asm/d/save/d_save/isFirstBit__21dSv_player_get_item_cCFUc.s"
|
||||
int dSv_player_get_item_c::isFirstBit(u8 i_itemNo) const {
|
||||
return mItemFlags[i_itemNo / 32] & (1 << (i_itemNo % 32)) ? TRUE : FALSE;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
void dSv_player_item_record_c::init() {
|
||||
mArrowNum = 0;
|
||||
@@ -976,20 +958,20 @@ void dSv_player_item_record_c::init() {
|
||||
}
|
||||
}
|
||||
|
||||
void dSv_player_item_record_c::setBombNum(u8 i_bagIdx, u8 bag_id) {
|
||||
mBombNum[i_bagIdx] = bag_id;
|
||||
void dSv_player_item_record_c::setBombNum(u8 i_bagIdx, u8 i_bombNum) {
|
||||
mBombNum[i_bagIdx] = i_bombNum;
|
||||
}
|
||||
|
||||
u8 dSv_player_item_record_c::getBombNum(u8 i_bagIdx) const {
|
||||
return mBombNum[i_bagIdx];
|
||||
}
|
||||
|
||||
void dSv_player_item_record_c::setBottleNum(u8 i_bottleIdx, u8 bottle_num) {
|
||||
mBottleNum[i_bottleIdx] = bottle_num;
|
||||
void dSv_player_item_record_c::setBottleNum(u8 i_bottleIdx, u8 i_bottleNum) {
|
||||
mBottleNum[i_bottleIdx] = i_bottleNum;
|
||||
}
|
||||
|
||||
u8 dSv_player_item_record_c::addBottleNum(u8 i_bottleIdx, s16 num) {
|
||||
int bottleNum = mBottleNum[i_bottleIdx] + num;
|
||||
u8 dSv_player_item_record_c::addBottleNum(u8 i_bottleIdx, s16 i_no) {
|
||||
int bottleNum = mBottleNum[i_bottleIdx] + i_no;
|
||||
|
||||
dComIfGs_getItem((u8)(i_bottleIdx + SLOT_11), true);
|
||||
|
||||
@@ -1018,27 +1000,27 @@ void dSv_player_item_max_c::init() {
|
||||
mItemMax[7] = 0;
|
||||
}
|
||||
|
||||
void dSv_player_item_max_c::setBombNum(u8 bomb_id, u8 bomb_max) {
|
||||
switch (bomb_id) {
|
||||
void dSv_player_item_max_c::setBombNum(u8 i_bombType, u8 i_maxNum) {
|
||||
switch (i_bombType) {
|
||||
case NORMAL_BOMB:
|
||||
mItemMax[NORMAL_BOMB_MAX] = bomb_max;
|
||||
mItemMax[NORMAL_BOMB_MAX] = i_maxNum;
|
||||
return;
|
||||
case WATER_BOMB:
|
||||
mItemMax[WATER_BOMB_MAX] = bomb_max;
|
||||
mItemMax[WATER_BOMB_MAX] = i_maxNum;
|
||||
return;
|
||||
case POKE_BOMB:
|
||||
mItemMax[POKE_BOMB_MAX] = bomb_max;
|
||||
mItemMax[POKE_BOMB_MAX] = i_maxNum;
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
u8 dSv_player_item_max_c::getBombNum(u8 bombId) const {
|
||||
u8 dSv_player_item_max_c::getBombNum(u8 i_bombType) const {
|
||||
u8 lv_multiplier = 1;
|
||||
if (i_dComIfGs_isItemFirstBit(BOMB_BAG_LV2)) {
|
||||
lv_multiplier = 2;
|
||||
}
|
||||
|
||||
switch (bombId) {
|
||||
switch (i_bombType) {
|
||||
case NORMAL_BOMB:
|
||||
return (u8)(mItemMax[NORMAL_BOMB_MAX] * lv_multiplier);
|
||||
case WATER_BOMB:
|
||||
@@ -1106,9 +1088,9 @@ void dSv_light_drop_c::init() {
|
||||
}
|
||||
}
|
||||
|
||||
void dSv_light_drop_c::setLightDropNum(u8 i_nowLevel, u8 dropNum) {
|
||||
void dSv_light_drop_c::setLightDropNum(u8 i_nowLevel, u8 i_dropNum) {
|
||||
if (i_nowLevel < LIGHT_DROP_STAGE || i_nowLevel > 6) {
|
||||
mLightDropNum[i_nowLevel] = dropNum;
|
||||
mLightDropNum[i_nowLevel] = i_dropNum;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1166,9 +1148,9 @@ void dSv_fishing_info_c::init() {
|
||||
}
|
||||
}
|
||||
|
||||
void dSv_fishing_info_c::addFishCount(u8 fish_index) {
|
||||
if (mFishCount[fish_index] < 999) {
|
||||
mFishCount[fish_index] += 1;
|
||||
void dSv_fishing_info_c::addFishCount(u8 i_fishIdx) {
|
||||
if (mFishCount[i_fishIdx] < 999) {
|
||||
mFishCount[i_fishIdx] += 1;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1319,7 +1301,7 @@ void dSv_memBit_c::onDungeonItem(int i_no) {
|
||||
}
|
||||
|
||||
s32 dSv_memBit_c::isDungeonItem(int i_no) const {
|
||||
return mDungeonItem & (u8)(1 << i_no) ? 1 : 0;
|
||||
return mDungeonItem & (u8)(1 << i_no) ? TRUE : FALSE;
|
||||
}
|
||||
|
||||
void dSv_event_c::init() {
|
||||
@@ -1384,15 +1366,15 @@ BOOL dSv_memory2_c::isVisitedRoom(int i_no) {
|
||||
return (1 << (i_no & 0x1F) & mVisitedRoom[i_no >> 5]) ? TRUE : FALSE;
|
||||
}
|
||||
|
||||
bool dSv_danBit_c::init(s8 i_stage) {
|
||||
if (i_stage != mStageNo) {
|
||||
bool dSv_danBit_c::init(s8 i_stageNo) {
|
||||
if (i_stageNo != mStageNo) {
|
||||
mSwitch[0] = 0;
|
||||
mSwitch[1] = 0;
|
||||
mItem[0] = 0;
|
||||
mItem[1] = 0;
|
||||
mItem[2] = 0;
|
||||
mItem[3] = 0;
|
||||
mStageNo = i_stage;
|
||||
mStageNo = i_stageNo;
|
||||
unk1 = 0;
|
||||
|
||||
for (int i = 0; i < 16; i++) {
|
||||
@@ -1921,8 +1903,7 @@ int dSv_info_c::initdata_to_card(char* card_ptr, int dataNum) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm int dSv_info_c::initdata_to_card(char* card_ptr, int dataNum) {
|
||||
nofralloc
|
||||
asm int dSv_info_c::initdata_to_card(char* card_ptr, int dataNum){nofralloc
|
||||
#include "asm/d/save/d_save/initdata_to_card__10dSv_info_cFPci.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
@@ -299,7 +299,7 @@ static int fopAc_Create(void* actor) {
|
||||
fopAcM_SetParam(ac, append->mParameter);
|
||||
ac->orig.pos = append->mPos;
|
||||
ac->orig.angle = append->mAngle;
|
||||
ac->mCollisionRot = append->mAngle;
|
||||
ac->shape_angle = append->mAngle;
|
||||
ac->mParentPcId = append->mParentPId;
|
||||
ac->mSubtype = append->mSubtype;
|
||||
ac->mScale.set(append->mScale[0] * 0.1f, append->mScale[1] * 0.1f, append->mScale[2] * 0.1f);
|
||||
|
||||
+16
-11
@@ -752,9 +752,14 @@ void fopAcM_calcSpeed(fopAc_ac_c* p_actor) {
|
||||
|
||||
/* 8001A660-8001A6CC 014FA0 006C+00 1/1 1/1 17/17 .text fopAcM_posMove__FP10fopAc_ac_cPC4cXyz */
|
||||
void fopAcM_posMove(fopAc_ac_c* p_actor, const cXyz* p_movePos) {
|
||||
p_actor->current.pos += p_actor->mSpeed;
|
||||
p_actor->current.pos.x += p_actor->mSpeed.x;
|
||||
p_actor->current.pos.y += p_actor->mSpeed.y;
|
||||
p_actor->current.pos.z += p_actor->mSpeed.z;
|
||||
|
||||
if (p_movePos != NULL) {
|
||||
p_actor->current.pos += *p_movePos;
|
||||
p_actor->current.pos.x += p_movePos->x;
|
||||
p_actor->current.pos.y += p_movePos->y;
|
||||
p_actor->current.pos.z += p_movePos->z;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -816,7 +821,7 @@ asm s16 fopAcM_searchActorAngleX(const fopAc_ac_c* p_actorA, const fopAc_ac_c* p
|
||||
s32 fopAcM_seenActorAngleY(const fopAc_ac_c* p_actorA, const fopAc_ac_c* p_actorB) {
|
||||
return abs(static_cast<s16>(
|
||||
cLib_targetAngleY(&p_actorA->current.pos, &p_actorB->current.pos) -
|
||||
p_actorA->mCollisionRot.y));
|
||||
p_actorA->shape_angle.y));
|
||||
}
|
||||
|
||||
/* ############################################################################################## */
|
||||
@@ -1747,7 +1752,7 @@ void* enemySearchJugge(void* p_actor, void* p_data) {
|
||||
|
||||
/* 8001CA1C-8001CAD8 01735C 00BC+00 0/0 0/0 6/6 .text fopAcM_myRoomSearchEnemy__FSc */
|
||||
#ifdef NONMATCHING
|
||||
void fopAcM_myRoomSearchEnemy(s8 roomNo) {
|
||||
fopAc_ac_c* fopAcM_myRoomSearchEnemy(s8 roomNo) {
|
||||
int procID = dStage_roomControl_c::getStatusProcID(roomNo);
|
||||
scene_class* roomProc = fopScnM_SearchByID(procID);
|
||||
|
||||
@@ -1807,8 +1812,8 @@ void fopAcM_cancelCarryNow(fopAc_ac_c* p_actor) {
|
||||
}
|
||||
}
|
||||
|
||||
p_actor->mCollisionRot.z = 0;
|
||||
p_actor->mCollisionRot.x = 0;
|
||||
p_actor->shape_angle.z = 0;
|
||||
p_actor->shape_angle.x = 0;
|
||||
|
||||
if (i_dComIfGp_event_runCheck() && fopAcM_GetGroup(p_actor) != 2) {
|
||||
p_actor->mStatus |= 0x800;
|
||||
@@ -1879,7 +1884,7 @@ s32 fopAcM_wayBgCheck(fopAc_ac_c const* param_0, f32 param_1, f32 param_2) {
|
||||
|
||||
tmp0 = param_0->current.pos;
|
||||
tmp0.y += param_2;
|
||||
mDoMtx_YrotS((MtxP)calc_mtx, param_0->mCollisionRot.y);
|
||||
mDoMtx_YrotS((MtxP)calc_mtx, param_0->shape_angle.y);
|
||||
|
||||
tmp1.x = FLOAT_LABEL(lit_4645);
|
||||
tmp1.y = 50.0f;
|
||||
@@ -1899,7 +1904,7 @@ s32 fopAcM_wayBgCheck(fopAc_ac_c const* param_0, f32 param_1, f32 param_2) {
|
||||
|
||||
/* 8001CFD8-8001D020 017918 0048+00 0/0 0/0 2/2 .text fopAcM_plAngleCheck__FPC10fopAc_ac_cs */
|
||||
s32 fopAcM_plAngleCheck(fopAc_ac_c const* p_actor, s16 i_angle) {
|
||||
s16 angle = p_actor->mCollisionRot.y - dComIfGp_getPlayer(0)->mCollisionRot.y;
|
||||
s16 angle = p_actor->shape_angle.y - dComIfGp_getPlayer(0)->shape_angle.y;
|
||||
if (angle <= i_angle && angle >= (s16)-i_angle) {
|
||||
return 0;
|
||||
}
|
||||
@@ -2021,7 +2026,7 @@ s32 fopAcM_carryOffRevise(fopAc_ac_c* param_0) {
|
||||
|
||||
tmp0 = player->current.pos;
|
||||
tmp0.y = param_0->current.pos.y;
|
||||
mDoMtx_YrotS((MtxP)calc_mtx, player->mCollisionRot.y);
|
||||
mDoMtx_YrotS((MtxP)calc_mtx, player->shape_angle.y);
|
||||
|
||||
tmp1.x = FLOAT_LABEL(lit_4645);
|
||||
tmp1.y = param_0->current.pos.y - player->current.pos.y;
|
||||
@@ -2150,7 +2155,7 @@ fopAc_ac_c* fopAcM_findObject4EventCB(fopAc_ac_c* p_actor, void* p_data) {
|
||||
#ifdef NONMATCHING
|
||||
fopAc_ac_c* fopAcM_searchFromName4Event(char const* name, s16 eventID) {
|
||||
fopAcM_search4ev_prm prm;
|
||||
prm.field_0x1e = eventID;
|
||||
prm.mEventID = eventID;
|
||||
strcpy(prm.mName, name);
|
||||
|
||||
char* chr = strchr(prm.mName, ':');
|
||||
@@ -2229,7 +2234,7 @@ asm s32 fopAcM_getWaterY(cXyz const* param_0, f32* param_1) {
|
||||
/* 8001D900-8001D9A8 018240 00A8+00 0/0 2/2 2/2 .text
|
||||
* fpoAcM_relativePos__FPC10fopAc_ac_cPC4cXyzP4cXyz */
|
||||
void fpoAcM_relativePos(fopAc_ac_c const* actor, cXyz const* p_inPos, cXyz* p_outPos) {
|
||||
s16 angle = -actor->mCollisionRot.y;
|
||||
s16 angle = -actor->shape_angle.y;
|
||||
cXyz pos = *p_inPos - actor->current.pos;
|
||||
|
||||
p_outPos->x = (pos.z * cM_ssin(angle)) + (pos.x * cM_scos(angle));
|
||||
|
||||
+72
-17
@@ -15,7 +15,7 @@ SECTION_INIT void __check_pad3();
|
||||
SECTION_INIT void __set_debug_bba();
|
||||
SECTION_INIT u8 __get_debug_bba();
|
||||
SECTION_INIT void __start();
|
||||
SECTION_INIT void __init_registers();
|
||||
SECTION_INIT void __init_registers(void);
|
||||
SECTION_INIT void __init_data();
|
||||
SECTION_INIT void __init_hardware();
|
||||
SECTION_INIT void __flush_cache();
|
||||
@@ -57,14 +57,48 @@ extern void* _SDA2_BASE_;
|
||||
extern void* _SDA_BASE_;
|
||||
|
||||
/* 800032B0-80003340 0001B0 0090+00 1/1 0/0 0/0 .init __init_registers */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
SECTION_INIT asm void __init_registers() {
|
||||
SECTION_INIT asm void __init_registers(void) {
|
||||
// clang-format off
|
||||
nofralloc
|
||||
#include "asm/init/__init_registers.s"
|
||||
|
||||
li r0, 0
|
||||
li r3, 0
|
||||
li r4, 0
|
||||
li r5, 0
|
||||
li r6, 0
|
||||
li r7, 0
|
||||
li r8, 0
|
||||
li r9, 0
|
||||
li r10, 0
|
||||
li r11, 0
|
||||
li r12, 0
|
||||
li r14, 0
|
||||
li r15, 0
|
||||
li r16, 0
|
||||
li r17, 0
|
||||
li r18, 0
|
||||
li r19, 0
|
||||
li r20, 0
|
||||
li r21, 0
|
||||
li r22, 0
|
||||
li r23, 0
|
||||
li r24, 0
|
||||
li r25, 0
|
||||
li r26, 0
|
||||
li r27, 0
|
||||
li r28, 0
|
||||
li r29, 0
|
||||
li r30, 0
|
||||
li r31, 0
|
||||
lis r1, _stack_end+0x1000@h
|
||||
ori r1, r1, _stack_end+0x1000@l
|
||||
lis r2, _SDA2_BASE_@h
|
||||
ori r2, r2, _SDA2_BASE_@l
|
||||
lis r13, _SDA_BASE_@h
|
||||
ori r13, r13, _SDA_BASE_@l
|
||||
blr
|
||||
// clang-format on
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80003340-80003400 000240 00C0+00 1/1 0/0 1/1 .init __init_data */
|
||||
#pragma push
|
||||
@@ -77,24 +111,45 @@ SECTION_INIT asm void __init_data() {
|
||||
#pragma pop
|
||||
|
||||
/* 80003400-80003424 000300 0024+00 1/1 0/0 0/0 .init __init_hardware */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
SECTION_INIT asm void __init_hardware() {
|
||||
// clang-format off
|
||||
nofralloc
|
||||
#include "asm/init/__init_hardware.s"
|
||||
|
||||
mfmsr r0
|
||||
ori r0, r0, 0x2000
|
||||
mtmsr r0
|
||||
mflr r31
|
||||
bl __OSPSInit
|
||||
bl __OSFPRInit
|
||||
bl __OSCacheInit
|
||||
mtlr r31
|
||||
blr
|
||||
// clang-format on
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80003424-80003458 000324 0034+00 1/1 0/0 0/0 .init __flush_cache */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
SECTION_INIT asm void __flush_cache() {
|
||||
// clang-format off
|
||||
nofralloc
|
||||
#include "asm/init/__flush_cache.s"
|
||||
|
||||
lis r5, 0xFFFF
|
||||
ori r5, r5, 0xFFF1
|
||||
and r5, r5, r3
|
||||
subf r3, r5, r3
|
||||
add r4, r4, r3
|
||||
|
||||
lbl_80003438:
|
||||
dcbst 0, r5
|
||||
sync
|
||||
icbi 0, r5
|
||||
addic r5, r5, 8
|
||||
addic. r4, r4, -8
|
||||
bge lbl_80003438
|
||||
|
||||
isync
|
||||
blr
|
||||
// clang-format on
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80003458-80003488 000358 0030+00 1/1 55/55 137/137 .init memset */
|
||||
SECTION_INIT void* memset(void* dst, int val, size_t n) {
|
||||
|
||||
@@ -45,7 +45,7 @@ static u8 sTmpBuf[0x4000];
|
||||
|
||||
/* 80017498-8001769C 011DD8 0204+00 0/0 1/1 0/0 .text mDoMemCdRWm_Store__FP12CARDFileInfoPvUl */
|
||||
#ifdef NONMATCHING
|
||||
void mDoMemCdRWm_Store(CARDFileInfo* file, void* data, u32 length) {
|
||||
s32 mDoMemCdRWm_Store(CARDFileInfo* file, void* data, u32 length) {
|
||||
mDoMemCdRWm_BuildHeader((mDoMemCdRWm_HeaderData*)sTmpBuf);
|
||||
|
||||
s32 card_state = CARDWrite(file, sTmpBuf, sizeof(sTmpBuf), 0);
|
||||
@@ -153,14 +153,15 @@ static asm BOOL mDoMemCdRWm_CheckCardStat(CARDFileInfo* param_0) {
|
||||
#pragma pop
|
||||
|
||||
/* 80017C74-80017CB4 0125B4 0040+00 1/1 0/0 0/0 .text mDoMemCdRWm_CalcCheckSum__FPvUl */
|
||||
// matches except regalloc in the beginning
|
||||
#ifdef NONMATCHING
|
||||
static u32 mDoMemCdRWm_CalcCheckSum(void* data, u32 size) {
|
||||
u16 high = 0;
|
||||
u16 low = 0;
|
||||
u16 high;
|
||||
u16 low;
|
||||
|
||||
low = 0;
|
||||
high = 0;
|
||||
|
||||
u16* d = (u16*)data;
|
||||
for (int i = 0; i < size / 2; i++) {
|
||||
for (int i = 0; i < size / 2; i++) {
|
||||
high += *d;
|
||||
low += ~*d;
|
||||
d++;
|
||||
@@ -168,23 +169,14 @@ static u32 mDoMemCdRWm_CalcCheckSum(void* data, u32 size) {
|
||||
|
||||
return high << 16 | low;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm u32 mDoMemCdRWm_CalcCheckSum(void* param_0, u32 param_1) {
|
||||
nofralloc
|
||||
#include "asm/m_Do/m_Do_MemCardRWmng/mDoMemCdRWm_CalcCheckSum__FPvUl.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 80017CB4-80017CEC 0125F4 0038+00 2/2 0/0 0/0 .text mDoMemCdRWm_CalcCheckSumGameData__FPvUl */
|
||||
// same beginning regalloc issue
|
||||
#ifdef NONMATCHING
|
||||
static u64 mDoMemCdRWm_CalcCheckSumGameData(void* data, u32 size) {
|
||||
u32 high = 0;
|
||||
u32 low = 0;
|
||||
u32 high;
|
||||
u32 low;
|
||||
|
||||
low = 0;
|
||||
high = 0;
|
||||
|
||||
u8* d = (u8*)data;
|
||||
for (int i = 0; i < size; i++) {
|
||||
@@ -195,16 +187,6 @@ static u64 mDoMemCdRWm_CalcCheckSumGameData(void* data, u32 size) {
|
||||
|
||||
return (u64)high << 32 | low;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm u64 mDoMemCdRWm_CalcCheckSumGameData(void* param_0, u32 param_1) {
|
||||
nofralloc
|
||||
#include "asm/m_Do/m_Do_MemCardRWmng/mDoMemCdRWm_CalcCheckSumGameData__FPvUl.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 80017CEC-80017D38 01262C 004C+00 1/1 4/4 0/0 .text mDoMemCdRWm_TestCheckSumGameData__FPv */
|
||||
BOOL mDoMemCdRWm_TestCheckSumGameData(void* data) {
|
||||
|
||||
@@ -462,7 +462,7 @@ int mDoGph_AfterOfDraw() {
|
||||
JUTDbPrint::getManager()->setVisible(true);
|
||||
} else {
|
||||
int sysConsole_visible = JFWSystem::getSystemConsole()->isVisible();
|
||||
int port3_connected = mDoCPd_c::isConnect(mDoCPd_c::PAD_2);
|
||||
int port3_connected = mDoCPd_c::isConnect(PAD_3);
|
||||
|
||||
BOOL procBar_visible = port3_connected && fapGmHIO_getMeter() && !sysConsole_visible;
|
||||
BOOL console_visible = port3_connected && fapGmHIO_isPrint();
|
||||
@@ -487,7 +487,7 @@ int mDoGph_AfterOfDraw() {
|
||||
GXSetCoPlanar(GX_DISABLE);
|
||||
GXSetZTexture(GX_ZT_DISABLE, GX_TF_Z8, 0);
|
||||
GXSetDither(GX_ENABLE);
|
||||
GXSetClipMode(GX_DISABLE);
|
||||
GXSetClipMode(GX_CLIP_ENABLE);
|
||||
GXSetCullMode(GX_CULL_NONE);
|
||||
JUTVideo::getManager()->setRenderMode(mDoMch_render_c::getRenderModeObj());
|
||||
mDoGph_gInf_c::endFrame();
|
||||
|
||||
@@ -669,13 +669,13 @@ int mDoMch_Create() {
|
||||
JKRHeap::setDefaultDebugFill(mDebugFill);
|
||||
JFWSystem::setMaxStdHeap(1);
|
||||
|
||||
u32 arenaHi = OSGetArenaHi();
|
||||
u32 arenaLo = OSGetArenaLo();
|
||||
u32 arenaHi = (u32)OSGetArenaHi();
|
||||
u32 arenaLo = (u32)OSGetArenaLo();
|
||||
if (arenaHi > 0x81800000 && arenaHi - 0x1800000 > arenaLo) {
|
||||
OSSetArenaHi(arenaHi - 0x1800000);
|
||||
OSSetArenaHi((void*)(arenaHi - 0x1800000));
|
||||
}
|
||||
|
||||
u32 arenaSize = (OSGetArenaHi() - OSGetArenaLo()) - 0xF0;
|
||||
u32 arenaSize = ((u32)OSGetArenaHi() - (u32)OSGetArenaLo()) - 0xF0;
|
||||
my_PrintHeap("アリーナ", arenaSize);
|
||||
|
||||
if (mDoMain::memMargin != -1) {
|
||||
|
||||
+20
-127
@@ -9,6 +9,7 @@
|
||||
#include "JSystem/JKernel/JKRAram.h"
|
||||
#include "JSystem/JUtility/JUTAssert.h"
|
||||
#include "JSystem/JUtility/JUTReport.h"
|
||||
#include "c/c_dylink.h"
|
||||
#include "d/com/d_com_inf_game.h"
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/types.h"
|
||||
@@ -24,26 +25,7 @@
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void version_check__Fv();
|
||||
extern "C" void CheckHeap1__9HeapCheckFv();
|
||||
extern "C" static void CheckHeap__FUl();
|
||||
extern "C" static void countUsed__FP10JKRExpHeap();
|
||||
extern "C" void getUsedCount__9HeapCheckCFv();
|
||||
extern "C" void heapDisplay__9HeapCheckCFv();
|
||||
extern "C" static void debugDisplay__Fv();
|
||||
extern "C" static void Debug_console__FUl();
|
||||
extern "C" void* LOAD_COPYDATE__FPv();
|
||||
extern "C" static void debug__Fv();
|
||||
extern "C" static void main01__Fv();
|
||||
extern "C" void main();
|
||||
extern "C" bool dump_sort__7JKRHeapFv();
|
||||
extern "C" void __sinit_m_Do_main_cpp();
|
||||
extern "C" extern char const* const m_Do_m_Do_main__stringBase0;
|
||||
extern "C" u8 COPYDATE_STRING__7mDoMain[18 + 2 /* padding */];
|
||||
extern "C" u32 memMargin__7mDoMain;
|
||||
extern "C" u8 sPowerOnTime__7mDoMain[4];
|
||||
extern "C" u8 sHungUpTime__7mDoMain[4];
|
||||
extern "C" s8 developmentMode__7mDoMain;
|
||||
extern "C" extern u8 data_80450B38[4];
|
||||
extern "C" extern u8 data_80450B3C[4];
|
||||
extern "C" extern u8 data_80450B40[4];
|
||||
@@ -71,59 +53,8 @@ extern "C" extern u8 data_80450B90[4 + 4 /* padding */];
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" void OSReportInit__Fv();
|
||||
extern "C" void mDoAud_Execute__Fv();
|
||||
extern "C" void create__8mDoCPd_cFv();
|
||||
extern "C" void read__8mDoCPd_cFv();
|
||||
extern "C" void mDoGph_Create__Fv();
|
||||
extern "C" void mDoMch_HeapCheckAll__Fv();
|
||||
extern "C" void mDoMch_Create__Fv();
|
||||
extern "C" void mDoExt_getGameHeap__Fv();
|
||||
extern "C" void mDoExt_getZeldaHeap__Fv();
|
||||
extern "C" void mDoExt_getCommandHeap__Fv();
|
||||
extern "C" void mDoExt_getArchiveHeap__Fv();
|
||||
extern "C" void mDoExt_getJ2dHeap__Fv();
|
||||
extern "C" void mDoExt_getHostIOHeap__Fv();
|
||||
extern "C" void create__20mDoDvdThd_callback_cFPFPv_PvPv();
|
||||
extern "C" void update__15mDoMemCd_Ctrl_cFv();
|
||||
extern "C" void cDyl_InitAsync__Fv();
|
||||
extern "C" void fapGm_Execute__Fv();
|
||||
extern "C" void fapGm_Create__Fv();
|
||||
extern "C" void fopAcM_initManager__Fv();
|
||||
extern "C" void ct__13dComIfG_inf_cFv();
|
||||
extern "C" void dump__14dRes_control_cFv();
|
||||
extern "C" void dump__24DynamicModuleControlBaseFv();
|
||||
extern "C" void getFreeSize__7JKRHeapFv();
|
||||
extern "C" void getTotalFreeSize__7JKRHeapFv();
|
||||
extern "C" void getTotalUsedSize__10JKRExpHeapCFv();
|
||||
extern "C" void create__12JKRSolidHeapFUlP7JKRHeapb();
|
||||
extern "C" void getFreeSize__11JKRAramHeapFv();
|
||||
extern "C" void getTotalFreeSize__11JKRAramHeapFv();
|
||||
extern "C" void dump__11JKRAramHeapFv();
|
||||
extern "C" void JUTReport__FiiPCce();
|
||||
extern "C" void JUTReport__FiiiPCce();
|
||||
extern "C" void setMessageCount__12JUTAssertionFi();
|
||||
extern "C" void clear__10JUTConsoleFv();
|
||||
extern "C" void dumpToTerminal__10JUTConsoleFUi();
|
||||
extern "C" void scroll__10JUTConsoleFi();
|
||||
extern "C" void getLineOffset__10JUTConsoleCFv();
|
||||
extern "C" void _savegpr_23();
|
||||
extern "C" void _savegpr_26();
|
||||
extern "C" void _savegpr_27();
|
||||
extern "C" void _savegpr_28();
|
||||
extern "C" void _restgpr_23();
|
||||
extern "C" void _restgpr_26();
|
||||
extern "C" void _restgpr_27();
|
||||
extern "C" void _restgpr_28();
|
||||
extern "C" u8 m_gamePad__8mDoCPd_c[16];
|
||||
extern "C" u8 m_cpadInfo__8mDoCPd_c[256];
|
||||
extern "C" extern JKRSolidHeap* g_mDoAud_audioHeap;
|
||||
extern "C" u8 mResetData__6mDoRst[4 + 4 /* padding */];
|
||||
extern "C" u8 systemConsole__9JFWSystem[4];
|
||||
extern "C" u8 sSystemHeap__7JKRHeap[4];
|
||||
extern "C" u8 sCurrentHeap__7JKRHeap[4];
|
||||
extern "C" u8 sRootHeap__7JKRHeap[4];
|
||||
extern "C" u8 sAramObject__7JKRAram[4];
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
@@ -299,7 +230,7 @@ OSTime mDoMain::sHungUpTime;
|
||||
/* 80450B18 0001+00 data_80450B18 None */
|
||||
/* 80450B19 0001+00 data_80450B19 None */
|
||||
/* 80450B1A 0002+00 data_80450B1A None */
|
||||
static bool mDisplayHeapSize; // sDisplayHeapDebug
|
||||
static bool mDisplayHeapSize;
|
||||
static u8 sDisplayHeap;
|
||||
static bool sCheckHeap;
|
||||
|
||||
@@ -477,40 +408,21 @@ bool Debug_console(u32 i_padNo) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 803739A0-803739A0 000000 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_DEAD static char const* const stringBase_80373C23 = "/str/Final/Release/COPYDATE";
|
||||
#pragma pop
|
||||
|
||||
/* 8000614C-800061C8 000A8C 007C+00 1/1 0/0 0/0 .text LOAD_COPYDATE__FPv */
|
||||
#ifdef NONMATCHING
|
||||
s32 LOAD_COPYDATE(void*) {
|
||||
s32 status;
|
||||
u8 buffer[32];
|
||||
u8 fileInfo[80];
|
||||
// DVDFileInfo fileInfo;
|
||||
|
||||
status = DVDOpen("/str/Final/Release/COPYDATE", (DVDFileInfo*)&fileInfo);
|
||||
DVDFileInfo __attribute__((aligned(0x20))) fileInfo;
|
||||
u8 buffer[0x20];
|
||||
status = DVDOpen("/str/Final/Release/COPYDATE", &fileInfo);
|
||||
|
||||
if (status) {
|
||||
DVDReadPrio((DVDFileInfo*)fileInfo, &buffer, 32, 0, 2);
|
||||
DVDReadPrio(&fileInfo, &buffer, 32, 0, 2);
|
||||
memcpy(mDoMain::COPYDATE_STRING, buffer, 17);
|
||||
status = DVDClose((DVDFileInfo*)fileInfo);
|
||||
status = DVDClose(&fileInfo);
|
||||
}
|
||||
return status;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void* LOAD_COPYDATE(void* param_0) {
|
||||
nofralloc
|
||||
#include "asm/m_Do/m_Do_main/LOAD_COPYDATE__FPv.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
static void debug() {
|
||||
if (mDoMain::developmentMode) {
|
||||
@@ -537,15 +449,11 @@ static void debug() {
|
||||
}
|
||||
}
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80450B34-80450B38 000034 0004+00 1/1 0/0 0/0 .sbss frame$3939 */
|
||||
static u32 frame;
|
||||
|
||||
/* 8000628C-80006454 000BCC 01C8+00 1/1 0/0 0/0 .text main01__Fv */
|
||||
// only issue is output check section with weird code gen
|
||||
#ifdef NONMATCHING
|
||||
void main01(void) {
|
||||
mDoMch_Create__Fv();
|
||||
static u32 frame;
|
||||
|
||||
mDoMch_Create();
|
||||
mDoGph_Create();
|
||||
mDoCPd_c::create();
|
||||
|
||||
@@ -590,26 +498,22 @@ void main01(void) {
|
||||
}
|
||||
|
||||
JUTConsole* console = JFWSystem::getSystemConsole();
|
||||
s32 output = 0;
|
||||
if (mDoMain::developmentMode != 0) {
|
||||
output = JUTConsole::OUTPUT_OSREPORT | JUTConsole::OUTPUT_CONSOLE;
|
||||
}
|
||||
|
||||
console->setOutput(output);
|
||||
console->setOutput(mDoMain::developmentMode ? JUTConsole::OUTPUT_OSR_AND_CONSOLE :
|
||||
JUTConsole::OUTPUT_NONE);
|
||||
console->setPosition(32, 42);
|
||||
|
||||
mDoDvdThd_callback_c::create(LOAD_COPYDATE, NULL);
|
||||
fapGm_Create__Fv();
|
||||
fopAcM_initManager__Fv();
|
||||
mDoDvdThd_callback_c::create((mDoDvdThd_callback_func)LOAD_COPYDATE, NULL);
|
||||
fapGm_Create();
|
||||
fopAcM_initManager();
|
||||
mDisplayHeapSize = 0;
|
||||
cDyl_InitAsync__Fv();
|
||||
cDyl_InitAsync();
|
||||
|
||||
g_mDoAud_audioHeap = JKRSolidHeap::create(0x14D800, JKRHeap::getCurrentHeap(), false);
|
||||
|
||||
do {
|
||||
frame++;
|
||||
if (fillcheck_check_frame != 0 && frame % fillcheck_check_frame == 0) {
|
||||
mDoMch_HeapCheckAll__Fv();
|
||||
mDoMch_HeapCheckAll();
|
||||
}
|
||||
|
||||
if (SyncWidthSound) {
|
||||
@@ -617,21 +521,11 @@ void main01(void) {
|
||||
}
|
||||
|
||||
mDoCPd_c::read();
|
||||
fapGm_Execute__Fv();
|
||||
mDoAud_Execute__Fv();
|
||||
fapGm_Execute();
|
||||
mDoAud_Execute();
|
||||
debug();
|
||||
} while (true);
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void main01() {
|
||||
nofralloc
|
||||
#include "asm/m_Do/m_Do_main/main01__Fv.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 803D3420-803DB420 000140 8000+00 1/1 0/0 0/0 .bss mainThreadStack */
|
||||
@@ -722,8 +616,7 @@ SECTION_DEAD static char const* const stringBase_80373CA7 = "コマンド";
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void __sinit_m_Do_main_cpp() {
|
||||
nofralloc
|
||||
asm void __sinit_m_Do_main_cpp(){nofralloc
|
||||
#include "asm/m_Do/m_Do_main/__sinit_m_Do_main_cpp.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
Reference in New Issue
Block a user