summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorTakaRikka <38417346+TakaRikka@users.noreply.github.com>2021-12-05 17:15:10 -0800
committerGitHub <noreply@github.com>2021-12-05 17:15:10 -0800
commitf7916ebde17cb384c75921cf55878f5b7b305366 (patch)
treed78f1b895c9f6b515933c3549134c3be2f590eab /src
parentcc29e8e5c961daee206ebe49543517aee901fe71 (diff)
parent751a4112a02a7ddc4f638d8300e66ab57afcde34 (diff)
Merge pull request #165 from TakaRikka/link
daAlink work
Diffstat (limited to 'src')
-rw-r--r--src/d/a/d_a_alink.cpp7262
-rw-r--r--src/d/a/d_a_player.cpp93
-rw-r--r--src/d/bg/d_bg_s_acch.cpp4
-rw-r--r--src/d/com/d_com_inf_game.cpp44
-rw-r--r--src/d/d_att_dist.cpp674
-rw-r--r--src/d/d_attention.cpp2
-rw-r--r--src/d/event/d_event.cpp2
-rw-r--r--src/d/event/d_event_data.cpp253
-rw-r--r--src/d/event/d_event_manager.cpp191
-rw-r--r--src/d/kankyo/d_kankyo.cpp8
-rw-r--r--src/d/menu/d_menu_window.cpp11
-rw-r--r--src/d/meter/d_meter2.cpp200
-rw-r--r--src/d/meter/d_meter2_draw.cpp183
-rw-r--r--src/d/meter/d_meter_map.cpp38
-rw-r--r--src/d/particle/d_particle.cpp125
-rw-r--r--src/d/save/d_save.cpp14
-rw-r--r--src/f_op/f_op_actor_mng.cpp2
-rw-r--r--src/f_op/f_op_msg_mng.cpp2
-rw-r--r--src/m_Do/m_Do_ext.cpp39
19 files changed, 4271 insertions, 4876 deletions
diff --git a/src/d/a/d_a_alink.cpp b/src/d/a/d_a_alink.cpp
index 40f1dbab12..124c12632e 100644
--- a/src/d/a/d_a_alink.cpp
+++ b/src/d/a/d_a_alink.cpp
@@ -4,16 +4,23 @@
//
#include "d/a/d_a_alink.h"
+#include "JSystem/J2DGraph/J2DAnmLoader.h"
#include "JSystem/J3DGraphLoader/J3DAnmLoader.h"
+#include "JSystem/JMath/JMath.h"
#include "JSystem/JStudio/JStudio/stb.h"
+#include "SSystem/SComponent/c_math.h"
#include "Z2AudioLib/Z2AudioMgr.h"
#include "d/a/d_a_horse_static.h"
#include "d/com/d_com_inf_game.h"
+#include "d/d_bomb.h"
#include "dol2asm.h"
#include "dolphin/types.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/obj/d_a_obj_carry/d_a_obj_carry.h"
//
// Types:
@@ -23,10 +30,6 @@ struct mDoExt_blkAnm {
/* 8000DA08 */ void init(J3DDeformData*, J3DAnmCluster*, int, int, f32, s16, s16);
};
-struct mDoExt_MtxCalcOldFrame {
- /* 8000F848 */ void initOldFrameMorf(f32, u16, u16);
-};
-
struct mDoExt_MtxCalcAnmBlendTbl {
/* 800D00BC */ void getAnm(int);
};
@@ -71,160 +74,15 @@ struct daMirror_c {
/* 8003194C */ void entry(J3DModel*);
};
-struct daCrod_c {
- /* 80141A94 */ void setControllActorData();
-};
-
-struct daAlink_matAnm_c {
- /* 8009D8E4 */ void init();
- /* 8009D90C */ void calc(J3DMaterial*) const;
- /* 800D0180 */ void offSetFlg();
- /* 800D0B8C */ ~daAlink_matAnm_c();
-};
-
-struct dCcG_At_Spl {};
-
struct dDemo_actor_c {
/* 8003819C */ void getPrm_Morf();
/* 80038338 */ void getDemoIDData(int*, int*, int*, u16*, u8*);
};
-struct daAlinkHIO_zwLight_c0 {
- static u8 const m[28];
-};
-
-struct daAlinkHIO_wolf_c0 {
- static u8 const m[24];
-};
-
struct daAlinkHIO_wolf_c {
/* 80140B98 */ ~daAlinkHIO_wolf_c();
};
-struct daAlinkHIO_wlWallHang_c0 {
- static u8 const m[156];
-};
-
-struct daAlinkHIO_wlSwim_c0 {
- static u8 const m[168];
-};
-
-struct daAlinkHIO_wlSlide_c0 {
- static u8 const m[124];
-};
-
-struct daAlinkHIO_wlSideStep_c0 {
- static u8 const m[104];
-};
-
-struct daAlinkHIO_wlRope_c0 {
- static u8 const m[56];
-};
-
-struct daAlinkHIO_wlPush_c0 {
- static u8 const m[20];
-};
-
-struct daAlinkHIO_wlPoint_c0 {
- static u8 const m[124];
-};
-
-struct daAlinkHIO_wlMove_c0 {
- static u8 const m[256];
-};
-
-struct daAlinkHIO_wlMoveNoP_c0 {
- static u8 const m[72];
-};
-
-struct daAlinkHIO_wlLight_c0 {
- static u8 const m[28];
-};
-
-struct daAlinkHIO_wlLie_c0 {
- static u8 const m[76];
-};
-
-struct daAlinkHIO_wlHowl_c0 {
- static u8 const m[96];
-};
-
-struct daAlinkHIO_wlGrab_c0 {
- static u8 const m[100];
-};
-
-struct daAlinkHIO_wlDamage_c0 {
- static u8 const m[44];
-};
-
-struct daAlinkHIO_wlDamNormal_c0 {
- static u8 const m[96];
-};
-
-struct daAlinkHIO_wlDamLarge_c0 {
- static u8 const m[108];
-};
-
-struct daAlinkHIO_wlDamHuge_c0 {
- static u8 const m[108];
-};
-
-struct daAlinkHIO_wlDamFall_c0 {
- static u8 const m[64];
-};
-
-struct daAlinkHIO_wlDamCaught_c0 {
- static u8 const m[16];
-};
-
-struct daAlinkHIO_wlChain_c0 {
- static u8 const m[92];
-};
-
-struct daAlinkHIO_wlBall_c0 {
- static u8 const m[56];
-};
-
-struct daAlinkHIO_wlBackJump_c0 {
- static u8 const m[56];
-};
-
-struct daAlinkHIO_wlAttack_c0 {
- static u8 const m[56];
-};
-
-struct daAlinkHIO_wlAtnMove_c0 {
- static u8 const m[56];
-};
-
-struct daAlinkHIO_wlAtWaTl_c0 {
- static u8 const m[60];
-};
-
-struct daAlinkHIO_wlAtWaSc_c0 {
- static u8 const m[60];
-};
-
-struct daAlinkHIO_wlAtWaLr_c0 {
- static u8 const m[60];
-};
-
-struct daAlinkHIO_wlAtRoll_c0 {
- static u8 const m[32];
-};
-
-struct daAlinkHIO_wlAtNjump_c0 {
- static u8 const m[60];
-};
-
-struct daAlinkHIO_wlAtLock_c0 {
- static u8 const m[84];
-};
-
-struct daAlinkHIO_wlAtLand_c0 {
- static u8 const m[64];
-};
-
struct daAlinkHIO_wlAtDown_c0 {
static u8 const m[156];
};
@@ -237,10 +95,6 @@ struct daAlinkHIO_wlAtBite_c0 {
static u8 const m[92];
};
-struct daAlinkHIO_wallMove_c0 {
- static u8 const m[20];
-};
-
struct daAlinkHIO_wallHang_c0 {
static u8 const m[28];
};
@@ -253,30 +107,10 @@ struct daAlinkHIO_wallCatch_c0 {
static u8 const m[84];
};
-struct daAlinkHIO_turnMove_c0 {
- static u8 const m[44];
-};
-
-struct daAlinkHIO_swim_c0 {
- static u8 const m[252];
-};
-
-struct daAlinkHIO_spinner_c0 {
- static u8 const m[64];
-};
-
struct daAlinkHIO_smallJump_c0 {
static u8 const m[72];
};
-struct daAlinkHIO_slide_c0 {
- static u8 const m[120];
-};
-
-struct daAlinkHIO_sideStep_c0 {
- static u8 const m[104];
-};
-
struct daAlinkHIO_roofHang_c0 {
static u8 const m[76];
};
@@ -293,26 +127,10 @@ struct daAlinkHIO_noActAtnMove_c0 {
static u8 const m[84];
};
-struct daAlinkHIO_move_c0 {
- static u8 const m[88];
-};
-
-struct daAlinkHIO_magneBoots_c0 {
- static u8 const m[76];
-};
-
-struct daAlinkHIO_ladder_c0 {
- static u8 const m[112];
-};
-
struct daAlinkHIO_kandelaar_c0 {
static u8 const m[80];
};
-struct daAlinkHIO_item_c0 {
- static u8 const m[60];
-};
-
struct daAlinkHIO_ironBall_c0 {
static u8 const m[140];
};
@@ -321,14 +139,6 @@ struct daAlinkHIO_huLight_c0 {
static u8 const m[28];
};
-struct daAlinkHIO_horse_c0 {
- static u8 const m[108];
-};
-
-struct daAlinkHIO_hookshot_c0 {
- static u8 const m[112];
-};
-
struct daAlinkHIO_hoCutRB_c0 {
static u8 const m[32];
};
@@ -365,10 +175,6 @@ struct daAlinkHIO_gAtKick_c0 {
static u8 const m[36];
};
-struct daAlinkHIO_frontRoll_c0 {
- static u8 const m[112];
-};
-
struct daAlinkHIO_fmChain_c0 {
static u8 const m[40];
};
@@ -405,10 +211,6 @@ struct daAlinkHIO_damCaught_c0 {
static u8 const m[36];
};
-struct daAlinkHIO_cut_c0 {
- static u8 const m[156];
-};
-
struct daAlinkHIO_cut_c {
/* 80140BD4 */ ~daAlinkHIO_cut_c();
};
@@ -437,14 +239,6 @@ struct daAlinkHIO_cutNmL_c0 {
static u8 const m[32];
};
-struct daAlinkHIO_cutLargeJump_c0 {
- static u8 const m[116];
-};
-
-struct daAlinkHIO_cutJump_c0 {
- static u8 const m[68];
-};
-
struct daAlinkHIO_cutHead_c0 {
static u8 const m[96];
};
@@ -497,10 +291,6 @@ struct daAlinkHIO_crouch_c0 {
static u8 const m[76];
};
-struct daAlinkHIO_copyRod_c0 {
- static u8 const m[56];
-};
-
struct daAlinkHIO_canoe_c0 {
static u8 const m[72];
};
@@ -510,60 +300,6 @@ struct daAlinkHIO_c {
/* 80140C10 */ ~daAlinkHIO_c();
};
-struct daAlinkHIO_bow_c0 {
- static u8 const m[112];
-};
-
-struct daAlinkHIO_bottle_c0 {
- static u8 const m[180];
-};
-
-struct daAlinkHIO_boom_c0 {
- static u8 const m[76];
-};
-
-struct daAlinkHIO_bomb_c0 {
- static u8 const m[76];
-};
-
-struct daAlinkHIO_board_c0 {
- static u8 const m[156];
-};
-
-struct daAlinkHIO_backJump_c0 {
- static u8 const m[56];
-};
-
-struct daAlinkHIO_atnMove_c0 {
- static u8 const m[84];
-};
-
-struct dPa_control_c {
- struct level_c {
- /* 8004B8B4 */ void forceOnEventMove(u32);
- /* 8004B918 */ void getEmitter(u32);
- };
-
- /* 8004C218 */ void setHitMark(u16, fopAc_ac_c*, cXyz const*, csXyz const*, cXyz const*, u32);
- /* 8004C838 */ void setWaterRipple(u32*, cBgS_PolyInfo&, cXyz const*, f32, dKy_tevstr_c const*,
- cXyz const*, s8);
- /* 8004D4CC */ void set(u32, u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*,
- cXyz const*, u8, dPa_levelEcallBack*, s8, _GXColor const*,
- _GXColor const*, cXyz const*, f32);
- /* 8004CA90 */ void set(u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*, cXyz const*,
- u8, dPa_levelEcallBack*, s8, _GXColor const*, _GXColor const*,
- cXyz const*, f32);
- /* 8004CF90 */ void getPolyColor(cBgS_PolyInfo&, int, _GXColor*, _GXColor*, u8*, f32*);
- /* 8004D6A4 */ void setPoly(u32, u16, cBgS_PolyInfo&, cXyz const*, dKy_tevstr_c const*,
- csXyz const*, cXyz const*, int, dPa_levelEcallBack*, s8,
- cXyz const*);
- /* 8004D068 */ void setPoly(u16, cBgS_PolyInfo&, cXyz const*, dKy_tevstr_c const*, csXyz const*,
- cXyz const*, int, dPa_levelEcallBack*, s8, cXyz const*);
-
- static u8 mWaterBubblePcallBack[4];
- static u8 mParticleTracePCB[4 + 4 /* padding */];
-};
-
struct dPaPoF_c {
/* 800512E8 */ void setEffectFour(dKy_tevstr_c const*, cXyz const*, u32, u32, cXyz const*,
cXyz const*, cXyz const*, cXyz const*, cXyz const*,
@@ -608,16 +344,6 @@ struct JAISeq {
/* 802A0A8C */ JAISeq(JAISeqMgr*, JAISoundStrategyMgr<JAISeq>*);
};
-struct J3DMaterialAnm {
- /* 800A4820 */ ~J3DMaterialAnm();
- /* 8032C320 */ void initialize();
- /* 8032C3C4 */ void calc(J3DMaterial*) const;
-};
-
-struct J2DAnmLoaderDataBase {
- /* 80308A6C */ void load(void const*);
-};
-
//
// Forward References:
//
@@ -3624,6 +3350,14 @@ inline Z2CreatureLink* Z2GetLink() {
return Z2CreatureLink::mLinkPtr;
}
+inline u16 i_dComIfGs_getLife() {
+ return g_dComIfG_gameInfo.info.getPlayer().getPlayerStatusA().getLife();
+}
+
+inline BOOL i_dComIfGs_isEventBit(u16 id) {
+ return g_dComIfG_gameInfo.info.getEvent().isEventBit(id);
+}
+
/* 8009D87C-8009D884 0981BC 0008+00 0/0 1/1 0/0 .text getE3Zhint__9daAlink_cFv */
bool daAlink_c::getE3Zhint() {
return false;
@@ -3688,7 +3422,7 @@ static asm void daAlink_coHitCallback(fopAc_ac_c* param_0, dCcD_GObjInf* param_1
/* ############################################################################################## */
/* 80450FC0-80450FC4 0004C0 0004+00 1/1 0/0 0/0 .sbss it$36766 */
-static u8 it[4];
+static int it;
/* 80450FC4-80450FC8 -00001 0004+00 1/1 0/0 0/0 .sbss None */
/* 80450FC4 0001+00 data_80450FC4 None */
@@ -3699,8 +3433,10 @@ static u8 struct_80450FC4[4];
/* 80450FC8-80450FCC -00001 0004+00 5/5 0/0 0/0 .sbss None */
/* 80450FC8 0001+00 data_80450FC8 None */
+static bool struct_80450FC8; // sEyeMoveFlg
+
/* 80450FC9 0003+00 data_80450FC9 None */
-static u8 struct_80450FC8[4];
+static u8 sMorfFrame;
/* 80452C98-80452C9C 001298 0004+00 102/102 0/0 0/0 .sdata2 @5943 */
SECTION_SDATA2 static f32 lit_5943 = 0.5f;
@@ -3738,14 +3474,16 @@ SECTION_SDATA2 static u8 lit_6108[4] = {
};
/* 8009D8E4-8009D90C 098224 0028+00 2/2 0/0 0/0 .text init__16daAlink_matAnm_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_matAnm_c::init() {
- nofralloc
-#include "asm/d/a/d_a_alink/init__16daAlink_matAnm_cFv.s"
+void daAlink_matAnm_c::init() {
+ f32 tmp_0 = FLOAT_LABEL(lit_6108);
+ field_0xf4 = tmp_0;
+ field_0xf8 = tmp_0;
+ mNowOffsetX = tmp_0;
+ mNowOffsetY = tmp_0;
+ struct_80450FC8 = false; // sEyeMoveFlg
+ sMorfFrame = 0;
+ mSetFlag = 0;
}
-#pragma pop
/* 8009D90C-8009DA60 09824C 0154+00 1/0 0/0 0/0 .text calc__16daAlink_matAnm_cCFP11J3DMaterial */
#pragma push
@@ -3757,21 +3495,63 @@ asm void daAlink_matAnm_c::calc(J3DMaterial* param_0) const {
}
#pragma pop
+/* void daAlink_matAnm_c::calc(J3DMaterial* param_0) const {
+ J3DMaterialAnm::calc(param_0);
+
+ if (!daAlink_getAlinkActorClass()->checkStatusWindowDraw()) {
+ for (u32 i = 0; i < 8; i++) {
+ if (getTexMtxAnm(i).getAnmFlag()) {
+ J3DTexMtxInfo* info = &param_0->getTexGenBlock()->getTexMtx(i)->getTexMtxInfo();
+ if (sMorfFrame != 0) {
+ if (mSetFlag == 0) {
+ f32 tmp = 1.0f / sMorfFrame;
+ info->field_0x10.field_0xc = field_0xf4 * (1.0f - tmp) +
+info->field_0x10.field_0xc * tmp; info->field_0x10.field_0x10 = field_0xf8 * (1.0f - tmp) +
+info->field_0x10.field_0xc * tmp;
+ //mSetFlag = 1;
+ } else {
+ info->field_0x10.field_0xc = field_0xf4;
+ info->field_0x10.field_0x10 = field_0xf8;
+ }
+ }
+
+ if (struct_80450FC8) {
+ info->field_0x10.field_0xc = mNowOffsetX;
+ info->field_0x10.field_0x10 = mNowOffsetY;
+ }
+
+
+
+ }
+ }
+ }
+} */
+
bool daAlink_c::checkStageName(const char* stage) {
return strcmp(dComIfGp_getStartStageName(), stage) == 0;
}
/* 8009DA98-8009DB64 0983D8 00CC+00 1/1 0/0 0/0 .text
* tgHitCallback__9daAlink_cFP10fopAc_ac_cP12dCcD_GObjInfP12dCcD_GObjInf */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::tgHitCallback(fopAc_ac_c* param_0, dCcD_GObjInf* param_1,
- dCcD_GObjInf* param_2) {
- nofralloc
-#include "asm/d/a/d_a_alink/tgHitCallback__9daAlink_cFP10fopAc_ac_cP12dCcD_GObjInfP12dCcD_GObjInf.s"
+void daAlink_c::tgHitCallback(fopAc_ac_c* param_0, dCcD_GObjInf* param_1, dCcD_GObjInf* param_2) {
+ if (param_2->ChkAtType(0x40000)) {
+ field_0x369c = *param_2->GetAtVecP();
+ for (int i = 0; i < 3; i++) {
+ if (param_1 == &field_0x850[i]) {
+ field_0x2fb8 |= (1 << i);
+ field_0x36b4 = param_0->mCurrent.mPosition;
+ return;
+ }
+ }
+ } else {
+ for (int i = 0; i < 3; i++) {
+ if (param_1 == &field_0x850[i]) {
+ field_0x2fb8 &= ~(1 << i);
+ return;
+ }
+ }
+ }
}
-#pragma pop
/* 8009DB64-8009DC6C 0984A4 0108+00 1/1 0/0 0/0 .text
* coHitCallback__9daAlink_cFP10fopAc_ac_cP12dCcD_GObjInf */
@@ -3786,15 +3566,28 @@ asm void daAlink_c::coHitCallback(fopAc_ac_c* param_0, dCcD_GObjInf* param_1) {
/* 8009DC6C-8009DD90 0985AC 0124+00 5/5 0/0 0/0 .text
* setMatrixWorldAxisRot__9daAlink_cFPA4_fsssiPC4cXyz */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::setMatrixWorldAxisRot(f32 (*param_0)[4], s16 param_1, s16 param_2, s16 param_3,
- int param_4, cXyz const* param_5) {
- nofralloc
-#include "asm/d/a/d_a_alink/setMatrixWorldAxisRot__9daAlink_cFPA4_fsssiPC4cXyz.s"
+void daAlink_c::setMatrixWorldAxisRot(MtxP param_0, s16 param_1, s16 param_2, s16 param_3,
+ int param_4, cXyz const* param_5) {
+ cXyz tmp;
+ mDoMtx_multVecZero(param_0, &tmp);
+ if (param_5 != NULL) {
+ mDoMtx_stack_c::transS(*param_5);
+ } else {
+ mDoMtx_stack_c::transS(tmp);
+ }
+
+ concatMagneBootMtx();
+ mDoMtx_stack_c::YrotM(mCollisionRot.y);
+ mDoMtx_stack_c::ZXYrotM(param_1, param_2, param_3);
+ mDoMtx_stack_c::YrotM(-mCollisionRot.y);
+ concatMagneBootInvMtx();
+ mDoMtx_stack_c::transM(-tmp.x, -tmp.y, -tmp.z);
+ PSMTXConcat(*mDoMtx_stack_c::get(), param_0, *mDoMtx_stack_c::get());
+ PSMTXCopy(*mDoMtx_stack_c::get(), param_0);
+ if (param_4 != 0) {
+ PSMTXCopy(*mDoMtx_stack_c::get(), J3DSys::mCurrentMtx);
+ }
}
-#pragma pop
/* 8009DD90-8009E7B8 0986D0 0A28+00 2/2 0/0 0/0 .text jointControll__9daAlink_cFi */
#pragma push
@@ -3827,24 +3620,43 @@ asm void daAlink_c::changeBlendRate(int param_0) {
#pragma pop
/* 8009EB18-8009EB58 099458 0040+00 1/1 0/0 0/0 .text resetRootMtx__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::resetRootMtx() {
- nofralloc
-#include "asm/d/a/d_a_alink/resetRootMtx__9daAlink_cFv.s"
+void daAlink_c::resetRootMtx() {
+ PSMTXCopy(mRootMtx, J3DSys::mCurrentMtx);
+ field_0x2f90 = 0;
}
-#pragma pop
/* 8009EB58-8009EC28 099498 00D0+00 1/1 0/0 0/0 .text modelCallBack__9daAlink_cFi */
+#ifdef NONMATCHING
+bool daAlink_c::modelCallBack(int param_0) {
+ jointControll(param_0);
+ if (param_0 == 0) {
+ setUpperFront();
+ } else if (param_0 == 0x1A) {
+ bool check = false;
+ if (mSpecialMode == 0 || mSpecialMode < 0x26) {
+ check = true;
+ }
+ if (!check) {
+ setFootMatrix();
+ }
+ setArmMatrix();
+ }
+ if (field_0x2fb6 != 0 &&
+ (param_0 == 0 || param_0 == 10 || param_0 - 4 < 1 || param_0 == 13 || param_0 == 15)) {
+ changeBlendRate(param_0);
+ }
+ return true;
+}
+#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::modelCallBack(int param_0) {
+asm bool daAlink_c::modelCallBack(int param_0) {
nofralloc
#include "asm/d/a/d_a_alink/modelCallBack__9daAlink_cFi.s"
}
#pragma pop
+#endif
/* 8009EC28-8009ECA0 099568 0078+00 1/1 0/0 0/0 .text daAlink_modelCallBack__FP8J3DJointi
*/
@@ -5062,26 +4874,30 @@ daAlinkHIO_basic_c1 const daAlinkHIO_basic_c0::m = {
60.0f, 85.0f, 300.0f, 200.0f, 20.0f, 30.0f, 23.0f, 41.0f, 0.7f, 0.5f, 0.7f, 400.0f, 5000.0f};
/* 8038D6BC-8038D714 019D1C 0058+00 34/47 0/0 0/0 .rodata m__18daAlinkHIO_move_c0 */
-SECTION_RODATA u8 const daAlinkHIO_move_c0::m[88] = {
- 0x00, 0x0B, 0x00, 0x00, 0x3F, 0x33, 0x33, 0x33, 0x40, 0x40, 0x00, 0x00, 0x40, 0x80, 0x00,
- 0x00, 0x41, 0x40, 0x00, 0x00, 0x11, 0x94, 0x00, 0x64, 0x00, 0x05, 0x00, 0x00, 0x3F, 0x80,
- 0x00, 0x00, 0x3F, 0x40, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x00, 0x3E, 0xCC, 0xCC, 0xCD, 0x3F,
- 0x4C, 0xCC, 0xCD, 0x41, 0xB8, 0x00, 0x00, 0x3F, 0xF3, 0x33, 0x33, 0x40, 0x0C, 0xCC, 0xCD,
- 0x3F, 0x19, 0x99, 0x9A, 0x3F, 0x8C, 0xCC, 0xCD, 0x3F, 0xC0, 0x00, 0x00, 0x3F, 0x7D, 0x70,
- 0xA4, 0x40, 0x40, 0x00, 0x00, 0x3F, 0x33, 0x33, 0x33, 0x3E, 0xCC, 0xCC, 0xCD,
-};
-COMPILER_STRIP_GATE(0x8038D6BC, &daAlinkHIO_move_c0::m);
+daAlinkHIO_move_c1 const daAlinkHIO_move_c0::m = {{11, 0.7f, 3.0f, 4.0f, 12.0f},
+ 4500,
+ 100,
+ 5,
+ 1.0f,
+ 0.75f,
+ 1.5f,
+ 0.4f,
+ 0.8f,
+ 23.0f,
+ 1.9f,
+ 2.2f,
+ 0.6f,
+ 1.1f,
+ 1.5f,
+ 0.99f,
+ 3.0f,
+ 0.7f,
+ 0.4f};
/* 8038D714-8038D768 019D74 0054+00 10/16 0/0 0/0 .rodata m__21daAlinkHIO_atnMove_c0 */
-SECTION_RODATA u8 const daAlinkHIO_atnMove_c0::m[84] = {
- 0x0B, 0xB8, 0x07, 0xD0, 0x00, 0x06, 0x00, 0x00, 0x3F, 0x99, 0x99, 0x9A, 0x3F, 0x8C,
- 0xCC, 0xCD, 0x3F, 0xC0, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, 0x3F, 0x19, 0x99, 0x9A,
- 0x41, 0x50, 0x00, 0x00, 0x40, 0xC0, 0x00, 0x00, 0x40, 0xF0, 0x00, 0x00, 0x3F, 0x33,
- 0x33, 0x33, 0x3F, 0xB3, 0x33, 0x33, 0x3E, 0x80, 0x00, 0x00, 0x3F, 0x33, 0x33, 0x33,
- 0x41, 0x70, 0x00, 0x00, 0x40, 0x20, 0x00, 0x00, 0x41, 0x00, 0x00, 0x00, 0x3F, 0x00,
- 0x00, 0x00, 0x3E, 0xCC, 0xCC, 0xCD, 0x3F, 0x80, 0x00, 0x00, 0x3F, 0xA6, 0x66, 0x66,
-};
-COMPILER_STRIP_GATE(0x8038D714, &daAlinkHIO_atnMove_c0::m);
+daAlinkHIO_atnMove_c1 const daAlinkHIO_atnMove_c0::m = {
+ 3000, 2000, 6, 1.2f, 1.1f, 1.5f, 0.5f, 0.6f, 13.0f, 6.0f, 7.5f,
+ 0.7f, 1.4f, 0.25f, 0.7f, 15.0f, 2.5f, 8.0f, 0.5f, 0.4f, 1.0f, 1.3f};
/* 8038D768-8038D7BC 019DC8 0054+00 3/9 0/0 0/0 .rodata m__26daAlinkHIO_noActAtnMove_c0 */
SECTION_RODATA u8 const daAlinkHIO_noActAtnMove_c0::m[84] = {
@@ -5095,50 +4911,63 @@ SECTION_RODATA u8 const daAlinkHIO_noActAtnMove_c0::m[84] = {
COMPILER_STRIP_GATE(0x8038D768, &daAlinkHIO_noActAtnMove_c0::m);
/* 8038D7BC-8038D82C 019E1C 0070+00 5/7 0/0 0/0 .rodata m__23daAlinkHIO_frontRoll_c0 */
-SECTION_RODATA u8 const daAlinkHIO_frontRoll_c0::m[112] = {
- 0x00, 0x1D, 0x00, 0x00, 0x3F, 0x8C, 0xCC, 0xCD, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00,
- 0x41, 0xB0, 0x00, 0x00, 0x00, 0x1D, 0x00, 0x00, 0x3F, 0x4C, 0xCC, 0xCD, 0x40, 0x40, 0x00, 0x00,
- 0x40, 0x00, 0x00, 0x00, 0x41, 0xC8, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x3F, 0x99, 0x99, 0x9A,
- 0x00, 0x00, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x41, 0xC8, 0x00, 0x00, 0x27, 0x10, 0x00, 0x05,
- 0x03, 0xE8, 0x00, 0x64, 0x40, 0x40, 0x00, 0x00, 0x3F, 0xA6, 0x66, 0x66, 0x41, 0xC8, 0x00, 0x00,
- 0x41, 0x20, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x41, 0x70, 0x00, 0x00, 0x41, 0x20, 0x00, 0x00,
- 0x41, 0x40, 0x00, 0x00, 0x41, 0x10, 0x00, 0x00, 0x41, 0x98, 0x00, 0x00, 0x42, 0x70, 0x00, 0x00,
+daAlinkHIO_frontRoll_c1 const daAlinkHIO_frontRoll_c0::m = {
+ {29, 1.1f, 0.0f, 3.0f, 22.0f},
+ {29, 0.8f, 3.0f, 2.0f, 25.0f},
+ {33, 1.2f, 0.0f, 1.0f, 25.0f},
+ 10000,
+ 5,
+ 1000,
+ 100,
+ 3.0f,
+ 1.3f,
+ 25.0f,
+ 10.0f,
+ 3.0f,
+ 15.0f,
+ 10.0f,
+ 12.0f,
+ 9.0f,
+ 19.0f,
+ 60.0f,
};
-COMPILER_STRIP_GATE(0x8038D7BC, &daAlinkHIO_frontRoll_c0::m);
/* 8038D82C-8038D864 019E8C 0038+00 5/5 0/0 0/0 .rodata m__22daAlinkHIO_backJump_c0 */
-SECTION_RODATA u8 const daAlinkHIO_backJump_c0::m[56] = {
- 0x00, 0x09, 0x00, 0x00, 0x3F, 0x33, 0x33, 0x33, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00,
- 0x00, 0x00, 0x41, 0x40, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x40, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x41, 0xC0,
- 0x00, 0x00, 0x41, 0x20, 0x00, 0x00, 0x42, 0xC8, 0x00, 0x00, 0x41, 0x20, 0x00, 0x00,
+daAlinkHIO_backJump_c1 const daAlinkHIO_backJump_c0::m = {
+ {9, 0.7f, 0.0f, 2.0f, 12.0f}, {17, 1.0f, 2.0f, 2.0f, 3.0f}, 24.0f, 10.0f, 100.0f, 10.0f,
};
-COMPILER_STRIP_GATE(0x8038D82C, &daAlinkHIO_backJump_c0::m);
/* 8038D864-8038D8CC 019EC4 0068+00 3/3 0/0 0/0 .rodata m__22daAlinkHIO_sideStep_c0 */
-SECTION_RODATA u8 const daAlinkHIO_sideStep_c0::m[104] = {
- 0x00, 0x05, 0x00, 0x00, 0x3F, 0x8C, 0xCC, 0xCD, 0x3F, 0x80, 0x00, 0x00, 0x40, 0x40, 0x00,
- 0x00, 0x40, 0xC0, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x3F,
- 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x40, 0xE0, 0x00, 0x00,
- 0x00, 0x09, 0x00, 0x00, 0x3F, 0x8C, 0xCC, 0xCD, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00,
- 0x00, 0x40, 0x80, 0x00, 0x00, 0x41, 0xE0, 0x00, 0x00, 0x41, 0xB0, 0x00, 0x00, 0x41, 0xC8,
- 0x00, 0x00, 0x41, 0xA0, 0x00, 0x00, 0x42, 0xC8, 0x00, 0x00, 0x41, 0x20, 0x00, 0x00,
+daAlinkHIO_sideStep_c1 const daAlinkHIO_sideStep_c0::m = {
+ {5, 1.1f, 1.0f, 3.0f, 6.0f},
+ {9, 1.0f, 0.0f, 3.0f, 2.0f},
+ {6, 1.0f, 0.0f, 3.0f, 7.0f},
+ {9, 1.1f, 0.0f, 3.0f, 4.0f},
+ 28.0f,
+ 22.0f,
+ 25.0f,
+ 20.0f,
+ 100.0f,
+ 10.0f,
};
-COMPILER_STRIP_GATE(0x8038D864, &daAlinkHIO_sideStep_c0::m);
/* 8038D8CC-8038D944 019F2C 0078+00 5/10 0/0 0/0 .rodata m__19daAlinkHIO_slide_c0 */
-SECTION_RODATA u8 const daAlinkHIO_slide_c0::m[120] = {
- 0x00, 0x0E, 0x00, 0x00, 0x3F, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xA0, 0x00,
- 0x00, 0x41, 0x70, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x3F, 0x66, 0x66, 0x66, 0x00, 0x00,
- 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x40, 0xE0, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x3F,
- 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x41, 0x10, 0x00, 0x00,
- 0x00, 0x14, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00,
- 0x00, 0x41, 0x80, 0x00, 0x00, 0x42, 0x20, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x42, 0x48,
- 0x00, 0x00, 0x41, 0xD8, 0x00, 0x00, 0x3E, 0x4C, 0xCC, 0xCD, 0x41, 0x40, 0x00, 0x00, 0x42,
- 0x48, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x42, 0x04, 0x00, 0x00, 0x3F, 0x99, 0x99, 0x9A,
-};
-COMPILER_STRIP_GATE(0x8038D8CC, &daAlinkHIO_slide_c0::m);
+daAlinkHIO_slide_c1 const daAlinkHIO_slide_c0::m = {
+ {14, 0.75f, 0.0f, 5.0f, 15.0f},
+ {6, 0.9f, 0.0f, 3.0f, 7.0f},
+ {15, 1.0f, 0.0f, 3.0f, 9.0f},
+ {20, 1.0f, 0.0f, 3.0f, 16.0f},
+ 40.0f,
+ 3.0f,
+ 50.0f,
+ 27.0f,
+ 0.2f,
+ 12.0f,
+ 50.0f,
+ 3.0f,
+ 33.0f,
+ 1.2f,
+};
/* 8038D944-8038D964 019FA4 0020+00 0/1 0/0 0/0 .rodata m__20daAlinkHIO_cutNmV_c0 */
#pragma push
@@ -5268,14 +5097,17 @@ SECTION_RODATA u8 const daAlinkHIO_cutFnJU_c0::m[84] = {
COMPILER_STRIP_GATE(0x8038DAEC, &daAlinkHIO_cutFnJU_c0::m);
/* 8038DB40-8038DB84 01A1A0 0044+00 4/4 0/0 0/0 .rodata m__21daAlinkHIO_cutJump_c0 */
-SECTION_RODATA u8 const daAlinkHIO_cutJump_c0::m[68] = {
- 0x00, 0x11, 0x00, 0x00, 0x3F, 0x8C, 0xCC, 0xCD, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00,
- 0x00, 0x00, 0x41, 0x90, 0x00, 0x00, 0x00, 0x1D, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x41, 0x10, 0x00, 0x00, 0x41, 0xC8,
- 0x00, 0x00, 0x41, 0xD8, 0x00, 0x00, 0x41, 0x70, 0x00, 0x00, 0x41, 0x50, 0x00, 0x00,
- 0x41, 0x50, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00,
+daAlinkHIO_cutJump_c1 const daAlinkHIO_cutJump_c0::m = {
+ {17, 1.1f, 0.0f, 2.0f, 18.0f},
+ {29, 1.0f, 2.0f, 0.0f, 9.0f},
+ 25.0f,
+ 27.0f,
+ 15.0f,
+ 13.0f,
+ 13.0f,
+ 1.0f,
+ 3.0f,
};
-COMPILER_STRIP_GATE(0x8038DB40, &daAlinkHIO_cutJump_c0::m);
/* 8038DB84-8038DC1C 01A1E4 0098+00 5/6 0/0 0/0 .rodata m__21daAlinkHIO_cutTurn_c0 */
SECTION_RODATA u8 const daAlinkHIO_cutTurn_c0::m[152] = {
@@ -5398,32 +5230,53 @@ SECTION_RODATA u8 const daAlinkHIO_cutHead_c0::m[96] = {
COMPILER_STRIP_GATE(0x8038DDB8, &daAlinkHIO_cutHead_c0::m);
/* 8038DE18-8038DE8C 01A478 0074+00 5/5 0/0 0/0 .rodata m__26daAlinkHIO_cutLargeJump_c0 */
-SECTION_RODATA u8 const daAlinkHIO_cutLargeJump_c0::m[116] = {
- 0x00, 0x1D, 0x00, 0x00, 0x3F, 0xA6, 0x66, 0x66, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00,
- 0x00, 0x41, 0xF0, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x40, 0xE0, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x3F,
- 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x41, 0x88, 0x00, 0x00,
- 0x00, 0x23, 0x00, 0x00, 0x3F, 0xA0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x41, 0xB0, 0x00, 0x00, 0x41, 0xA0, 0x00, 0x00, 0x42, 0x04, 0x00, 0x00, 0x40, 0x00,
- 0x00, 0x00, 0x40, 0xC0, 0x00, 0x00, 0x41, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x41,
- 0x20, 0x00, 0x00, 0x43, 0x7A, 0x00, 0x00, 0x40, 0xA0, 0x00, 0x00,
-};
-COMPILER_STRIP_GATE(0x8038DE18, &daAlinkHIO_cutLargeJump_c0::m);
+daAlinkHIO_cutLargeJump_c1 const daAlinkHIO_cutLargeJump_c0::m = {
+ {29, 1.3f, 0.0f, 3.0f, 30.0f},
+ {6, 1.0f, 0.0f, 3.0f, 7.0f},
+ {16, 1.0f, 0.0f, 2.0f, 17.0f},
+ {35, 1.25f, 0.0f, 0.0f, 22.0f},
+ 20.0f,
+ 33.0f,
+ 2.0f,
+ 6.0f,
+ 13.0f,
+ 0.0f,
+ 10.0f,
+ 250.0f,
+ 5.0f,
+};
/* 8038DE8C-8038DF28 01A4EC 009C+00 21/30 0/0 0/0 .rodata m__17daAlinkHIO_cut_c0 */
-SECTION_RODATA u8 const daAlinkHIO_cut_c0::m[156] = {
- 0x00, 0x12, 0x00, 0x00, 0xBF, 0x8C, 0xCC, 0xCD, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00,
- 0xBF, 0x80, 0x00, 0x00, 0x00, 0x16, 0x00, 0x00, 0x3F, 0x66, 0x66, 0x66, 0x00, 0x00, 0x00, 0x00,
- 0x40, 0x40, 0x00, 0x00, 0x41, 0xB8, 0x00, 0x00, 0x00, 0x2D, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x41, 0x70, 0x00, 0x00, 0x00, 0x2F, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xA0, 0x00, 0x00, 0x41, 0xD8, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x01, 0x00, 0x0F, 0x00, 0x08, 0x00, 0x0A, 0x00, 0x5A, 0x00, 0x4B, 0x0F, 0xA0,
- 0xF0, 0x60, 0x00, 0x1E, 0x41, 0x40, 0x00, 0x00, 0x3F, 0xA0, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x3F, 0xCC, 0xCC, 0xCD, 0x42, 0x34, 0x00, 0x00, 0x3F, 0xD3, 0x33, 0x33,
- 0x42, 0x82, 0x00, 0x00, 0x3F, 0x9A, 0xE1, 0x48, 0x42, 0x0C, 0x00, 0x00, 0x40, 0x13, 0x33, 0x33,
- 0x40, 0x0C, 0xCC, 0xCD, 0x42, 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-};
-COMPILER_STRIP_GATE(0x8038DE8C, &daAlinkHIO_cut_c0::m);
+daAlinkHIO_cut_c1 const daAlinkHIO_cut_c0::m = {
+ {18, -1.100f, 0.0f, 3.0f, -1.0f},
+ {22, 0.9f, 0.0f, 3.0f, 23.0f},
+ {45, 1.0f, 0.0f, 3.0f, 15.0f},
+ {47, 1.0f, 0.0f, 5.0f, 27.0f},
+ 0,
+ 1,
+ 15,
+ 8,
+ 10,
+ 90,
+ 75,
+ 4000,
+ -4000,
+ 30,
+ 12.0f,
+ 1.250f,
+ 1.0f,
+ 1.0f,
+ 1.6f,
+ 45.0f,
+ 1.65f,
+ 65.0f,
+ 1.21f,
+ 35.0f,
+ 2.3f,
+ 2.2f,
+ 65.0f,
+ 0.0f,
+};
/* 8038DF28-8038DF4C 01A588 0024+00 1/1 0/0 0/0 .rodata m__21daAlinkHIO_gAtPush_c0 */
SECTION_RODATA u8 const daAlinkHIO_gAtPush_c0::m[36] = {
@@ -5445,12 +5298,9 @@ COMPILER_STRIP_GATE(0x8038DF4C, &daAlinkHIO_gAtKick_c0::m);
#pragma pop
/* 8038DF70-8038DF9C 01A5D0 002C+00 4/4 0/0 0/0 .rodata m__22daAlinkHIO_turnMove_c0 */
-SECTION_RODATA u8 const daAlinkHIO_turnMove_c0::m[44] = {
- 0x00, 0x1B, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00,
- 0x00, 0x41, 0xB0, 0x00, 0x00, 0x00, 0x05, 0x09, 0xC4, 0x00, 0xC8, 0x03, 0xE8, 0x3F, 0x8C,
- 0xCC, 0xCD, 0x41, 0x98, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x00, 0x41, 0xC8, 0x00, 0x00,
+daAlinkHIO_turnMove_c1 const daAlinkHIO_turnMove_c0::m = {
+ {27, 1.0f, 0.0f, 3.0f, 22.0f}, 5, 2500, 200, 1000, 1.1f, 19.0f, 1.5f, 25.0f,
};
-COMPILER_STRIP_GATE(0x8038DF70, &daAlinkHIO_turnMove_c0::m);
/* 8038DF9C-8038E01C 01A5FC 0080+00 6/7 0/0 0/0 .rodata m__19daAlinkHIO_guard_c0 */
SECTION_RODATA u8 const daAlinkHIO_guard_c0::m[128] = {
@@ -5476,37 +5326,39 @@ SECTION_RODATA u8 const daAlinkHIO_crouch_c0::m[76] = {
COMPILER_STRIP_GATE(0x8038E01C, &daAlinkHIO_crouch_c0::m);
/* 8038E068-8038E11C 01A6C8 00B4+00 26/32 0/0 0/0 .rodata m__22daAlinkHIO_autoJump_c0 */
-daAlinkHIO_autoJump_c1 const daAlinkHIO_autoJump_c0::m = {{6, 1.2f, 3.0f, 6.0f, 7.0f},
- {7, 0.9f, 1.0f, 0.0f, 5.0f},
- {4, 0.75f, 0.0f, 2.0f, 5.0f},
- {10, 0.6f, 0.0f, 2.0f, 11.0f},
- 1,
- 9158,
- 12287,
- 8,
- 16384,
- 10.0f,
- 10.0f,
- 1.3f,
- 5.0f,
- 10.0f,
- 3.0f,
- -3.4f,
- -200.0f,
- 26.0f,
- 3.0f,
- 4.0f,
- 10.0f,
- 1.0f,
- 170.0f,
- 100.0f,
- 20.0f,
- 30.0f,
- 20.0f,
- -3.4f,
- 14.0f,
- -5.0f,
- 23.0f};
+daAlinkHIO_autoJump_c1 const daAlinkHIO_autoJump_c0::m = {
+ {6, 1.2f, 3.0f, 6.0f, 7.0f},
+ {7, 0.9f, 1.0f, 0.0f, 5.0f},
+ {4, 0.75f, 0.0f, 2.0f, 5.0f},
+ {10, 0.6f, 0.0f, 2.0f, 11.0f},
+ 1,
+ 9158,
+ 12287,
+ 8,
+ 16384,
+ 10.0f,
+ 10.0f,
+ 1.3f,
+ 5.0f,
+ 10.0f,
+ 3.0f,
+ -3.4f,
+ -200.0f,
+ 26.0f,
+ 3.0f,
+ 4.0f,
+ 10.0f,
+ 1.0f,
+ 170.0f,
+ 100.0f,
+ 20.0f,
+ 30.0f,
+ 20.0f,
+ -3.4f,
+ 14.0f,
+ -5.0f,
+ 23.0f,
+};
/* 8038E11C-8038E164 01A77C 0048+00 7/7 0/0 0/0 .rodata m__23daAlinkHIO_smallJump_c0 */
SECTION_RODATA u8 const daAlinkHIO_smallJump_c0::m[72] = {
@@ -5538,11 +5390,7 @@ SECTION_RODATA u8 const daAlinkHIO_wallFall_c0::m[40] = {
COMPILER_STRIP_GATE(0x8038E1B8, &daAlinkHIO_wallFall_c0::m);
/* 8038E1E0-8038E1F4 01A840 0014+00 2/2 0/0 0/0 .rodata m__22daAlinkHIO_wallMove_c0 */
-SECTION_RODATA u8 const daAlinkHIO_wallMove_c0::m[20] = {
- 0x3F, 0x4C, 0xCC, 0xCD, 0x3F, 0x8C, 0xCC, 0xCD, 0x40, 0x40,
- 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00,
-};
-COMPILER_STRIP_GATE(0x8038E1E0, &daAlinkHIO_wallMove_c0::m);
+daAlinkHIO_wallMove_c1 const daAlinkHIO_wallMove_c0::m = {0.8f, 1.1f, 3.0f, 2.0f, 3.0f};
/* 8038E1F4-8038E210 01A854 001C+00 2/5 0/0 0/0 .rodata m__22daAlinkHIO_wallHang_c0 */
SECTION_RODATA u8 const daAlinkHIO_wallHang_c0::m[28] = {
@@ -5658,16 +5506,22 @@ SECTION_RODATA u8 const daAlinkHIO_damage_c0::m[88] = {
COMPILER_STRIP_GATE(0x8038E54C, &daAlinkHIO_damage_c0::m);
/* 8038E5A4-8038E610 01AC04 006C+00 7/8 0/0 0/0 .rodata m__19daAlinkHIO_horse_c0 */
-SECTION_RODATA u8 const daAlinkHIO_horse_c0::m[108] = {
- 0x00, 0x12, 0x00, 0x00, 0x3F, 0x99, 0x99, 0x9A, 0x00, 0x00, 0x00, 0x00, 0x40, 0xA0, 0x00, 0x00,
- 0x41, 0x98, 0x00, 0x00, 0x00, 0x16, 0x00, 0x00, 0x3F, 0x99, 0x99, 0x9A, 0x00, 0x00, 0x00, 0x00,
- 0x40, 0x40, 0x00, 0x00, 0x41, 0xB8, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x00, 0x3F, 0xB9, 0x99, 0x9A,
- 0x40, 0x40, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x42, 0x30, 0x00, 0x00, 0x00, 0x12, 0x00, 0x00,
- 0x3F, 0x99, 0x99, 0x9A, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x41, 0xB8, 0x00, 0x00,
- 0x00, 0x64, 0x7F, 0xFF, 0x00, 0x1E, 0x00, 0x19, 0x15, 0x7C, 0xCD, 0x38, 0x3F, 0x99, 0x99, 0x9A,
- 0x41, 0x00, 0x00, 0x00, 0x41, 0x00, 0x00, 0x00, 0x40, 0xA0, 0x00, 0x00,
+daAlinkHIO_horse_c1 const daAlinkHIO_horse_c0::m = {
+ {18, 1.2f, 0.0f, 5.0f, 19.0f},
+ {22, 1.2f, 0.0f, 3.0f, 23.0f},
+ {43, 1.45f, 3.0f, 3.0f, 44.0f},
+ {18, 1.2f, 0.0f, 3.0f, 23.0f},
+ 100,
+ 32767,
+ 30,
+ 25,
+ 5500,
+ -13000,
+ 1.2f,
+ 8.0f,
+ 8.0f,
+ 5.0f,
};
-COMPILER_STRIP_GATE(0x8038E5A4, &daAlinkHIO_horse_c0::m);
/* 800A07D8-800A0868 09B118 0090+00 2/2 0/0 0/0 .text checkAttentionPosAngle__9daAlink_cFP4cXyz */
#pragma push
@@ -5713,36 +5567,50 @@ SECTION_RODATA u8 const daAlinkHIO_canoe_c0::m[72] = {
COMPILER_STRIP_GATE(0x8038E610, &daAlinkHIO_canoe_c0::m);
/* 8038E658-8038E6C8 01ACB8 0070+00 9/9 0/0 0/0 .rodata m__17daAlinkHIO_bow_c0 */
-SECTION_RODATA u8 const daAlinkHIO_bow_c0::m[112] = {
- 0x00, 0x09, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00,
- 0x40, 0xA0, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x40, 0x40, 0x00, 0x00, 0x40, 0xE0, 0x00, 0x00, 0x00, 0x0A, 0x00, 0x1E, 0x00, 0x46, 0x00, 0x00,
- 0x40, 0xA0, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0x45, 0x9C, 0x40, 0x00, 0x44, 0x48, 0x00, 0x00,
- 0x46, 0x0C, 0xA0, 0x00, 0x42, 0x48, 0x00, 0x00, 0x43, 0x48, 0x00, 0x00, 0x45, 0x3B, 0x80, 0x00,
- 0x43, 0x66, 0x00, 0x00, 0x45, 0x5A, 0xC0, 0x00, 0x44, 0x16, 0x00, 0x00, 0x46, 0x0C, 0xA0, 0x00,
- 0x44, 0x7A, 0x00, 0x00, 0x45, 0x7A, 0x00, 0x00, 0x43, 0x7A, 0x00, 0x00, 0x44, 0x48, 0x00, 0x00,
+daAlinkHIO_bow_c1 const daAlinkHIO_bow_c0::m = {
+ {9, 1.0f, 0.0f, 3.0f, 5.0f},
+ {6, 1.0f, 0.0f, 3.0f, 7.0f},
+ 10,
+ 30,
+ 70,
+ 5.0f,
+ 300.0f,
+ 5000.0f,
+ 800.0f,
+ 9000.0f,
+ 50.0f,
+ 200.0f,
+ 3000.0f,
+ 230.0f,
+ 3500.0f,
+ 600.0f,
+ 9000.0f,
+ 1000.0f,
+ 4000.0f,
+ 250.0f,
+ 800.0f,
};
-COMPILER_STRIP_GATE(0x8038E658, &daAlinkHIO_bow_c0::m);
/* 8038E6C8-8038E714 01AD28 004C+00 22/23 0/0 0/0 .rodata m__18daAlinkHIO_boom_c0 */
-SECTION_RODATA u8 const daAlinkHIO_boom_c0::m[76] = {
- 0x00, 0x15, 0x00, 0x00, 0x3F, 0x66, 0x66, 0x66, 0x40, 0x40, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00,
- 0x41, 0xB0, 0x00, 0x00, 0x00, 0x19, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x41, 0x20, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x40, 0x40, 0x00, 0x00, 0x42, 0x70, 0x00, 0x00, 0x42, 0x70, 0x00, 0x00, 0x44, 0xFA, 0x00, 0x00,
- 0x45, 0x3B, 0x80, 0x00, 0x45, 0x3B, 0x80, 0x00, 0x42, 0x20, 0x00, 0x00,
+daAlinkHIO_boom_c1 const daAlinkHIO_boom_c0::m = {
+ {21, 0.9f, 3.0f, 2.0f, 22.0f},
+ {25, 1.0f, 3.0f, 1.0f, 10.0f},
+ 40,
+ 0,
+ 1.0f,
+ 3.0f,
+ 60.0f,
+ 60.0f,
+ 2000.0f,
+ 3000.0f,
+ 3000.0f,
+ 40.0f,
};
-COMPILER_STRIP_GATE(0x8038E6C8, &daAlinkHIO_boom_c0::m);
/* 8038E714-8038E760 01AD74 004C+00 14/14 0/0 0/0 .rodata m__18daAlinkHIO_bomb_c0 */
-SECTION_RODATA u8 const daAlinkHIO_bomb_c0::m[76] = {
- 0x00, 0xA0, 0x00, 0x32, 0x00, 0x32, 0x00, 0x00, 0xC0, 0x86, 0x66, 0x66, 0xC2, 0xC8, 0x00, 0x00,
- 0x3E, 0xB3, 0x33, 0x33, 0x40, 0x00, 0x00, 0x00, 0x41, 0xA0, 0x00, 0x00, 0x3F, 0xA6, 0x66, 0x66,
- 0x43, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xBF, 0x4C, 0xCC, 0xCD, 0xC0, 0xE0, 0x00, 0x00,
- 0x41, 0xD0, 0x00, 0x00, 0x42, 0x04, 0x00, 0x00, 0x41, 0x20, 0x00, 0x00, 0x41, 0x70, 0x00, 0x00,
- 0x42, 0x20, 0x00, 0x00, 0x41, 0x70, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
-};
-COMPILER_STRIP_GATE(0x8038E714, &daAlinkHIO_bomb_c0::m);
+daAlinkHIO_bomb_c1 const daAlinkHIO_bomb_c0::m = {
+ 160, 50, 50, -4.2f, -100.0f, 0.350f, 2.0f, 20.0f, 1.3f, 225.0f,
+ 0.0f, -0.8f, -7.0f, 26.0f, 33.0f, 10.0f, 15.0f, 40.0f, 15.0f, 300.0f};
/* 8038E760-8038E77C 01ADC0 001C+00 0/1 0/0 0/0 .rodata m__21daAlinkHIO_huLight_c0 */
#pragma push
@@ -5773,14 +5641,23 @@ SECTION_RODATA u8 const daAlinkHIO_fmChain_c0::m[40] = {
COMPILER_STRIP_GATE(0x8038E7CC, &daAlinkHIO_fmChain_c0::m);
/* 8038E7F4-8038E840 01AE54 004C+00 17/21 0/0 0/0 .rodata m__24daAlinkHIO_magneBoots_c0 */
-SECTION_RODATA u8 const daAlinkHIO_magneBoots_c0::m[76] = {
- 0x00, 0x1D, 0x00, 0x00, 0x3F, 0x8C, 0xCC, 0xCD, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00,
- 0x41, 0xB8, 0x00, 0x00, 0x3E, 0xCC, 0xCC, 0xCD, 0x3F, 0x80, 0x00, 0x00, 0x3F, 0xE6, 0x66, 0x66,
- 0x3F, 0x33, 0x33, 0x33, 0x3F, 0x40, 0x00, 0x00, 0x3E, 0xE6, 0x66, 0x66, 0x3F, 0x19, 0x99, 0x9A,
- 0x42, 0x48, 0x00, 0x00, 0x41, 0x20, 0x00, 0x00, 0x3E, 0xB3, 0x33, 0x33, 0x3E, 0x99, 0x99, 0x9A,
- 0x3F, 0x33, 0x33, 0x33, 0x3F, 0x4C, 0xCC, 0xCD, 0x3F, 0x33, 0x33, 0x33,
+daAlinkHIO_magneBoots_c1 const daAlinkHIO_magneBoots_c0::m = {
+ {29, 1.1f, 0.0f, 3.0f, 23.0f},
+ 0.4f,
+ 1.0f,
+ 1.8f,
+ 0.7f,
+ 0.75f,
+ 0.45,
+ 0.6f,
+ 50.0f,
+ 10.0f,
+ 0.35f,
+ 0.3f,
+ 0.7f,
+ 0.8f,
+ 0.7f,
};
-COMPILER_STRIP_GATE(0x8038E7F4, &daAlinkHIO_magneBoots_c0::m);
/* 8038E840-8038E870 01AEA0 0030+00 6/6 0/0 0/0 .rodata m__20daAlinkHIO_pickUp_c0 */
SECTION_RODATA u8 const daAlinkHIO_pickUp_c0::m[48] = {
@@ -5791,57 +5668,76 @@ SECTION_RODATA u8 const daAlinkHIO_pickUp_c0::m[48] = {
COMPILER_STRIP_GATE(0x8038E840, &daAlinkHIO_pickUp_c0::m);
/* 8038E870-8038E90C 01AED0 009C+00 16/17 0/0 0/0 .rodata m__19daAlinkHIO_board_c0 */
-SECTION_RODATA u8 const daAlinkHIO_board_c0::m[156] = {
- 0x00, 0x09, 0x00, 0x00, 0x40, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00,
- 0x41, 0x20, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x3F, 0x33, 0x33, 0x33, 0x00, 0x00, 0x00, 0x00,
- 0x41, 0x00, 0x00, 0x00, 0x41, 0x70, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x3F, 0xCC, 0xCC, 0xCD,
- 0x40, 0xA0, 0x00, 0x00, 0x40, 0xA0, 0x00, 0x00, 0x41, 0xC8, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00,
- 0x3F, 0x4C, 0xCC, 0xCD, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x41, 0xC8, 0x00, 0x00,
- 0x42, 0x8C, 0x00, 0x00, 0x40, 0x80, 0x00, 0x00, 0x41, 0xB0, 0x00, 0x00, 0x42, 0x0C, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x40, 0x80, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00,
- 0x40, 0x00, 0x00, 0x00, 0x41, 0xF0, 0x00, 0x00, 0x3F, 0x66, 0x66, 0x66, 0x42, 0x5C, 0x00, 0x00,
- 0x40, 0x80, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x41, 0xA0, 0x00, 0x00,
- 0x41, 0xC0, 0x00, 0x00, 0x42, 0x0C, 0x00, 0x00, 0x42, 0x48, 0x00, 0x00,
-};
-COMPILER_STRIP_GATE(0x8038E870, &daAlinkHIO_board_c0::m);
+daAlinkHIO_board_c1 const daAlinkHIO_board_c0::m = {
+ {9, 2.5f, 0.0f, 3.0f, 10.0f},
+ {14, 0.7f, 0.0f, 8.0f, 15.0f},
+ {24, 1.6f, 5.0f, 5.0f, 25.0f},
+ {24, 0.8f, 0.0f, 3.0f, 25.0f},
+ 70.0f,
+ 4.0f,
+ 22.0f,
+ 35.0f,
+ 1.0f,
+ 4.0f,
+ 1.0f,
+ 3.0f,
+ 2.0f,
+ 30.0f,
+ 0.9f,
+ 55.0f,
+ 4.0f,
+ 3.0f,
+ 1.0f,
+ 20.0f,
+ 24.0f,
+ 35.0f,
+ 50.0f,
+};
/* 8038E90C-8038E9C0 01AF6C 00B4+00 12/12 0/0 0/0 .rodata m__20daAlinkHIO_bottle_c0 */
-SECTION_RODATA u8 const daAlinkHIO_bottle_c0::m[180] = {
- 0x00, 0x38, 0x00, 0x00, 0x3F, 0x93, 0x33, 0x33, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00,
- 0x00, 0x42, 0x64, 0x00, 0x00, 0x00, 0x27, 0x00, 0x00, 0x3F, 0x99, 0x99, 0x9A, 0x00, 0x00,
- 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x42, 0x20, 0x00, 0x00, 0x00, 0x2C, 0x00, 0x00, 0x3F,
- 0x99, 0x99, 0x9A, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x42, 0x48, 0x00, 0x00,
- 0x00, 0x36, 0x00, 0x00, 0x3F, 0x8C, 0xCC, 0xCD, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00,
- 0x00, 0x42, 0x5C, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x41, 0xC8, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x3F,
- 0x19, 0x99, 0x9A, 0x3F, 0x80, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x41, 0x20, 0x00, 0x00,
- 0x00, 0x2F, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00,
- 0x00, 0x42, 0x40, 0x00, 0x00, 0x00, 0x56, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x42, 0xAE, 0x00, 0x00, 0x00, 0x1D, 0x00, 0x00, 0x3F,
- 0x99, 0x99, 0x9A, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x41, 0xF0, 0x00, 0x00,
-};
-COMPILER_STRIP_GATE(0x8038E90C, &daAlinkHIO_bottle_c0::m);
+daAlinkHIO_bottle_c1 const daAlinkHIO_bottle_c0::m = {
+ {56, 1.15f, 0.0f, 3.0f, 57.0f}, {39, 1.2f, 0.0f, 3.0f, 40.0f}, {44, 1.2f, 0.0f, 3.0f, 50.0f},
+ {54, 1.1f, 0.0f, 3.0f, 55.0f}, {24, 1.0f, 0.0f, 3.0f, 25.0f}, {12, 0.6f, 1.0f, 3.0f, 10.0f},
+ {47, 1.0f, 0.0f, 3.0f, 48.0f}, {86, 1.0f, 0.0f, 3.0f, 87.0f}, {29, 1.2f, 0.0f, 3.0f, 30.0f},
+};
/* 8038E9C0-8038EA30 01B020 0070+00 15/16 0/0 0/0 .rodata m__22daAlinkHIO_hookshot_c0 */
-SECTION_RODATA u8 const daAlinkHIO_hookshot_c0::m[112] = {
- 0x00, 0x0C, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x41, 0x50, 0x00, 0x00, 0x00, 0x27, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x41, 0x30, 0x00, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x40, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x44, 0xFA, 0x00, 0x00, 0x42, 0xC8, 0x00, 0x00,
- 0x43, 0x16, 0x00, 0x00, 0x42, 0x70, 0x00, 0x00, 0x40, 0xA0, 0x00, 0x00, 0x41, 0x50, 0x00, 0x00,
- 0x45, 0x3B, 0x80, 0x00, 0x43, 0x16, 0x00, 0x00, 0x43, 0x61, 0x00, 0x00, 0x42, 0xB4, 0x00, 0x00,
+daAlinkHIO_hookshot_c1 const daAlinkHIO_hookshot_c0::m = {
+ {12, 1.0f, 0.0f, 0.0f, 13.0f},
+ {39, 1.0f, 0.0f, 1.0f, 11.0f},
+ {28, 1.0f, 0.0f, 2.0f, 7.0f},
+ 0.0f,
+ 1.0f,
+ 3.0f,
+ 2000.0f,
+ 100.0f,
+ 150.0f,
+ 60.0f,
+ 5.0f,
+ 13.0f,
+ 3000.0f,
+ 150.0f,
+ 225.0f,
+ 90.0f,
};
-COMPILER_STRIP_GATE(0x8038E9C0, &daAlinkHIO_hookshot_c0::m);
/* 8038EA30-8038EA70 01B090 0040+00 10/10 0/0 0/0 .rodata m__21daAlinkHIO_spinner_c0 */
-SECTION_RODATA u8 const daAlinkHIO_spinner_c0::m[64] = {
- 0x00, 0x15, 0x00, 0x00, 0x3F, 0x4C, 0xCC, 0xCD, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00,
- 0x41, 0x50, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x0F, 0x01, 0x68, 0x01, 0x68, 0x00, 0x96, 0x00, 0x00,
- 0xC0, 0x6C, 0xCC, 0xCD, 0xC2, 0x48, 0x00, 0x00, 0x3F, 0x66, 0x66, 0x66, 0x41, 0xD0, 0x00, 0x00,
- 0x3F, 0x00, 0x00, 0x00, 0x3D, 0xCC, 0xCC, 0xCD, 0x3C, 0x23, 0xD7, 0x0A, 0x42, 0x70, 0x00, 0x00,
+daAlinkHIO_spinner_c1 const daAlinkHIO_spinner_c0::m = {
+ {21, 0.8f, 0.0f, 3.0f, 13.0f},
+ 30,
+ 15,
+ 360,
+ 360,
+ 150,
+ -3.7f,
+ -50.0f,
+ 0.9f,
+ 26.0f,
+ 0.5f,
+ 0.1f,
+ 0.01f,
+ 60.0f,
};
-COMPILER_STRIP_GATE(0x8038EA30, &daAlinkHIO_spinner_c0::m);
/* 8038EA70-8038EAFC 01B0D0 008C+00 10/12 0/0 0/0 .rodata m__22daAlinkHIO_ironBall_c0 */
SECTION_RODATA u8 const daAlinkHIO_ironBall_c0::m[140] = {
@@ -5858,44 +5754,55 @@ SECTION_RODATA u8 const daAlinkHIO_ironBall_c0::m[140] = {
COMPILER_STRIP_GATE(0x8038EA70, &daAlinkHIO_ironBall_c0::m);
/* 8038EAFC-8038EB34 01B15C 0038+00 4/4 0/0 0/0 .rodata m__21daAlinkHIO_copyRod_c0 */
-SECTION_RODATA u8 const daAlinkHIO_copyRod_c0::m[56] = {
- 0x00, 0x13, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40,
- 0x00, 0x00, 0x41, 0x60, 0x00, 0x00, 0x00, 0x27, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x41, 0xF0, 0x00, 0x00, 0x42, 0xA0,
- 0x00, 0x00, 0x44, 0xBB, 0x80, 0x00, 0x42, 0xC8, 0x00, 0x00, 0x44, 0xFA, 0x00, 0x00,
+daAlinkHIO_copyRod_c1 const daAlinkHIO_copyRod_c0::m = {
+ 19, 1.0f, 0.0f, 3.0f, 14.0f, 39, 1.0f, 0.0f, 3.0f, 30.0f, 80.0f, 1500.0f, 100.0f, 2000.0f,
};
-COMPILER_STRIP_GATE(0x8038EAFC, &daAlinkHIO_copyRod_c0::m);
/* 8038EB34-8038EB50 01B194 001C+00 0/0 0/0 0/0 .rodata m__21daAlinkHIO_zwLight_c0 */
#pragma push
#pragma force_active on
-SECTION_RODATA u8 const daAlinkHIO_zwLight_c0::m[28] = {
- 0x03, 0x03, 0x00, 0x00, 0x00, 0xB6, 0x00, 0xE1, 0x00, 0xF3, 0xFF, 0xA9, 0x3F, 0x80,
- 0x00, 0x00, 0x42, 0x8D, 0x81, 0x00, 0x43, 0x03, 0xD6, 0x00, 0x00, 0x00, 0x00, 0x00,
+daAlinkHIO_zwLight_c1 const daAlinkHIO_zwLight_c0::m = {
+ 771, 0, 182, 225, 243, -87, 1.0f, 70.75195f, 131.83594f, 0.0f,
};
COMPILER_STRIP_GATE(0x8038EB34, &daAlinkHIO_zwLight_c0::m);
#pragma pop
/* 8038EB50-8038EB8C 01B1B0 003C+00 3/3 0/0 0/0 .rodata m__18daAlinkHIO_item_c0 */
-SECTION_RODATA u8 const daAlinkHIO_item_c0::m[60] = {
- 0x00, 0x0C, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00,
- 0x00, 0x41, 0x50, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x41, 0x70, 0x00, 0x00, 0x00, 0x0F, 0x27, 0x10, 0xCD,
- 0x38, 0x17, 0x70, 0xDC, 0xD8, 0x00, 0x00, 0x3F, 0xA6, 0x66, 0x66, 0x3F, 0xA6, 0x66, 0x66,
+daAlinkHIO_item_c1 const daAlinkHIO_item_c0::m = {
+ {12, 1.0f, 0.0f, 3.0f, 13.0f},
+ {14, 1.0f, 0.0f, 3.0f, 15.0f},
+ 15,
+ 10000,
+ -13000,
+ 6000,
+ -9000,
+ 1.3f,
+ 1.3f,
};
-COMPILER_STRIP_GATE(0x8038EB50, &daAlinkHIO_item_c0::m);
/* 8038EB8C-8038EBFC 01B1EC 0070+00 14/14 0/0 0/0 .rodata m__20daAlinkHIO_ladder_c0 */
-SECTION_RODATA u8 const daAlinkHIO_ladder_c0::m[112] = {
- 0x00, 0x0D, 0x00, 0x00, 0x3F, 0x4C, 0xCC, 0xCD, 0x40, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00,
- 0x41, 0x20, 0x00, 0x00, 0x00, 0x2F, 0x00, 0x00, 0x3F, 0xA0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x40, 0x00, 0x00, 0x00, 0x42, 0x40, 0x00, 0x00, 0x3F, 0x4C, 0xCC, 0xCD, 0x40, 0xA0, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x40, 0xA0, 0x00, 0x00,
- 0x3F, 0x99, 0x99, 0x9A, 0x00, 0x00, 0x00, 0x00, 0x3E, 0xCC, 0xCC, 0xCD, 0x3F, 0x66, 0x66, 0x66,
- 0x40, 0x00, 0x00, 0x00, 0x41, 0x90, 0x00, 0x00, 0x42, 0x20, 0x00, 0x00, 0x3F, 0x4C, 0xCC, 0xCD,
- 0x3F, 0x93, 0x33, 0x33, 0x3F, 0x66, 0x66, 0x66, 0x3F, 0xAC, 0xCC, 0xCD, 0x42, 0xA0, 0x00, 0x00,
+daAlinkHIO_ladder_c1 const daAlinkHIO_ladder_c0::m = {
+ {13, 0.8f, 2.0f, 3.0f, 10.0f},
+ {47, 1.25f, 0.0f, 2.0f, 48.0f},
+ 0.8f,
+ 5.0f,
+ 1.0f,
+ 0.0f,
+ 1.0f,
+ 5.0f,
+ 1.2f,
+ 0.0f,
+ 0.4f,
+ 0.9f,
+ 2.0f,
+ 18.0f,
+ 40.0f,
+ 0.8f,
+ 1.15f,
+ 0.9f,
+ 1.35f,
+ 80.0f,
};
-COMPILER_STRIP_GATE(0x8038EB8C, &daAlinkHIO_ladder_c0::m);
/* 8038EBFC-8038EC48 01B25C 004C+00 11/11 0/0 0/0 .rodata m__22daAlinkHIO_roofHang_c0 */
SECTION_RODATA u8 const daAlinkHIO_roofHang_c0::m[76] = {
@@ -5928,97 +5835,157 @@ SECTION_RODATA u8 const daAlinkHIO_grab_c0::m[228] = {
COMPILER_STRIP_GATE(0x8038EC48, &daAlinkHIO_grab_c0::m);
/* 8038ED2C-8038EE28 01B38C 00FC+00 21/30 0/0 0/0 .rodata m__18daAlinkHIO_swim_c0 */
-SECTION_RODATA u8 const daAlinkHIO_swim_c0::m[252] = {
- 0x00, 0x19, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00,
- 0xBF, 0x80, 0x00, 0x00, 0x00, 0x17, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x40, 0x40, 0x00, 0x00, 0x41, 0xC0, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x41, 0x20, 0x00, 0x00, 0x41, 0xC0, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x40, 0xA0, 0x00, 0x00, 0x42, 0x18, 0x00, 0x00,
- 0x00, 0x0F, 0x03, 0x20, 0x13, 0x88, 0x00, 0x0F, 0x00, 0xC8, 0x13, 0x88, 0x00, 0x5A, 0x00, 0x32,
- 0x43, 0x0C, 0x00, 0x00, 0x42, 0x48, 0x00, 0x00, 0x41, 0x00, 0x00, 0x00, 0x41, 0x00, 0x00, 0x00,
- 0x40, 0xC0, 0x00, 0x00, 0x41, 0x40, 0x00, 0x00, 0x41, 0x00, 0x00, 0x00, 0x40, 0xA0, 0x00, 0x00,
- 0x3F, 0x00, 0x00, 0x00, 0xC0, 0xE0, 0x00, 0x00, 0x40, 0xC0, 0x00, 0x00, 0x3E, 0x4C, 0xCC, 0xCD,
- 0x3F, 0x4C, 0xCC, 0xCD, 0x41, 0x70, 0x00, 0x00, 0x40, 0x60, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, 0x3F, 0xA6, 0x66, 0x66, 0x3F, 0x00, 0x00, 0x00,
- 0x3F, 0xA6, 0x66, 0x66, 0x3E, 0xCC, 0xCC, 0xCD, 0x3F, 0x19, 0x99, 0x9A, 0x41, 0x70, 0x00, 0x00,
- 0x42, 0x16, 0x00, 0x00, 0xC2, 0x16, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0xC0, 0x80, 0x00, 0x00,
- 0xC1, 0xA0, 0x00, 0x00, 0x43, 0x7A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x41, 0x20, 0x00, 0x00,
- 0x3F, 0x66, 0x66, 0x66, 0xBF, 0x33, 0x33, 0x33, 0x3F, 0x19, 0x99, 0x9A, 0x41, 0x50, 0x00, 0x00,
- 0x3E, 0x99, 0x99, 0x9A, 0x3F, 0x00, 0x00, 0x00, 0x3F, 0xA6, 0x66, 0x66,
-};
-COMPILER_STRIP_GATE(0x8038ED2C, &daAlinkHIO_swim_c0::m);
+daAlinkHIO_swim_c1 const daAlinkHIO_swim_c0::m = {
+ {25, 1.0f, 0.0f, 3.0f, -1.0f},
+ {23, 1.0f, 0.0f, 3.0f, 24.0f},
+ {12, 2.0f, 0.0f, 10.0f, 24.0f},
+ {37, 1.0f, 3.0f, 5.0f, 38.0f},
+ 15,
+ 800,
+ 5000,
+ 15,
+ 200,
+ 5000,
+ 90,
+ 50,
+ 140.0f,
+ 50.0f,
+ 8.0f,
+ 8.0f,
+ 6.0f,
+ 12.0f,
+ 8.0f,
+ 5.0f,
+ 0.5f,
+ -7.0f,
+ 6.0f,
+ 0.2f,
+ 0.8f,
+ 15.0f,
+ 3.5f,
+ 0.5f,
+ 1.0f,
+ 0.5f,
+ 1.3f,
+ 0.5f,
+ 1.3f,
+ 0.4f,
+ 0.6f,
+ 15.0f,
+ 37.5f,
+ -37.5f,
+ 3.0f,
+ -4.0f,
+ -20.0f,
+ 250.0f,
+ 0.0f,
+ 10.0f,
+ 0.9f,
+ -0.7f,
+ 0.6f,
+ 13.0f,
+ 0.3f,
+ 0.5f,
+ 1.3f,
+};
/* 8038EE28-8038EF28 01B488 0100+00 32/41 0/0 0/0 .rodata m__20daAlinkHIO_wlMove_c0 */
-SECTION_RODATA u8 const daAlinkHIO_wlMove_c0::m[256] = {
- 0x00, 0x0E, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00,
- 0x41, 0x70, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x40, 0x40, 0x00, 0x00, 0x41, 0x40, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x41, 0xA0, 0x00, 0x00, 0x00, 0x29, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x41, 0xA0, 0x00, 0x00,
- 0x23, 0x28, 0x00, 0x64, 0x00, 0x05, 0x00, 0x5A, 0x00, 0x32, 0x00, 0x3C, 0x00, 0x32, 0x00, 0x2D,
- 0x00, 0x32, 0x00, 0x00, 0x42, 0x20, 0x00, 0x00, 0x40, 0x80, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00,
- 0x3F, 0xCC, 0xCC, 0xCD, 0x3F, 0x8C, 0xCC, 0xCD, 0x40, 0x0C, 0xCC, 0xCD, 0x3F, 0x99, 0x99, 0x9A,
- 0x3F, 0xA6, 0x66, 0x66, 0x3D, 0xCC, 0xCC, 0xCD, 0x3E, 0xCC, 0xCC, 0xCD, 0x3E, 0xCC, 0xCC, 0xCD,
- 0x3F, 0x00, 0x00, 0x00, 0x40, 0xA0, 0x00, 0x00, 0x40, 0xA0, 0x00, 0x00, 0x3E, 0x99, 0x99, 0x9A,
- 0x3F, 0x59, 0x99, 0x9A, 0x3F, 0x66, 0x66, 0x66, 0x40, 0x20, 0x00, 0x00, 0x42, 0x20, 0x00, 0x00,
- 0x40, 0xA0, 0x00, 0x00, 0x41, 0xB0, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x40, 0xA0, 0x00, 0x00,
- 0x42, 0xC8, 0x00, 0x00, 0x41, 0x20, 0x00, 0x00, 0x42, 0x34, 0x00, 0x00, 0x3F, 0xA6, 0x66, 0x66,
- 0x40, 0xC0, 0x00, 0x00, 0x42, 0x82, 0x00, 0x00, 0x41, 0xA0, 0x00, 0x00, 0x41, 0x70, 0x00, 0x00,
- 0x42, 0x04, 0x00, 0x00, 0x42, 0x0C, 0x00, 0x00, 0x3F, 0x99, 0x99, 0x9A, 0x40, 0x40, 0x00, 0x00,
- 0x41, 0xC8, 0x00, 0x00, 0x42, 0x0C, 0x00, 0x00, 0x3F, 0x8C, 0xCC, 0xCD, 0x3F, 0x00, 0x00, 0x00,
-};
-COMPILER_STRIP_GATE(0x8038EE28, &daAlinkHIO_wlMove_c0::m);
+daAlinkHIO_wlMove_c1 const daAlinkHIO_wlMove_c0::m = {
+ {14, 1.0f, 0.0f, 3.0f, 15.0f},
+ {14, 1.0f, 0.0f, 3.0f, 12.0f},
+ {8, 1.0f, 0.0f, 1.0f, 20.0f},
+ {41, 1.0f, 0.0f, 3.0f, 20.0f},
+ 9000,
+ 100,
+ 5,
+ 90,
+ 50,
+ 60,
+ 50,
+ 45,
+ 50,
+ 40.0f,
+ 4.0f,
+ 3.0f,
+ 1.6f,
+ 1.1f,
+ 2.2f,
+ 1.2f,
+ 1.3f,
+ 0.1f,
+ 0.4f,
+ 0.4f,
+ 0.5f,
+ 5.0f,
+ 5.0f,
+ 0.3f,
+ 0.85f,
+ 0.9f,
+ 2.5f,
+ 40.0f,
+ 5.0f,
+ 22.0f,
+ 1.0f,
+ 5.0f,
+ 100.0f,
+ 10.0f,
+ 45.0f,
+ 1.3f,
+ 6.0f,
+ 65.0f,
+ 20.0f,
+ 15.0f,
+ 33.0f,
+ 35.0f,
+ 1.2f,
+ 3.0f,
+ 25.0f,
+ 35.0f,
+ 1.1f,
+ 0.5f,
+};
/* 8038EF28-8038EF70 01B588 0048+00 19/27 0/0 0/0 .rodata m__23daAlinkHIO_wlMoveNoP_c0 */
-SECTION_RODATA u8 const daAlinkHIO_wlMoveNoP_c0::m[72] = {
- 0x23, 0x28, 0x00, 0x64, 0x00, 0x05, 0x00, 0x00, 0x41, 0xC8, 0x00, 0x00, 0x40, 0x40, 0x00,
- 0x00, 0x3F, 0xE6, 0x66, 0x66, 0x3F, 0x80, 0x00, 0x00, 0x3F, 0x4C, 0xCC, 0xCD, 0x40, 0x0C,
- 0xCC, 0xCD, 0x3F, 0x8C, 0xCC, 0xCD, 0x3D, 0xCC, 0xCC, 0xCD, 0x3F, 0x19, 0x99, 0x9A, 0x3F,
- 0x19, 0x99, 0x9A, 0x40, 0xA0, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, 0x3F, 0x59, 0x99, 0x9A,
- 0x3F, 0x66, 0x66, 0x66, 0x40, 0x20, 0x00, 0x00, 0x41, 0xF0, 0x00, 0x00,
+daAlinkHIO_wlMoveNoP_c1 const daAlinkHIO_wlMoveNoP_c0::m = {
+ 9000, 100, 5, 25.0f, 3.0f, 1.8f, 1.0f, 0.8f, 2.2f, 1.1f,
+ 0.1f, 0.6f, 0.6f, 5.0f, 0.5f, 0.85f, 0.9f, 2.5f, 30.0f,
};
-COMPILER_STRIP_GATE(0x8038EF28, &daAlinkHIO_wlMoveNoP_c0::m);
/* 8038EF70-8038EFA8 01B5D0 0038+00 3/6 0/0 0/0 .rodata m__23daAlinkHIO_wlAtnMove_c0 */
-SECTION_RODATA u8 const daAlinkHIO_wlAtnMove_c0::m[56] = {
- 0x23, 0x28, 0x00, 0x64, 0x00, 0x03, 0x00, 0x00, 0x3F, 0x4C, 0xCC, 0xCD, 0x3F, 0xE6,
- 0x66, 0x66, 0x3E, 0x4C, 0xCC, 0xCD, 0x3F, 0x19, 0x99, 0x9A, 0x41, 0x90, 0x00, 0x00,
- 0x40, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x3F, 0xD9, 0x99, 0x9A, 0x3E, 0xCC,
- 0xCC, 0xCD, 0x41, 0x40, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00,
+daAlinkHIO_wlAtnMove_c1 const daAlinkHIO_wlAtnMove_c0::m = {
+ 9000, 100, 3, 0.8f, 1.8f, 0.2f, 0.6f, 18.0f, 2.0f, 2.0f, 1.7f, 0.4f, 12.0f, 3.0f, 2.0f,
};
-COMPILER_STRIP_GATE(0x8038EF70, &daAlinkHIO_wlAtnMove_c0::m);
/* 8038EFA8-8038F010 01B608 0068+00 3/3 0/0 0/0 .rodata m__24daAlinkHIO_wlSideStep_c0 */
-SECTION_RODATA u8 const daAlinkHIO_wlSideStep_c0::m[104] = {
- 0x00, 0x05, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00,
- 0x00, 0x40, 0xC0, 0x00, 0x00, 0x00, 0x17, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x3F, 0x80,
- 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x3F,
- 0x66, 0x66, 0x66, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x40, 0xA0, 0x00, 0x00,
- 0x00, 0x17, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x40, 0x00, 0x00,
- 0x00, 0x40, 0x40, 0x00, 0x00, 0x42, 0x04, 0x00, 0x00, 0x41, 0xB8, 0x00, 0x00, 0x41, 0xF0,
- 0x00, 0x00, 0x41, 0xB0, 0x00, 0x00, 0x42, 0xC8, 0x00, 0x00, 0x41, 0x20, 0x00, 0x00,
+daAlinkHIO_wlSideStep_c1 const daAlinkHIO_wlSideStep_c0::m = {
+ {5, 1.0f, 0.0f, 3.0f, 6.0f},
+ {23, 1.0f, 1.0f, 2.0f, 2.0f},
+ {4, 0.9f, 0.0f, 3.0f, 5.0f},
+ {23, 1.0f, 1.0f, 2.0f, 3.0f},
+ 33.0f,
+ 23.0f,
+ 30.0f,
+ 22.0f,
+ 100.0f,
+ 10.0f,
};
-COMPILER_STRIP_GATE(0x8038EFA8, &daAlinkHIO_wlSideStep_c0::m);
/* 8038F010-8038F048 01B670 0038+00 3/4 0/0 0/0 .rodata m__24daAlinkHIO_wlBackJump_c0 */
-SECTION_RODATA u8 const daAlinkHIO_wlBackJump_c0::m[56] = {
- 0x00, 0x0B, 0x00, 0x00, 0x3F, 0x4C, 0xCC, 0xCD, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00,
- 0x00, 0x00, 0x41, 0x40, 0x00, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x41, 0xF0,
- 0x00, 0x00, 0x41, 0xA0, 0x00, 0x00, 0x42, 0xC8, 0x00, 0x00, 0x41, 0x20, 0x00, 0x00,
+daAlinkHIO_wlBackJump_c1 const daAlinkHIO_wlBackJump_c0::m = {
+ {11, 0.8f, 0.0f, 2.0f, 12.0f}, {28, 1.0f, 0.0f, 3.0f, 1.0f}, 30.0f, 20.0f, 100.0f, 10.0f,
};
-COMPILER_STRIP_GATE(0x8038F010, &daAlinkHIO_wlBackJump_c0::m);
/* 8038F048-8038F0A8 01B6A8 0060+00 2/2 0/0 0/0 .rodata m__20daAlinkHIO_wlHowl_c0 */
-SECTION_RODATA u8 const daAlinkHIO_wlHowl_c0::m[96] = {
- 0x00, 0x31, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00,
- 0x42, 0x20, 0x00, 0x00, 0x00, 0x47, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x40, 0x40, 0x00, 0x00, 0x42, 0x90, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x3F, 0xA6, 0x66, 0x66,
- 0x3F, 0x80, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x41, 0x30, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00,
- 0x3F, 0x66, 0x66, 0x66, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x41, 0x90, 0x00, 0x00,
- 0x40, 0x40, 0x00, 0x00, 0x41, 0x00, 0x00, 0x00, 0x3F, 0xD9, 0x99, 0x9A, 0x3F, 0x33, 0x33, 0x33,
+daAlinkHIO_wlHowl_c1 const daAlinkHIO_wlHowl_c0::m = {
+ {49, 1.0f, 0.0f, 3.0f, 40.0f},
+ {71, 1.0f, 0.0f, 3.0f, 72.0f},
+ {14, 1.3f, 1.0f, 3.0f, 11.0f},
+ {17, 0.9f, 0.0f, 3.0f, 18.0f},
+ 3.0f,
+ 8.0f,
+ 1.7f,
+ 0.7f,
};
-COMPILER_STRIP_GATE(0x8038F048, &daAlinkHIO_wlHowl_c0::m);
/* 8038F0A8-8038F124 01B708 007C+00 8/13 0/0 0/0 .rodata m__24daAlinkHIO_wlAutoJump_c0 */
daAlinkHIO_wlAutoJump_c1 const daAlinkHIO_wlAutoJump_c0::m = {{3, 1.2f, 1.0f, 2.0f, 4.0f},
@@ -6044,181 +6011,227 @@ daAlinkHIO_wlAutoJump_c1 const daAlinkHIO_wlAutoJump_c0::m = {{3, 1.2f, 1.0f, 2.
100.0f};
/* 8038F124-8038F138 01B784 0014+00 4/4 0/0 0/0 .rodata m__20daAlinkHIO_wlPush_c0 */
-SECTION_RODATA u8 const daAlinkHIO_wlPush_c0::m[20] = {
- 0x3F, 0x80, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x3F, 0x80,
- 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x3F, 0x40, 0x00, 0x00,
+daAlinkHIO_wlPush_c1 const daAlinkHIO_wlPush_c0::m = {
+ 1.0f, 3.0f, 1.0f, 3.0f, 0.75f,
};
-COMPILER_STRIP_GATE(0x8038F124, &daAlinkHIO_wlPush_c0::m);
/* 8038F138-8038F184 01B798 004C+00 13/15 0/0 0/0 .rodata m__19daAlinkHIO_wlLie_c0 */
-SECTION_RODATA u8 const daAlinkHIO_wlLie_c0::m[76] = {
- 0x00, 0x0E, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00,
- 0x41, 0x20, 0x00, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00,
- 0x40, 0x40, 0x00, 0x00, 0x41, 0x00, 0x00, 0x00, 0x00, 0x05, 0x01, 0xF4, 0x00, 0x32, 0x00, 0x00,
- 0x40, 0x40, 0x00, 0x00, 0x41, 0x00, 0x00, 0x00, 0x3F, 0xD9, 0x99, 0x9A, 0x3F, 0x33, 0x33, 0x33,
- 0x40, 0xA0, 0x00, 0x00, 0x3F, 0x4C, 0xCC, 0xCD, 0x40, 0x40, 0x00, 0x00,
+daAlinkHIO_wlLie_c1 const daAlinkHIO_wlLie_c0::m = {
+ {14, 1.5f, 0.0f, 3.0f, 10.0f},
+ {11, 1.5f, 3.0f, 3.0f, 8.0f},
+ 5,
+ 500,
+ 50,
+ 3.0f,
+ 8.0f,
+ 1.7f,
+ 0.7f,
+ 5.0f,
+ 0.8f,
+ 3.0f,
};
-COMPILER_STRIP_GATE(0x8038F138, &daAlinkHIO_wlLie_c0::m);
/* 8038F184-8038F1A0 01B7E4 001C+00 0/1 0/0 0/0 .rodata m__21daAlinkHIO_wlLight_c0 */
#pragma push
#pragma force_active on
-SECTION_RODATA u8 const daAlinkHIO_wlLight_c0::m[28] = {
- 0x02, 0x03, 0x00, 0x00, 0x00, 0x78, 0x00, 0x78, 0x00, 0x78, 0xFF, 0xE2, 0x40, 0x40,
- 0x00, 0x00, 0x41, 0xA0, 0x00, 0x00, 0x44, 0x00, 0x00, 0x00, 0xC4, 0x1F, 0x80, 0x00,
+daAlinkHIO_wlLight_c1 const daAlinkHIO_wlLight_c0::m = {
+ 515, 0, 120, 120, 120, -30, 3.0f, 20.0f, 512.0f, -638.0f,
};
-COMPILER_STRIP_GATE(0x8038F184, &daAlinkHIO_wlLight_c0::m);
#pragma pop
/* 8038F1A0-8038F23C 01B800 009C+00 9/11 0/0 0/0 .rodata m__24daAlinkHIO_wlWallHang_c0 */
-SECTION_RODATA u8 const daAlinkHIO_wlWallHang_c0::m[156] = {
- 0x00, 0x0D, 0x00, 0x00, 0x3F, 0x99, 0x99, 0x9A, 0x41, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00,
- 0x41, 0x60, 0x00, 0x00, 0x00, 0x27, 0x00, 0x00, 0x3F, 0x8C, 0xCC, 0xCD, 0x00, 0x00, 0x00, 0x00,
- 0x40, 0x40, 0x00, 0x00, 0x41, 0xF8, 0x00, 0x00, 0x00, 0x27, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x40, 0xA0, 0x00, 0x00, 0x42, 0x20, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x40, 0xC0, 0x00, 0x00,
- 0x00, 0x06, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00,
- 0x40, 0xE0, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x40, 0x40, 0x00, 0x00, 0x41, 0x20, 0x00, 0x00, 0x42, 0x48, 0x00, 0x00, 0x42, 0xC8, 0x00, 0x00,
- 0x43, 0x48, 0x00, 0x00, 0x43, 0x7A, 0x00, 0x00, 0x42, 0xC8, 0x00, 0x00, 0x41, 0x88, 0x00, 0x00,
- 0x41, 0x70, 0x00, 0x00, 0x41, 0x20, 0x00, 0x00, 0x41, 0x20, 0x00, 0x00,
-};
-COMPILER_STRIP_GATE(0x8038F1A0, &daAlinkHIO_wlWallHang_c0::m);
+daAlinkHIO_wlWallHang_c1 const daAlinkHIO_wlWallHang_c0::m = {
+ {13, 1.2f, 8.0f, 2.0f, 14.0f},
+ {39, 1.1f, 0.0f, 3.0f, 31.0f},
+ {39, 1.0f, 0.0f, 5.0f, 40.0f},
+ {5, 1.0f, 0.0f, 3.0f, 6.0f},
+ {6, 1.0f, 0.0f, 3.0f, 7.0f},
+ {16, 1.0f, 0.0f, 3.0f, 10.0f},
+ 50.0f,
+ 100.0f,
+ 200.0f,
+ 250.0f,
+ 100.0f,
+ 17.0f,
+ 15.0f,
+ 10.0f,
+ 10.0f,
+};
/* 8038F23C-8038F29C 01B89C 0060+00 2/3 0/0 0/0 .rodata m__25daAlinkHIO_wlDamNormal_c0 */
-SECTION_RODATA u8 const daAlinkHIO_wlDamNormal_c0::m[96] = {
- 0x00, 0x09, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x41, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x41, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x41, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x41, 0x00, 0x00, 0x00,
- 0x41, 0x20, 0x00, 0x00, 0x3C, 0x23, 0xD7, 0x0A, 0x3F, 0x80, 0x00, 0x00, 0x3E, 0x80, 0x00, 0x00,
+daAlinkHIO_wlDamNormal_c1 const daAlinkHIO_wlDamNormal_c0::m = {
+ {9, 1.0f, 0.0f, 0.0f, 8.0f},
+ {9, 1.0f, 0.0f, 0.0f, 8.0f},
+ {9, 1.0f, 0.0f, 0.0f, 8.0f},
+ {9, 1.0f, 0.0f, 0.0f, 8.0f},
+ 10.0f,
+ 0.01f,
+ 1.0f,
+ 0.25f,
};
-COMPILER_STRIP_GATE(0x8038F23C, &daAlinkHIO_wlDamNormal_c0::m);
/* 8038F29C-8038F308 01B8FC 006C+00 2/4 0/0 0/0 .rodata m__24daAlinkHIO_wlDamLarge_c0 */
-SECTION_RODATA u8 const daAlinkHIO_wlDamLarge_c0::m[108] = {
- 0x00, 0x31, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00,
- 0x42, 0x20, 0x00, 0x00, 0x00, 0x27, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x40, 0x40, 0x00, 0x00, 0x42, 0x0C, 0x00, 0x00, 0x00, 0x22, 0x00, 0x00, 0x3F, 0x8C, 0xCC, 0xCD,
- 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x42, 0x00, 0x00, 0x00, 0x00, 0x22, 0x00, 0x00,
- 0x3F, 0x8C, 0xCC, 0xCD, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x42, 0x00, 0x00, 0x00,
- 0x05, 0x14, 0x00, 0x00, 0xC0, 0xA6, 0x66, 0x66, 0x40, 0x40, 0x00, 0x00, 0x41, 0x20, 0x00, 0x00,
- 0x41, 0x70, 0x00, 0x00, 0x41, 0x70, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00,
+daAlinkHIO_wlDamLarge_c1 const daAlinkHIO_wlDamLarge_c0::m = {
+ {49, 1.0f, 0.0f, 3.0f, 40.0f},
+ {39, 1.0f, 0.0f, 3.0f, 35.0f},
+ {34, 1.1f, 0.0f, 3.0f, 32.0f},
+ {34, 1.1f, 0.0f, 3.0f, 32.0f},
+ 1300,
+ -5.2f,
+ 3.0f,
+ 10.0f,
+ 15.0f,
+ 15.0f,
+ 0.5f,
};
-COMPILER_STRIP_GATE(0x8038F29C, &daAlinkHIO_wlDamLarge_c0::m);
/* 8038F308-8038F374 01B968 006C+00 0/2 0/0 0/0 .rodata m__23daAlinkHIO_wlDamHuge_c0 */
#pragma push
#pragma force_active on
-SECTION_RODATA u8 const daAlinkHIO_wlDamHuge_c0::m[108] = {
- 0x00, 0x31, 0x00, 0x00, 0x3F, 0x8C, 0xCC, 0xCD, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00,
- 0x42, 0x20, 0x00, 0x00, 0x00, 0x27, 0x00, 0x00, 0x3F, 0x8C, 0xCC, 0xCD, 0x00, 0x00, 0x00, 0x00,
- 0x40, 0x40, 0x00, 0x00, 0x42, 0x0C, 0x00, 0x00, 0x00, 0x22, 0x00, 0x00, 0x3F, 0x99, 0x99, 0x9A,
- 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x41, 0xF0, 0x00, 0x00, 0x00, 0x22, 0x00, 0x00,
- 0x3F, 0x99, 0x99, 0x9A, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x41, 0xF0, 0x00, 0x00,
- 0x07, 0xD0, 0x00, 0x00, 0xC0, 0xF0, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x42, 0xAA, 0x00, 0x00,
- 0x42, 0x34, 0x00, 0x00, 0x41, 0x70, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00,
+daAlinkHIO_wlDamHuge_c1 const daAlinkHIO_wlDamHuge_c0::m = {
+ {49, 1.1f, 0.0f, 3.0f, 40.0f},
+ {39, 1.1f, 0.0f, 3.0f, 35.0f},
+ {34, 1.2f, 0.0f, 3.0f, 30.0f},
+ {34, 1.2f, 0.0f, 3.0f, 30.0f},
+ 2000,
+ -7.5f,
+ 3.0f,
+ 85.0f,
+ 45.0f,
+ 15.0f,
+ 0.5f,
};
-COMPILER_STRIP_GATE(0x8038F308, &daAlinkHIO_wlDamHuge_c0::m);
#pragma pop
/* 8038F374-8038F3B4 01B9D4 0040+00 6/6 0/0 0/0 .rodata m__23daAlinkHIO_wlDamFall_c0 */
-SECTION_RODATA u8 const daAlinkHIO_wlDamFall_c0::m[64] = {
- 0x00, 0x0B, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00,
- 0x41, 0x40, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x3F, 0x4C, 0xCC, 0xCD, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x41, 0x40, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x23, 0x42, 0x20, 0x00, 0x00,
- 0x42, 0x70, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x41, 0x70, 0x00, 0x00,
+daAlinkHIO_wlDamFall_c1 const daAlinkHIO_wlDamFall_c0::m = {
+ {11, 1.0f, 0.0f, 3.0f, 12.0f},
+ {17, 0.8f, 0.0f, 0.0f, 12.0f},
+ 15,
+ 35,
+ 40.0f,
+ 60.0f,
+ 3.0f,
+ 1.0f,
+ 15.0f,
};
-COMPILER_STRIP_GATE(0x8038F374, &daAlinkHIO_wlDamFall_c0::m);
/* 8038F3B4-8038F3C4 01BA14 0010+00 1/1 0/0 0/0 .rodata m__25daAlinkHIO_wlDamCaught_c0 */
-SECTION_RODATA u8 const daAlinkHIO_wlDamCaught_c0::m[16] = {
- 0x01, 0x2C, 0x00, 0x05, 0x3F, 0x99, 0x99, 0x9A, 0x40, 0x40, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x00,
+daAlinkHIO_wlDamCaught_c1 const daAlinkHIO_wlDamCaught_c0::m = {
+ 300, 5, 1.2f, 3.0f, 1.5f,
};
-COMPILER_STRIP_GATE(0x8038F3B4, &daAlinkHIO_wlDamCaught_c0::m);
/* 8038F3C4-8038F3F0 01BA24 002C+00 3/4 0/0 0/0 .rodata m__22daAlinkHIO_wlDamage_c0 */
-SECTION_RODATA u8 const daAlinkHIO_wlDamage_c0::m[44] = {
- 0x00, 0x09, 0x00, 0x00, 0x3F, 0x8C, 0xCC, 0xCD, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00,
- 0x00, 0x41, 0x20, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x3F, 0x8C, 0xCC, 0xCD, 0x00, 0x00,
- 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x40, 0xE0, 0x00, 0x00, 0x3F, 0x33, 0x33, 0x33,
+daAlinkHIO_wlDamage_c1 const daAlinkHIO_wlDamage_c0::m = {
+ {9, 1.1f, 0.0f, 3.0f, 10.0f},
+ {9, 1.1f, 0.0f, 3.0f, 7.0f},
+ 0.7f,
};
-COMPILER_STRIP_GATE(0x8038F3C4, &daAlinkHIO_wlDamage_c0::m);
/* 8038F3F0-8038F46C 01BA50 007C+00 10/14 0/0 0/0 .rodata m__21daAlinkHIO_wlSlide_c0 */
-SECTION_RODATA u8 const daAlinkHIO_wlSlide_c0::m[124] = {
- 0x00, 0x14, 0x00, 0x00, 0x3F, 0xA0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00,
- 0x41, 0xC8, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x40, 0x40, 0x00, 0x00, 0x41, 0x00, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x41, 0x70, 0x00, 0x00, 0x00, 0x1D, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x41, 0xD8, 0x00, 0x00,
- 0x02, 0x00, 0x00, 0x40, 0x42, 0x0C, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x42, 0x48, 0x00, 0x00,
- 0x42, 0x0C, 0x00, 0x00, 0x40, 0x26, 0x66, 0x66, 0x41, 0x90, 0x00, 0x00, 0x40, 0x06, 0x66, 0x66,
- 0x41, 0x20, 0x00, 0x00, 0x3F, 0x33, 0x33, 0x33, 0x41, 0xF0, 0x00, 0x00,
-};
-COMPILER_STRIP_GATE(0x8038F3F0, &daAlinkHIO_wlSlide_c0::m);
+daAlinkHIO_wlSlide_c1 const daAlinkHIO_wlSlide_c0::m = {
+ {20, 1.25f, 0.0f, 3.0f, 25.0f},
+ {7, 1.0f, 0.0f, 3.0f, 8.0f},
+ {14, 1.0f, 0.0f, 3.0f, 15.0f},
+ {29, 1.0f, 0.0f, 3.0f, 27.0f},
+ 512,
+ 64,
+ 35.0f,
+ 3.0f,
+ 50.0f,
+ 35.0f,
+ 2.6f,
+ 18.0f,
+ 2.1f,
+ 10.0f,
+ 0.7f,
+ 30.0f,
+};
/* 8038F46C-8038F4A4 01BACC 0038+00 7/7 0/0 0/0 .rodata m__20daAlinkHIO_wlRope_c0 */
-SECTION_RODATA u8 const daAlinkHIO_wlRope_c0::m[56] = {
- 0x00, 0x10, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40,
- 0x00, 0x00, 0x41, 0x88, 0x00, 0x00, 0x00, 0x5A, 0x00, 0x1E, 0x3F, 0x00, 0x00, 0x00,
- 0x3F, 0x99, 0x99, 0x9A, 0x40, 0x40, 0x00, 0x00, 0x41, 0x70, 0x00, 0x00, 0x3F, 0x80,
- 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x3F, 0x4C, 0xCC, 0xCD,
+daAlinkHIO_wlRope_c1 const daAlinkHIO_wlRope_c0::m = {
+ {16, 1.0f, 0.0f, 3.0f, 17.0f}, 90, 30, 0.5f, 1.2f, 3.0f, 15.0f, 1.0f, 3.0f, 3.0f, 0.8f,
};
-COMPILER_STRIP_GATE(0x8038F46C, &daAlinkHIO_wlRope_c0::m);
/* 8038F4A4-8038F4E0 01BB04 003C+00 0/1 0/0 0/0 .rodata m__22daAlinkHIO_wlAtWaLr_c0 */
#pragma push
#pragma force_active on
-SECTION_RODATA u8 const daAlinkHIO_wlAtWaLr_c0::m[60] = {
- 0x00, 0x29, 0x00, 0x00, 0x3F, 0x66, 0x66, 0x66, 0x40, 0x80, 0x00, 0x00, 0x40, 0x40, 0x00,
- 0x00, 0x41, 0x80, 0x00, 0x00, 0x00, 0x05, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x41, 0x20,
- 0x00, 0x00, 0x40, 0x80, 0x00, 0x00, 0x41, 0x30, 0x00, 0x00, 0x41, 0x90, 0x00, 0x00, 0x40,
- 0xA0, 0x00, 0x00, 0x42, 0x8C, 0x00, 0x00, 0x42, 0x8C, 0x00, 0x00, 0x43, 0x16, 0x00, 0x00,
+daAlinkHIO_wlAtWaLr_c1 const daAlinkHIO_wlAtWaLr_c0::m = {
+ {41, 0.9f, 4.0f, 3.0f, 16.0f},
+ 5,
+ 3,
+ 0.0f,
+ 10.0f,
+ 4.0f,
+ 11.0f,
+ 18.0f,
+ 5.0f,
+ 70.0f,
+ 70.0f,
+ 150.0f,
};
-COMPILER_STRIP_GATE(0x8038F4A4, &daAlinkHIO_wlAtWaLr_c0::m);
#pragma pop
/* 8038F4E0-8038F51C 01BB40 003C+00 0/1 0/0 0/0 .rodata m__22daAlinkHIO_wlAtWaSc_c0 */
#pragma push
#pragma force_active on
-SECTION_RODATA u8 const daAlinkHIO_wlAtWaSc_c0::m[60] = {
- 0x00, 0x0F, 0x00, 0x00, 0x3F, 0x66, 0x66, 0x66, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00,
- 0x00, 0x41, 0x70, 0x00, 0x00, 0x00, 0x05, 0x00, 0x05, 0x41, 0x20, 0x00, 0x00, 0x40, 0x40,
- 0x00, 0x00, 0x40, 0xA0, 0x00, 0x00, 0x41, 0x30, 0x00, 0x00, 0x41, 0x90, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x42, 0xC8, 0x00, 0x00, 0x42, 0xAA, 0x00, 0x00, 0x43, 0x16, 0x00, 0x00,
+daAlinkHIO_wlAtWaSc_c1 const daAlinkHIO_wlAtWaSc_c0::m = {
+ {15, 0.9f, 0.0f, 3.0f, 15.0f},
+ 5,
+ 5,
+ 10.0f,
+ 3.0f,
+ 5.0f,
+ 11.0f,
+ 18.0f,
+ 0.0f,
+ 100.0f,
+ 85.0f,
+ 150.0f,
};
-COMPILER_STRIP_GATE(0x8038F4E0, &daAlinkHIO_wlAtWaSc_c0::m);
#pragma pop
/* 8038F51C-8038F558 01BB7C 003C+00 0/1 0/0 0/0 .rodata m__22daAlinkHIO_wlAtWaTl_c0 */
#pragma push
#pragma force_active on
-SECTION_RODATA u8 const daAlinkHIO_wlAtWaTl_c0::m[60] = {
- 0x00, 0x2A, 0x00, 0x00, 0x3F, 0x86, 0x66, 0x66, 0x40, 0x40, 0x00, 0x00, 0x40, 0x40, 0x00,
- 0x00, 0x41, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x41, 0x20, 0x00, 0x00, 0x40, 0xA0,
- 0x00, 0x00, 0x41, 0x20, 0x00, 0x00, 0x41, 0x60, 0x00, 0x00, 0x41, 0xC8, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x42, 0x20, 0x00, 0x00, 0x43, 0x16, 0x00, 0x00, 0x42, 0xC8, 0x00, 0x00,
+daAlinkHIO_wlAtWaTl_c1 const daAlinkHIO_wlAtWaTl_c0::m = {
+ {42, 1.05f, 3.0f, 3.0f, 28.0f},
+ 0,
+ 3,
+ 10.0f,
+ 5.0f,
+ 10.0f,
+ 14.0f,
+ 25.0f,
+ 0.0f,
+ 40.0f,
+ 150.0f,
+ 100.0f,
};
-COMPILER_STRIP_GATE(0x8038F51C, &daAlinkHIO_wlAtWaTl_c0::m);
#pragma pop
/* 8038F558-8038F578 01BBB8 0020+00 2/2 0/0 0/0 .rodata m__22daAlinkHIO_wlAtRoll_c0 */
-SECTION_RODATA u8 const daAlinkHIO_wlAtRoll_c0::m[32] = {
- 0x00, 0x28, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x40, 0x80, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00,
- 0x41, 0xB8, 0x00, 0x00, 0x43, 0x7A, 0x00, 0x00, 0x41, 0xA0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+daAlinkHIO_wlAtRoll_c1 const daAlinkHIO_wlAtRoll_c0::m = {
+ {40, 1.0f, 4.0f, 3.0f, 23.0f},
+ 250.0f,
+ 20.0f,
+ 0.0f,
};
-COMPILER_STRIP_GATE(0x8038F558, &daAlinkHIO_wlAtRoll_c0::m);
/* 8038F578-8038F5B4 01BBD8 003C+00 3/5 0/0 0/0 .rodata m__23daAlinkHIO_wlAtNjump_c0 */
-SECTION_RODATA u8 const daAlinkHIO_wlAtNjump_c0::m[60] = {
- 0x00, 0x06, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x40, 0x80, 0x00, 0x00, 0x40, 0x40, 0x00,
- 0x00, 0x40, 0xE0, 0x00, 0x00, 0x41, 0xF0, 0x00, 0x00, 0x42, 0x20, 0x00, 0x00, 0x41, 0xB8,
- 0x00, 0x00, 0x41, 0x88, 0x00, 0x00, 0x3F, 0x4C, 0xCC, 0xCD, 0x40, 0x00, 0x00, 0x00, 0x42,
- 0xA0, 0x00, 0x00, 0x42, 0x70, 0x00, 0x00, 0x42, 0xF0, 0x00, 0x00, 0x41, 0x20, 0x00, 0x00,
+daAlinkHIO_wlAtNjump_c1 const daAlinkHIO_wlAtNjump_c0::m = {
+ {6, 1.0f, 4.0f, 3.0f, 7.0f},
+ 30.0f,
+ 40.0f,
+ 23.0f,
+ 17.0f,
+ 0.8f,
+ 2.0f,
+ 80.0f,
+ 60.0f,
+ 120.0f,
+ 10.0f,
};
-COMPILER_STRIP_GATE(0x8038F578, &daAlinkHIO_wlAtNjump_c0::m);
/* 8038F5B4-8038F618 01BC14 0064+00 1/4 0/0 0/0 .rodata m__23daAlinkHIO_wlAtCjump_c0 */
SECTION_RODATA u8 const daAlinkHIO_wlAtCjump_c0::m[100] = {
@@ -6233,13 +6246,12 @@ SECTION_RODATA u8 const daAlinkHIO_wlAtCjump_c0::m[100] = {
COMPILER_STRIP_GATE(0x8038F5B4, &daAlinkHIO_wlAtCjump_c0::m);
/* 8038F618-8038F658 01BC78 0040+00 4/4 0/0 0/0 .rodata m__22daAlinkHIO_wlAtLand_c0 */
-SECTION_RODATA u8 const daAlinkHIO_wlAtLand_c0::m[64] = {
- 0x00, 0x13, 0x00, 0x00, 0x3F, 0x66, 0x66, 0x66, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00,
- 0x40, 0x00, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x40, 0x40, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x3F, 0x8C, 0xCC, 0xCD,
- 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00,
+daAlinkHIO_wlAtLand_c1 const daAlinkHIO_wlAtLand_c0::m = {
+ {19, 0.9f, 0.0f, 2.0f, 2.0f},
+ {14, 1.0f, 0.0f, 3.0f, 1.0f},
+ {19, 1.1f, 0.0f, 2.0f, 1.0f},
+ 2.0f,
};
-COMPILER_STRIP_GATE(0x8038F618, &daAlinkHIO_wlAtLand_c0::m);
/* 8038F658-8038F6F4 01BCB8 009C+00 6/7 0/0 0/0 .rodata m__22daAlinkHIO_wlAtDown_c0 */
SECTION_RODATA u8 const daAlinkHIO_wlAtDown_c0::m[156] = {
@@ -6257,15 +6269,17 @@ SECTION_RODATA u8 const daAlinkHIO_wlAtDown_c0::m[156] = {
COMPILER_STRIP_GATE(0x8038F658, &daAlinkHIO_wlAtDown_c0::m);
/* 8038F6F4-8038F748 01BD54 0054+00 6/6 0/0 0/0 .rodata m__22daAlinkHIO_wlAtLock_c0 */
-SECTION_RODATA u8 const daAlinkHIO_wlAtLock_c0::m[84] = {
- 0x00, 0x06, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40,
- 0x00, 0x00, 0x41, 0x70, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x41, 0xA0, 0x00, 0x00, 0x00, 0x78,
- 0x00, 0x00, 0x42, 0xC8, 0x00, 0x00, 0x44, 0x09, 0x80, 0x00, 0x41, 0xC8, 0x00, 0x00,
- 0x42, 0xAA, 0x00, 0x00, 0x42, 0xA0, 0x00, 0x00, 0x42, 0x70, 0x00, 0x00, 0x42, 0xF0,
- 0x00, 0x00, 0xC1, 0x00, 0x00, 0x00, 0x44, 0x2F, 0x00, 0x00, 0x44, 0x7A, 0x00, 0x00,
+daAlinkHIO_wlAtLock_c1 const daAlinkHIO_wlAtLock_c0::m = {
+ {6, 3.0f, 0.0f, 3.0f, 15.0f},
+ {6, 2.0f, 0.0f, 2.0f, 20.0f},
+ {120, 100.0f, 550.0f, 25.0f, 85.0f},
+ 80.0f,
+ 60.0f,
+ 120.0f,
+ -8.0f,
+ 700.0f,
+ 1000.0f,
};
-COMPILER_STRIP_GATE(0x8038F6F4, &daAlinkHIO_wlAtLock_c0::m);
/* 8038F748-8038F7A4 01BDA8 005C+00 5/5 0/0 0/0 .rodata m__22daAlinkHIO_wlAtBite_c0 */
SECTION_RODATA u8 const daAlinkHIO_wlAtBite_c0::m[92] = {
@@ -6279,84 +6293,95 @@ SECTION_RODATA u8 const daAlinkHIO_wlAtBite_c0::m[92] = {
COMPILER_STRIP_GATE(0x8038F748, &daAlinkHIO_wlAtBite_c0::m);
/* 8038F7A4-8038F7DC 01BE04 0038+00 7/10 0/0 0/0 .rodata m__22daAlinkHIO_wlAttack_c0 */
-SECTION_RODATA u8 const daAlinkHIO_wlAttack_c0::m[56] = {
- 0x00, 0x3B, 0x00, 0x00, 0x3F, 0x99, 0x99, 0x9A, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00,
- 0x00, 0x00, 0x40, 0xA0, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x05, 0x42, 0xC8, 0x00, 0x00,
- 0x41, 0x20, 0x00, 0x00, 0x40, 0xA0, 0x00, 0x00, 0x43, 0x66, 0x00, 0x00, 0x41, 0x20,
- 0x00, 0x00, 0x41, 0x40, 0x00, 0x00, 0x42, 0x0C, 0x00, 0x00, 0x41, 0xF0, 0x00, 0x00,
-};
-COMPILER_STRIP_GATE(0x8038F7A4, &daAlinkHIO_wlAttack_c0::m);
+daAlinkHIO_wlAttack_c1 const daAlinkHIO_wlAttack_c0::m = {
+ {59, 1.2f, 0.0f, 2.0f, 5.0f}, 15, 5, 100.0f, 10.0f, 5.0f, 230.0f, 10.0f, 12.0f, 35.0f, 30.0f};
/* 8038F7DC-8038F858 01BE3C 007C+00 5/5 0/0 0/0 .rodata m__21daAlinkHIO_wlPoint_c0 */
-SECTION_RODATA u8 const daAlinkHIO_wlPoint_c0::m[124] = {
- 0x00, 0x06, 0x00, 0x00, 0x3F, 0x66, 0x66, 0x66, 0x40, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00,
- 0x40, 0xE0, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x40, 0x40, 0x00, 0x00, 0x41, 0x00, 0x00, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x3F, 0x40, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x40, 0xA0, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00,
- 0x00, 0x14, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x40, 0xA0, 0x00, 0x00,
- 0x42, 0x48, 0x00, 0x00, 0x42, 0x34, 0x00, 0x00, 0x42, 0x82, 0x00, 0x00, 0x41, 0x70, 0x00, 0x00,
- 0x3F, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, 0x3E, 0x4C, 0xCC, 0xCD,
-};
-COMPILER_STRIP_GATE(0x8038F7DC, &daAlinkHIO_wlPoint_c0::m);
+daAlinkHIO_wlPoint_c1 const daAlinkHIO_wlPoint_c0::m = {
+ {6, 0.9f, 2.0f, 3.0f, 7.0f},
+ {7, 1.0f, 0.0f, 3.0f, 8.0f},
+ {11, 0.75f, 0.0f, 3.0f, 5.0f},
+ {14, 1.0f, 0.0f, 3.0f, 3.0f},
+ {20, 1.0f, 3.0f, 5.0f, 50.0f},
+ 45.0f,
+ 65.0f,
+ 15.0f,
+ 0.5f,
+ 0.5f,
+ 0.2f,
+};
/* 8038F858-8038F8B4 01BEB8 005C+00 6/6 0/0 0/0 .rodata m__21daAlinkHIO_wlChain_c0 */
-SECTION_RODATA u8 const daAlinkHIO_wlChain_c0::m[92] = {
- 0x00, 0x27, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00,
- 0x42, 0x20, 0x00, 0x00, 0x00, 0x51, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x40, 0x40, 0x00, 0x00, 0x42, 0xA4, 0x00, 0x00, 0x00, 0x2F, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0x40, 0x00, 0x00, 0x00, 0x14, 0x00, 0x05,
- 0x3F, 0x80, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00,
- 0x41, 0x71, 0x99, 0x9A, 0x3F, 0x80, 0x00, 0x00, 0x40, 0xA0, 0x00, 0x00,
+daAlinkHIO_wlChain_c1 const daAlinkHIO_wlChain_c0::m = {
+ {39, 1.0f, 0.0f, 3.0f, 40.0f},
+ {81, 1.0f, 0.0f, 3.0f, 82.0f},
+ {47, 1.0f, 0.0f, 0.0f, 48.0f},
+ 20,
+ 5,
+ 1.0f,
+ 3.0f,
+ 1.0f,
+ 3.0f,
+ 15.1f,
+ 1.0f,
+ 5.0f,
};
-COMPILER_STRIP_GATE(0x8038F858, &daAlinkHIO_wlChain_c0::m);
/* 8038F8B4-8038F95C 01BF14 00A8+00 16/24 0/0 0/0 .rodata m__20daAlinkHIO_wlSwim_c0 */
-SECTION_RODATA u8 const daAlinkHIO_wlSwim_c0::m[168] = {
- 0x00, 0x19, 0x00, 0x00, 0x3F, 0x66, 0x66, 0x66, 0x00, 0x00, 0x00, 0x00, 0x40, 0xA0, 0x00, 0x00,
- 0xBF, 0x80, 0x00, 0x00, 0x00, 0x2D, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x40, 0x40, 0x00, 0x00, 0x41, 0xA0, 0x00, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x3F, 0x8C, 0xCC, 0xCD,
- 0x00, 0x00, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x42, 0x00, 0x00, 0x00, 0x00, 0x05, 0x03, 0xE8,
- 0x06, 0x40, 0x00, 0x05, 0x09, 0xC4, 0x04, 0x00, 0x42, 0xB4, 0x00, 0x00, 0x42, 0x48, 0x00, 0x00,
- 0x41, 0xA0, 0x00, 0x00, 0x3E, 0xB3, 0x33, 0x33, 0xC1, 0x20, 0x00, 0x00, 0x41, 0x20, 0x00, 0x00,
- 0x3F, 0xC0, 0x00, 0x00, 0x3F, 0xB3, 0x33, 0x33, 0x41, 0x20, 0x00, 0x00, 0x40, 0x60, 0x00, 0x00,
- 0x3F, 0x00, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x00, 0x40, 0xA0, 0x00, 0x00, 0x42, 0x16, 0x00, 0x00,
- 0x41, 0x10, 0x00, 0x00, 0x3E, 0x80, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x3E, 0xCC, 0xCC, 0xCD,
- 0x3F, 0x99, 0x99, 0x9A, 0xC2, 0x16, 0x00, 0x00, 0x41, 0x00, 0x00, 0x00, 0x3E, 0x4C, 0xCC, 0xCD,
- 0xC0, 0xE0, 0x00, 0x00, 0x40, 0xE0, 0x00, 0x00,
-};
-COMPILER_STRIP_GATE(0x8038F8B4, &daAlinkHIO_wlSwim_c0::m);
+daAlinkHIO_wlSwim_c1 const daAlinkHIO_wlSwim_c0::m = {
+ {25, 0.9f, 0.0f, 5.0f, -1.0f},
+ {45, 1.0f, 0.0f, 3.0f, 20.0f},
+ {28, 1.1f, 0.0f, 1.0f, 32.0f},
+ 5,
+ 1000,
+ 1600,
+ 5,
+ 2500,
+ 1024,
+ 90.0f,
+ 50.0f,
+ 20.0f,
+ 0.35f,
+ -10.0f,
+ 10.0f,
+ 1.5f,
+ 1.4f,
+ 10.0f,
+ 3.5f,
+ 0.5f,
+ 1.5f,
+ 5.0f,
+ 37.5f,
+ 9.0f,
+ 0.25f,
+ 1.0f,
+ 0.4f,
+ 1.2f,
+ -37.5f,
+ 8.0f,
+ 0.2f,
+ -7.0f,
+ 7.0f,
+};
/* 8038F95C-8038F9C0 01BFBC 0064+00 6/6 0/0 0/0 .rodata m__20daAlinkHIO_wlGrab_c0 */
-SECTION_RODATA u8 const daAlinkHIO_wlGrab_c0::m[100] = {
- 0x00, 0x14, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00,
- 0x00, 0x41, 0x70, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0xBF, 0xA6, 0x66, 0x66, 0x00, 0x00,
- 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x40, 0xA0, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x3F,
- 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x41, 0x70, 0x00, 0x00,
- 0x00, 0x0E, 0x00, 0x00, 0xBF, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00,
- 0x00, 0xBF, 0x80, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x3F, 0xA6, 0x66, 0x66, 0x40, 0x80,
- 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x41, 0x70, 0x00, 0x00,
+daAlinkHIO_wlGrab_c1 const daAlinkHIO_wlGrab_c0::m = {
+ {20, 1.5f, 0.0f, 3.0f, 15.0f}, {20, -1.3f, 0.0f, 3.0f, 5.0f}, {14, 1.0f, 0.0f, 3.0f, 15.0f},
+ {14, -1.0f, 0.0f, 3.0f, -1.0f}, {19, 1.3f, 4.0f, 3.0f, 15.0f},
};
-COMPILER_STRIP_GATE(0x8038F95C, &daAlinkHIO_wlGrab_c0::m);
/* 8038F9C0-8038F9F8 01C020 0038+00 0/0 0/0 0/0 .rodata m__20daAlinkHIO_wlBall_c0 */
#pragma push
#pragma force_active on
-SECTION_RODATA u8 const daAlinkHIO_wlBall_c0::m[56] = {
- 0x00, 0x40, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40,
- 0x00, 0x00, 0x42, 0x0C, 0x00, 0x00, 0x00, 0x36, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x42, 0x5C, 0x00, 0x00, 0x00, 0x3C,
- 0x00, 0x00, 0xC0, 0xA0, 0x00, 0x00, 0x42, 0x70, 0x00, 0x00, 0x41, 0xA0, 0x00, 0x00,
+daAlinkHIO_wlBall_c1 const daAlinkHIO_wlBall_c0::m = {
+ {64, 1.0f, 0.0f, 3.0f, 35.0f}, {54, 1.0f, 0.0f, 3.0f, 55.0f}, 60, -5.0f, 60.0f, 20.0f,
};
-COMPILER_STRIP_GATE(0x8038F9C0, &daAlinkHIO_wlBall_c0::m);
#pragma pop
/* 8038F9F8-8038FA10 01C058 0018+00 5/6 0/0 0/0 .rodata m__18daAlinkHIO_wolf_c0 */
-SECTION_RODATA u8 const daAlinkHIO_wolf_c0::m[24] = {
- 0x32, 0xC8, 0xD8, 0xF0, 0x1F, 0x40, 0x0F, 0xA0, 0xF8, 0x30, 0x1F, 0x40,
- 0x00, 0x96, 0x00, 0x05, 0x00, 0x23, 0x00, 0x3C, 0x3F, 0x33, 0x33, 0x33,
+daAlinkHIO_wolf_c1 const daAlinkHIO_wolf_c0::m = {
+ 13000, -10000, 8000, 4000, -2000, 8000, 150, 5, 35, 60, 0.7f,
};
-COMPILER_STRIP_GATE(0x8038F9F8, &daAlinkHIO_wolf_c0::m);
/* 800A142C-800A1AEC 09BD6C 06C0+00 1/1 0/0 0/0 .text getNeckAimAngle__9daAlink_cFP4cXyzPsPsPsPs
*/
@@ -6430,7 +6455,7 @@ asm void daAlink_c::commonLineCheck(cXyz* param_0, cXyz* param_1) {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::getMoveBGActorName(cBgS_PolyInfo& param_0, int param_1) {
+asm s16 daAlink_c::getMoveBGActorName(cBgS_PolyInfo& param_0, int param_1) {
nofralloc
#include "asm/d/a/d_a_alink/getMoveBGActorName__9daAlink_cFR13cBgS_PolyInfoi.s"
}
@@ -6722,619 +6747,500 @@ COMPILER_STRIP_GATE(0x8038FC38, &daAlink_c::m_mainBckFishing);
#pragma pop
/* 8038FCA8-80391010 01C308 1368+00 3/4 0/0 0/0 .rodata m_anmDataTable__9daAlink_c */
-SECTION_RODATA u8 const daAlink_c::m_anmDataTable[4968] = {
- 0x00, 0x25, 0x00, 0x24, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x00, 0x23, 0x00, 0x22,
- 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x00, 0x12, 0x00, 0x12, 0xFE, 0xFE, 0x00, 0x00,
- 0x00, 0xE8, 0x00, 0x00, 0x00, 0x10, 0x00, 0x10, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00,
- 0x00, 0x21, 0x00, 0x1F, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x1D,
- 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x00, 0x3C, 0x00, 0x3B, 0x04, 0x0A, 0x00, 0x00,
- 0x00, 0xE8, 0x00, 0x00, 0x00, 0x2C, 0x00, 0x2B, 0x04, 0x0A, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00,
- 0x00, 0x3E, 0x00, 0x3D, 0x04, 0x0A, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x00, 0x2E, 0x00, 0x2D,
- 0x04, 0x0A, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x00, 0x30, 0x00, 0x2F, 0x04, 0x0A, 0x00, 0x00,
- 0x00, 0xE8, 0x00, 0x00, 0x00, 0x28, 0x00, 0x27, 0x04, 0x0A, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00,
- 0x00, 0x32, 0x00, 0x31, 0x04, 0x0A, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x00, 0x2A, 0x00, 0x29,
- 0x04, 0x0A, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x02, 0x74, 0x02, 0x74, 0xFE, 0xFE, 0x00, 0x00,
- 0x00, 0xE8, 0x00, 0x00, 0x00, 0x20, 0x00, 0x1A, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x1A, 0x00, 0x0E, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x00, 0x1C, 0x00, 0x0E,
- 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x02, 0x77, 0x02, 0x77, 0x04, 0x0A, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0xCD, 0x00, 0xC5, 0x04, 0x0A, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00,
- 0x02, 0x43, 0x02, 0x43, 0xFE, 0xFE, 0x00, 0x00, 0x01, 0x59, 0x00, 0x00, 0x02, 0x33, 0x02, 0x33,
- 0x04, 0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x34, 0x02, 0x34, 0x04, 0x0A, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x02, 0x33, 0x02, 0x5C, 0x04, 0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x02, 0x34, 0x02, 0x5C, 0x04, 0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x6A, 0x02, 0x6A,
- 0x04, 0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x56, 0x02, 0x56, 0x01, 0x06, 0x00, 0x00,
- 0x00, 0xE8, 0x00, 0x00, 0x02, 0x57, 0x02, 0x57, 0x01, 0x06, 0x00, 0x00, 0x01, 0x5F, 0x00, 0x00,
- 0x00, 0xC6, 0x00, 0xC6, 0x01, 0x06, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x00, 0x36, 0x00, 0x36,
- 0xFE, 0xFE, 0x00, 0x00, 0x01, 0x48, 0x00, 0x00, 0x00, 0x38, 0x00, 0x38, 0xFE, 0xFE, 0x00, 0x00,
- 0x01, 0x48, 0x00, 0x00, 0x00, 0x35, 0x00, 0x35, 0x01, 0x06, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00,
- 0x00, 0x37, 0x00, 0x37, 0x01, 0x06, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x00, 0x34, 0x00, 0x34,
- 0xFE, 0xFE, 0x00, 0x00, 0x01, 0x48, 0x00, 0x00, 0x00, 0x33, 0x00, 0x33, 0x01, 0x06, 0x00, 0x00,
- 0x00, 0xE8, 0x00, 0x00, 0x02, 0x07, 0x02, 0x07, 0xFE, 0xFE, 0x00, 0x00, 0x01, 0x48, 0x00, 0x00,
- 0x02, 0x09, 0x02, 0x09, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x02, 0x08, 0x02, 0x08,
- 0x01, 0x06, 0x00, 0x26, 0x01, 0x4F, 0x00, 0x00, 0x02, 0x06, 0x02, 0x06, 0x04, 0x0A, 0x00, 0x00,
- 0x01, 0x48, 0x00, 0x00, 0x02, 0x05, 0x02, 0x05, 0x04, 0x0A, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00,
- 0x02, 0x2F, 0x02, 0x2F, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x00, 0x7B, 0x00, 0x7B,
- 0xFE, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7E, 0x00, 0x7E, 0xFE, 0x06, 0x00, 0x00,
- 0x00, 0xE8, 0x00, 0x00, 0x00, 0x13, 0x00, 0x13, 0xFE, 0x06, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00,
- 0x00, 0x15, 0x00, 0x15, 0xFE, 0x06, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x7C,
- 0xFE, 0x06, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x00, 0x17, 0x00, 0x17, 0xFE, 0x06, 0x00, 0x00,
- 0x00, 0xE8, 0x00, 0x00, 0x00, 0x18, 0x00, 0x18, 0xFE, 0x06, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00,
- 0x00, 0x14, 0x00, 0x14, 0x01, 0x06, 0x00, 0x7D, 0x00, 0xE9, 0x00, 0x00, 0x01, 0xA5, 0x01, 0xA5,
- 0xFE, 0xFE, 0x00, 0x00, 0x01, 0x47, 0x00, 0x00, 0x01, 0xA3, 0x01, 0xA3, 0xFE, 0xFE, 0x00, 0x00,
- 0x01, 0x47, 0x00, 0x00, 0x01, 0xA4, 0x01, 0xA4, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00,
- 0x01, 0xB4, 0x01, 0xB4, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x01, 0xB5, 0x01, 0xB5,
- 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x02, 0x69, 0x02, 0x69, 0xFE, 0xFE, 0x00, 0x00,
- 0x00, 0xDF, 0x00, 0x00, 0x01, 0xF7, 0x01, 0xF7, 0xFE, 0xFE, 0x00, 0x0A, 0x01, 0x4D, 0x00, 0x00,
- 0x01, 0xF6, 0x01, 0xF6, 0xFE, 0xFE, 0x00, 0x04, 0x00, 0xE8, 0x00, 0x00, 0x01, 0xF5, 0x01, 0xF5,
- 0xFE, 0xFE, 0x00, 0x04, 0x00, 0xE8, 0x00, 0x00, 0x01, 0xF4, 0x01, 0xF4, 0x00, 0x05, 0x00, 0x0B,
- 0x01, 0x4C, 0x00, 0x00, 0x01, 0xF3, 0x01, 0xF3, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00,
- 0x01, 0xF2, 0x01, 0xF2, 0x00, 0x05, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x01, 0xFE, 0x01, 0xFE,
- 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x01, 0xFF, 0x01, 0xFF, 0xFE, 0xFE, 0x00, 0x00,
- 0x00, 0xDF, 0x00, 0x00, 0x01, 0xFD, 0x01, 0xFD, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00,
- 0x00, 0xE1, 0x00, 0xE1, 0x04, 0x0A, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x00, 0xE2, 0x00, 0xE2,
- 0x04, 0x0A, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x02, 0x35, 0x02, 0x35, 0x04, 0x05, 0x00, 0x00,
- 0x00, 0xE8, 0x00, 0x00, 0x02, 0x36, 0x02, 0x36, 0x04, 0x05, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00,
- 0x02, 0x32, 0x02, 0x32, 0x04, 0x05, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x01, 0xA2, 0x01, 0xA2,
- 0x04, 0x05, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x01, 0xA0, 0x01, 0xA0, 0x04, 0x05, 0x00, 0x00,
- 0x00, 0xE8, 0x00, 0x00, 0x01, 0xA1, 0x01, 0xA1, 0x04, 0x05, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00,
- 0x02, 0x66, 0x02, 0x66, 0x04, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x75, 0x02, 0x75,
- 0x04, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x76, 0x02, 0x76, 0x04, 0x05, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0xCA, 0x00, 0xCA, 0x04, 0x05, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00,
- 0x00, 0xCB, 0x00, 0xCB, 0x04, 0x05, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x03, 0x0D, 0x02, 0x66,
- 0x04, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xDD, 0x00, 0xDD, 0x04, 0x05, 0x00, 0x00,
- 0x01, 0x02, 0x00, 0x00, 0x01, 0xB3, 0x01, 0xB3, 0x04, 0x05, 0x00, 0x00, 0x01, 0x05, 0x00, 0x00,
- 0x00, 0x95, 0x00, 0x95, 0x64, 0x05, 0x00, 0x24, 0x01, 0x10, 0x00, 0x00, 0x02, 0x38, 0x02, 0x38,
- 0x04, 0x05, 0x00, 0x37, 0x01, 0x52, 0x00, 0x00, 0x02, 0x39, 0x02, 0x39, 0x04, 0x05, 0x00, 0x38,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0xD6, 0x00, 0xD6, 0x04, 0x0A, 0x00, 0x58, 0x01, 0x2C, 0x00, 0x00,
- 0x02, 0x4B, 0x02, 0x4B, 0x04, 0x05, 0x00, 0x25, 0x00, 0x00, 0x00, 0x00, 0x02, 0x65, 0x02, 0x65,
- 0x04, 0x05, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x02, 0x30, 0x02, 0x30, 0x04, 0x05, 0x00, 0x6D,
- 0x01, 0x50, 0x00, 0x00, 0x02, 0x31, 0x02, 0x31, 0x04, 0x05, 0x00, 0x6D, 0x01, 0x50, 0x00, 0x00,
- 0x01, 0x75, 0x01, 0x75, 0x04, 0x05, 0x00, 0x6E, 0x01, 0x41, 0x00, 0x00, 0x01, 0x76, 0x01, 0x76,
- 0x04, 0x05, 0x00, 0x6E, 0x01, 0x41, 0x00, 0x00, 0x02, 0x4C, 0x02, 0x4C, 0x04, 0x05, 0x00, 0x72,
- 0x00, 0x00, 0x00, 0x00, 0x02, 0x4D, 0x02, 0x4D, 0x04, 0x05, 0x00, 0x73, 0x00, 0x00, 0x00, 0x00,
- 0x02, 0x00, 0x02, 0x00, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x02, 0x01, 0x02, 0x01,
- 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x00, 0xE3, 0x00, 0xE3, 0x04, 0x0A, 0x00, 0x00,
- 0x00, 0xDF, 0x00, 0x00, 0x00, 0xE4, 0x00, 0xE4, 0x04, 0x0A, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00,
- 0x02, 0x70, 0x02, 0x70, 0xFE, 0xFE, 0x00, 0x10, 0x01, 0x65, 0x00, 0x00, 0x02, 0x6F, 0x02, 0x6F,
- 0x04, 0x05, 0x00, 0x11, 0x01, 0x64, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x7F, 0x64, 0x06, 0x00, 0x2E,
- 0x01, 0x03, 0x00, 0x00, 0x00, 0x99, 0x00, 0x99, 0x00, 0x06, 0x00, 0x2F, 0x01, 0x13, 0x00, 0x00,
- 0x00, 0x9A, 0x00, 0x9A, 0x00, 0x06, 0x00, 0x30, 0x01, 0x14, 0x00, 0x00, 0x00, 0x8F, 0x00, 0x8F,
- 0x64, 0x06, 0x00, 0x31, 0x01, 0x0B, 0x00, 0x00, 0x00, 0x90, 0x00, 0x90, 0x64, 0x06, 0x00, 0x31,
- 0x01, 0x0B, 0x00, 0x00, 0x00, 0x84, 0x00, 0x84, 0x64, 0x06, 0x00, 0x32, 0x01, 0x06, 0x00, 0x00,
- 0x00, 0x85, 0x00, 0x85, 0x64, 0x06, 0x00, 0x33, 0x01, 0x07, 0x00, 0x00, 0x00, 0x86, 0x00, 0x86,
- 0x64, 0x05, 0x00, 0x00, 0x01, 0x05, 0x00, 0x00, 0x00, 0x8A, 0x00, 0x8A, 0x00, 0x05, 0x00, 0x00,
- 0x00, 0xDF, 0x00, 0x00, 0x00, 0x89, 0x00, 0x89, 0x64, 0x05, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00,
- 0x00, 0x8B, 0x00, 0x8B, 0x64, 0x05, 0x00, 0x34, 0x01, 0x08, 0x00, 0x00, 0x00, 0x88, 0x00, 0x88,
- 0x00, 0x05, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x00, 0x87, 0x00, 0x87, 0x64, 0x05, 0x00, 0x00,
- 0x00, 0xDF, 0x00, 0x00, 0x00, 0x9B, 0x00, 0x9B, 0x00, 0x06, 0x00, 0x59, 0x01, 0x15, 0x00, 0x00,
- 0x00, 0x9C, 0x00, 0x9C, 0x00, 0x06, 0x00, 0x59, 0x01, 0x15, 0x00, 0x00, 0x00, 0x98, 0x00, 0x98,
- 0x64, 0x06, 0x00, 0x3C, 0x01, 0x12, 0x00, 0x00, 0x00, 0x97, 0x00, 0x97, 0x64, 0x06, 0x00, 0x3D,
- 0x01, 0x11, 0x00, 0x00, 0x00, 0x9F, 0x00, 0x9F, 0x64, 0x06, 0x00, 0x3A, 0x01, 0x18, 0x00, 0x00,
- 0x00, 0x9E, 0x00, 0x9E, 0x64, 0x06, 0x00, 0x3B, 0x01, 0x17, 0x00, 0x00, 0x00, 0xA4, 0x00, 0xA4,
- 0x00, 0x06, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x00, 0xA5, 0x00, 0xA5, 0x64, 0x06, 0x00, 0x00,
- 0x00, 0xE8, 0x00, 0x00, 0x00, 0xA6, 0x00, 0xA6, 0x64, 0x06, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00,
- 0x00, 0xAA, 0x00, 0xAA, 0x00, 0x05, 0x00, 0x00, 0x01, 0x05, 0x00, 0x00, 0x00, 0xA7, 0x00, 0xA7,
- 0x00, 0x05, 0x00, 0x5A, 0x01, 0x1D, 0x00, 0x00, 0x00, 0xA8, 0x00, 0xA8, 0x00, 0x05, 0x00, 0x00,
- 0x01, 0x1E, 0x00, 0x00, 0x00, 0xA9, 0x00, 0xA9, 0x64, 0x05, 0x00, 0x12, 0x01, 0x1F, 0x00, 0x00,
- 0x00, 0x8E, 0x00, 0x8E, 0x00, 0x06, 0x00, 0x7F, 0x01, 0x0A, 0x00, 0x00, 0x00, 0x8C, 0x00, 0x8C,
- 0x00, 0x06, 0x00, 0x80, 0x01, 0x09, 0x00, 0x00, 0x00, 0x8D, 0x00, 0x8D, 0x00, 0x06, 0x00, 0x00,
- 0x00, 0xE8, 0x00, 0x00, 0x00, 0xAE, 0x00, 0xAE, 0x01, 0x06, 0x00, 0x27, 0x00, 0xEA, 0x00, 0x00,
- 0x00, 0xAC, 0x00, 0xAC, 0x01, 0x06, 0x00, 0x27, 0x00, 0xEA, 0x00, 0x00, 0x00, 0xBD, 0x00, 0xBD,
- 0x01, 0x06, 0x00, 0x27, 0x00, 0xEA, 0x00, 0x00, 0x00, 0xBE, 0x00, 0xBE, 0x01, 0x06, 0x00, 0x27,
- 0x00, 0xEA, 0x00, 0x00, 0x00, 0xB2, 0x00, 0xB2, 0xFE, 0xFE, 0x00, 0x28, 0x00, 0xF8, 0x00, 0x00,
- 0x00, 0xAF, 0x00, 0xAF, 0xFE, 0xFE, 0x00, 0x28, 0x00, 0xF8, 0x00, 0x00, 0x00, 0xB4, 0x00, 0xB4,
- 0xFE, 0xFE, 0x00, 0x28, 0x00, 0xF8, 0x00, 0x00, 0x00, 0xB6, 0x00, 0xB6, 0xFE, 0xFE, 0x00, 0x28,
- 0x00, 0xF8, 0x00, 0x00, 0x00, 0xB3, 0x00, 0xB3, 0xFE, 0xFE, 0x00, 0x2A, 0x01, 0x24, 0x00, 0x00,
- 0x00, 0xB0, 0x00, 0xB0, 0xFE, 0xFE, 0x00, 0x2B, 0x01, 0x22, 0x00, 0x00, 0x00, 0xB5, 0x00, 0xB5,
- 0xFE, 0xFE, 0x00, 0x2C, 0x01, 0x25, 0x00, 0x00, 0x00, 0xB7, 0x00, 0xB7, 0xFE, 0xFE, 0x00, 0x2C,
- 0x01, 0x25, 0x00, 0x00, 0x00, 0xAB, 0x00, 0xAB, 0x01, 0x06, 0x00, 0x27, 0x00, 0xEA, 0x00, 0x00,
- 0x01, 0xAF, 0x01, 0xAF, 0x01, 0x06, 0x00, 0x27, 0x00, 0xEA, 0x00, 0x00, 0x01, 0xB0, 0x01, 0xB0,
- 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x01, 0x44, 0x01, 0x44, 0x00, 0x06, 0x00, 0x06,
- 0x01, 0x31, 0x00, 0x00, 0x01, 0x45, 0x01, 0x45, 0x00, 0x0A, 0x00, 0x07, 0x01, 0x32, 0x00, 0x00,
- 0x02, 0x37, 0x02, 0x37, 0x04, 0x0A, 0x00, 0x1C, 0x01, 0x51, 0x00, 0x00, 0x02, 0x4F, 0x02, 0x4F,
- 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x02, 0x50, 0x02, 0x50, 0xFE, 0xFE, 0x00, 0x00,
- 0x00, 0xDF, 0x00, 0x00, 0x02, 0x51, 0x02, 0x51, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00,
- 0x02, 0x52, 0x02, 0x52, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x01, 0x74, 0x01, 0x74,
- 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x01, 0x7A, 0x01, 0x7A, 0xFE, 0xFE, 0x00, 0x00,
- 0x00, 0xDF, 0x00, 0x00, 0x01, 0x78, 0x01, 0x78, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00,
- 0x01, 0x79, 0x01, 0x79, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x01, 0xAE, 0x01, 0xAE,
- 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x01, 0xAC, 0x01, 0xAC, 0xFE, 0xFE, 0x00, 0x00,
- 0x00, 0xDF, 0x00, 0x00, 0x01, 0xAD, 0x01, 0xAD, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00,
- 0x01, 0xA9, 0x01, 0xA9, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x01, 0xA7, 0x01, 0xA7,
- 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x01, 0xA8, 0x01, 0xA8, 0xFE, 0xFE, 0x00, 0x00,
- 0x00, 0xDF, 0x00, 0x00, 0x01, 0xAB, 0x01, 0xAB, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00,
- 0x01, 0xAA, 0x01, 0xAA, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x00, 0x6A, 0x00, 0x6A,
- 0x03, 0x09, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x00, 0x70, 0x00, 0x70, 0x03, 0x09, 0x00, 0x00,
- 0x00, 0xE8, 0x00, 0x00, 0x00, 0x6C, 0x00, 0x6C, 0x03, 0x09, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00,
- 0x00, 0x6D, 0x00, 0x6D, 0x03, 0x09, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x00, 0x6E, 0x00, 0x6E,
- 0x03, 0x09, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x00, 0x6F, 0x00, 0x6F, 0x03, 0x09, 0x00, 0x00,
- 0x00, 0xE8, 0x00, 0x00, 0x00, 0x6B, 0x00, 0x6B, 0x03, 0x09, 0x00, 0x5C, 0x00, 0xFE, 0x00, 0x00,
- 0x02, 0x0F, 0x02, 0x0F, 0x03, 0x09, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x02, 0x10, 0x02, 0x10,
- 0x03, 0x09, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x02, 0x0A, 0x02, 0x0A, 0x03, 0x09, 0x00, 0x00,
- 0x00, 0xE8, 0x00, 0x00, 0x02, 0x0C, 0x02, 0x0C, 0x03, 0x09, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00,
- 0x02, 0x0D, 0x02, 0x0D, 0x03, 0x09, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x02, 0x0E, 0x02, 0x0E,
- 0x03, 0x09, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x02, 0x0B, 0x02, 0x0B, 0x03, 0x09, 0x00, 0x00,
- 0x00, 0xE8, 0x00, 0x00, 0x01, 0x6E, 0x01, 0x6E, 0xFE, 0xFE, 0x00, 0x18, 0x01, 0x39, 0x00, 0x00,
- 0x01, 0x71, 0x01, 0x71, 0xFE, 0xFE, 0x00, 0x19, 0x01, 0x3C, 0x00, 0x00, 0x01, 0x70, 0x01, 0x70,
- 0xFE, 0xFE, 0x00, 0x00, 0x01, 0x3B, 0x00, 0x00, 0x01, 0x7B, 0x01, 0x7B, 0xFE, 0xFE, 0x00, 0x1A,
- 0x01, 0x42, 0x00, 0x00, 0x01, 0x6D, 0x01, 0x6D, 0xFE, 0xFE, 0x00, 0x1B, 0x01, 0x38, 0x00, 0x00,
- 0x01, 0x6F, 0x01, 0x6F, 0xFE, 0xFE, 0x00, 0x00, 0x01, 0x3A, 0x00, 0x00, 0x00, 0x5F, 0x00, 0x5F,
- 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x02, 0x5C, 0x02, 0x5C, 0x04, 0x0A, 0x00, 0x01,
- 0x01, 0x60, 0x00, 0x00, 0x02, 0x54, 0x02, 0x54, 0x04, 0x0A, 0x00, 0x01, 0x01, 0x5D, 0x00, 0x00,
- 0x02, 0x49, 0x02, 0x49, 0x04, 0x0A, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x02, 0x6C, 0x02, 0x6C,
- 0x01, 0x06, 0x00, 0x0C, 0x01, 0x63, 0x00, 0x00, 0x00, 0x9D, 0x00, 0x9D, 0x01, 0x06, 0x00, 0x0D,
- 0x01, 0x16, 0x00, 0x00, 0x00, 0x52, 0x00, 0x52, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00,
- 0x02, 0x78, 0x02, 0x78, 0x01, 0x06, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x02, 0x2D, 0x02, 0x2D,
- 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x02, 0x2B, 0x02, 0x2B, 0xFE, 0xFE, 0x00, 0x00,
- 0x00, 0xDF, 0x00, 0x00, 0x02, 0x2E, 0x02, 0x2E, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00,
- 0x02, 0x2C, 0x02, 0x2C, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x02, 0x3E, 0x02, 0x3E,
- 0xFE, 0xFE, 0x00, 0x15, 0x01, 0x56, 0x00, 0x00, 0x02, 0x42, 0x02, 0x42, 0xFE, 0xFE, 0x00, 0x16,
- 0x01, 0x58, 0x00, 0x00, 0x00, 0x39, 0x00, 0x39, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00,
- 0x00, 0x3A, 0x00, 0x3A, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x00, 0x11, 0x00, 0x11,
- 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x02, 0x3A, 0x02, 0x3A, 0xFE, 0xFE, 0x00, 0x03,
- 0x00, 0xE8, 0x00, 0x00, 0x02, 0x3D, 0x02, 0x3D, 0xFE, 0xFE, 0x00, 0x17, 0x01, 0x55, 0x00, 0x00,
- 0x02, 0x41, 0x02, 0x41, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x02, 0x40, 0x02, 0x40,
- 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x00, 0xC1, 0x00, 0xC1, 0x01, 0x06, 0x00, 0x27,
- 0x00, 0xEA, 0x00, 0x00, 0x00, 0xC0, 0x00, 0xC0, 0x01, 0x06, 0x00, 0x27, 0x00, 0xEA, 0x00, 0x00,
- 0x00, 0xC2, 0x00, 0xC2, 0x01, 0x06, 0x00, 0x27, 0x00, 0xEA, 0x00, 0x00, 0x00, 0xC3, 0x00, 0xC3,
- 0x01, 0x06, 0x00, 0x27, 0x00, 0xEA, 0x00, 0x00, 0x00, 0xC4, 0x00, 0xC4, 0x01, 0x06, 0x00, 0x27,
- 0x00, 0xEA, 0x00, 0x00, 0x00, 0x57, 0x00, 0x57, 0xFE, 0xFE, 0x00, 0x4D, 0x00, 0xF7, 0x00, 0x00,
- 0x00, 0x56, 0x00, 0x56, 0xFE, 0xFE, 0x00, 0x4E, 0x00, 0xF6, 0x00, 0x00, 0x00, 0x55, 0x00, 0x55,
- 0xFE, 0xFE, 0x00, 0x4F, 0x00, 0xF5, 0x00, 0x00, 0x01, 0x69, 0x01, 0x69, 0xFE, 0xFE, 0x00, 0x00,
- 0x01, 0x34, 0x00, 0x00, 0x01, 0x6A, 0x01, 0x6A, 0xFE, 0xFE, 0x00, 0x00, 0x01, 0x36, 0x00, 0x00,
- 0x01, 0x6A, 0x02, 0x6A, 0xFE, 0xFE, 0x00, 0x00, 0x01, 0x33, 0x00, 0x00, 0x01, 0x6A, 0x01, 0x7D,
- 0xFE, 0xFE, 0x00, 0x00, 0x01, 0x33, 0x00, 0x00, 0x02, 0x4A, 0x02, 0x4A, 0x04, 0x0A, 0x00, 0x29,
- 0x01, 0x5A, 0x00, 0x00, 0x02, 0x53, 0x02, 0x53, 0xFE, 0xFE, 0x00, 0x00, 0x01, 0x5C, 0x00, 0x00,
- 0x02, 0x6B, 0x02, 0x6B, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x02, 0x5B, 0x02, 0x5A,
- 0xFE, 0x05, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x02, 0x5B, 0x02, 0x5B, 0x00, 0xFE, 0x00, 0x00,
- 0x00, 0xDF, 0x00, 0x00, 0x02, 0x6B, 0x02, 0x15, 0xFE, 0x05, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00,
- 0x02, 0x6B, 0x02, 0x16, 0x00, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x02, 0x6B, 0x02, 0x13,
- 0xFE, 0x05, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x02, 0x6B, 0x02, 0x14, 0x00, 0xFE, 0x00, 0x00,
- 0x00, 0xDF, 0x00, 0x00, 0x02, 0x6B, 0x00, 0x67, 0xFE, 0x05, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00,
- 0x00, 0x5A, 0x00, 0x5A, 0x02, 0xFE, 0x00, 0x00, 0x01, 0x30, 0x00, 0x00, 0x00, 0x5B, 0x00, 0x5B,
- 0x02, 0xFE, 0x00, 0x00, 0x01, 0x30, 0x00, 0x00, 0x00, 0x5C, 0x00, 0x5C, 0x02, 0xFE, 0x00, 0x00,
- 0x00, 0xDF, 0x00, 0x00, 0x00, 0x5E, 0x00, 0x5E, 0x02, 0x05, 0x00, 0x78, 0x00, 0xF9, 0x00, 0x00,
- 0x01, 0xEB, 0x01, 0xEB, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x01, 0xFA, 0x01, 0xFA,
- 0x02, 0x05, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x01, 0xFC, 0x01, 0xFC, 0x02, 0x05, 0x00, 0x00,
- 0x00, 0xDF, 0x00, 0x00, 0x01, 0xB2, 0x01, 0xB2, 0x02, 0x05, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00,
- 0x00, 0xD9, 0x00, 0xD9, 0x04, 0x0A, 0x00, 0x1E, 0x01, 0x2D, 0x00, 0x00, 0x00, 0xDA, 0x00, 0xDA,
- 0x04, 0x0A, 0x00, 0x1F, 0x01, 0x2E, 0x00, 0x00, 0x00, 0xD7, 0x00, 0xD7, 0x03, 0x0A, 0x00, 0x00,
- 0x00, 0xDF, 0x00, 0x00, 0x00, 0xD8, 0x00, 0xD8, 0x03, 0x0A, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00,
- 0x00, 0xDB, 0x00, 0xDB, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x00, 0xDC, 0x00, 0xDC,
- 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x01, 0xEC, 0x01, 0xEC, 0xFE, 0xFE, 0x00, 0x1D,
- 0x00, 0xDF, 0x00, 0x00, 0x02, 0x11, 0x02, 0x11, 0x01, 0x06, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00,
- 0x01, 0xE4, 0x01, 0xE4, 0x01, 0x06, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x01, 0xE5, 0x01, 0xE5,
- 0x01, 0x06, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x02, 0x28, 0x02, 0x28, 0xFE, 0xFE, 0x00, 0x00,
- 0x00, 0xDF, 0x00, 0x00, 0x02, 0x20, 0x02, 0x20, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00,
- 0x02, 0x1F, 0x02, 0x1F, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x02, 0x25, 0x02, 0x25,
- 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x02, 0x23, 0x02, 0x23, 0xFE, 0xFE, 0x00, 0x00,
- 0x00, 0xDF, 0x00, 0x00, 0x02, 0x21, 0x02, 0x21, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00,
- 0x02, 0x22, 0x02, 0x22, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x02, 0x24, 0x02, 0x24,
- 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x02, 0x27, 0x02, 0x27, 0x64, 0xFE, 0x00, 0x00,
- 0x00, 0xDF, 0x00, 0x00, 0x02, 0x26, 0x02, 0x26, 0x64, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00,
- 0x02, 0x12, 0x02, 0x12, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x00, 0x66, 0x00, 0x66,
- 0xFE, 0xFE, 0x00, 0x35, 0x00, 0xFC, 0x00, 0x00, 0x00, 0x69, 0x00, 0x69, 0xFE, 0xFE, 0x00, 0x36,
- 0x00, 0xFD, 0x00, 0x00, 0x02, 0x71, 0x02, 0x71, 0x04, 0x0A, 0x00, 0x00, 0x01, 0x66, 0x00, 0x00,
- 0x00, 0x48, 0x00, 0x48, 0x03, 0xFE, 0x00, 0x3E, 0x00, 0xEE, 0x00, 0x00, 0x00, 0x46, 0x00, 0x46,
- 0x03, 0xFE, 0x00, 0x3F, 0x00, 0xEC, 0x00, 0x00, 0x00, 0x47, 0x00, 0x47, 0x03, 0xFE, 0x00, 0x40,
- 0x00, 0xED, 0x00, 0x00, 0x00, 0x45, 0x00, 0x45, 0x03, 0xFE, 0x00, 0x41, 0x00, 0xEB, 0x00, 0x00,
- 0x00, 0x4B, 0x00, 0x4B, 0x03, 0xFE, 0x00, 0x42, 0x00, 0xF1, 0x00, 0x00, 0x00, 0x4C, 0x00, 0x4C,
- 0x03, 0x05, 0x00, 0x43, 0x00, 0xF2, 0x00, 0x00, 0x00, 0x49, 0x00, 0x49, 0x03, 0x05, 0x00, 0x44,
- 0x00, 0xEF, 0x00, 0x00, 0x00, 0x4E, 0x00, 0x4E, 0x03, 0xFE, 0x00, 0x45, 0x00, 0xF3, 0x00, 0x00,
- 0x00, 0x4F, 0x00, 0x4F, 0x03, 0xFE, 0x00, 0x46, 0x00, 0xF4, 0x00, 0x00, 0x00, 0x4A, 0x00, 0x4A,
- 0x03, 0xFE, 0x00, 0x47, 0x00, 0xF0, 0x00, 0x00, 0x00, 0x4D, 0x00, 0x4D, 0x03, 0xFE, 0x00, 0x00,
- 0x00, 0xDF, 0x00, 0x00, 0x01, 0xB6, 0x01, 0xB6, 0x00, 0x0A, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00,
- 0x01, 0xEF, 0x01, 0xEF, 0x00, 0x09, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x01, 0xED, 0x01, 0xED,
- 0x00, 0x09, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x01, 0xEE, 0x01, 0xEE, 0x00, 0x09, 0x00, 0x00,
- 0x00, 0xDF, 0x00, 0x00, 0x01, 0x73, 0x01, 0x73, 0x02, 0xFE, 0x00, 0x4A, 0x01, 0x3F, 0x00, 0x00,
- 0x01, 0x72, 0x01, 0x72, 0x02, 0xFE, 0x00, 0x4C, 0x01, 0x3E, 0x00, 0x00, 0x00, 0x61, 0x00, 0x61,
- 0x02, 0xFE, 0x00, 0x4B, 0x00, 0xFB, 0x00, 0x00, 0x02, 0x6D, 0x02, 0x6D, 0x02, 0xFE, 0x00, 0x4B,
- 0x00, 0xFB, 0x00, 0x00, 0x02, 0x5D, 0x02, 0x5D, 0x01, 0x06, 0x00, 0x0E, 0x01, 0x63, 0x00, 0x00,
- 0x02, 0x62, 0x02, 0x62, 0x01, 0x06, 0x00, 0x0F, 0x01, 0x61, 0x00, 0x00, 0x01, 0xE3, 0x01, 0xE3,
- 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x00, 0xD4, 0x00, 0xD4, 0x04, 0x0A, 0x00, 0x50,
- 0x01, 0x2A, 0x00, 0x00, 0x00, 0xD5, 0x00, 0xD5, 0x04, 0x0A, 0x00, 0x51, 0x01, 0x2B, 0x00, 0x00,
- 0x02, 0x3B, 0x02, 0x3B, 0xFE, 0xFE, 0x00, 0x52, 0x01, 0x53, 0x00, 0x00, 0x02, 0x3C, 0x02, 0x3C,
- 0xFE, 0xFE, 0x00, 0x53, 0x01, 0x54, 0x00, 0x00, 0x00, 0x72, 0x00, 0x72, 0x03, 0x09, 0x00, 0x00,
- 0x00, 0xFF, 0x00, 0x00, 0x00, 0x74, 0x00, 0x74, 0x03, 0x09, 0x00, 0x55, 0x01, 0x00, 0x00, 0x00,
- 0x00, 0x73, 0x00, 0x73, 0x03, 0x09, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x00, 0x71, 0x00, 0x71,
- 0x03, 0x09, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x00, 0x75, 0x00, 0x75, 0x03, 0x09, 0x00, 0x00,
- 0x00, 0xE8, 0x00, 0x00, 0x00, 0x77, 0x00, 0x77, 0x03, 0x09, 0x00, 0x56, 0x01, 0x01, 0x00, 0x00,
- 0x00, 0x78, 0x00, 0x78, 0x03, 0x09, 0x00, 0x57, 0x01, 0x01, 0x00, 0x00, 0x00, 0x1C, 0x00, 0x79,
- 0x03, 0x09, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x00, 0x7A, 0x00, 0x7A, 0x03, 0x09, 0x00, 0x00,
- 0x00, 0xE8, 0x00, 0x00, 0x00, 0x76, 0x00, 0x76, 0xFE, 0xFE, 0x00, 0x00, 0x01, 0x30, 0x00, 0x00,
- 0x00, 0xDE, 0x00, 0xDE, 0x04, 0x0A, 0x00, 0x54, 0x01, 0x2F, 0x00, 0x00, 0x00, 0xE0, 0x00, 0xE0,
- 0xFE, 0xFE, 0x00, 0x28, 0x00, 0xF8, 0x00, 0x00, 0x00, 0x08, 0x00, 0x08, 0x00, 0x05, 0x00, 0x00,
- 0x00, 0xE8, 0x00, 0x00, 0x02, 0x2A, 0x02, 0x2A, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00,
- 0x02, 0x29, 0x02, 0x29, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x01, 0x8A, 0x01, 0x8A,
- 0x01, 0x06, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x01, 0x8B, 0x01, 0x8B, 0x01, 0x06, 0x00, 0x00,
- 0x00, 0xE8, 0x00, 0x00, 0x01, 0x8C, 0x01, 0x8C, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00,
- 0x01, 0x80, 0x01, 0x80, 0x01, 0x06, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x01, 0x81, 0x01, 0x81,
- 0x01, 0x06, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x01, 0x82, 0x01, 0x82, 0x01, 0x06, 0x00, 0x00,
- 0x00, 0xE8, 0x00, 0x00, 0x01, 0x84, 0x01, 0x84, 0x01, 0x06, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00,
- 0x01, 0x88, 0x01, 0x88, 0x01, 0x06, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x01, 0x89, 0x01, 0x89,
- 0x01, 0x06, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x01, 0x86, 0x01, 0x86, 0x01, 0x06, 0x00, 0x00,
- 0x00, 0xE8, 0x00, 0x00, 0x01, 0x87, 0x01, 0x87, 0x01, 0x06, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00,
- 0x01, 0x83, 0x01, 0x83, 0x01, 0x06, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x01, 0x85, 0x01, 0x85,
- 0x01, 0x06, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x01, 0x8E, 0x01, 0x8E, 0x01, 0x06, 0x00, 0x00,
- 0x00, 0xE8, 0x00, 0x00, 0x01, 0x8F, 0x01, 0x8F, 0x01, 0x06, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00,
- 0x01, 0x90, 0x01, 0x90, 0x01, 0x06, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x01, 0x91, 0x01, 0x91,
- 0x01, 0x06, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x01, 0x94, 0x01, 0x94, 0x01, 0x06, 0x00, 0x00,
- 0x00, 0xE8, 0x00, 0x00, 0x01, 0x95, 0x01, 0x95, 0x01, 0x06, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00,
- 0x01, 0x92, 0x01, 0x92, 0x01, 0x06, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x01, 0x93, 0x01, 0x93,
- 0x01, 0x06, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x01, 0xF8, 0x01, 0xF8, 0xFE, 0xFE, 0x00, 0x00,
- 0x01, 0x4E, 0x00, 0x00, 0x10, 0x2E, 0x10, 0x2E, 0x00, 0x05, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00,
- 0x10, 0x2D, 0x10, 0x2D, 0x00, 0x05, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x10, 0x0A, 0x10, 0x0A,
- 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x10, 0x08, 0x10, 0x08, 0xFE, 0xFE, 0x00, 0x00,
- 0x00, 0xDF, 0x00, 0x00, 0x10, 0x09, 0x10, 0x09, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00,
- 0x10, 0x07, 0x10, 0x07, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x10, 0x21, 0x10, 0x21,
- 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x10, 0x23, 0x10, 0x23, 0xFE, 0xFE, 0x00, 0x00,
- 0x00, 0xDF, 0x00, 0x00, 0x10, 0x22, 0x10, 0x22, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00,
- 0x10, 0x24, 0x10, 0x24, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x10, 0x25, 0x10, 0x25,
- 0xFE, 0xFE, 0x00, 0x5E, 0x10, 0x11, 0x00, 0x00, 0x10, 0x28, 0x10, 0x28, 0xFE, 0xFE, 0x00, 0x00,
- 0x00, 0xDF, 0x00, 0x00, 0x10, 0x29, 0x10, 0x29, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00,
- 0x10, 0x26, 0x10, 0x26, 0xFE, 0xFE, 0x00, 0x5F, 0x10, 0x12, 0x00, 0x00, 0x10, 0x27, 0x10, 0x27,
- 0xFE, 0xFE, 0x00, 0x5F, 0x10, 0x12, 0x00, 0x00, 0x10, 0x2A, 0x10, 0x2A, 0xFE, 0xFE, 0x00, 0x63,
- 0x10, 0x13, 0x00, 0x00, 0x10, 0x19, 0x10, 0x19, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00,
- 0x10, 0x1B, 0x10, 0x1B, 0xFE, 0xFE, 0x00, 0x61, 0x10, 0x0E, 0x00, 0x00, 0x10, 0x1C, 0x10, 0x1C,
- 0xFE, 0xFE, 0x00, 0x62, 0x10, 0x0F, 0x00, 0x00, 0x10, 0x1A, 0x10, 0x1A, 0xFE, 0xFE, 0x00, 0x60,
- 0x10, 0x0D, 0x00, 0x00, 0x10, 0x20, 0x10, 0x20, 0xFE, 0xFE, 0x00, 0x5F, 0x10, 0x12, 0x00, 0x00,
- 0x10, 0x1D, 0x10, 0x1D, 0xFE, 0xFE, 0x00, 0x65, 0x10, 0x10, 0x00, 0x00, 0x10, 0x17, 0x10, 0x17,
- 0xFE, 0xFE, 0x00, 0x64, 0x10, 0x0C, 0x00, 0x00, 0x10, 0x18, 0x10, 0x18, 0xFE, 0xFE, 0x00, 0x64,
- 0x10, 0x0C, 0x00, 0x00, 0x10, 0x2B, 0x10, 0x2B, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00,
- 0x10, 0x2C, 0x10, 0x2C, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x10, 0x15, 0x10, 0x15,
- 0xFE, 0xFE, 0x00, 0x66, 0x10, 0x0B, 0x00, 0x00, 0x10, 0x16, 0x10, 0x16, 0xFE, 0xFE, 0x00, 0x66,
- 0x10, 0x0B, 0x00, 0x00, 0x10, 0x06, 0x10, 0x06, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00,
- 0x10, 0x14, 0x10, 0x14, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x10, 0x1E, 0x10, 0x1E,
- 0x00, 0x05, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x10, 0x1F, 0x10, 0x1F, 0xFE, 0xFE, 0x00, 0x00,
- 0x00, 0xDF, 0x00, 0x00, 0x00, 0xB1, 0x00, 0xB1, 0xFE, 0xFE, 0x00, 0x5D, 0x01, 0x23, 0x00, 0x00,
- 0x01, 0x9C, 0x01, 0x9C, 0xFE, 0x05, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x01, 0x9D, 0x01, 0x9D,
- 0xFE, 0x05, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x01, 0x96, 0x01, 0x96, 0x00, 0x05, 0x00, 0x00,
- 0x00, 0xE8, 0x00, 0x00, 0x01, 0x9B, 0x01, 0x9B, 0x00, 0x05, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00,
- 0x01, 0x9A, 0x01, 0x9A, 0x00, 0x05, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x01, 0x99, 0x01, 0x99,
- 0x00, 0x05, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x01, 0x97, 0x01, 0x97, 0xFE, 0x05, 0x00, 0x00,
- 0x00, 0xE8, 0x00, 0x00, 0x01, 0x98, 0x01, 0x98, 0xFE, 0x05, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00,
- 0x20, 0x0C, 0x20, 0x0C, 0x03, 0x09, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x20, 0x0D, 0x20, 0x0D,
- 0x03, 0x09, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x20, 0x0E, 0x20, 0x0E, 0x03, 0x09, 0x00, 0x00,
- 0x00, 0xE8, 0x00, 0x00, 0x20, 0x0F, 0x20, 0x0F, 0x64, 0xFE, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00,
- 0x20, 0x09, 0x20, 0x09, 0x64, 0x09, 0x00, 0x67, 0x00, 0xE8, 0x00, 0x00, 0x20, 0x0A, 0x20, 0x0A,
- 0x64, 0x09, 0x00, 0x68, 0x00, 0xE8, 0x00, 0x00, 0x20, 0x0B, 0x20, 0x0B, 0x64, 0x0A, 0x00, 0x69,
- 0x20, 0x08, 0x00, 0x00, 0x20, 0x10, 0x20, 0x10, 0x00, 0x05, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00,
- 0x50, 0x0D, 0x50, 0x0D, 0x01, 0x06, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x50, 0x0E, 0x50, 0x0E,
- 0x01, 0x06, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x50, 0x0A, 0x50, 0x0A, 0x03, 0x09, 0x00, 0x00,
- 0x00, 0xE8, 0x00, 0x00, 0x50, 0x0B, 0x50, 0x0B, 0x03, 0x09, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00,
- 0x50, 0x0C, 0x50, 0x0C, 0x64, 0xFE, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x50, 0x07, 0x50, 0x07,
- 0x64, 0x09, 0x00, 0x6A, 0x00, 0xE8, 0x00, 0x00, 0x50, 0x08, 0x50, 0x08, 0x64, 0x09, 0x00, 0x6B,
- 0x00, 0xE8, 0x00, 0x00, 0x50, 0x09, 0x50, 0x09, 0x64, 0x0A, 0x00, 0x6C, 0x50, 0x0F, 0x00, 0x00,
- 0x02, 0x03, 0x02, 0x03, 0x02, 0x05, 0x00, 0x6F, 0x00, 0xE8, 0x00, 0x00, 0x02, 0x04, 0x02, 0x04,
- 0x02, 0x05, 0x00, 0x70, 0x00, 0xE8, 0x00, 0x00, 0x01, 0x6B, 0x01, 0x6B, 0x02, 0x0A, 0x00, 0x71,
- 0x01, 0x35, 0x00, 0x00, 0x02, 0x5E, 0x02, 0x5E, 0x03, 0x09, 0x00, 0x27, 0x00, 0xEA, 0x00, 0x00,
- 0x01, 0xE6, 0x01, 0xE6, 0x03, 0x09, 0x00, 0x28, 0x00, 0xF8, 0x00, 0x00, 0x01, 0xE7, 0x01, 0xE7,
- 0x03, 0x09, 0x00, 0x28, 0x00, 0xF8, 0x00, 0x00, 0x01, 0xA6, 0x01, 0xA6, 0x04, 0x05, 0x00, 0x74,
- 0x01, 0x4A, 0x00, 0x00, 0x02, 0x66, 0x01, 0x6A, 0xFE, 0xFE, 0x00, 0x00, 0x01, 0x36, 0x00, 0x00,
- 0x30, 0x04, 0x30, 0x04, 0x01, 0x06, 0x00, 0x00, 0x30, 0x03, 0x00, 0x00, 0x00, 0x65, 0x00, 0x65,
- 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00, 0x00, 0x62, 0x00, 0x62, 0x03, 0x09, 0x00, 0x00,
- 0x00, 0xE8, 0x00, 0x00, 0x00, 0x64, 0x00, 0x64, 0x03, 0x09, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00,
- 0x00, 0x63, 0x00, 0x63, 0x03, 0x09, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x02, 0x67, 0x02, 0x67,
- 0x04, 0x0A, 0x00, 0x79, 0x01, 0x62, 0x00, 0x00, 0x00, 0xD0, 0x00, 0xD0, 0x04, 0x0A, 0x00, 0x7E,
- 0x01, 0x27, 0x00, 0x00, 0x01, 0x77, 0x01, 0x77, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00,
- 0x02, 0x79, 0x02, 0x79, 0x04, 0x0A, 0x00, 0x00, 0x01, 0x67, 0x00, 0x00, 0x02, 0x7A, 0x02, 0x7A,
- 0x04, 0x0A, 0x00, 0x00, 0x01, 0x33, 0x00, 0x00, 0x00, 0xCF, 0x00, 0xCF, 0x00, 0x06, 0x00, 0x00,
- 0x00, 0xE8, 0x00, 0x00, 0x00, 0xA2, 0x00, 0xA2, 0x64, 0x06, 0x00, 0x81, 0x01, 0x1B, 0x00, 0x00,
- 0x00, 0xA3, 0x00, 0xA3, 0x64, 0x06, 0x00, 0x81, 0x00, 0xE8, 0x00, 0x00, 0x00, 0xA0, 0x00, 0xA0,
- 0x64, 0x06, 0x00, 0x83, 0x01, 0x19, 0x00, 0x00, 0x00, 0xA1, 0x00, 0xA1, 0x64, 0x06, 0x00, 0x84,
- 0x01, 0x1A, 0x00, 0x00, 0x60, 0x0B, 0x60, 0x0B, 0x00, 0x0A, 0x00, 0x85, 0x60, 0x09, 0x00, 0x00,
- 0x60, 0x0C, 0x60, 0x0C, 0x00, 0x05, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x60, 0x0A, 0x60, 0x0A,
- 0x64, 0x05, 0x00, 0x00, 0x60, 0x08, 0x00, 0x00, 0x70, 0x0A, 0x70, 0x0A, 0x00, 0x06, 0x00, 0x00,
- 0x00, 0xE8, 0x00, 0x00, 0x70, 0x0B, 0x70, 0x0B, 0x00, 0x06, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00,
- 0x70, 0x0C, 0x70, 0x0C, 0x00, 0x06, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x70, 0x0E, 0x70, 0x0E,
- 0x00, 0x06, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00, 0x70, 0x0D, 0x70, 0x0D, 0x00, 0x06, 0x00, 0x00,
- 0x00, 0xE8, 0x00, 0x00, 0x70, 0x08, 0x70, 0x08, 0x00, 0x05, 0x00, 0x86, 0x70, 0x10, 0x00, 0x00,
- 0x70, 0x09, 0x70, 0x09, 0x00, 0x05, 0x00, 0x00, 0x70, 0x11, 0x00, 0x00, 0x02, 0x66, 0x70, 0x0F,
- 0x04, 0x05, 0x00, 0x87, 0x70, 0x12, 0x00, 0x00, 0x01, 0x9F, 0x01, 0x9F, 0xFE, 0xFE, 0x00, 0x00,
- 0x00, 0xDF, 0x00, 0x00, 0x01, 0x9E, 0x01, 0x9E, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x00,
- 0x01, 0xEA, 0x01, 0xEA, 0xFE, 0xFE, 0x00, 0x88, 0x01, 0x4B, 0x00, 0x00, 0x00, 0x0B, 0x00, 0x0B,
- 0xFE, 0xFE, 0x00, 0x89, 0x00, 0xE7, 0x00, 0x00,
-};
-COMPILER_STRIP_GATE(0x8038FCA8, &daAlink_c::m_anmDataTable);
+daAlink_AnmData const daAlink_c::m_anmDataTable[414] = {
+ {37, 36, 254, 254, 0, 232, 0},
+ {35, 34, 254, 254, 0, 232, 0},
+ {18, 18, 254, 254, 0, 232, 0},
+ {16, 16, 254, 254, 0, 232, 0},
+ {33, 31, 254, 254, 0, 232, 0},
+ {30, 29, 254, 254, 0, 232, 0},
+ {60, 59, 4, 10, 0, 232, 0},
+ {44, 43, 4, 10, 0, 232, 0},
+ {62, 61, 4, 10, 0, 232, 0},
+ {46, 45, 4, 10, 0, 232, 0},
+ {48, 47, 4, 10, 0, 232, 0},
+ {40, 39, 4, 10, 0, 232, 0},
+ {50, 49, 4, 10, 0, 232, 0},
+ {42, 41, 4, 10, 0, 232, 0},
+ {628, 628, 254, 254, 0, 232, 0},
+ {32, 26, 254, 254, 0, 0, 0},
+ {26, 14, 254, 254, 0, 232, 0},
+ {28, 14, 254, 254, 0, 232, 0},
+ {631, 631, 4, 10, 0, 0, 0},
+ {205, 197, 4, 10, 0, 232, 0},
+ {579, 579, 254, 254, 0, 345, 0},
+ {563, 563, 4, 10, 0, 0, 0},
+ {564, 564, 4, 10, 0, 0, 0},
+ {563, 604, 4, 10, 0, 0, 0},
+ {564, 604, 4, 10, 0, 0, 0},
+ {618, 618, 4, 10, 0, 0, 0},
+ {598, 598, 1, 6, 0, 232, 0},
+ {599, 599, 1, 6, 0, 351, 0},
+ {198, 198, 1, 6, 0, 232, 0},
+ {54, 54, 254, 254, 0, 328, 0},
+ {56, 56, 254, 254, 0, 328, 0},
+ {53, 53, 1, 6, 0, 232, 0},
+ {55, 55, 1, 6, 0, 232, 0},
+ {52, 52, 254, 254, 0, 328, 0},
+ {51, 51, 1, 6, 0, 232, 0},
+ {519, 519, 254, 254, 0, 328, 0},
+ {521, 521, 254, 254, 0, 223, 0},
+ {520, 520, 1, 6, 38, 335, 0},
+ {518, 518, 4, 10, 0, 328, 0},
+ {517, 517, 4, 10, 0, 232, 0},
+ {559, 559, 254, 254, 0, 232, 0},
+ {123, 123, 254, 254, 0, 0, 0},
+ {126, 126, 254, 6, 0, 232, 0},
+ {19, 19, 254, 6, 0, 232, 0},
+ {21, 21, 254, 6, 0, 232, 0},
+ {124, 124, 254, 6, 0, 232, 0},
+ {23, 23, 254, 6, 0, 232, 0},
+ {24, 24, 254, 6, 0, 232, 0},
+ {20, 20, 1, 6, 125, 233, 0},
+ {421, 421, 254, 254, 0, 327, 0},
+ {419, 419, 254, 254, 0, 327, 0},
+ {420, 420, 254, 254, 0, 223, 0},
+ {436, 436, 254, 254, 0, 223, 0},
+ {437, 437, 254, 254, 0, 223, 0},
+ {617, 617, 254, 254, 0, 223, 0},
+ {503, 503, 254, 254, 10, 333, 0},
+ {502, 502, 254, 254, 4, 232, 0},
+ {501, 501, 254, 254, 4, 232, 0},
+ {500, 500, 0, 5, 11, 332, 0},
+ {499, 499, 254, 254, 0, 232, 0},
+ {498, 498, 0, 5, 0, 232, 0},
+ {510, 510, 254, 254, 0, 223, 0},
+ {511, 511, 254, 254, 0, 223, 0},
+ {509, 509, 254, 254, 0, 223, 0},
+ {225, 225, 4, 10, 0, 223, 0},
+ {226, 226, 4, 10, 0, 223, 0},
+ {565, 565, 4, 5, 0, 232, 0},
+ {566, 566, 4, 5, 0, 232, 0},
+ {562, 562, 4, 5, 0, 232, 0},
+ {418, 418, 4, 5, 0, 232, 0},
+ {416, 416, 4, 5, 0, 232, 0},
+ {417, 417, 4, 5, 0, 232, 0},
+ {614, 614, 4, 5, 0, 0, 0},
+ {629, 629, 4, 5, 0, 0, 0},
+ {630, 630, 4, 5, 0, 0, 0},
+ {202, 202, 4, 5, 0, 232, 0},
+ {203, 203, 4, 5, 0, 232, 0},
+ {781, 614, 4, 5, 0, 0, 0},
+ {221, 221, 4, 5, 0, 258, 0},
+ {435, 435, 4, 5, 0, 261, 0},
+ {149, 149, 100, 5, 36, 272, 0},
+ {568, 568, 4, 5, 55, 338, 0},
+ {569, 569, 4, 5, 56, 0, 0},
+ {214, 214, 4, 10, 88, 300, 0},
+ {587, 587, 4, 5, 37, 0, 0},
+ {613, 613, 4, 5, 0, 232, 0},
+ {560, 560, 4, 5, 109, 336, 0},
+ {561, 561, 4, 5, 109, 336, 0},
+ {373, 373, 4, 5, 110, 321, 0},
+ {374, 374, 4, 5, 110, 321, 0},
+ {588, 588, 4, 5, 114, 0, 0},
+ {589, 589, 4, 5, 115, 0, 0},
+ {512, 512, 254, 254, 0, 223, 0},
+ {513, 513, 254, 254, 0, 223, 0},
+ {227, 227, 4, 10, 0, 223, 0},
+ {228, 228, 4, 10, 0, 223, 0},
+ {624, 624, 254, 254, 16, 357, 0},
+ {623, 623, 4, 5, 17, 356, 0},
+ {127, 127, 100, 6, 46, 259, 0},
+ {153, 153, 0, 6, 47, 275, 0},
+ {154, 154, 0, 6, 48, 276, 0},
+ {143, 143, 100, 6, 49, 267, 0},
+ {144, 144, 100, 6, 49, 267, 0},
+ {132, 132, 100, 6, 50, 262, 0},
+ {133, 133, 100, 6, 51, 263, 0},
+ {134, 134, 100, 5, 0, 261, 0},
+ {138, 138, 0, 5, 0, 223, 0},
+ {137, 137, 100, 5, 0, 223, 0},
+ {139, 139, 100, 5, 52, 264, 0},
+ {136, 136, 0, 5, 0, 223, 0},
+ {135, 135, 100, 5, 0, 223, 0},
+ {155, 155, 0, 6, 89, 277, 0},
+ {156, 156, 0, 6, 89, 277, 0},
+ {152, 152, 100, 6, 60, 274, 0},
+ {151, 151, 100, 6, 61, 273, 0},
+ {159, 159, 100, 6, 58, 280, 0},
+ {158, 158, 100, 6, 59, 279, 0},
+ {164, 164, 0, 6, 0, 232, 0},
+ {165, 165, 100, 6, 0, 232, 0},
+ {166, 166, 100, 6, 0, 232, 0},
+ {170, 170, 0, 5, 0, 261, 0},
+ {167, 167, 0, 5, 90, 285, 0},
+ {168, 168, 0, 5, 0, 286, 0},
+ {169, 169, 100, 5, 18, 287, 0},
+ {142, 142, 0, 6, 127, 266, 0},
+ {140, 140, 0, 6, 128, 265, 0},
+ {141, 141, 0, 6, 0, 232, 0},
+ {174, 174, 1, 6, 39, 234, 0},
+ {172, 172, 1, 6, 39, 234, 0},
+ {189, 189, 1, 6, 39, 234, 0},
+ {190, 190, 1, 6, 39, 234, 0},
+ {178, 178, 254, 254, 40, 248, 0},
+ {175, 175, 254, 254, 40, 248, 0},
+ {180, 180, 254, 254, 40, 248, 0},
+ {182, 182, 254, 254, 40, 248, 0},
+ {179, 179, 254, 254, 42, 292, 0},
+ {176, 176, 254, 254, 43, 290, 0},
+ {181, 181, 254, 254, 44, 293, 0},
+ {183, 183, 254, 254, 44, 293, 0},
+ {171, 171, 1, 6, 39, 234, 0},
+ {431, 431, 1, 6, 39, 234, 0},
+ {432, 432, 254, 254, 0, 223, 0},
+ {324, 324, 0, 6, 6, 305, 0},
+ {325, 325, 0, 10, 7, 306, 0},
+ {567, 567, 4, 10, 28, 337, 0},
+ {591, 591, 254, 254, 0, 223, 0},
+ {592, 592, 254, 254, 0, 223, 0},
+ {593, 593, 254, 254, 0, 223, 0},
+ {594, 594, 254, 254, 0, 223, 0},
+ {372, 372, 254, 254, 0, 223, 0},
+ {378, 378, 254, 254, 0, 223, 0},
+ {376, 376, 254, 254, 0, 223, 0},
+ {377, 377, 254, 254, 0, 223, 0},
+ {430, 430, 254, 254, 0, 223, 0},
+ {428, 428, 254, 254, 0, 223, 0},
+ {429, 429, 254, 254, 0, 223, 0},
+ {425, 425, 254, 254, 0, 223, 0},
+ {423, 423, 254, 254, 0, 223, 0},
+ {424, 424, 254, 254, 0, 223, 0},
+ {427, 427, 254, 254, 0, 223, 0},
+ {426, 426, 254, 254, 0, 223, 0},
+ {106, 106, 3, 9, 0, 232, 0},
+ {112, 112, 3, 9, 0, 232, 0},
+ {108, 108, 3, 9, 0, 232, 0},
+ {109, 109, 3, 9, 0, 232, 0},
+ {110, 110, 3, 9, 0, 232, 0},
+ {111, 111, 3, 9, 0, 232, 0},
+ {107, 107, 3, 9, 92, 254, 0},
+ {527, 527, 3, 9, 0, 232, 0},
+ {528, 528, 3, 9, 0, 232, 0},
+ {522, 522, 3, 9, 0, 232, 0},
+ {524, 524, 3, 9, 0, 232, 0},
+ {525, 525, 3, 9, 0, 232, 0},
+ {526, 526, 3, 9, 0, 232, 0},
+ {523, 523, 3, 9, 0, 232, 0},
+ {366, 366, 254, 254, 24, 313, 0},
+ {369, 369, 254, 254, 25, 316, 0},
+ {368, 368, 254, 254, 0, 315, 0},
+ {379, 379, 254, 254, 26, 322, 0},
+ {365, 365, 254, 254, 27, 312, 0},
+ {367, 367, 254, 254, 0, 314, 0},
+ {95, 95, 254, 254, 0, 223, 0},
+ {604, 604, 4, 10, 1, 352, 0},
+ {596, 596, 4, 10, 1, 349, 0},
+ {585, 585, 4, 10, 0, 223, 0},
+ {620, 620, 1, 6, 12, 355, 0},
+ {157, 157, 1, 6, 13, 278, 0},
+ {82, 82, 254, 254, 0, 232, 0},
+ {632, 632, 1, 6, 0, 223, 0},
+ {557, 557, 254, 254, 0, 223, 0},
+ {555, 555, 254, 254, 0, 223, 0},
+ {558, 558, 254, 254, 0, 223, 0},
+ {556, 556, 254, 254, 0, 223, 0},
+ {574, 574, 254, 254, 21, 342, 0},
+ {578, 578, 254, 254, 22, 344, 0},
+ {57, 57, 254, 254, 0, 232, 0},
+ {58, 58, 254, 254, 0, 232, 0},
+ {17, 17, 254, 254, 0, 232, 0},
+ {570, 570, 254, 254, 3, 232, 0},
+ {573, 573, 254, 254, 23, 341, 0},
+ {577, 577, 254, 254, 0, 232, 0},
+ {576, 576, 254, 254, 0, 232, 0},
+ {193, 193, 1, 6, 39, 234, 0},
+ {192, 192, 1, 6, 39, 234, 0},
+ {194, 194, 1, 6, 39, 234, 0},
+ {195, 195, 1, 6, 39, 234, 0},
+ {196, 196, 1, 6, 39, 234, 0},
+ {87, 87, 254, 254, 77, 247, 0},
+ {86, 86, 254, 254, 78, 246, 0},
+ {85, 85, 254, 254, 79, 245, 0},
+ {361, 361, 254, 254, 0, 308, 0},
+ {362, 362, 254, 254, 0, 310, 0},
+ {362, 618, 254, 254, 0, 307, 0},
+ {362, 381, 254, 254, 0, 307, 0},
+ {586, 586, 4, 10, 41, 346, 0},
+ {595, 595, 254, 254, 0, 348, 0},
+ {619, 619, 254, 254, 0, 223, 0},
+ {603, 602, 254, 5, 0, 223, 0},
+ {603, 603, 0, 254, 0, 223, 0},
+ {619, 533, 254, 5, 0, 223, 0},
+ {619, 534, 0, 254, 0, 223, 0},
+ {619, 531, 254, 5, 0, 223, 0},
+ {619, 532, 0, 254, 0, 223, 0},
+ {619, 103, 254, 5, 0, 223, 0},
+ {90, 90, 2, 254, 0, 304, 0},
+ {91, 91, 2, 254, 0, 304, 0},
+ {92, 92, 2, 254, 0, 223, 0},
+ {94, 94, 2, 5, 120, 249, 0},
+ {491, 491, 254, 254, 0, 223, 0},
+ {506, 506, 2, 5, 0, 223, 0},
+ {508, 508, 2, 5, 0, 223, 0},
+ {434, 434, 2, 5, 0, 223, 0},
+ {217, 217, 4, 10, 30, 301, 0},
+ {218, 218, 4, 10, 31, 302, 0},
+ {215, 215, 3, 10, 0, 223, 0},
+ {216, 216, 3, 10, 0, 223, 0},
+ {219, 219, 254, 254, 0, 223, 0},
+ {220, 220, 254, 254, 0, 223, 0},
+ {492, 492, 254, 254, 29, 223, 0},
+ {529, 529, 1, 6, 0, 223, 0},
+ {484, 484, 1, 6, 0, 223, 0},
+ {485, 485, 1, 6, 0, 223, 0},
+ {552, 552, 254, 254, 0, 223, 0},
+ {544, 544, 254, 254, 0, 223, 0},
+ {543, 543, 254, 254, 0, 223, 0},
+ {549, 549, 254, 254, 0, 223, 0},
+ {547, 547, 254, 254, 0, 223, 0},
+ {545, 545, 254, 254, 0, 223, 0},
+ {546, 546, 254, 254, 0, 223, 0},
+ {548, 548, 254, 254, 0, 223, 0},
+ {551, 551, 100, 254, 0, 223, 0},
+ {550, 550, 100, 254, 0, 223, 0},
+ {530, 530, 254, 254, 0, 223, 0},
+ {102, 102, 254, 254, 53, 252, 0},
+ {105, 105, 254, 254, 54, 253, 0},
+ {625, 625, 4, 10, 0, 358, 0},
+ {72, 72, 3, 254, 62, 238, 0},
+ {70, 70, 3, 254, 63, 236, 0},
+ {71, 71, 3, 254, 64, 237, 0},
+ {69, 69, 3, 254, 65, 235, 0},
+ {75, 75, 3, 254, 66, 241, 0},
+ {76, 76, 3, 5, 67, 242, 0},
+ {73, 73, 3, 5, 68, 239, 0},
+ {78, 78, 3, 254, 69, 243, 0},
+ {79, 79, 3, 254, 70, 244, 0},
+ {74, 74, 3, 254, 71, 240, 0},
+ {77, 77, 3, 254, 0, 223, 0},
+ {438, 438, 0, 10, 0, 223, 0},
+ {495, 495, 0, 9, 0, 223, 0},
+ {493, 493, 0, 9, 0, 223, 0},
+ {494, 494, 0, 9, 0, 223, 0},
+ {371, 371, 2, 254, 74, 319, 0},
+ {370, 370, 2, 254, 76, 318, 0},
+ {97, 97, 2, 254, 75, 251, 0},
+ {621, 621, 2, 254, 75, 251, 0},
+ {605, 605, 1, 6, 14, 355, 0},
+ {610, 610, 1, 6, 15, 353, 0},
+ {483, 483, 254, 254, 0, 223, 0},
+ {212, 212, 4, 10, 80, 298, 0},
+ {213, 213, 4, 10, 81, 299, 0},
+ {571, 571, 254, 254, 82, 339, 0},
+ {572, 572, 254, 254, 83, 340, 0},
+ {114, 114, 3, 9, 0, 255, 0},
+ {116, 116, 3, 9, 85, 256, 0},
+ {115, 115, 3, 9, 0, 232, 0},
+ {113, 113, 3, 9, 0, 232, 0},
+ {117, 117, 3, 9, 0, 232, 0},
+ {119, 119, 3, 9, 86, 257, 0},
+ {120, 120, 3, 9, 87, 257, 0},
+ {28, 121, 3, 9, 0, 232, 0},
+ {122, 122, 3, 9, 0, 232, 0},
+ {118, 118, 254, 254, 0, 304, 0},
+ {222, 222, 4, 10, 84, 303, 0},
+ {224, 224, 254, 254, 40, 248, 0},
+ {8, 8, 0, 5, 0, 232, 0},
+ {554, 554, 254, 254, 0, 223, 0},
+ {553, 553, 254, 254, 0, 223, 0},
+ {394, 394, 1, 6, 0, 232, 0},
+ {395, 395, 1, 6, 0, 232, 0},
+ {396, 396, 254, 254, 0, 232, 0},
+ {384, 384, 1, 6, 0, 232, 0},
+ {385, 385, 1, 6, 0, 232, 0},
+ {386, 386, 1, 6, 0, 232, 0},
+ {388, 388, 1, 6, 0, 232, 0},
+ {392, 392, 1, 6, 0, 232, 0},
+ {393, 393, 1, 6, 0, 232, 0},
+ {390, 390, 1, 6, 0, 232, 0},
+ {391, 391, 1, 6, 0, 232, 0},
+ {387, 387, 1, 6, 0, 232, 0},
+ {389, 389, 1, 6, 0, 232, 0},
+ {398, 398, 1, 6, 0, 232, 0},
+ {399, 399, 1, 6, 0, 232, 0},
+ {400, 400, 1, 6, 0, 232, 0},
+ {401, 401, 1, 6, 0, 232, 0},
+ {404, 404, 1, 6, 0, 232, 0},
+ {405, 405, 1, 6, 0, 232, 0},
+ {402, 402, 1, 6, 0, 232, 0},
+ {403, 403, 1, 6, 0, 232, 0},
+ {504, 504, 254, 254, 0, 334, 0},
+ {4142, 4142, 0, 5, 0, 223, 0},
+ {4141, 4141, 0, 5, 0, 223, 0},
+ {4106, 4106, 254, 254, 0, 223, 0},
+ {4104, 4104, 254, 254, 0, 223, 0},
+ {4105, 4105, 254, 254, 0, 223, 0},
+ {4103, 4103, 254, 254, 0, 223, 0},
+ {4129, 4129, 254, 254, 0, 223, 0},
+ {4131, 4131, 254, 254, 0, 223, 0},
+ {4130, 4130, 254, 254, 0, 223, 0},
+ {4132, 4132, 254, 254, 0, 223, 0},
+ {4133, 4133, 254, 254, 94, 4113, 0},
+ {4136, 4136, 254, 254, 0, 223, 0},
+ {4137, 4137, 254, 254, 0, 223, 0},
+ {4134, 4134, 254, 254, 95, 4114, 0},
+ {4135, 4135, 254, 254, 95, 4114, 0},
+ {4138, 4138, 254, 254, 99, 4115, 0},
+ {4121, 4121, 254, 254, 0, 223, 0},
+ {4123, 4123, 254, 254, 97, 4110, 0},
+ {4124, 4124, 254, 254, 98, 4111, 0},
+ {4122, 4122, 254, 254, 96, 4109, 0},
+ {4128, 4128, 254, 254, 95, 4114, 0},
+ {4125, 4125, 254, 254, 101, 4112, 0},
+ {4119, 4119, 254, 254, 100, 4108, 0},
+ {4120, 4120, 254, 254, 100, 4108, 0},
+ {4139, 4139, 254, 254, 0, 223, 0},
+ {4140, 4140, 254, 254, 0, 223, 0},
+ {4117, 4117, 254, 254, 102, 4107, 0},
+ {4118, 4118, 254, 254, 102, 4107, 0},
+ {4102, 4102, 254, 254, 0, 223, 0},
+ {4116, 4116, 254, 254, 0, 223, 0},
+ {4126, 4126, 0, 5, 0, 223, 0},
+ {4127, 4127, 254, 254, 0, 223, 0},
+ {177, 177, 254, 254, 93, 291, 0},
+ {412, 412, 254, 5, 0, 232, 0},
+ {413, 413, 254, 5, 0, 232, 0},
+ {406, 406, 0, 5, 0, 232, 0},
+ {411, 411, 0, 5, 0, 232, 0},
+ {410, 410, 0, 5, 0, 232, 0},
+ {409, 409, 0, 5, 0, 232, 0},
+ {407, 407, 254, 5, 0, 232, 0},
+ {408, 408, 254, 5, 0, 232, 0},
+ {8204, 8204, 3, 9, 0, 232, 0},
+ {8205, 8205, 3, 9, 0, 232, 0},
+ {8206, 8206, 3, 9, 0, 232, 0},
+ {8207, 8207, 100, 254, 0, 232, 0},
+ {8201, 8201, 100, 9, 103, 232, 0},
+ {8202, 8202, 100, 9, 104, 232, 0},
+ {8203, 8203, 100, 10, 105, 8200, 0},
+ {8208, 8208, 0, 5, 0, 223, 0},
+ {20493, 20493, 1, 6, 0, 232, 0},
+ {20494, 20494, 1, 6, 0, 232, 0},
+ {20490, 20490, 3, 9, 0, 232, 0},
+ {20491, 20491, 3, 9, 0, 232, 0},
+ {20492, 20492, 100, 254, 0, 232, 0},
+ {20487, 20487, 100, 9, 106, 232, 0},
+ {20488, 20488, 100, 9, 107, 232, 0},
+ {20489, 20489, 100, 10, 108, 20495, 0},
+ {515, 515, 2, 5, 111, 232, 0},
+ {516, 516, 2, 5, 112, 232, 0},
+ {363, 363, 2, 10, 113, 309, 0},
+ {606, 606, 3, 9, 39, 234, 0},
+ {486, 486, 3, 9, 40, 248, 0},
+ {487, 487, 3, 9, 40, 248, 0},
+ {422, 422, 4, 5, 116, 330, 0},
+ {614, 362, 254, 254, 0, 310, 0},
+ {12292, 12292, 1, 6, 0, 12291, 0},
+ {101, 101, 254, 254, 0, 223, 0},
+ {98, 98, 3, 9, 0, 232, 0},
+ {100, 100, 3, 9, 0, 232, 0},
+ {99, 99, 3, 9, 0, 232, 0},
+ {615, 615, 4, 10, 121, 354, 0},
+ {208, 208, 4, 10, 126, 295, 0},
+ {375, 375, 254, 254, 0, 223, 0},
+ {633, 633, 4, 10, 0, 359, 0},
+ {634, 634, 4, 10, 0, 307, 0},
+ {207, 207, 0, 6, 0, 232, 0},
+ {162, 162, 100, 6, 129, 283, 0},
+ {163, 163, 100, 6, 129, 232, 0},
+ {160, 160, 100, 6, 131, 281, 0},
+ {161, 161, 100, 6, 132, 282, 0},
+ {24587, 24587, 0, 10, 133, 24585, 0},
+ {24588, 24588, 0, 5, 0, 232, 0},
+ {24586, 24586, 100, 5, 0, 24584, 0},
+ {28682, 28682, 0, 6, 0, 232, 0},
+ {28683, 28683, 0, 6, 0, 232, 0},
+ {28684, 28684, 0, 6, 0, 232, 0},
+ {28686, 28686, 0, 6, 0, 232, 0},
+ {28685, 28685, 0, 6, 0, 232, 0},
+ {28680, 28680, 0, 5, 134, 28688, 0},
+ {28681, 28681, 0, 5, 0, 28689, 0},
+ {614, 28687, 4, 5, 135, 28690, 0},
+ {415, 415, 254, 254, 0, 223, 0},
+ {414, 414, 254, 254, 0, 223, 0},
+ {490, 490, 254, 254, 136, 331, 0},
+ {11, 11, 254, 254, 137, 231, 0},
+};
/* 80391010-803914A8 -00001 0498+00 4/4 0/0 0/0 .rodata m_wlAnmDataTable__9daAlink_c */
-SECTION_RODATA void* const daAlink_c::m_wlAnmDataTable[294] = {
- (void*)0x02FF0001,
- (void*)0x0A28FFFF,
- (void*)0x030A0002,
- (void*)0x010EFFFF,
- (void*)0x030B0002,
- (void*)0x010EFFFF,
- (void*)0x02B4000C,
- (void*)0xFFFFFFFF,
- (void*)0x02CC010C,
- (void*)0xFFFFFFFF,
- (void*)0x02CA010C,
- (void*)0xFFFFFFFF,
- (void*)0x02CB010C,
- (void*)0xFFFFFFFF,
- (void*)0x03050001,
- (void*)0x0FFFFFFF,
- (void*)0x02E00007,
- (void*)0x02FFFFFF,
- (void*)0x02DF0007,
- (void*)0x0620FFFF,
- (void*)0x02DE000C,
- (void*)0xFFFFFFFF,
- (void*)0x02E90100,
- (void*)0x07FFFFFF,
- (void*)0x02D4010C,
- (void*)0xFFFFFFFF,
- (void*)0x02D5020C,
- (void*)0xFFFFFFFF,
- (void*)0x03060100,
- (void*)0x01FFFFFF,
- (void*)0x029A0107,
- (void*)0x09FFFFFF,
- (void*)0x02FE0105,
- (void*)0x09FFFFFF,
- (void*)0x029C0105,
- (void*)0x03FFFFFF,
- (void*)0x029B010C,
- (void*)0xFFFFFFFF,
- (void*)0x02FD0106,
- (void*)0x19FFFFFF,
- (void*)0x02FC010C,
- (void*)0xFFFFFFFF,
- (void*)0x02FB0008,
- (void*)0x03FFFFFF,
- (void*)0x02A7000C,
- (void*)0xFFFFFFFF,
- (void*)0x03030003,
- (void*)0x0A1E32FF,
- (void*)0x03000003,
- (void*)0x06FFFFFF,
- (void*)0x02C20105,
- (void*)0x06FFFFFF,
- (void*)0x02EE010C,
- (void*)0xFFFFFFFF,
- (void*)0x02FA010C,
- (void*)0xFFFFFFFF,
- (void*)0x027E000C,
- (void*)0xFFFFFFFF,
- (void*)0x030C0102,
- (void*)0x0112FFFF,
- (void*)0x02EA010C,
- (void*)0xFFFFFFFF,
- (void*)0x02EB010C,
- (void*)0xFFFFFFFF,
- (void*)0x02EC020C,
- (void*)0xFFFFFFFF,
- (void*)0x02E70002,
- (void*)0x010EFFFF,
- (void*)0x02E30105,
- (void*)0x14FFFFFF,
- (void*)0x02E40105,
- (void*)0x1AFFFFFF,
- (void*)0x02E6000C,
- (void*)0xFFFFFFFF,
- (void*)0x02E80801,
- (void*)0x1932FFFF,
- (void*)0x02E50902,
- (void*)0x010E1E2D,
- (void*)0x02B5010C,
- (void*)0xFFFFFFFF,
- (void*)0x02AC020C,
- (void*)0xFFFFFFFF,
- (void*)0x02AA020C,
- (void*)0xFFFFFFFF,
- (void*)0x02AE020C,
- (void*)0xFFFFFFFF,
- (void*)0x02B0020C,
- (void*)0xFFFFFFFF,
- (void*)0x02AD020A,
- (void*)0x20FFFFFF,
- (void*)0x02AB020B,
- (void*)0x14FFFFFF,
- (void*)0x02AF020C,
- (void*)0xFFFFFFFF,
- (void*)0x02B1020C,
- (void*)0xFFFFFFFF,
- (void*)0x02F0000C,
- (void*)0xFFFFFFFF,
- (void*)0x03020001,
- (void*)0x0A28FFFF,
- (void*)0x02CF000C,
- (void*)0xFFFFFFFF,
- (void*)0x02D0000C,
- (void*)0xFFFFFFFF,
- (void*)0x02CD000C,
- (void*)0xFFFFFFFF,
- (void*)0x02CE000C,
- (void*)0xFFFFFFFF,
- (void*)0x02F7010C,
- (void*)0xFFFFFFFF,
- (void*)0x02F80001,
- (void*)0x0DFFFFFF,
- (void*)0x02F60002,
- (void*)0x01FFFFFF,
- (void*)0x02F30004,
- (void*)0x03FFFFFF,
- (void*)0x02F1010C,
- (void*)0xFFFFFFFF,
- (void*)0x0307000C,
- (void*)0xFFFFFFFF,
- (void*)0x02A9010C,
- (void*)0xFFFFFFFF,
- (void*)0x02A8010C,
- (void*)0xFFFFFFFF,
- (void*)0x02B2010C,
- (void*)0xFFFFFFFF,
- (void*)0x02B3010C,
- (void*)0xFFFFFFFF,
- (void*)0x028D010C,
- (void*)0xFFFFFFFF,
- (void*)0x028E010C,
- (void*)0xFFFFFFFF,
- (void*)0x028F000C,
- (void*)0xFFFFFFFF,
- (void*)0x0290010C,
- (void*)0xFFFFFFFF,
- (void*)0x027F000C,
- (void*)0xFFFFFFFF,
- (void*)0x0281000C,
- (void*)0xFFFFFFFF,
- (void*)0x0280000C,
- (void*)0xFFFFFFFF,
- (void*)0x02DA000C,
- (void*)0xFFFFFFFF,
- (void*)0x0285010C,
- (void*)0xFFFFFFFF,
- (void*)0x0284010C,
- (void*)0xFFFFFFFF,
- (void*)0x0287010C,
- (void*)0xFFFFFFFF,
- (void*)0x0286010C,
- (void*)0xFFFFFFFF,
- (void*)0x0283010C,
- (void*)0xFFFFFFFF,
- (void*)0x0282010C,
- (void*)0xFFFFFFFF,
- (void*)0x02DB000C,
- (void*)0xFFFFFFFF,
- (void*)0x02DC0009,
- (void*)0x07FFFFFF,
- (void*)0x028C010C,
- (void*)0xFFFFFFFF,
- (void*)0x0288010C,
- (void*)0xFFFFFFFF,
- (void*)0x0289010C,
- (void*)0xFFFFFFFF,
- (void*)0x028B010C,
- (void*)0xFFFFFFFF,
- (void*)0x028A010C,
- (void*)0xFFFFFFFF,
- (void*)0x0295020C,
- (void*)0xFFFFFFFF,
- (void*)0x0294020C,
- (void*)0xFFFFFFFF,
- (void*)0x02C3010C,
- (void*)0xFFFFFFFF,
- (void*)0x02C5010C,
- (void*)0xFFFFFFFF,
- (void*)0x02C4010C,
- (void*)0xFFFFFFFF,
- (void*)0x02A4000C,
- (void*)0xFFFFFFFF,
- (void*)0x02A6000C,
- (void*)0xFFFFFFFF,
- (void*)0x02C6000C,
- (void*)0xFFFFFFFF,
- (void*)0x02C7010C,
- (void*)0xFFFFFFFF,
- (void*)0x02C8010C,
- (void*)0xFFFFFFFF,
- (void*)0x02C90001,
- (void*)0x1EFFFFFF,
- (void*)0x02D2010C,
- (void*)0xFFFFFFFF,
- (void*)0x02D3010A,
- (void*)0x04FFFFFF,
- (void*)0x0299000C,
- (void*)0xFFFFFFFF,
- (void*)0x0296010C,
- (void*)0xFFFFFFFF,
- (void*)0x0297010C,
- (void*)0xFFFFFFFF,
- (void*)0x0298010B,
- (void*)0x28FFFFFF,
- (void*)0x02E2010C,
- (void*)0xFFFFFFFF,
- (void*)0x02E1010C,
- (void*)0xFFFFFFFF,
- (void*)0x02B9000B,
- (void*)0x41FFFFFF,
- (void*)0x02BA0D0C,
- (void*)0xFFFFFFFF,
- (void*)0x02F90005,
- (void*)0x394655FF,
- (void*)0x02ED0106,
- (void*)0x01FFFFFF,
- (void*)0x02D1010C,
- (void*)0xFFFFFFFF,
- (void*)0x02DD000C,
- (void*)0xFFFFFFFF,
- (void*)0x02A5000C,
- (void*)0xFFFFFFFF,
- (void*)0x02A2000C,
- (void*)0xFFFFFFFF,
- (void*)0x02A3000C,
- (void*)0xFFFFFFFF,
- (void*)0x0308010C,
- (void*)0xFFFFFFFF,
- (void*)0x02EF000C,
- (void*)0xFFFFFFFF,
- (void*)0x02B60204,
- (void*)0x01FFFFFF,
- (void*)0x0293010C,
- (void*)0xFFFFFFFF,
- (void*)0x0291010C,
- (void*)0xFFFFFFFF,
- (void*)0x02BC000C,
- (void*)0xFFFFFFFF,
- (void*)0x02BF000C,
- (void*)0xFFFFFFFF,
- (void*)0x029E020C,
- (void*)0xFFFFFFFF,
- (void*)0x029D020C,
- (void*)0xFFFFFFFF,
- (void*)0x02920105,
- (void*)0x10FFFFFF,
- (void*)0x02B8060C,
- (void*)0xFFFFFFFF,
- (void*)0x02F4070C,
- (void*)0xFFFFFFFF,
- (void*)0x02F5070C,
- (void*)0xFFFFFFFF,
- (void*)0x0304020C,
- (void*)0xFFFFFFFF,
- (void*)0x03010001,
- (void*)0x0FFFFFFF,
- (void*)0x02F20001,
- (void*)0x0F2DFFFF,
- (void*)0x02D7000C,
- (void*)0xFFFFFFFF,
- (void*)0x02BB030C,
- (void*)0xFFFFFFFF,
- (void*)0x02C1010C,
- (void*)0xFFFFFFFF,
- (void*)0x02C00100,
- (void*)0x05FFFFFF,
- (void*)0x03090001,
- (void*)0x01FFFFFF,
- (void*)0x029F050C,
- (void*)0xFFFFFFFF,
- (void*)0x02D8000C,
- (void*)0xFFFFFFFF,
- (void*)0x02D9020C,
- (void*)0xFFFFFFFF,
- (void*)0x4003000C,
- (void*)0xFFFFFFFF,
- (void*)0x02A0000C,
- (void*)0xFFFFFFFF,
- (void*)0x02A1000C,
- (void*)0xFFFFFFFF,
- (void*)0x02D60100,
- (void*)0x143AFFFF,
- (void*)(((char*)JPACalcKeyAnmValue__FfUsPCf) + 0x88),
- (void*)0xFFFFFFFF,
- (void*)(((char*)cLib_chasePosXZ__FP4cXyzRC4cXyzf) + 0x7C),
- (void*)0xFFFFFFFF,
- (void*)(((char*)func_802A0A8C) + 0x80),
- (void*)0xFFFFFFFF,
- (void*)(((char*)getAramHeap__9JASKernelFv) + 0x4),
- (void*)0xFFFFFFFF,
- (void*)(((char*)startCollisionSE__10Z2CreatureFUlUl) + 0x24),
- (void*)0xFFFFFFFF,
- (void*)(((char*)changeBgmStatus__8Z2SeqMgrFl) + 0xC80),
- (void*)0xFFFFFFFF,
+daAlink_WlAnmData const daAlink_c::m_wlAnmDataTable[147] = {
+ {767, 0, 1, 2600, 255, 255}, {778, 0, 2, 270, 255, 255},
+ {779, 0, 2, 270, 255, 255}, {692, 0, 12, 65535, 255, 255},
+ {716, 1, 12, 65535, 255, 255}, {714, 1, 12, 65535, 255, 255},
+ {715, 1, 12, 65535, 255, 255}, {773, 0, 1, 4095, 255, 255},
+ {736, 0, 7, 767, 255, 255}, {735, 0, 7, 1568, 255, 255},
+ {734, 0, 12, 65535, 255, 255}, {745, 1, 0, 2047, 255, 255},
+ {724, 1, 12, 65535, 255, 255}, {725, 2, 12, 65535, 255, 255},
+ {774, 1, 0, 511, 255, 255}, {666, 1, 7, 2559, 255, 255},
+ {766, 1, 5, 2559, 255, 255}, {668, 1, 5, 1023, 255, 255},
+ {667, 1, 12, 65535, 255, 255}, {765, 1, 6, 6655, 255, 255},
+ {764, 1, 12, 65535, 255, 255}, {763, 0, 8, 1023, 255, 255},
+ {679, 0, 12, 65535, 255, 255}, {771, 0, 3, 2590, 50, 255},
+ {768, 0, 3, 1791, 255, 255}, {706, 1, 5, 1791, 255, 255},
+ {750, 1, 12, 65535, 255, 255}, {762, 1, 12, 65535, 255, 255},
+ {638, 0, 12, 65535, 255, 255}, {780, 1, 2, 274, 255, 255},
+ {746, 1, 12, 65535, 255, 255}, {747, 1, 12, 65535, 255, 255},
+ {748, 2, 12, 65535, 255, 255}, {743, 0, 2, 270, 255, 255},
+ {739, 1, 5, 5375, 255, 255}, {740, 1, 5, 6911, 255, 255},
+ {742, 0, 12, 65535, 255, 255}, {744, 8, 1, 6450, 255, 255},
+ {741, 9, 2, 270, 30, 45}, {693, 1, 12, 65535, 255, 255},
+ {684, 2, 12, 65535, 255, 255}, {682, 2, 12, 65535, 255, 255},
+ {686, 2, 12, 65535, 255, 255}, {688, 2, 12, 65535, 255, 255},
+ {685, 2, 10, 8447, 255, 255}, {683, 2, 11, 5375, 255, 255},
+ {687, 2, 12, 65535, 255, 255}, {689, 2, 12, 65535, 255, 255},
+ {752, 0, 12, 65535, 255, 255}, {770, 0, 1, 2600, 255, 255},
+ {719, 0, 12, 65535, 255, 255}, {720, 0, 12, 65535, 255, 255},
+ {717, 0, 12, 65535, 255, 255}, {718, 0, 12, 65535, 255, 255},
+ {759, 1, 12, 65535, 255, 255}, {760, 0, 1, 3583, 255, 255},
+ {758, 0, 2, 511, 255, 255}, {755, 0, 4, 1023, 255, 255},
+ {753, 1, 12, 65535, 255, 255}, {775, 0, 12, 65535, 255, 255},
+ {681, 1, 12, 65535, 255, 255}, {680, 1, 12, 65535, 255, 255},
+ {690, 1, 12, 65535, 255, 255}, {691, 1, 12, 65535, 255, 255},
+ {653, 1, 12, 65535, 255, 255}, {654, 1, 12, 65535, 255, 255},
+ {655, 0, 12, 65535, 255, 255}, {656, 1, 12, 65535, 255, 255},
+ {639, 0, 12, 65535, 255, 255}, {641, 0, 12, 65535, 255, 255},
+ {640, 0, 12, 65535, 255, 255}, {730, 0, 12, 65535, 255, 255},
+ {645, 1, 12, 65535, 255, 255}, {644, 1, 12, 65535, 255, 255},
+ {647, 1, 12, 65535, 255, 255}, {646, 1, 12, 65535, 255, 255},
+ {643, 1, 12, 65535, 255, 255}, {642, 1, 12, 65535, 255, 255},
+ {731, 0, 12, 65535, 255, 255}, {732, 0, 9, 2047, 255, 255},
+ {652, 1, 12, 65535, 255, 255}, {648, 1, 12, 65535, 255, 255},
+ {649, 1, 12, 65535, 255, 255}, {651, 1, 12, 65535, 255, 255},
+ {650, 1, 12, 65535, 255, 255}, {661, 2, 12, 65535, 255, 255},
+ {660, 2, 12, 65535, 255, 255}, {707, 1, 12, 65535, 255, 255},
+ {709, 1, 12, 65535, 255, 255}, {708, 1, 12, 65535, 255, 255},
+ {676, 0, 12, 65535, 255, 255}, {678, 0, 12, 65535, 255, 255},
+ {710, 0, 12, 65535, 255, 255}, {711, 1, 12, 65535, 255, 255},
+ {712, 1, 12, 65535, 255, 255}, {713, 0, 1, 7935, 255, 255},
+ {722, 1, 12, 65535, 255, 255}, {723, 1, 10, 1279, 255, 255},
+ {665, 0, 12, 65535, 255, 255}, {662, 1, 12, 65535, 255, 255},
+ {663, 1, 12, 65535, 255, 255}, {664, 1, 11, 10495, 255, 255},
+ {738, 1, 12, 65535, 255, 255}, {737, 1, 12, 65535, 255, 255},
+ {697, 0, 11, 16895, 255, 255}, {698, 13, 12, 65535, 255, 255},
+ {761, 0, 5, 14662, 85, 255}, {749, 1, 6, 511, 255, 255},
+ {721, 1, 12, 65535, 255, 255}, {733, 0, 12, 65535, 255, 255},
+ {677, 0, 12, 65535, 255, 255}, {674, 0, 12, 65535, 255, 255},
+ {675, 0, 12, 65535, 255, 255}, {776, 1, 12, 65535, 255, 255},
+ {751, 0, 12, 65535, 255, 255}, {694, 2, 4, 511, 255, 255},
+ {659, 1, 12, 65535, 255, 255}, {657, 1, 12, 65535, 255, 255},
+ {700, 0, 12, 65535, 255, 255}, {703, 0, 12, 65535, 255, 255},
+ {670, 2, 12, 65535, 255, 255}, {669, 2, 12, 65535, 255, 255},
+ {658, 1, 5, 4351, 255, 255}, {696, 6, 12, 65535, 255, 255},
+ {756, 7, 12, 65535, 255, 255}, {757, 7, 12, 65535, 255, 255},
+ {772, 2, 12, 65535, 255, 255}, {769, 0, 1, 4095, 255, 255},
+ {754, 0, 1, 3885, 255, 255}, {727, 0, 12, 65535, 255, 255},
+ {699, 3, 12, 65535, 255, 255}, {705, 1, 12, 65535, 255, 255},
+ {704, 1, 0, 1535, 255, 255}, {777, 0, 1, 511, 255, 255},
+ {671, 5, 12, 65535, 255, 255}, {728, 0, 12, 65535, 255, 255},
+ {729, 2, 12, 65535, 255, 255}, {16387, 0, 12, 65535, 255, 255},
+ {672, 0, 12, 65535, 255, 255}, {673, 0, 12, 65535, 255, 255},
+ {726, 1, 0, 5178, 255, 255}, {32808, 10, 12, 65535, 255, 255},
+ {32807, 10, 12, 65535, 255, 255}, {32810, 11, 12, 65535, 255, 255},
+ {32809, 11, 12, 65535, 255, 255}, {32812, 12, 12, 65535, 255, 255},
+ {32811, 12, 12, 65535, 255, 255},
};
-COMPILER_STRIP_GATE(0x80391010, &daAlink_c::m_wlAnmDataTable);
/* 803914A8-80391734 01DB08 028C+00 2/2 0/0 0/0 .rodata m_faceTexDataTable__9daAlink_c */
SECTION_RODATA u8 const daAlink_c::m_faceTexDataTable[652] = {
@@ -7391,101 +7297,61 @@ COMPILER_STRIP_GATE(0x80391734, &lit_5908);
/* 80391740-80391754 01DDA0 0014+00 0/1 0/0 0/0 .rodata atnNormalType1$6976 */
#pragma push
#pragma force_active on
-SECTION_RODATA static u8 const atnNormalType1[20] = {
- 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00,
- 0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00,
-};
-COMPILER_STRIP_GATE(0x80391740, &atnNormalType1);
+static int const atnNormalType1[5] = {4, 1, 1, 2, 0};
#pragma pop
/* 80391754-80391768 01DDB4 0014+00 0/1 0/0 0/0 .rodata atnNormalType2$6977 */
#pragma push
#pragma force_active on
-SECTION_RODATA static u8 const atnNormalType2[20] = {
- 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01,
-};
-COMPILER_STRIP_GATE(0x80391754, &atnNormalType2);
+static int const atnNormalType2[5] = {3, 0, 0, 1, 1};
#pragma pop
/* 80391768-8039177C 01DDC8 0014+00 0/1 0/0 0/0 .rodata atnNormalType3$6978 */
#pragma push
#pragma force_active on
-SECTION_RODATA static u8 const atnNormalType3[20] = {
- 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00,
- 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-};
-COMPILER_STRIP_GATE(0x80391768, &atnNormalType3);
+static int const atnNormalType3[5] = {4, 1, 1, 0, 0};
#pragma pop
/* 8039177C-80391790 01DDDC 0014+00 0/1 0/0 0/0 .rodata atnFinishType$6979 */
#pragma push
#pragma force_active on
-SECTION_RODATA static u8 const atnFinishType[20] = {
- 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x01,
-};
-COMPILER_STRIP_GATE(0x8039177C, &atnFinishType);
+static int const atnFinishType[5] = {2, 1, 0, 5, 1};
#pragma pop
/* 80391790-803917A4 01DDF0 0014+00 0/1 0/0 0/0 .rodata hitType$6980 */
#pragma push
#pragma force_active on
-SECTION_RODATA static u8 const hitType[20] = {
- 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
-};
-COMPILER_STRIP_GATE(0x80391790, &hitType);
+static int const hitType[5] = {4, 0, 5, 0, 1};
#pragma pop
/* 803917A4-803917B8 01DE04 0014+00 0/1 0/0 0/0 .rodata hitFinishType$6981 */
#pragma push
#pragma force_active on
-SECTION_RODATA static u8 const hitFinishType[20] = {
- 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00,
-};
-COMPILER_STRIP_GATE(0x803917A4, &hitFinishType);
+static int const hitFinishType[5] = {2, 1, 0, 5, 0};
#pragma pop
/* 803917B8-803917CC 01DE18 0014+00 0/1 0/0 0/0 .rodata normalType1$6982 */
#pragma push
#pragma force_active on
-SECTION_RODATA static u8 const normalType1_6982[20] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00,
- 0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01,
-};
-COMPILER_STRIP_GATE(0x803917B8, &normalType1_6982);
+static int const normalType1_6982[5] = {0, 2, 1, 2, 1};
#pragma pop
/* 803917CC-803917E0 01DE2C 0014+00 0/1 0/0 0/0 .rodata normalType2$6983 */
#pragma push
#pragma force_active on
-SECTION_RODATA static u8 const normalType2[20] = {
- 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00,
- 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02,
-};
-COMPILER_STRIP_GATE(0x803917CC, &normalType2);
+static int const normalType2[5] = {1, 1, 2, 1, 2};
#pragma pop
/* 803917E0-803917F4 01DE40 0014+00 0/1 0/0 0/0 .rodata normalType3$6984 */
#pragma push
#pragma force_active on
-SECTION_RODATA static u8 const normalType3[20] = {
- 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01,
-};
-COMPILER_STRIP_GATE(0x803917E0, &normalType3);
+static int const normalType3[5] = {4, 0, 1, 2, 1};
#pragma pop
/* 803917F4-80391808 01DE54 0014+00 0/1 0/0 0/0 .rodata finishType$6985 */
#pragma push
#pragma force_active on
-SECTION_RODATA static u8 const finishType[20] = {
- 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x01,
-};
-COMPILER_STRIP_GATE(0x803917F4, &finishType);
+static int const finishType[5] = {2, 0, 0, 5, 1};
#pragma pop
/* 80391808-80391858 01DE68 0050+00 0/1 0/0 0/0 .rodata cutParamTable$7312 */
@@ -7516,28 +7382,16 @@ COMPILER_STRIP_GATE(0x80391858, &cutParamTable_7455);
#pragma pop
/* 803918B8-803918C4 01DF18 000C+00 1/1 0/0 0/0 .rodata localCenter$11047 */
-SECTION_RODATA static u8 const localCenter[12] = {
- 0xC1, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x41, 0x90, 0x00, 0x00,
-};
-COMPILER_STRIP_GATE(0x803918B8, &localCenter);
+static Vec const localCenter = {-15.0f, 0.0f, 18.0f};
/* 803918C4-803918D0 01DF24 000C+00 1/1 0/0 0/0 .rodata localPos$11819 */
-SECTION_RODATA static u8 const localPos[12] = {
- 0x40, 0x5C, 0xCC, 0xCD, 0x42, 0x35, 0x47, 0xAE, 0xC0, 0xE0, 0x00, 0x00,
-};
-COMPILER_STRIP_GATE(0x803918C4, &localPos);
+static Vec const localPos = {3.45f, 45.32f, -7.0f};
/* 803918D0-803918DC 01DF30 000C+00 1/1 0/0 0/0 .rodata slingLocalPos$12042 */
-SECTION_RODATA static u8 const slingLocalPos[12] = {
- 0x41, 0x20, 0x00, 0x00, 0x41, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-};
-COMPILER_STRIP_GATE(0x803918D0, &slingLocalPos);
+static Vec const slingLocalPos = {10.0f, 10.0f, 0.0f};
/* 803918DC-803918E8 01DF3C 000C+00 1/1 0/0 0/0 .rodata localSidePos$14270 */
-SECTION_RODATA static u8 const localSidePos[12] = {
- 0x40, 0x13, 0x33, 0x33, 0xC1, 0x78, 0x00, 0x00, 0x41, 0x79, 0x99, 0x9A,
-};
-COMPILER_STRIP_GATE(0x803918DC, &localSidePos);
+static Vec const localSidePos = {2.3f, -15.5f, 15.6f};
/* 803918E8-803918F4 01DF48 000C+00 0/1 0/0 0/0 .rodata m_handLeftOutSidePos__9daAlink_c */
#pragma push
@@ -8017,26 +7871,16 @@ SECTION_RODATA static u8 const getSeType[255 + 1 /* padding */] = {
COMPILER_STRIP_GATE(0x80391A5C, &getSeType);
/* 80391B5C-80391B7C 01E1BC 0020+00 1/1 0/0 0/0 .rodata bgmLabel$37391 */
-SECTION_RODATA static u8 const bgmLabel[32] = {
- 0x01, 0x00, 0x00, 0x1C, 0x01, 0x00, 0x00, 0x0A, 0x01, 0x00, 0x00, 0x0B, 0x01, 0x00, 0x00, 0x14,
- 0x01, 0x00, 0x00, 0x81, 0x01, 0x00, 0x00, 0x82, 0x01, 0x00, 0x00, 0x83, 0x01, 0x00, 0x00, 0xA0,
-};
-COMPILER_STRIP_GATE(0x80391B5C, &bgmLabel);
+static u32 const bgmLabel[8] = {0x100001C, 0x100000A, 0x100000B, 0x1000014,
+ 0x1000081, 0x1000082, 0x1000083, 0x10000A0};
/* 80391B7C-80391B8C 01E1DC 0010+00 1/1 0/0 0/0 .rodata rupeeCount$37407 */
-SECTION_RODATA static u8 const rupeeCount[16] = {
- 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00, 0x64, 0x00, 0x00, 0x00, 0xC8,
-};
-COMPILER_STRIP_GATE(0x80391B7C, &rupeeCount);
+static int const rupeeCount[4] = {20, 50, 100, 200};
/* 80391B8C-80391BA0 01E1EC 0014+00 0/1 0/0 0/0 .rodata heartPieceMessage$37580 */
#pragma push
#pragma force_active on
-SECTION_RODATA static u8 const heartPieceMessage[20] = {
- 0x00, 0x00, 0x00, 0x86, 0x00, 0x00, 0x00, 0x9C, 0x00, 0x00,
- 0x00, 0x9D, 0x00, 0x00, 0x00, 0x9E, 0x00, 0x00, 0x00, 0x9F,
-};
-COMPILER_STRIP_GATE(0x80391B8C, &heartPieceMessage);
+static u32 const heartPieceMessage[5] = {0x86, 0x9C, 0x9D, 0x9E, 0x9F};
#pragma pop
/* 80391BA0-80391BAC 01E200 000C+00 0/1 0/0 0/0 .rodata effName$39419 */
@@ -8261,10 +8105,7 @@ SECTION_RODATA static u8 const effName_41208[12] = {
COMPILER_STRIP_GATE(0x80391D38, &effName_41208);
/* 80391D44-80391D54 01E3A4 0010+00 1/1 0/0 0/0 .rodata swordUpColor$41733 */
-SECTION_RODATA static u8 const swordUpColor[16] = {
- 0x00, 0x0D, 0x00, 0x0A, 0x00, 0x02, 0x00, 0xFF, 0x00, 0x1C, 0x00, 0x10, 0x00, 0x04, 0x00, 0xFF,
-};
-COMPILER_STRIP_GATE(0x80391D44, &swordUpColor);
+static GXColorS10 const swordUpColor[2] = {{13, 10, 2, 255}, {28, 16, 4, 255}};
/* 80391D54-80391D60 01E3B4 000C+00 1/1 0/0 0/0 .rodata swordCutSplashScale$41755 */
SECTION_RODATA static u8 const swordCutSplashScale[12] = {
@@ -8572,7 +8413,7 @@ asm void daAlink_c::handBgCheck() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::setItemHeap() {
+asm JKRHeap* daAlink_c::setItemHeap() {
nofralloc
#include "asm/d/a/d_a_alink/setItemHeap__9daAlink_cFv.s"
}
@@ -8604,7 +8445,7 @@ asm void daAlink_c::getAnimeResource(daPy_anmHeap_c* param_0, u16 param_1, u32 p
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::initModel(J3DModelData* param_0, u32 param_1, u32 param_2) {
+asm J3DModel* daAlink_c::initModel(J3DModelData* param_0, u32 param_1, u32 param_2) {
nofralloc
#include "asm/d/a/d_a_alink/initModel__9daAlink_cFP12J3DModelDataUlUl.s"
}
@@ -8771,21 +8612,7 @@ SECTION_DATA static u8 cNullVec__6Z2Calc[12] = {
};
/* 803AF99C-803AF9A8 00CABC 000A+02 2/2 0/0 0/0 .data l_peepEventName */
-SECTION_DATA static u8 l_peepEventName[10 + 2 /* padding */] = {
- 0x50,
- 0x45,
- 0x45,
- 0x50,
- 0x5F,
- 0x48,
- 0x4F,
- 0x4C,
- 0x45,
- 0x00,
- /* padding */
- 0x00,
- 0x00,
-};
+SECTION_DATA static const char l_peepEventName[10] = "PEEP_HOLE";
/* 803AF9A8-803AF9B4 -00001 000C+00 0/1 0/0 0/0 .data @4422 */
#pragma push
@@ -13552,84 +13379,31 @@ SECTION_DATA static void* l_wolfJntColData[54] = {
/* 803B2C40-803B2C50 00FD60 000D+03 0/1 0/0 0/0 .data defaultPortal$39238 */
#pragma push
#pragma force_active on
-SECTION_DATA static u8 defaultPortal[13 + 3 /* padding */] = {
- 0x50,
- 0x4F,
- 0x54,
- 0x41,
- 0x4C,
- 0x5F,
- 0x57,
- 0x41,
- 0x52,
- 0x50,
- 0x49,
- 0x4E,
- 0x00,
- /* padding */
- 0x00,
- 0x00,
- 0x00,
-};
+SECTION_DATA static const char defaultPortal[13] = "POTAL_WARPIN";
#pragma pop
/* 803B2C50-803B2C64 00FD70 0014+00 0/1 0/0 0/0 .data kBridgePortal$39239 */
#pragma push
#pragma force_active on
-SECTION_DATA static u8 kBridgePortal[20] = {
- 0x50, 0x4F, 0x52, 0x54, 0x41, 0x4C, 0x5F, 0x57, 0x41, 0x52,
- 0x50, 0x5F, 0x4B, 0x42, 0x52, 0x49, 0x44, 0x47, 0x45, 0x00,
-};
+SECTION_DATA static const char kBridgePortal[20] = "PORTAL_WARP_KBRIDGE";
#pragma pop
/* 803B2C64-803B2C78 00FD84 0014+00 0/1 0/0 0/0 .data oBridgePortal$39240 */
#pragma push
#pragma force_active on
-SECTION_DATA static u8 oBridgePortal[20] = {
- 0x50, 0x4F, 0x52, 0x54, 0x41, 0x4C, 0x5F, 0x57, 0x41, 0x52,
- 0x50, 0x5F, 0x4F, 0x42, 0x52, 0x49, 0x44, 0x47, 0x45, 0x00,
-};
+SECTION_DATA static const char oBridgePortal[20] = "PORTAL_WARP_OBRIDGE";
#pragma pop
/* 803B2C78-803B2C8C 00FD98 0014+00 0/1 0/0 0/0 .data volcBomPortal$39241 */
#pragma push
#pragma force_active on
-SECTION_DATA static u8 volcBomPortal[20] = {
- 0x50, 0x4F, 0x52, 0x54, 0x41, 0x4C, 0x5F, 0x57, 0x41, 0x52,
- 0x50, 0x5F, 0x42, 0x49, 0x47, 0x56, 0x4F, 0x4C, 0x43, 0x00,
-};
+SECTION_DATA static const char volcBomPortal[20] = "PORTAL_WARP_BIGVOLC";
#pragma pop
/* 803B2C8C-803B2CA4 00FDAC 0016+02 0/1 0/0 0/0 .data cannonPortal$39242 */
#pragma push
#pragma force_active on
-SECTION_DATA static u8 cannonPortal[22 + 2 /* padding */] = {
- 0x53,
- 0x4B,
- 0x59,
- 0x5F,
- 0x43,
- 0x41,
- 0x4E,
- 0x4E,
- 0x4F,
- 0x4E,
- 0x5F,
- 0x57,
- 0x41,
- 0x52,
- 0x50,
- 0x5F,
- 0x53,
- 0x54,
- 0x41,
- 0x52,
- 0x54,
- 0x00,
- /* padding */
- 0x00,
- 0x00,
-};
+SECTION_DATA static const char cannonPortal[22] = "SKY_CANNON_WARP_START";
#pragma pop
/* 803B2CA4-803B2CB0 -00001 000C+00 0/1 0/0 0/0 .data @39610 */
@@ -14320,7 +14094,8 @@ asm void daAlink_c::createHeap() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm J3DMaterialAnm::~J3DMaterialAnm() {
+// asm J3DMaterialAnm::~J3DMaterialAnm() {
+extern "C" asm void __dt__14J3DMaterialAnmFv() {
nofralloc
#include "asm/d/a/d_a_alink/__dt__14J3DMaterialAnmFv.s"
}
@@ -14328,14 +14103,9 @@ asm J3DMaterialAnm::~J3DMaterialAnm() {
/* 800A48F0-800A4910 09F230 0020+00 1/1 0/0 0/0 .text daAlink_createHeap__FP10fopAc_ac_c
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-static asm void daAlink_createHeap(fopAc_ac_c* param_0) {
- nofralloc
-#include "asm/d/a/d_a_alink/daAlink_createHeap__FP10fopAc_ac_c.s"
+static void daAlink_createHeap(fopAc_ac_c* param_0) {
+ daAlink_c::createHeap();
}
-#pragma pop
/* 800A4910-800A4BC8 09F250 02B8+00 5/5 0/0 0/0 .text setSelectEquipItem__9daAlink_cFi */
#pragma push
@@ -14348,24 +14118,16 @@ asm void daAlink_c::setSelectEquipItem(int param_0) {
#pragma pop
/* 800A4BC8-800A4C40 09F508 0078+00 2/2 0/0 0/0 .text checkBoarStart__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkBoarStart() {
- nofralloc
-#include "asm/d/a/d_a_alink/checkBoarStart__9daAlink_cFv.s"
+BOOL daAlink_c::checkBoarStart() {
+ // Stage: Bulblin Camp Room: Outside Arbiter's
+ return (checkStageName("F_SP118") && getStartRoomNo() == 3) && dComIfGs_getStartPoint() == 0;
}
-#pragma pop
/* 800A4C40-800A4CB4 09F580 0074+00 2/2 0/0 0/0 .text checkCanoeStart__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkCanoeStart() {
- nofralloc
-#include "asm/d/a/d_a_alink/checkCanoeStart__9daAlink_cFv.s"
+BOOL daAlink_c::checkCanoeStart() {
+ // Stage: Lake Hylia Room: Lake
+ return (checkStageName("F_SP115") && getStartRoomNo() == 0) && dComIfGs_getStartPoint() == 2;
}
-#pragma pop
/* 800A4CB4-800A54F4 09F5F4 0840+00 1/1 0/0 0/0 .text playerInit__9daAlink_cFv */
#pragma push
@@ -14379,13 +14141,7 @@ asm void daAlink_c::playerInit() {
/* 800A54F4-800A551C 09FE34 0028+00 3/3 0/0 0/0 .text checkHorseStart__9daAlink_cFUli */
BOOL daAlink_c::checkHorseStart(u32 pLastMode, int pStartMode) {
- bool horseStart = false;
-
- if (pLastMode == 1 || pStartMode == 2 || pLastMode == 8) {
- horseStart = true;
- }
-
- return horseStart;
+ return pLastMode == 1 || pStartMode == 2 || pLastMode == 8;
}
/* 800A551C-800A5CC8 09FE5C 07AC+00 1/1 0/0 0/0 .text setStartProcInit__9daAlink_cFv */
@@ -14400,7 +14156,7 @@ asm void daAlink_c::setStartProcInit() {
/* ############################################################################################## */
/* 80450FCC-80450FD0 0004CC 0004+00 1/1 0/0 0/0 .sbss bgWaitFlg$58404 */
-static u8 bgWaitFlg[4];
+static s32 bgWaitFlg;
/* 80450FD0-80450FD8 -00001 0008+00 2/2 0/0 0/0 .sbss None */
/* 80450FD0 0001+00 data_80450FD0 None */
@@ -15049,24 +14805,21 @@ asm void daAlink_c::setWolfCollisionPos() {
#pragma pop
/* 800ABAE0-800ABB28 0A6420 0048+00 2/2 0/0 0/0 .text initLockAt__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::initLockAt() {
- nofralloc
-#include "asm/d/a/d_a_alink/initLockAt__9daAlink_cFv.s"
+void daAlink_c::initLockAt() {
+ field_0x122C[0].OnAtSPrmBit(0x20);
+ field_0x122C[0].OnAtNoHitMark();
+ field_0x122C[0].OffAtNoConHit();
+ field_0x122C[0].ResetAtHit();
}
-#pragma pop
/* 800ABB28-800ABB84 0A6468 005C+00 3/3 0/0 0/0 .text cancelLockAt__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::cancelLockAt() {
- nofralloc
-#include "asm/d/a/d_a_alink/cancelLockAt__9daAlink_cFv.s"
+void daAlink_c::cancelLockAt() {
+ field_0x122C[0].OffAtSPrmBit(0x20);
+ field_0x122C[0].OffAtNoHitMark();
+ field_0x122C[0].OnAtNoConHit();
+ field_0x122C[0].ResetAtHit();
+ field_0x814.SetAtApid(0xFFFFFFFF);
}
-#pragma pop
/* 800ABB84-800ABDB8 0A64C4 0234+00 1/1 0/0 0/0 .text setCollisionPos__9daAlink_cFv */
#pragma push
@@ -15099,26 +14852,28 @@ asm float daAlink_c::getBaseAnimeFrame() const {
#pragma pop
/* 800AC378-800AC394 0A6CB8 001C+00 1/0 0/0 0/0 .text setAnimeFrame__9daAlink_cFf */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::setAnimeFrame(f32 param_0) {
- nofralloc
-#include "asm/d/a/d_a_alink/setAnimeFrame__9daAlink_cFf.s"
+void daAlink_c::setAnimeFrame(f32 frame) {
+ mFrameCtrl1[0].setFrame(frame);
+ mFrameCtrl1[1].setFrame(frame);
+ mFrameCtrl1[2].setFrame(frame);
+ mFrameCtrl2[0].setFrame(frame);
+ mFrameCtrl2[1].setFrame(frame);
+ mFrameCtrl2[2].setFrame(frame);
}
-#pragma pop
/* 800AC394-800AC450 0A6CD4 00BC+00 6/6 0/0 0/0 .text
* setFrameCtrl__9daAlink_cFP16daPy_frameCtrl_cUcssff */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::setFrameCtrl(daPy_frameCtrl_c* param_0, u8 param_1, s16 param_2, s16 param_3,
- f32 param_4, f32 param_5) {
- nofralloc
-#include "asm/d/a/d_a_alink/setFrameCtrl__9daAlink_cFP16daPy_frameCtrl_cUcssff.s"
+void daAlink_c::setFrameCtrl(daPy_frameCtrl_c* p_ctrl, u8 attr, s16 start, s16 end, f32 rate,
+ f32 frame) {
+ if (i_checkNoResetFlg0(UNDER_WATER_MOVEMENT)) {
+ if (checkZoraWearAbility()) {
+ rate *= daAlinkHIO_magneBoots_c0::m.mZoraWaterAnmSpeed;
+ } else {
+ rate *= daAlinkHIO_magneBoots_c0::m.mWaterWalkAnmRate;
+ }
+ }
+ p_ctrl->setFrameCtrl(attr, start, end, rate, frame);
}
-#pragma pop
/* ############################################################################################## */
/* 80453278-80453280 001878 0008+00 1/1 0/0 0/0 .sdata2 kandelaarAnm$62207 */
@@ -15173,14 +14928,13 @@ asm void daAlink_c::getUnderUpperAnime(daAlink_c::daAlink_ANM param_0, J3DAnmTra
#pragma pop
/* 800AC738-800AC754 0A7078 001C+00 7/7 0/0 0/0 .text setDoubleAnimeBlendRatio__9daAlink_cFf */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::setDoubleAnimeBlendRatio(f32 param_0) {
- nofralloc
-#include "asm/d/a/d_a_alink/setDoubleAnimeBlendRatio__9daAlink_cFf.s"
+void daAlink_c::setDoubleAnimeBlendRatio(f32 param_0) {
+ f32 tmp = lit_6040; // remove later
+ field_0x1f28[0].setRatio(tmp - param_0);
+ field_0x1f28[1].setRatio(param_0);
+ mNowAnmPack[0].setRatio(tmp - param_0);
+ mNowAnmPack[1].setRatio(param_0);
}
-#pragma pop
/* 800AC754-800ACA14 0A7094 02C0+00 2/2 0/0 0/0 .text
* commonDoubleAnime__9daAlink_cFP15J3DAnmTransformP15J3DAnmTransformP15J3DAnmTransformP15J3DAnmTransformfffi
@@ -15223,37 +14977,21 @@ asm void daAlink_c::commonSingleAnime(J3DAnmTransform* param_0, J3DAnmTransform*
/* 800ACF80-800ACFB0 0A78C0 0030+00 88/88 0/0 0/0 .text
* setSingleAnimeBase__9daAlink_cFQ29daAlink_c11daAlink_ANM */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::setSingleAnimeBase(daAlink_c::daAlink_ANM param_0) {
- nofralloc
-#include "asm/d/a/d_a_alink/setSingleAnimeBase__9daAlink_cFQ29daAlink_c11daAlink_ANM.s"
+void daAlink_c::setSingleAnimeBase(daAlink_c::daAlink_ANM anm) {
+ setSingleAnime(anm, lit_6040, FLOAT_LABEL(lit_6108), -1, lit_6109);
}
-#pragma pop
/* 800ACFB0-800ACFE0 0A78F0 0030+00 27/27 0/0 0/0 .text
* setSingleAnimeBaseMorf__9daAlink_cFQ29daAlink_c11daAlink_ANMf */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::setSingleAnimeBaseMorf(daAlink_c::daAlink_ANM param_0, f32 param_1) {
- nofralloc
-#include "asm/d/a/d_a_alink/setSingleAnimeBaseMorf__9daAlink_cFQ29daAlink_c11daAlink_ANMf.s"
+void daAlink_c::setSingleAnimeBaseMorf(daAlink_c::daAlink_ANM anm, f32 param_1) {
+ setSingleAnime(anm, lit_6040, FLOAT_LABEL(lit_6108), -1, param_1);
}
-#pragma pop
/* 800ACFE0-800AD00C 0A7920 002C+00 77/77 0/0 0/0 .text
* setSingleAnimeBaseSpeed__9daAlink_cFQ29daAlink_c11daAlink_ANMff */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::setSingleAnimeBaseSpeed(daAlink_c::daAlink_ANM param_0, f32 param_1,
- f32 param_2) {
- nofralloc
-#include "asm/d/a/d_a_alink/setSingleAnimeBaseSpeed__9daAlink_cFQ29daAlink_c11daAlink_ANMff.s"
+void daAlink_c::setSingleAnimeBaseSpeed(daAlink_c::daAlink_ANM anm, f32 param_1, f32 param_2) {
+ setSingleAnime(anm, param_1, FLOAT_LABEL(lit_6108), -1, param_2);
}
-#pragma pop
/* 800AD00C-800AD0F4 0A794C 00E8+00 58/58 0/0 0/0 .text
* setSingleAnime__9daAlink_cFQ29daAlink_c11daAlink_ANMffsf */
@@ -15281,14 +15019,12 @@ asm void daAlink_c::setSingleAnimeParam(daAlink_c::daAlink_ANM param_0,
/* 800AD128-800AD170 0A7A68 0048+00 1/1 0/0 0/0 .text
* animePlay__9daAlink_cFP15J3DAnmTransformP16daPy_frameCtrl_c */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::animePlay(J3DAnmTransform* param_0, daPy_frameCtrl_c* param_1) {
- nofralloc
-#include "asm/d/a/d_a_alink/animePlay__9daAlink_cFP15J3DAnmTransformP16daPy_frameCtrl_c.s"
+void daAlink_c::animePlay(J3DAnmTransform* param_0, daPy_frameCtrl_c* param_1) {
+ if (param_0 != NULL) {
+ param_1->updateFrame();
+ param_0->setFrame(param_1->getFrame());
+ }
}
-#pragma pop
/* 800AD170-800AD2D8 0A7AB0 0168+00 2/2 0/0 0/0 .text allAnimePlay__9daAlink_cFv */
#pragma push
@@ -15696,24 +15432,25 @@ void dBgS_RoofChk::SetPos(cXyz const& pos) {
}
/* 800B1488-800B14B4 0ABDC8 002C+00 4/4 0/0 0/0 .text checkWaterPolygonUnder__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkWaterPolygonUnder() {
- nofralloc
-#include "asm/d/a/d_a_alink/checkWaterPolygonUnder__9daAlink_cFv.s"
+BOOL daAlink_c::checkWaterPolygonUnder() {
+ return i_checkModeFlg(MODE_SWIMMING) || mCurrent.mPosition.y < mWaterY;
}
-#pragma pop
/* 800B14B4-800B154C 0ABDF4 0098+00 2/2 0/0 0/0 .text setWaterY__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::setWaterY() {
- nofralloc
-#include "asm/d/a/d_a_alink/setWaterY__9daAlink_cFv.s"
+void daAlink_c::setWaterY() {
+ if (mLinkAcch.ChkWaterHit()) {
+ i_onNoResetFlg0(FLG0_UNK_80);
+ field_0x2fbc = dComIfG_Bgsp().GetPolyAtt0(mLinkAcch.m_wtr);
+ mWaterY = mLinkAcch.m_wtr.GetHeight();
+ if (field_0x2fbc != 6) {
+ checkWaterInKandelaar(mWaterY);
+ }
+ } else {
+ i_offNoResetFlg0(FLG0_UNK_80);
+ field_0x2fbc = 16;
+ mWaterY = lit_9138;
+ }
}
-#pragma pop
/* 800B154C-800B172C 0ABE8C 01E0+00 2/2 0/0 0/0 .text setHangWaterY__9daAlink_cFv */
#pragma push
@@ -15763,25 +15500,17 @@ asm void daAlink_c::setBgCheckParam() {
/* 800B1B28-800B1B68 0AC468 0040+00 4/4 0/0 0/0 .text checkNotJumpSinkLimit__9daAlink_cFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkNotJumpSinkLimit() {
- nofralloc
-#include "asm/d/a/d_a_alink/checkNotJumpSinkLimit__9daAlink_cFv.s"
+BOOL daAlink_c::checkNotJumpSinkLimit() {
+ return mSinkShapeOffset < lit_14614 || field_0x2fbd == 3 ||
+ (field_0x2fbd == 4 && mSinkShapeOffset < lit_14624);
}
-#pragma pop
/* 800B1B68-800B1BAC 0AC4A8 0044+00 2/2 0/0 0/0 .text checkNotItemSinkLimit__9daAlink_cFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkNotItemSinkLimit() {
- nofralloc
-#include "asm/d/a/d_a_alink/checkNotItemSinkLimit__9daAlink_cFv.s"
+BOOL daAlink_c::checkNotItemSinkLimit() {
+ return mSinkShapeOffset < lit_28045 &&
+ (field_0x2fbd == 1 || field_0x2fbd == 2 || field_0x2fbd == 3 || field_0x2fbd == 4);
}
-#pragma pop
/* ############################################################################################## */
/* 804532A8-804532AC 0018A8 0004+00 1/1 0/0 0/0 .sdata2 @64730 */
@@ -15801,27 +15530,9 @@ asm void daAlink_c::setSandShapeOffset() {
#pragma pop
/* 800B1FB8-800B1FD8 0AC8F8 0020+00 2/2 0/0 0/0 .text checkLv2MiddleBossBgRide__9daAlink_cFs */
-#ifdef NONMATCHING
-bool daAlink_c::checkLv2MiddleBossBgRide(short param1) {
- bool check = false;
-
- // beqlr needs to be beq
- if (param1 != 0x7B && param1 == 0x7D) {
- check = true;
- }
-
- return check;
-}
-#else
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkLv2MiddleBossBgRide(s16 param_0) {
- nofralloc
-#include "asm/d/a/d_a_alink/checkLv2MiddleBossBgRide__9daAlink_cFs.s"
+bool daAlink_c::checkLv2MiddleBossBgRide(short param_0) {
+ return param_0 == 0x7B || param_0 == 0x7D;
}
-#pragma pop
-#endif
/* 800B1FD8-800B21EC 0AC918 0214+00 11/11 0/0 0/0 .text getSlidePolygon__9daAlink_cFP8cM3dGPla */
#pragma push
@@ -15834,14 +15545,9 @@ asm void daAlink_c::getSlidePolygon(cM3dGPla* param_0) {
#pragma pop
/* 800B21EC-800B221C 0ACB2C 0030+00 4/4 0/0 0/0 .text checkSlope__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkSlope() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkSlope__9daAlink_cCFv.s"
+BOOL daAlink_c::checkSlope() const {
+ return field_0x3174 != 8 && field_0x2ff0 < -field_0x3122;
}
-#pragma pop
/* 800B221C-800B23FC 0ACB5C 01E0+00 1/0 0/0 0/0 .text setPlayerPosAndAngle__9daAlink_cFPC4cXyzsi
*/
@@ -15877,13 +15583,13 @@ asm void daAlink_c::setPlayerPosAndAngle(f32 (*param_0)[4]) {
/* 800B25CC-800B25E8 0ACF0C 001C+00 16/16 0/0 0/0 .text itemTriggerCheck__9daAlink_cFUc
*/
-u32 daAlink_c::itemTriggerCheck(u8 pTrigger) {
+BOOL daAlink_c::itemTriggerCheck(u8 pTrigger) {
field_0x2fae |= pTrigger;
return mItemTrigger & pTrigger;
}
/* 800B25E8-800B2604 0ACF28 001C+00 11/11 0/0 0/0 .text itemButtonCheck__9daAlink_cFUc */
-u32 daAlink_c::itemButtonCheck(u8 pButton) {
+BOOL daAlink_c::itemButtonCheck(u8 pButton) {
field_0x2fae |= pButton;
return mItemButton & pButton;
}
@@ -15904,12 +15610,12 @@ void daAlink_c::spActionTrigger() {
itemTriggerCheck(64);
}
-u32 daAlink_c::midnaTalkTrigger() const {
+BOOL daAlink_c::midnaTalkTrigger() const {
return mItemTrigger & 4;
}
-void daAlink_c::swordSwingTrigger() {
- itemTriggerCheck(8);
+BOOL daAlink_c::swordSwingTrigger() {
+ return itemTriggerCheck(8);
}
/* 800B26DC-800B26FC 0AD01C 0020+00 2/2 0/0 0/0 .text setItemActionButtonStatus__9daAlink_cFUc */
@@ -15977,7 +15683,7 @@ void daAlink_c::setBStatus(u8 status) {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::checkAtnWaitAnime() {
+asm BOOL daAlink_c::checkAtnWaitAnime() {
nofralloc
#include "asm/d/a/d_a_alink/checkAtnWaitAnime__9daAlink_cFv.s"
}
@@ -15985,14 +15691,15 @@ asm void daAlink_c::checkAtnWaitAnime() {
/* 800B3358-800B33E4 0ADC98 008C+00 2/2 0/0 0/0 .text
* setTiredVoice__9daAlink_cFP16daPy_frameCtrl_c */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::setTiredVoice(daPy_frameCtrl_c* param_0) {
- nofralloc
-#include "asm/d/a/d_a_alink/setTiredVoice__9daAlink_cFP16daPy_frameCtrl_c.s"
+void daAlink_c::setTiredVoice(daPy_frameCtrl_c* param_0) {
+ if (param_0->checkPass(lit_7448)) {
+ if (i_dComIfGs_getLife() <= 2) {
+ voiceStart(Z2SE_AL_V_TIRED_L);
+ } else {
+ voiceStart(Z2SE_AL_V_TIRED_S);
+ }
+ }
}
-#pragma pop
/* 800B33E4-800B3494 0ADD24 00B0+00 4/4 0/0 0/0 .text checkRestHPAnime__9daAlink_cFv */
#pragma push
@@ -16057,14 +15764,9 @@ asm void daAlink_c::initServiceWaitTime() {
#pragma pop
/* 800B3904-800B3924 0AE244 0020+00 50/50 0/0 0/0 .text checkZeroSpeedF__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkZeroSpeedF() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkZeroSpeedF__9daAlink_cCFv.s"
+bool daAlink_c::checkZeroSpeedF() const {
+ return fabsf(mNormalSpeed) < lit_12328;
}
-#pragma pop
/* 800B3924-800B3F2C 0AE264 0608+00 14/14 0/0 0/0 .text setNormalSpeedF__9daAlink_cFff */
#pragma push
@@ -16130,22 +15832,20 @@ asm void daAlink_c::checkServiceWaitMode() {
#pragma pop
/* 800B48D0-800B4908 0AF210 0038+00 18/18 0/0 0/0 .text setJumpMode__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::setJumpMode() {
- nofralloc
-#include "asm/d/a/d_a_alink/setJumpMode__9daAlink_cFv.s"
+void daAlink_c::setJumpMode() {
+ onModeFlg(MODE_JUMP);
+ mLastJumpPos = mCurrent.mPosition;
+ mFallHeight = mLastJumpPos.y;
+ field_0x33c8 = mLastJumpPos.y;
}
-#pragma pop
/* 800B4908-800B4918 0AF248 0010+00 0/0 0/0 1/1 .text getMetamorphoseNearDis__9daAlink_cCFv */
-float daAlink_c::getMetamorphoseNearDis() const {
+f32 daAlink_c::getMetamorphoseNearDis() const {
return daAlinkHIO_basic_c0::m.mTransformBlockNearDis;
}
/* 800B4918-800B4928 0AF258 0010+00 0/0 0/0 1/1 .text getMetamorphoseFarDis__9daAlink_cCFv */
-float daAlink_c::getMetamorphoseFarDis() const {
+f32 daAlink_c::getMetamorphoseFarDis() const {
return daAlinkHIO_basic_c0::m.mTransformBlockFarDis;
}
@@ -16155,24 +15855,30 @@ s16 daAlink_c::getMetamorphoseFarAngle() const {
}
/* 800B4938-800B4950 0AF278 0018+00 0/0 1/1 0/0 .text setMidnaMsg__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::setMidnaMsg() {
- nofralloc
-#include "asm/d/a/d_a_alink/setMidnaMsg__9daAlink_cFv.s"
+void daAlink_c::setMidnaMsg() {
+ if (mMidnaMsg != NULL) {
+ mMidnaMsg->onUseFlg();
+ }
}
-#pragma pop
/* 800B4950-800B4A08 0AF290 00B8+00 3/3 0/0 0/0 .text notTalk__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::notTalk() {
- nofralloc
-#include "asm/d/a/d_a_alink/notTalk__9daAlink_cFv.s"
+bool daAlink_c::notTalk() {
+ BOOL chk;
+ if (dComIfG_Bgsp().ChkPolySafe(mLinkAcch.m_gnd) && dBgS_CheckBGroundPoly(mLinkAcch.m_gnd)) {
+ chk = true;
+ } else {
+ chk = false;
+ }
+
+ if ((mMidnaTalkDelayTimer != 0 ||
+ (i_checkMagneBootsOn() && !cBgW_CheckBGround(mMagneBootsTopVec.y))) ||
+ !i_checkModeFlg(MODE_SWIMMING | MODE_ROPE_WALK | MODE_VINE_CLIMB | MODE_UNK_800 |
+ MODE_RIDING | MODE_NO_COLLISION | MODE_CLIMB | MODE_JUMP) &&
+ !chk) {
+ return true;
+ }
+ return false;
}
-#pragma pop
/* 800B4A08-800B4B2C 0AF348 0124+00 11/11 0/0 0/0 .text setTalkStatus__9daAlink_cFv */
#pragma push
@@ -16185,14 +15891,13 @@ asm void daAlink_c::setTalkStatus() {
#pragma pop
/* 800B4B2C-800B4B7C 0AF46C 0050+00 1/1 0/0 0/0 .text getFrontRollRate__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::getFrontRollRate() {
- nofralloc
-#include "asm/d/a/d_a_alink/getFrontRollRate__9daAlink_cFv.s"
+f32 daAlink_c::getFrontRollRate() {
+ if (checkHeavyStateOn(1, 1)) {
+ return lit_16641 * mHeavySpeedMultiplier;
+ } else {
+ return lit_16641;
+ }
}
-#pragma pop
/* 800B4B7C-800B5284 0AF4BC 0708+00 2/2 0/0 0/0 .text decideCommonDoStatus__9daAlink_cFv
*/
@@ -16219,34 +15924,47 @@ asm void daAlink_c::decideDoStatus() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::checkWaitAction() {
+asm BOOL daAlink_c::checkWaitAction() {
nofralloc
#include "asm/d/a/d_a_alink/checkWaitAction__9daAlink_cFv.s"
}
#pragma pop
/* 800B5BC0-800B5C34 0B0500 0074+00 3/3 0/0 0/0 .text setFallVoice__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::setFallVoice() {
- nofralloc
-#include "asm/d/a/d_a_alink/setFallVoice__9daAlink_cFv.s"
+void daAlink_c::setFallVoice() {
+ if (mFallVoiceInit == 0 && lit_8782 * (mFallHeight - mCurrent.mPosition.y) > lit_8676) {
+ voiceStart(Z2SE_AL_V_FALL);
+ mFallVoiceInit = 1;
+ }
}
-#pragma pop
/* 800B5C34-800B5C64 0B0574 0030+00 2/2 0/0 0/0 .text setLandPassiveData__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::setLandPassiveData() {
- nofralloc
-#include "asm/d/a/d_a_alink/setLandPassiveData__9daAlink_cFv.s"
+void daAlink_c::setLandPassiveData() {
+ if (field_0x30f0 == 0) {
+ if (doTrigger()) {
+ field_0x30f0 = 0x41;
+ }
+ } else {
+ field_0x30f0--;
+ }
}
-#pragma pop
/* 800B5C64-800B5CCC 0B05A4 0068+00 5/5 0/0 0/0 .text setStepLandVibration__9daAlink_cFv
*/
+// cXyz issues
+#ifdef NONMATCHING
+void daAlink_c::setStepLandVibration() {
+ int shock;
+ if (checkBootsOrArmorHeavy()) {
+ shock = 3;
+ } else {
+ shock = 1;
+ }
+ cXyz xyz(0.0f, 1.0f, 0.0f);
+
+ dComIfGp_getVibration().StartShock(shock, 15, xyz);
+}
+#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
@@ -16255,6 +15973,7 @@ asm void daAlink_c::setStepLandVibration() {
#include "asm/d/a/d_a_alink/setStepLandVibration__9daAlink_cFv.s"
}
#pragma pop
+#endif
/* 800B5CCC-800B5F6C 0B060C 02A0+00 5/5 0/0 0/0 .text checkLandAction__9daAlink_cFi */
#pragma push
@@ -16270,7 +15989,7 @@ asm void daAlink_c::checkLandAction(int param_0) {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::checkSlideAction() {
+asm BOOL daAlink_c::checkSlideAction() {
nofralloc
#include "asm/d/a/d_a_alink/checkSlideAction__9daAlink_cFv.s"
}
@@ -16288,14 +16007,12 @@ asm void daAlink_c::checkAutoJumpAction() {
#pragma pop
/* 800B69CC-800B6A30 0B130C 0064+00 2/2 0/0 0/0 .text checkCutJumpInFly__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkCutJumpInFly() {
- nofralloc
-#include "asm/d/a/d_a_alink/checkCutJumpInFly__9daAlink_cFv.s"
+bool daAlink_c::checkCutJumpInFly() {
+ if ((mEquipItem == EQUIP_SWORD && i_checkResetFlg0(RFLG0_UNK_80)) || checkForceSwordSwing()) {
+ return procCutJumpInit(1);
+ }
+ return false;
}
-#pragma pop
/* ############################################################################################## */
/* 80450698-8045069C 000118 0004+00 4/4 0/0 0/0 .sdata l_ladderAnmBaseTransY */
@@ -16331,15 +16048,16 @@ asm void daAlink_c::checkItemChangeAutoAction() {
}
#pragma pop
+inline bool i_dComIfGp_checkPlayerStatus0(int param_0, u32 flag) {
+ return g_dComIfG_gameInfo.play.checkPlayerStatus(param_0, 0, flag);
+}
+
/* 800B7168-800B7190 0B1AA8 0028+00 7/7 0/0 0/0 .text setFastShotTimer__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::setFastShotTimer() {
- nofralloc
-#include "asm/d/a/d_a_alink/setFastShotTimer__9daAlink_cFv.s"
+void daAlink_c::setFastShotTimer() {
+ if (!i_dComIfGp_checkPlayerStatus0(0, 0x2000)) {
+ mFastShotTime = daAlinkHIO_item_c0::m.mItemFPTransitionTimer;
+ }
}
-#pragma pop
/* 800B7190-800B71EC 0B1AD0 005C+00 9/9 0/0 0/0 .text cancelItemUseQuake__9daAlink_cFi */
#pragma push
@@ -16377,21 +16095,24 @@ asm void daAlink_c::checkItemActorPointer() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::checkSwordTwirlAction() {
+asm bool daAlink_c::checkSwordTwirlAction() {
nofralloc
#include "asm/d/a/d_a_alink/checkSwordTwirlAction__9daAlink_cFv.s"
}
#pragma pop
/* 800B74B4-800B7528 0B1DF4 0074+00 3/3 0/0 0/0 .text checkUpperItemActionFly__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkUpperItemActionFly() {
- nofralloc
-#include "asm/d/a/d_a_alink/checkUpperItemActionFly__9daAlink_cFv.s"
+BOOL daAlink_c::checkUpperItemActionFly() {
+ if (checkBowAndSlingItem(mEquipItem)) {
+ checkUpperItemActionBowFly();
+ } else if (mEquipItem == BOOMERANG) {
+ checkUpperItemActionBoomerangFly();
+ } else if (mEquipItem == COPY_ROD) {
+ checkUpperItemActionCopyRodFly();
+ }
+
+ return checkCanoeJumpRide();
}
-#pragma pop
/* 800B7528-800B75EC 0B1E68 00C4+00 1/1 0/0 0/0 .text checkItemButtonChange__9daAlink_cFv
*/
@@ -16416,23 +16137,20 @@ asm void daAlink_c::checkUpperItemAction() {
#pragma pop
/* 800B7B7C-800B7BF8 0B24BC 007C+00 1/1 0/0 0/0 .text orderPeep__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::orderPeep() {
- nofralloc
-#include "asm/d/a/d_a_alink/orderPeep__9daAlink_cFv.s"
+void daAlink_c::orderPeep() {
+ field_0x2fad = field_0x27f4->getSceneListID();
+ field_0x2ff2 = 20;
+ fopAcM_orderOtherEvent(this, field_0x27f4, l_peepEventName, 0xFFFF, 1, 0);
+ if (i_checkWolf()) {
+ procWolfWaitInit();
+ } else {
+ procWaitInit();
+ }
}
-#pragma pop
/* ############################################################################################## */
/* 804532B0-804532B4 0018B0 0004+00 1/1 0/0 0/0 .sdata2 itemTalkType$67468 */
-SECTION_SDATA2 static u8 itemTalkType[4] = {
- 0x00,
- 0x06,
- 0x00,
- 0x07,
-};
+SECTION_SDATA2 static u16 itemTalkType[2] = {6, 7};
/* 800B7BF8-800B7D4C 0B2538 0154+00 13/13 0/0 0/0 .text orderTalk__9daAlink_cFi */
#pragma push
@@ -16488,15 +16206,18 @@ asm void daAlink_c::checkNormalAction() {
}
#pragma pop
+u16 daAlink_c::getReadyItem() {
+ return dComIfGp_getSelectItem(mSelectItemId);
+}
+
/* 800B8930-800B8988 0B3270 0058+00 11/11 0/0 0/0 .text checkReadyItem__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkReadyItem() {
- nofralloc
-#include "asm/d/a/d_a_alink/checkReadyItem__9daAlink_cFv.s"
+bool daAlink_c::checkReadyItem() {
+ if (mEquipItem == NO_ITEM) {
+ return false;
+ }
+
+ return getReadyItem() == mEquipItem;
}
-#pragma pop
/* 800B8988-800B9010 0B32C8 0688+00 2/2 0/0 0/0 .text checkItemAction__9daAlink_cFv */
#pragma push
@@ -16525,21 +16246,42 @@ asm void daAlink_c::checkMoveDoAction() {
/* 800B9148-800B9254 0B3A88 010C+00 3/3 0/0 0/0 .text checkSideRollAction__9daAlink_cFi
*/
+#ifdef NONMATCHING
+BOOL daAlink_c::checkSideRollAction(int param_0) {
+ if (checkNotJumpSinkLimit() || checkHeavyStateOn(1, 1) || checkInputOnR() ||
+ checkCutBackState()) {
+ return false;
+ } else {
+ if (mTargetedActor != NULL) {
+ if (checkEnemyGroup(mTargetedActor) &&
+ mTargetedActor->mCurrent.mPosition.abs2XZ(mCurrent.mPosition) <= lit_6237) {
+ return procSideRollInit(param_0);
+ } else {
+ return procTurnMoveInit(param_0);
+ }
+ } else {
+ return procSideRollInit(param_0);
+ }
+ }
+ return false;
+}
+#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::checkSideRollAction(int param_0) {
+asm BOOL daAlink_c::checkSideRollAction(int param_0) {
nofralloc
#include "asm/d/a/d_a_alink/checkSideRollAction__9daAlink_cFi.s"
}
#pragma pop
+#endif
/* 800B9254-800B92D0 0B3B94 007C+00 35/35 0/0 0/0 .text checkNoUpperAnime__9daAlink_cCFv
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::checkNoUpperAnime() const {
+asm BOOL daAlink_c::checkNoUpperAnime() const {
nofralloc
#include "asm/d/a/d_a_alink/checkNoUpperAnime__9daAlink_cCFv.s"
}
@@ -16570,7 +16312,7 @@ asm void daAlink_c::checkItemEquipAnime() const {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::checkEquipAnime() const {
+asm BOOL daAlink_c::checkEquipAnime() const {
nofralloc
#include "asm/d/a/d_a_alink/checkEquipAnime__9daAlink_cCFv.s"
}
@@ -16623,14 +16365,14 @@ asm void daAlink_c::swordUnequip() {
#pragma pop
/* 800B9640-800B96A4 0B3F80 0064+00 6/6 0/0 0/0 .text itemEquip__9daAlink_cFUs */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::itemEquip(u16 param_0) {
- nofralloc
-#include "asm/d/a/d_a_alink/itemEquip__9daAlink_cFUs.s"
+void daAlink_c::itemEquip(u16 item_id) {
+ if (mThrowBoomerangActor.getActor() == NULL || item_id != BOOMERANG) {
+ field_0x2fde = item_id;
+ dComIfGp_clearPlayerStatus0(0, 0x400000);
+ i_offNoResetFlg3(0x40000);
+ itemUnequip(field_0x2fde, lit_6041);
+ }
}
-#pragma pop
/* 800B96A4-800B97EC 0B3FE4 0148+00 2/2 0/0 0/0 .text itemUnequip__9daAlink_cFUsf */
#pragma push
@@ -16666,7 +16408,7 @@ asm void daAlink_c::allUnequip(int param_0) {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::checkItemChangeFromButton() {
+asm BOOL daAlink_c::checkItemChangeFromButton() {
nofralloc
#include "asm/d/a/d_a_alink/checkItemChangeFromButton__9daAlink_cFv.s"
}
@@ -16676,7 +16418,7 @@ asm void daAlink_c::checkItemChangeFromButton() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::checkNextActionFromButton() {
+asm BOOL daAlink_c::checkNextActionFromButton() {
nofralloc
#include "asm/d/a/d_a_alink/checkNextActionFromButton__9daAlink_cFv.s"
}
@@ -16686,7 +16428,7 @@ asm void daAlink_c::checkNextActionFromButton() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::checkGroundSpecialMode() {
+asm BOOL daAlink_c::checkGroundSpecialMode() {
nofralloc
#include "asm/d/a/d_a_alink/checkGroundSpecialMode__9daAlink_cFv.s"
}
@@ -16806,36 +16548,27 @@ inline u16 i_dComIfGs_getRupee() {
/* 800BB408-800BB458 0B5D48 0050+00 6/6 0/0 0/0 .text checkMagicArmorHeavy__9daAlink_cCFv
*/
BOOL daAlink_c::checkMagicArmorHeavy() const {
- bool check = false;
-
- if (checkMagicArmorWearAbility() && i_dComIfGs_getRupee() == 0) {
- check = true;
- }
-
- return check;
+ return checkMagicArmorWearAbility() && i_dComIfGs_getRupee() == 0;
}
/* 800BB458-800BB4B8 0B5D98 0060+00 1/0 0/0 0/0 .text checkBootsOrArmorHeavy__9daAlink_cCFv */
BOOL daAlink_c::checkBootsOrArmorHeavy() const {
- bool check = false;
-
- if (i_checkEquipHeavyBoots() || checkMagicArmorHeavy() || checkIronBallWaitAnime()) {
- check = true;
- }
-
- return check;
+ return i_checkEquipHeavyBoots() || checkMagicArmorHeavy() || checkIronBallWaitAnime();
}
/* 800BB4B8-800BB560 0B5DF8 00A8+00 29/29 0/0 0/0 .text checkHeavyStateOn__9daAlink_cFii
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkHeavyStateOn(int param_0, int param_1) {
- nofralloc
-#include "asm/d/a/d_a_alink/checkHeavyStateOn__9daAlink_cFii.s"
+// param_0 something related to boots
+BOOL daAlink_c::checkHeavyStateOn(int param_0, int param_1) {
+ if (!checkEventRun()) {
+ if ((param_1 != 0 && mSinkShapeOffset < lit_14614) ||
+ (param_0 != 0 && checkIronBallWaitAnime()) || checkIronBallAnime() ||
+ checkMagicArmorHeavy() || getHeavyStateAndBoots()) {
+ return true;
+ }
+ }
+ return false;
}
-#pragma pop
/* 800BB560-800BB644 0B5EA0 00E4+00 1/0 0/0 0/0 .text setOutPower__9daAlink_cFfsi */
#pragma push
@@ -17045,6 +16778,12 @@ asm void daAlink_c::checkSceneChange(int param_0) {
#pragma pop
/* 800BF084-800BF0B8 0B99C4 0034+00 1/0 0/0 0/0 .text voiceStart__9daAlink_cFUl */
+// matches, but JAISoundID(u32) constructor needs to be inlined?
+#ifdef NONMATCHING
+void daAlink_c::voiceStart(u32 sfx_id) {
+ mZ2Link.startLinkVoice(sfx_id, mVoiceReverbIntensity);
+}
+#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
@@ -17053,6 +16792,7 @@ asm void daAlink_c::voiceStart(u32 param_0) {
#include "asm/d/a/d_a_alink/voiceStart__9daAlink_cFUl.s"
}
#pragma pop
+#endif
/* 800BF0B8-800BF0EC 0B99F8 0034+00 14/14 0/0 0/0 .text voiceStartLevel__9daAlink_cFUl */
#pragma push
@@ -17188,45 +16928,144 @@ asm void daAlink_c::returnKeepItemData() {
}
#pragma pop
+inline daHorse_c* i_dComIfGp_getHorseActor() {
+ return (daHorse_c*)g_dComIfG_gameInfo.play.getPlayerPtr(1);
+}
+
/* 800BF8D0-800BF9F0 0BA210 0120+00 2/2 0/0 0/0 .text setItemModel__9daAlink_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::setItemModel() {
+asm BOOL daAlink_c::setItemModel() {
nofralloc
#include "asm/d/a/d_a_alink/setItemModel__9daAlink_cFv.s"
}
#pragma pop
/* 800BF9F0-800BFD74 0BA330 0384+00 4/4 0/0 0/0 .text setItemActor__9daAlink_cFv */
+// register issues
+#ifdef NONMATCHING
+BOOL daAlink_c::setItemActor() {
+ if (mEquipItem == BOOMERANG) {
+ fopAc_ac_c* actor = (fopAc_ac_c*)fopAcM_fastCreate(0xFE, 0, &mCurrent.mPosition, -1, NULL,
+ NULL, -1, NULL, NULL);
+ if (actor == NULL) {
+ deleteEquipItem(0, 0);
+ return false;
+ } else {
+ mItemActor.setData(actor);
+ field_0x2f94 = 2;
+ return true;
+ }
+ } else if (mEquipItem == COPY_ROD) {
+ fopAc_ac_c* actor = (fopAc_ac_c*)fopAcM_fastCreate(0x2F4, 0, &mCurrent.mPosition, -1, NULL,
+ NULL, -1, NULL, NULL);
+ if (actor == NULL) {
+ deleteEquipItem(0, 0);
+ return false;
+ } else {
+ mItemActor.setData(actor);
+ field_0x2f94 = 2;
+ return true;
+ }
+ } else if (mEquipItem == IRONBALL) {
+ fopAc_ac_c* actor = daCrod_c::makeIronBallDummy(this);
+ if (actor == NULL) {
+ if (checkIronBallWaitAnime()) {
+ resetUpperAnime(UPPER_NOW, -1.0f);
+ }
+ deleteEquipItem(0, 0);
+ return false;
+ } else {
+ mItemActor.setData(actor);
+ field_0x173c.SetActor(actor);
+ return true;
+ }
+ } else if (checkFisingRodLure()) {
+ u32 id = fopAcM_create(0x2E4, 0x10D, &mLeftHandPos, -1, NULL, NULL, 0xFF);
+ mItemActor.setID(id);
+ initFishingRodHand();
+ return 1;
+ } else if (checkFishingRodItem(mEquipItem)) {
+ setGroundFishingRodActor();
+ return 1;
+ } else if (checkBombItem(mEquipItem)) {
+ if (checkHorseRide()) {
+ if (!i_dComIfGp_getHorseActor()->checkNoBombProc() &&
+ (mActionID != HORSE_TURN || !i_checkModeFlg(MODE_DISABLE_ITEMS))) {
+ mEquipItem = NO_ITEM;
+ return 1;
+ }
+ }
+ cXyz create_pos = (mLeftHandPos + mRightHandPos) * 0.5f;
+ if (checkReadyItem()) {
+ fopAc_ac_c* actor;
+ if (mEquipItem == NORMAL_BOMB) {
+ actor = dBomb_c::createNormalBombPlayer(&create_pos);
+ } else {
+ actor = dBomb_c::createWaterBombPlayer(&create_pos);
+ }
+ if (actor != NULL) {
+ mActiveBombNum++;
+ setGrabItemActor(actor);
+ dComIfGp_addSelectItemNum(mSelectItemId, -1);
+ field_0x33e4 = 38.0f;
+ setGrabUpperAnime(daAlinkHIO_basic_c0::m.mAnmBlendFactor);
+ }
+ }
+ mEquipItem = NO_ITEM;
+ return true;
+ }
+ return false;
+}
+#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::setItemActor() {
+asm BOOL daAlink_c::setItemActor() {
nofralloc
#include "asm/d/a/d_a_alink/setItemActor__9daAlink_cFv.s"
}
#pragma pop
+#endif
/* 800BFD74-800BFDB0 0BA6B4 003C+00 2/2 0/0 0/0 .text makeItemType__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::makeItemType() {
- nofralloc
-#include "asm/d/a/d_a_alink/makeItemType__9daAlink_cFv.s"
+void daAlink_c::makeItemType() {
+ if (!setItemModel()) {
+ setItemActor();
+ }
+}
+
+bool daPy_py_c::checkZoraWearFlg() const {
+ return dComIfGs_getSelectEquipClothes() == WEAR_ZORA;
}
-#pragma pop
/* 800BFDB0-800BFDFC 0BA6F0 004C+00 28/28 0/0 0/0 .text checkZoraWearAbility__9daAlink_cCFv */
+// li 0 needs to be mr
+#ifdef NONMATCHING
+BOOL daAlink_c::checkZoraWearAbility() const {
+ bool ret = false;
+ bool wear_zora = false;
+ if (!i_checkWolf()) {
+ if (checkZoraWearFlg()) {
+ wear_zora = true;
+ }
+ }
+ if (wear_zora && !i_checkNoResetFlg2(UNK_ARMOR)) {
+ ret = true;
+ }
+ return ret;
+}
+#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::checkZoraWearAbility() const {
+asm BOOL daAlink_c::checkZoraWearAbility() const {
nofralloc
#include "asm/d/a/d_a_alink/checkZoraWearAbility__9daAlink_cCFv.s"
}
#pragma pop
+#endif
/* 800BFDFC-800BFE48 0BA73C 004C+00 5/5 0/0 0/0 .text checkMagicArmorWearAbility__9daAlink_cCFv */
#pragma push
@@ -17242,7 +17081,7 @@ asm BOOL daAlink_c::checkMagicArmorWearAbility() const {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::loadAramBmd(u16 param_0, u32 param_1) {
+asm J3DModelData* daAlink_c::loadAramBmd(u16 param_0, u32 param_1) {
nofralloc
#include "asm/d/a/d_a_alink/loadAramBmd__9daAlink_cFUsUl.s"
}
@@ -17262,7 +17101,7 @@ asm void daAlink_c::loadAram(u16 param_0, u32 param_1) {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::loadAramItemBrk(u16 param_0, J3DModel* param_1) {
+asm J3DAnmTevRegKey* daAlink_c::loadAramItemBrk(u16 param_0, J3DModel* param_1) {
nofralloc
#include "asm/d/a/d_a_alink/loadAramItemBrk__9daAlink_cFUsP8J3DModel.s"
}
@@ -17373,7 +17212,7 @@ asm bool daAlink_c::checkCastleTown() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::checkCloudSea() {
+asm bool daAlink_c::checkCloudSea() {
nofralloc
#include "asm/d/a/d_a_alink/checkCloudSea__9daAlink_cFv.s"
}
@@ -17383,109 +17222,76 @@ asm void daAlink_c::checkCloudSea() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::checkRoomOnly() {
+asm bool daAlink_c::checkRoomOnly() {
nofralloc
#include "asm/d/a/d_a_alink/checkRoomOnly__9daAlink_cFv.s"
}
#pragma pop
-/* ############################################################################################## */
-/* 80392094-80392094 01E6F4 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_803925C2 = "D_MN04";
-#pragma pop
-
/* 800C044C-800C04B4 0BAD8C 0068+00 3/3 0/0 0/0 .text checkLv2DungeonRoomSpecial__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkLv2DungeonRoomSpecial() {
- nofralloc
-#include "asm/d/a/d_a_alink/checkLv2DungeonRoomSpecial__9daAlink_cFv.s"
+bool daAlink_c::checkLv2DungeonRoomSpecial() {
+ return checkStageName("D_MN04") &&
+ (dComIfGp_roomControl_getStayNo() == 14 || dComIfGp_roomControl_getStayNo() == 16 ||
+ dComIfGp_roomControl_getStayNo() == 17);
}
-#pragma pop
/* 800C04B4-800C0520 0BADF4 006C+00 2/2 0/0 0/0 .text checkRoomSpecial__9daAlink_cFv */
+// 1 wrong branch
+#ifdef NONMATCHING
+bool daAlink_c::checkRoomSpecial() {
+ return !checkStageName("D_MN11") || dComIfGp_roomControl_getStayNo() == 1 ||
+ dComIfGp_roomControl_getStayNo() == 2 || checkLv2DungeonRoomSpecial();
+}
+#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::checkRoomSpecial() {
+asm bool daAlink_c::checkRoomSpecial() {
nofralloc
#include "asm/d/a/d_a_alink/checkRoomSpecial__9daAlink_cFv.s"
}
#pragma pop
+#endif
/* 800C0520-800C0594 0BAE60 0074+00 1/1 0/0 0/0 .text checkRoom__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkRoom() {
- nofralloc
-#include "asm/d/a/d_a_alink/checkRoom__9daAlink_cFv.s"
+bool daAlink_c::checkRoom() {
+ return checkRoomOnly() || checkRoomSpecial() ||
+ checkStageName("R_SP161") && !dComIfGs_isOneZoneSwitch(14, -1);
}
-#pragma pop
/* 800C0594-800C05DC 0BAED4 0048+00 8/8 0/0 0/0 .text checkNotBattleStage__9daAlink_cFv
*/
-#ifdef NONMATCHING
-bool daAlink_c::checkNotBattleStage(void) {
- bool isNotBattleStage = false;
-
- if (checkRoom() || checkCastleTown()) {
- isNotBattleStage = true;
- }
-
- return isNotBattleStage;
+bool daAlink_c::checkNotBattleStage() {
+ return checkRoom() || checkCastleTown();
}
-#else
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkNotBattleStage() {
- nofralloc
-#include "asm/d/a/d_a_alink/checkNotBattleStage__9daAlink_cFv.s"
-}
-#pragma pop
-#endif
/* 800C05DC-800C0630 0BAF1C 0054+00 2/2 0/0 0/0 .text checkNotHeavyBootsStage__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkNotHeavyBootsStage() {
- nofralloc
-#include "asm/d/a/d_a_alink/checkNotHeavyBootsStage__9daAlink_cFv.s"
+bool daAlink_c::checkNotHeavyBootsStage() {
+ return (checkNotBattleStage() || checkCloudSea()) && !checkLv2DungeonRoomSpecial();
}
-#pragma pop
/* 800C0630-800C0678 0BAF70 0048+00 1/1 0/0 0/0 .text checkNotAutoJumpStage__9daAlink_cFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkNotAutoJumpStage() {
- nofralloc
-#include "asm/d/a/d_a_alink/checkNotAutoJumpStage__9daAlink_cFv.s"
+bool daAlink_c::checkNotAutoJumpStage() {
+ return checkRoomOnly() || checkCastleTown();
}
-#pragma pop
-
-/* ############################################################################################## */
-/* 80392094-80392094 01E6F4 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_803925C9 = "R_SP128";
-#pragma pop
/* 800C0678-800C077C 0BAFB8 0104+00 3/3 0/0 0/0 .text checkCastleTownUseItem__9daAlink_cFUs */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkCastleTownUseItem(u16 param_0) {
- nofralloc
-#include "asm/d/a/d_a_alink/checkCastleTownUseItem__9daAlink_cFUs.s"
+bool daAlink_c::checkCastleTownUseItem(u16 item_id) {
+ if (checkNotBattleStage()) {
+ if (item_id == KANTERA || checkTradeItem(item_id) ||
+ (item_id == DUNGEON_BACK && checkLv7DungeonShop()) ||
+ (checkRoomSpecial() && (item_id == EMPTY_BOTTLE || checkDungeonWarpItem(item_id))) ||
+ (checkStageName("R_SP128") && item_id == COPY_ROD) ||
+ (checkLv2DungeonRoomSpecial() && item_id == HVY_BOOTS) ||
+ (checkBottleItem(item_id) && item_id != EMPTY_BOTTLE)) {
+ return true;
+ } else {
+ return false;
+ }
+ }
+ return true;
}
-#pragma pop
/* 800C077C-800C0A9C 0BB0BC 0320+00 1/1 0/0 0/0 .text changeItemTriggerKeepProc__9daAlink_cFUci */
#pragma push
@@ -17580,11 +17386,11 @@ MtxP daAlink_c::getModelJointMtx(u16 param_0) {
/* 800C1DE0-800C1E0C 0BC720 002C+00 1/0 0/0 0/0 .text onFrollCrashFlg__9daAlink_cFUci */
void daAlink_c::onFrollCrashFlg(u8 param_0, int param_1) {
if (param_1 != 0) {
- i_onNoResetFlg0(UnkFrollCrashFlg2);
+ i_onNoResetFlg0(UNK_F_ROLL_CRASH_2);
} else {
- i_onNoResetFlg0(UnkFrollCrashFlg1);
+ i_onNoResetFlg0(UNK_F_ROLL_CRASH_1);
}
- field_0x2fa4 = param_0;
+ mRollCrashFlg = param_0;
}
/* ############################################################################################## */
@@ -17643,7 +17449,7 @@ void daAlink_c::procPreActionUnequipInit(int param_0, fopAc_ac_c* param_1) {
field_0x280c.setData(param_1);
field_0x300e = 1;
if (fopAcM_GetName(param_1) == 0x2cb) {
- if (field_0x2fdc == 0x48) {
+ if (mEquipItem == KANTERA) {
field_0x3010 = 1;
} else {
if (i_checkNoResetFlg2(1) != 0) {
@@ -17680,35 +17486,33 @@ asm void daAlink_c::procPreActionUnequip() {
/* 800C3098-800C30F0 0BD9D8 0058+00 1/1 0/0 0/0 .text procServiceWaitInit__9daAlink_cFv
*/
-#ifdef NONMATCHING
bool daAlink_c::procServiceWaitInit() {
commonProcInit(SERVICE_WAIT);
- setSingleAnimeBase(0x90);
- mNormalSpeed = 0.0f;
- mNext.mAngle.y = mCollisionRot.y;
+ setSingleAnimeBase(ANM_SERVICE_WAIT);
+ mNormalSpeed = FLOAT_LABEL(lit_6108);
+ mCurrent.mAngle.y = mCollisionRot.y;
field_0x2f98 = 4;
return true;
}
-#else
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::procServiceWaitInit() {
- nofralloc
-#include "asm/d/a/d_a_alink/procServiceWaitInit__9daAlink_cFv.s"
-}
-#pragma pop
-#endif
/* 800C30F0-800C3224 0BDA30 0134+00 1/0 0/0 0/0 .text procServiceWait__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::procServiceWait() {
- nofralloc
-#include "asm/d/a/d_a_alink/procServiceWait__9daAlink_cFv.s"
+bool daAlink_c::procServiceWait() {
+ J3DFrameCtrl* ctrl = &mFrameCtrl1[0];
+ if ((!checkNextAction(0) && !checkFrontWallTypeAction()) &&
+ (checkEventRun() || checkGuardActionChange() || mCollisionRot.y != field_0x2fe6)) {
+ ctrl->setRate(FLOAT_LABEL(lit_6108));
+ procWaitInit();
+ } else {
+ if (ctrl->checkPass(lit_10040)) {
+ voiceStart(Z2SE_AL_V_RELAX_A);
+ } else if (ctrl->checkPass(lit_11673)) {
+ voiceStart(Z2SE_AL_V_RELAX_B);
+ } else if (ctrl->checkPass(lit_25684)) {
+ voiceStart(Z2SE_AL_V_RELAX_C);
+ }
+ }
+ return true;
}
-#pragma pop
/* 800C3224-800C3338 0BDB64 0114+00 2/2 0/0 0/0 .text procTiredWaitInit__9daAlink_cFv */
#pragma push
@@ -17721,20 +17525,23 @@ asm void daAlink_c::procTiredWaitInit() {
#pragma pop
/* 800C3338-800C33B8 0BDC78 0080+00 1/0 0/0 0/0 .text procTiredWait__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::procTiredWait() {
- nofralloc
-#include "asm/d/a/d_a_alink/procTiredWait__9daAlink_cFv.s"
+bool daAlink_c::procTiredWait() {
+ daPy_frameCtrl_c* ctrl = &mFrameCtrl1[0];
+ if (!checkNextAction(0)) {
+ if (ctrl->checkAnmEnd()) {
+ setSingleAnimeBase(ANM_TIRED_WAIT);
+ } else if (ctrl->getAttribute() == 2) {
+ setTiredVoice(ctrl);
+ }
+ }
+ return true;
}
-#pragma pop
/* 800C33B8-800C3504 0BDCF8 014C+00 26/26 0/0 0/0 .text procWaitInit__9daAlink_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::procWaitInit() {
+asm bool daAlink_c::procWaitInit() {
nofralloc
#include "asm/d/a/d_a_alink/procWaitInit__9daAlink_cFv.s"
}
@@ -17751,34 +17558,53 @@ asm void daAlink_c::procWait() {
#pragma pop
/* 800C36CC-800C3730 0BE00C 0064+00 3/3 0/0 0/0 .text procMoveInit__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::procMoveInit() {
- nofralloc
-#include "asm/d/a/d_a_alink/procMoveInit__9daAlink_cFv.s"
+bool daAlink_c::procMoveInit() {
+ if (!commonProcInitNotSameProc(HUMAN_MOVE)) {
+ return false;
+ }
+ setBlendMoveAnime(daAlinkHIO_basic_c0::m.mAnmBlendFactor);
+ setFootEffectProcType(3);
+ return true;
}
-#pragma pop
/* 800C3730-800C3810 0BE070 00E0+00 1/0 0/0 0/0 .text procMove__9daAlink_cFv */
+// results of cLib_minMaxLimit are put in r4 instead of r3
+#ifdef NONMATCHING
+bool daAlink_c::procMove() {
+ setFootEffectProcType(3);
+ if (!checkNextAction(0) && !checkFrontWallTypeAction()) {
+ if (mDemo.getDemoMode() == 2 &&
+ mNormalSpeed > field_0x594 * daAlinkHIO_move_c0::m.mWalkChangeRate) {
+ mNormalSpeed = field_0x594 * daAlinkHIO_move_c0::m.mWalkChangeRate;
+ }
+ setBlendMoveAnime(-1.0f);
+ if (field_0x3174 != 8) {
+ field_0x30a0 =
+ cLib_minMaxLimit((s16)(field_0x2ff0 >> 1), daAlinkHIO_basic_c0::m.mNeckMaxUp,
+ daAlinkHIO_basic_c0::m.mNeckMaxDown);
+ }
+ }
+ return true;
+}
+#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::procMove() {
+asm bool daAlink_c::procMove() {
nofralloc
#include "asm/d/a/d_a_alink/procMove__9daAlink_cFv.s"
}
#pragma pop
+#endif
/* 800C3810-800C3868 0BE150 0058+00 1/1 0/0 0/0 .text procAtnMoveInit__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::procAtnMoveInit() {
- nofralloc
-#include "asm/d/a/d_a_alink/procAtnMoveInit__9daAlink_cFv.s"
+bool daAlink_c::procAtnMoveInit() {
+ if (!commonProcInitNotSameProc(HUMAN_ATN_MOVE)) {
+ return false;
+ }
+ setBlendAtnMoveAnime(daAlinkHIO_basic_c0::m.mAnmBlendFactor);
+ return true;
}
-#pragma pop
/* 800C3868-800C38CC 0BE1A8 0064+00 1/0 0/0 0/0 .text procAtnMove__9daAlink_cFv */
bool daAlink_c::procAtnMove() {
@@ -17792,136 +17618,328 @@ bool daAlink_c::procAtnMove() {
/* 800C38CC-800C397C 0BE20C 00B0+00 4/4 0/0 0/0 .text procAtnActorWaitInit__9daAlink_cFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::procAtnActorWaitInit() {
- nofralloc
-#include "asm/d/a/d_a_alink/procAtnActorWaitInit__9daAlink_cFv.s"
+bool daAlink_c::procAtnActorWaitInit() {
+ if (!commonProcInitNotSameProc(HUMAN_ATN_ACTOR_WAIT)) {
+ return false;
+ }
+
+ if (mTargetedActor != NULL) {
+ fopAcM_searchActorAngleY(this, mTargetedActor);
+ }
+ mNormalSpeed = FLOAT_LABEL(lit_6108);
+ if (field_0x2f98 != 2) {
+ field_0x2f98 = 3;
+ }
+
+ if (checkAtnWaitAnime()) {
+ setBlendAtnMoveAnime(daAlinkHIO_basic_c0::m.mAnmBlendFactor);
+ } else {
+ setBlendMoveAnime(daAlinkHIO_basic_c0::m.mAnmBlendFactor);
+ }
+
+ return true;
}
-#pragma pop
/* 800C397C-800C39EC 0BE2BC 0070+00 1/0 0/0 0/0 .text procAtnActorWait__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::procAtnActorWait() {
- nofralloc
-#include "asm/d/a/d_a_alink/procAtnActorWait__9daAlink_cFv.s"
+bool daAlink_c::procAtnActorWait() {
+ if (!checkNextAction(0)) {
+ if (checkAtnWaitAnime()) {
+ setBlendAtnMoveAnime(lit_6041);
+ } else {
+ setBlendMoveAnime(lit_6041);
+ }
+ checkSwordTwirlAction();
+ }
+ return true;
}
-#pragma pop
/* 800C39EC-800C3A44 0BE32C 0058+00 3/3 0/0 0/0 .text procAtnActorMoveInit__9daAlink_cFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::procAtnActorMoveInit() {
- nofralloc
-#include "asm/d/a/d_a_alink/procAtnActorMoveInit__9daAlink_cFv.s"
+bool daAlink_c::procAtnActorMoveInit() {
+ if (!commonProcInitNotSameProc(HUMAN_ATN_ACTOR_MOVE)) {
+ return false;
+ }
+ setBlendAtnMoveAnime(daAlinkHIO_basic_c0::m.mAnmBlendFactor);
+ return true;
}
-#pragma pop
/* 800C3A44-800C3A94 0BE384 0050+00 1/0 0/0 0/0 .text procAtnActorMove__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::procAtnActorMove() {
- nofralloc
-#include "asm/d/a/d_a_alink/procAtnActorMove__9daAlink_cFv.s"
+bool daAlink_c::procAtnActorMove() {
+ if (!checkNextAction(0)) {
+ setBlendAtnMoveAnime(lit_6041);
+ checkSwordTwirlAction();
+ }
+ return 1;
}
-#pragma pop
/* 800C3A94-800C3B1C 0BE3D4 0088+00 2/2 0/0 0/0 .text procWaitTurnInit__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::procWaitTurnInit() {
- nofralloc
-#include "asm/d/a/d_a_alink/procWaitTurnInit__9daAlink_cFv.s"
+bool daAlink_c::procWaitTurnInit() {
+ if (!commonProcInitNotSameProc(HUMAN_WAIT_TURN)) {
+ return false;
+ }
+
+ setSingleAnimeBaseSpeed(ANM_WAIT_TURN, daAlinkHIO_basic_c0::m.mWaitTurnSpeed,
+ daAlinkHIO_basic_c0::m.mAnmBlendFactor);
+ if (checkEventRun()) {
+ mNormalSpeed = FLOAT_LABEL(lit_6108);
+ }
+ field_0x300e = field_0x2fe2;
+ mCurrent.mAngle.y = mCollisionRot.y;
+ return true;
}
-#pragma pop
/* 800C3B1C-800C3C3C 0BE45C 0120+00 1/0 0/0 0/0 .text procWaitTurn__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::procWaitTurn() {
- nofralloc
-#include "asm/d/a/d_a_alink/procWaitTurn__9daAlink_cFv.s"
+BOOL daAlink_c::procWaitTurn() {
+ cLib_chaseF(&mNormalSpeed, FLOAT_LABEL(lit_6108), daAlinkHIO_move_c0::m.mDeceleration);
+ if (checkGroundSpecialMode()) {
+ return true;
+ } else {
+ if (i_checkEndResetFlg0(ERFLG0_UNK_100000)) {
+ return procFloorDownReboundInit();
+ } else {
+ s16 angle = cLib_addCalcAngleS(&mCollisionRot.y, field_0x300e, 30, 0x3CDF, 8000);
+ mCurrent.mAngle.y = mCollisionRot.y;
+ if (checkNextActionFromButton()) {
+ return true;
+ } else {
+ if (angle == 0) {
+ if (checkEventRun()) {
+ if (mDemo.getDemoMode() == 5) {
+ dComIfGp_evmng_cutEnd(field_0x3184);
+ } else if (!checkNextAction(0)) {
+ checkWaitAction();
+ }
+ } else {
+ checkNextAction(0);
+ }
+ }
+ }
+ }
+ }
+ return true;
}
-#pragma pop
/* 800C3C3C-800C3D38 0BE57C 00FC+00 2/2 0/0 0/0 .text procMoveTurnInit__9daAlink_cFi */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::procMoveTurnInit(int param_0) {
- nofralloc
-#include "asm/d/a/d_a_alink/procMoveTurnInit__9daAlink_cFi.s"
+bool daAlink_c::procMoveTurnInit(int param_0) {
+ if (!commonProcInitNotSameProc(HUMAN_MOVE_TURN)) {
+ return false;
+ }
+
+ setBlendMoveAnime(daAlinkHIO_basic_c0::m.mAnmBlendFactor);
+ dComIfGp_setPlayerStatus0(0, 0x800);
+
+ if (param_0 != 0) {
+ field_0x300e = (daAlinkHIO_move_c0::m.mMaxTurnAngle << 2) + 19030;
+ field_0x3010 = daAlinkHIO_move_c0::m.mMaxTurnAngle << 1;
+ field_0x300a = 2;
+ mCurrent.mAngle.y = field_0x2fe2;
+ mNormalSpeed *= lit_5943;
+ } else {
+ field_0x300e = daAlinkHIO_move_c0::m.mMaxTurnAngle << 1;
+ field_0x3010 = daAlinkHIO_move_c0::m.mMaxTurnAngle;
+ field_0x300a = 3;
+ }
+ field_0x300e = daAlinkHIO_move_c0::m.mMaxTurnAngle << 1;
+ field_0x3010 = daAlinkHIO_move_c0::m.mMaxTurnAngle;
+ return true;
}
-#pragma pop
/* 800C3D38-800C3DA0 0BE678 0068+00 1/0 0/0 0/0 .text procMoveTurn__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::procMoveTurn() {
- nofralloc
-#include "asm/d/a/d_a_alink/procMoveTurn__9daAlink_cFv.s"
+bool daAlink_c::procMoveTurn() {
+ setSpeedAndAngleNormal();
+ cLib_addCalcAngleS(&mCollisionRot.y, mCurrent.mAngle.y, field_0x300a, field_0x300e,
+ field_0x3010);
+
+ if (!checkNextAction(0)) {
+ setBlendMoveAnime(lit_6041);
+ }
+ return true;
}
-#pragma pop
/* 800C3DA0-800C3F60 0BE6E0 01C0+00 2/2 0/0 0/0 .text procSideStepInit__9daAlink_cFi */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::procSideStepInit(int param_0) {
- nofralloc
-#include "asm/d/a/d_a_alink/procSideStepInit__9daAlink_cFi.s"
+bool daAlink_c::procSideStepInit(int jump_type) {
+ if (jump_type == 1 && !checkHeavyStateOn(1, 1) &&
+ (checkNoUpperAnime() || checkEquipAnime() || field_0x2fcc != 0 && checkUpperGuardAnime())) {
+ return procBackJumpInit(0);
+ } else {
+ commonProcInit(HUMAN_SIDESTEP);
+ field_0x2f98 = jump_type;
+
+ if (field_0x2f98 == 1) {
+ mCurrent.mAngle.y = mCollisionRot.y + 0x8000;
+ setSingleAnimeParam(ANM_BACK_JUMP, &daAlinkHIO_sideStep_c0::m.mBackJumpAnm);
+ mNormalSpeed = daAlinkHIO_sideStep_c0::m.mBackJumpSpeedH;
+ mSpeed.y = daAlinkHIO_sideStep_c0::m.mBackJumpSpeedV;
+ field_0x300a = 0;
+ } else {
+ daAlink_ANM anm_id;
+ if (field_0x2f98 == 2) {
+ anm_id = ANM_SIDE_STEP_LEFT;
+ mCurrent.mAngle.y = mCollisionRot.y + 0x4000;
+ } else {
+ anm_id = ANM_SIDE_STEP_RIGHT;
+ mCurrent.mAngle.y = mCollisionRot.y - 0x4000;
+ }
+ setSingleAnimeParam(anm_id, &daAlinkHIO_sideStep_c0::m.mSideJumpAnm);
+ mNormalSpeed = daAlinkHIO_sideStep_c0::m.mSideJumpSpeedH;
+ mSpeed.y = daAlinkHIO_sideStep_c0::m.mSideJumpSpeedV;
+ field_0x300a = 1;
+ }
+ if (i_checkNoResetFlg0(UNDER_WATER_MOVEMENT)) {
+ mNormalSpeed *= daAlinkHIO_magneBoots_c0::m.mWaterVelocityX;
+ mSpeed.y *= daAlinkHIO_magneBoots_c0::m.mWaterVelocityY;
+ }
+ voiceStart(Z2SE_AL_V_JUMP_S);
+ mCommonCounter = 0;
+ field_0x300e = 0;
+ return 1;
+ }
}
-#pragma pop
/* 800C3F60-800C40F0 0BE8A0 0190+00 1/0 0/0 0/0 .text procSideStep__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::procSideStep() {
- nofralloc
-#include "asm/d/a/d_a_alink/procSideStep__9daAlink_cFv.s"
+bool daAlink_c::procSideStep() {
+ if (mTargetedActor != NULL && field_0x300a != 0) {
+ s16 actor_angle = fopAcM_searchActorAngleY(this, mTargetedActor);
+ cLib_addCalcAngleS(&mCollisionRot.y, actor_angle, 5, 0x5E8, 0x13C);
+ if (field_0x2f98 == 2) {
+ mCurrent.mAngle.y = mCollisionRot.y + 0x4000;
+ } else {
+ mCurrent.mAngle.y = mCollisionRot.y - 0x4000;
+ }
+ }
+ if (doTrigger() && field_0x300a != 0) {
+ mCommonCounter = 1;
+ }
+
+ if (checkUpperItemActionFly()) {
+ return true;
+ } else if (mLinkAcch.ChkGroundHit() && field_0x300e != 0) {
+ if (mCommonCounter != 0 && checkSideRollAction(field_0x2f98)) {
+ return true;
+ } else {
+ return procSideStepLandInit();
+ }
+ } else if (checkNoUpperAnime() && checkForceSwordSwing()) {
+ setCutDash(1, 0);
+ } else if (mDemo.getDemoMode() != 16 &&
+ mCurrent.mPosition.y < mLastJumpPos.y - daAlinkHIO_sideStep_c0::m.mFallHeight) {
+ return procFallInit(2, daAlinkHIO_sideStep_c0::m.mFallInterpolation);
+ }
+
+ field_0x300e = 1;
+ checkItemChangeFromButton();
+ return true;
}
-#pragma pop
/* 800C40F0-800C4278 0BEA30 0188+00 1/1 0/0 0/0 .text procSideStepLandInit__9daAlink_cFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::procSideStepLandInit() {
- nofralloc
-#include "asm/d/a/d_a_alink/procSideStepLandInit__9daAlink_cFv.s"
+bool daAlink_c::procSideStepLandInit() {
+ commonProcInit(HUMAN_SIDESTEP_LAND);
+ if (field_0x2f98 == 1) {
+ field_0x2f9d = 4;
+ setSingleAnimeParam(ANM_BACK_JUMP_LAND, &daAlinkHIO_sideStep_c0::m.mBackLandAnm);
+ field_0x3478 = daAlinkHIO_sideStep_c0::m.mBackLandAnm.field_0x10;
+ field_0x2f98 = 2;
+ field_0x300a = 0;
+ field_0x2fb0 = 0;
+ field_0x2fcc = 10;
+ } else {
+ daAlink_ANM anm_id;
+ u16 uvar3;
+ if (field_0x2f98 == 2) {
+ anm_id = ANM_SIDE_STEP_LEFT_LAND;
+ uvar3 = 0x3F;
+ } else {
+ anm_id = ANM_SIDE_STEP_RIGHT_LAND;
+ uvar3 = 0x40;
+ }
+ setSingleAnimeParam(anm_id, &daAlinkHIO_sideStep_c0::m.mSideLandAnm);
+ field_0x3478 = daAlinkHIO_sideStep_c0::m.mSideLandAnm.field_0x10;
+ field_0x300a = 1;
+ field_0x2fb0 = 8;
+ field_0x2fcc = 0;
+ if (checkEnemyGroup(mTargetedActor) && mEquipItem == EQUIP_SWORD && checkNoUpperAnime()) {
+ setUpperAnimeBaseSpeed(uvar3, daAlinkHIO_atnMove_c0::m.mWaitAnmSpeed, lit_6041);
+ seStartSwordCut(Z2SE_AL_WAIT_SWORD_SWING);
+ }
+ }
+ field_0x2f9d = 4;
+ setFootEffectProcType(2);
+ i_onResetFlg1(0x30);
+ mNormalSpeed = FLOAT_LABEL(lit_6108);
+ mCommonCounter = 0;
+ mCurrent.mAngle.y = mCollisionRot.y;
+ setStepLandVibration();
+ return true;
}
-#pragma pop
/* 800C4278-800C4378 0BEBB8 0100+00 1/0 0/0 0/0 .text procSideStepLand__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::procSideStepLand() {
- nofralloc
-#include "asm/d/a/d_a_alink/procSideStepLand__9daAlink_cFv.s"
+bool daAlink_c::procSideStepLand() {
+ daPy_frameCtrl_c* ctrl = &mFrameCtrl1[0];
+ i_onEndResetFlg0(ERFLG0_UNK_8000000);
+ if (field_0x2fcc != 0) {
+ field_0x2fcc = 10;
+ }
+
+ if (doTrigger() && field_0x300a != 0) {
+ mCommonCounter = 1;
+ }
+
+ if (ctrl->checkAnmEnd()) {
+ if (mDemo.getDemoMode() == 16) {
+ dComIfGp_evmng_cutEnd(field_0x3184);
+ } else {
+ checkNextAction(0);
+ }
+ } else if (ctrl->getFrame() > field_0x3478) {
+ if (mCommonCounter != 0 && checkSideRollAction(field_0x2f98)) {
+ return true;
+ }
+ checkNextAction(1);
+ }
+
+ return true;
}
-#pragma pop
/* 800C4378-800C4514 0BECB8 019C+00 1/1 0/0 0/0 .text procSlideInit__9daAlink_cFs */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::procSlideInit(s16 param_0) {
- nofralloc
-#include "asm/d/a/d_a_alink/procSlideInit__9daAlink_cFs.s"
+bool daAlink_c::procSlideInit(s16 param_0) {
+ commonProcInit(HUMAN_SLIDE);
+
+ field_0x814.SetWeight(255);
+ field_0x3090 = 8;
+ mCurrent.mAngle.y = param_0;
+
+ if (getMoveBGActorName(mLinkAcch.m_gnd, 0) == 0xD4) {
+ field_0x300e = 1;
+ } else {
+ field_0x300e = 0;
+ }
+
+ if (cLib_distanceAngleS(param_0, mCollisionRot.y) < 0x3800 || field_0x300e != 0) {
+ field_0x3198 = 1;
+ setSingleAnimeParam(ANM_FORWARD_SLIDE, &daAlinkHIO_slide_c0::m.mForwardSlideAnm);
+ dComIfGp_setPlayerStatus1(0, 0x100);
+ onModeFlg(MODE_UNK_8000);
+ onModeFlg(MODE_UNK_2000000);
+ onModeFlg(MODE_UNK_20000000);
+ mNormalSpeed = FLOAT_LABEL(lit_6108);
+ field_0x2f9d = 4;
+ setUpperAnimeBaseMorf(0xCE, lit_6041);
+ i_onNoResetFlg1(0x10000000);
+ setFootEffectProcType(0);
+ } else {
+ field_0x3198 = 0;
+ setSingleAnimeParam(ANM_BACKWARD_SLIDE, &daAlinkHIO_slide_c0::m.mBackwardSlideAnm);
+ dComIfGp_setPlayerStatus1(0, 0x200);
+ field_0x2f9d = 0x60;
+ setFootEffectProcType(1);
+ }
+ field_0x594 = daAlinkHIO_slide_c0::m.mMaxSpeed;
+ field_0x33cc = FLOAT_LABEL(lit_6108);
+ mCommonCounter = 0;
+ field_0x3010 = 0;
+ return true;
}
-#pragma pop
/* ############################################################################################## */
/* 804532E0-804532E4 0018E0 0004+00 1/1 0/0 0/0 .sdata2 @73057 */
@@ -17938,34 +17956,116 @@ asm void daAlink_c::procSlide() {
#pragma pop
/* 800C47AC-800C4894 0BF0EC 00E8+00 1/1 0/0 0/0 .text procSlideLandInit__9daAlink_cFi */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::procSlideLandInit(int param_0) {
- nofralloc
-#include "asm/d/a/d_a_alink/procSlideLandInit__9daAlink_cFi.s"
+bool daAlink_c::procSlideLandInit(int param_0) {
+ commonProcInit(HUMAN_SLIDE_LAND);
+
+ if (param_0 != 0) {
+ setSingleAnimeParam(ANM_BACKWARD_SLIDE_LAND, &daAlinkHIO_slide_c0::m.mForwardLandAnm);
+ field_0x3478 = daAlinkHIO_slide_c0::m.mForwardLandAnm.field_0x10;
+ field_0x3198 = 1;
+ field_0x2f99 = 4;
+ field_0x3588.x = l_waitBaseAnime[0];
+ field_0x3588.y = l_waitBaseAnime[1];
+ field_0x3588.z = l_waitBaseAnime[2];
+ } else {
+ setSingleAnimeParam(ANM_FORWARD_SLIDE_LAND, &daAlinkHIO_slide_c0::m.mBackwardLandAnm);
+ field_0x3478 = daAlinkHIO_slide_c0::m.mBackwardLandAnm.field_0x10;
+ field_0x3198 = 0;
+ }
+ field_0x814.SetWeight(255);
+ mNormalSpeed *= lit_5943;
+ return true;
}
-#pragma pop
/* 800C4894-800C494C 0BF1D4 00B8+00 1/0 0/0 0/0 .text procSlideLand__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::procSlideLand() {
- nofralloc
-#include "asm/d/a/d_a_alink/procSlideLand__9daAlink_cFv.s"
+bool daAlink_c::procSlideLand() {
+ daPy_frameCtrl_c* ctrl = &mFrameCtrl1[0];
+
+ cLib_chaseF(&mNormalSpeed, FLOAT_LABEL(lit_6108), lit_7450);
+ if (field_0x3198 != 0) {
+ field_0x2f99 = 4;
+ }
+
+ if (ctrl->checkAnmEnd()) {
+ mCurrent.mAngle.y = mCollisionRot.y;
+ checkNextAction(0);
+ } else {
+ if (ctrl->getFrame() > field_0x3478) {
+ s16 tmp_angle = mCurrent.mAngle.y;
+ mCurrent.mAngle.y = mCollisionRot.y;
+ if (!checkNextAction(1)) {
+ mCurrent.mAngle.y = tmp_angle;
+ }
+ }
+ }
+ return true;
}
-#pragma pop
/* 800C494C-800C4B40 0BF28C 01F4+00 4/3 0/0 0/0 .text procFrontRollInit__9daAlink_cFv */
+#ifdef NONMATCHING
+bool daAlink_c::procFrontRollInit() {
+ BOOL check = checkUpperGuardAnime();
+ if (mActionID == FRONT_ROLL && mDemo.getDemoMode() == 0x28) {
+ return 0;
+ } else {
+ BOOL check = mActionID == 0x16;
+ commonProcInit(FRONT_ROLL);
+
+ f32 fvar1;
+ if (!check) {
+ fvar1 = daAlinkHIO_frontRoll_c0::m.mRollAnm.field_0x04;
+ } else {
+ fvar1 = lit_7977;
+ }
+ setSingleAnime(ANM_FRONT_ROLL, daAlinkHIO_frontRoll_c0::m.mRollAnm.field_0x04, fvar1,
+ daAlinkHIO_frontRoll_c0::m.mRollAnm.field_0x00,
+ daAlinkHIO_frontRoll_c0::m.mRollAnm.field_0x0c);
+ mNormalSpeed =
+ mSpeedF * daAlinkHIO_frontRoll_c0::m.mInitSpeed + daAlinkHIO_frontRoll_c0::m.mSpeedRate;
+ if (mNormalSpeed > daAlinkHIO_frontRoll_c0::m.mCrashHitAnm.field_0x08) {
+ mNormalSpeed = daAlinkHIO_frontRoll_c0::m.mCrashHitAnm.field_0x08;
+ }
+ if (mNormalSpeed < daAlinkHIO_frontRoll_c0::m.mMinSpeed) {
+ mNormalSpeed = daAlinkHIO_frontRoll_c0::m.mMinSpeed;
+ }
+
+ if (!i_checkNoResetFlg0(UNDER_WATER_MOVEMENT)) {
+ if (checkHeavyStateOn(1, 1)) {
+ mNormalSpeed *= mHeavySpeedMultiplier;
+ }
+ } else {
+ mNormalSpeed *= daAlinkHIO_magneBoots_c0::m.mWaterVelocityX;
+ }
+ mCurrent.mAngle.y = mCollisionRot.y;
+ voiceStart(Z2SE_AL_V_BACKTEN);
+ mCommonCounter = 0;
+ setFootEffectProcType(0);
+ if (check) {
+ i_onNoResetFlg0(2);
+ }
+ if (i_checkEquipHeavyBoots()) {
+ field_0xFB8.SetAtType(0x200000);
+ field_0xFB8.SetAtHitMark(1);
+ field_0xFB8.SetAtSe(9);
+ field_0xFB8.SetAtAtp(2);
+ field_0xFB8.SetAtMtrl(0);
+ field_0xFB8.ResetAtHit();
+ field_0xFB8.SetR(daAlinkHIO_frontRoll_c0::m.mBootsAttackRadius);
+ field_0xFB8.OnAtSetBit();
+ }
+ return true;
+ }
+}
+#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::procFrontRollInit() {
+asm bool daAlink_c::procFrontRollInit() {
nofralloc
#include "asm/d/a/d_a_alink/procFrontRollInit__9daAlink_cFv.s"
}
#pragma pop
+#endif
/* 800C4B40-800C4F14 0BF480 03D4+00 1/0 0/0 0/0 .text procFrontRoll__9daAlink_cFv */
#pragma push
@@ -18022,7 +18122,7 @@ asm void daAlink_c::procFrontRollSuccess() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::procSideRollInit(int param_0) {
+asm bool daAlink_c::procSideRollInit(int param_0) {
nofralloc
#include "asm/d/a/d_a_alink/procSideRollInit__9daAlink_cFi.s"
}
@@ -18039,20 +18139,31 @@ asm void daAlink_c::procSideRoll() {
#pragma pop
/* 800C5700-800C57A4 0C0040 00A4+00 2/2 0/0 0/0 .text backJumpSpeedDec__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::backJumpSpeedDec() {
- nofralloc
-#include "asm/d/a/d_a_alink/backJumpSpeedDec__9daAlink_cFv.s"
+void daAlink_c::backJumpSpeedDec() {
+ if (mLinkAcch.ChkGroundHit()) {
+ if (dComIfG_Bgsp().ChkPolySafe(mLinkAcch.m_gnd)) {
+ f32 jump_speed;
+ if (dBgS_CheckBWallPoly(mLinkAcch.m_gnd)) {
+ jump_speed = FLOAT_LABEL(lit_6108);
+ } else {
+ jump_speed = field_0x3478 * cM_scos(field_0x2ff0);
+ if (field_0x2ff0 > 0) {
+ jump_speed *= cM_scos(field_0x2ff0);
+ }
+ }
+
+ if (mNormalSpeed > jump_speed) {
+ mNormalSpeed = jump_speed;
+ }
+ }
+ }
}
-#pragma pop
/* 800C57A4-800C5964 0C00E4 01C0+00 6/6 0/0 0/0 .text procBackJumpInit__9daAlink_cFi */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::procBackJumpInit(int param_0) {
+asm bool daAlink_c::procBackJumpInit(int param_0) {
nofralloc
#include "asm/d/a/d_a_alink/procBackJumpInit__9daAlink_cFi.s"
}
@@ -18181,7 +18292,7 @@ asm void daAlink_c::procRollJump() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::procFallInit(int param_0, f32 param_1) {
+asm bool daAlink_c::procFallInit(int param_0, f32 param_1) {
nofralloc
#include "asm/d/a/d_a_alink/procFallInit__9daAlink_cFif.s"
}
@@ -18307,7 +18418,7 @@ static f32 l_wolfBaseAnime[3];
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::procCoMetamorphoseInit() {
+asm bool daAlink_c::procCoMetamorphoseInit() {
nofralloc
#include "asm/d/a/d_a_alink/procCoMetamorphoseInit__9daAlink_cFv.s"
}
@@ -18390,7 +18501,7 @@ asm void daAlink_c::procCoMetamorphoseOnly() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::procFloorDownReboundInit() {
+asm BOOL daAlink_c::procFloorDownReboundInit() {
nofralloc
#include "asm/d/a/d_a_alink/procFloorDownReboundInit__9daAlink_cFv.s"
}
@@ -18488,35 +18599,38 @@ asm void daAlink_c::setDrawHand() {
}
#pragma pop
+BOOL daPy_py_c::i_checkSwordGet() {
+ return dComIfGs_getSelectEquipSword() != 0xFF;
+}
+
/* 800CB480-800CB53C 0C5DC0 00BC+00 3/3 0/0 0/0 .text checkSwordDraw__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkSwordDraw() {
- nofralloc
-#include "asm/d/a/d_a_alink/checkSwordDraw__9daAlink_cFv.s"
+bool daAlink_c::checkSwordDraw() {
+ return ((i_checkSwordGet() && mSwordChangeWaitTimer == 0) &&
+ !i_checkNoResetFlg2(FLG2_UNK_2080000)) &&
+ (!i_checkWolf() || !i_dComIfGs_isEventBit(0x0C08));
+}
+
+bool daPy_py_c::i_checkShieldGet() const {
+ return dComIfGs_getSelectEquipShield() != NO_ITEM;
}
-#pragma pop
/* 800CB53C-800CB5F8 0C5E7C 00BC+00 3/3 0/0 0/0 .text checkShieldDraw__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkShieldDraw() {
- nofralloc
-#include "asm/d/a/d_a_alink/checkShieldDraw__9daAlink_cFv.s"
+bool daAlink_c::checkShieldDraw() {
+ return ((i_checkShieldGet() && mShieldChangeWaitTimer == 0) &&
+ !i_checkNoResetFlg2(FLG2_UNK_4080000)) &&
+ (!i_checkWolf() || !i_dComIfGs_isEventBit(0x0C08));
}
-#pragma pop
/* 800CB5F8-800CB694 0C5F38 009C+00 2/2 0/0 0/0 .text checkItemDraw__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkItemDraw() {
- nofralloc
-#include "asm/d/a/d_a_alink/checkItemDraw__9daAlink_cFv.s"
+bool daAlink_c::checkItemDraw() {
+ if (mHeldItemModel != NULL && (mEquipItem != IRONBALL || !checkSwordEquipAnime())) {
+ if (!checkBowAndSlingItem(mEquipItem) || checkBowGrabLeftHand() || !i_checkShieldGet() ||
+ field_0x2e44.checkPassNum(15)) {
+ return true;
+ }
+ }
+ return false;
}
-#pragma pop
/* 800CB694-800CBA38 0C5FD4 03A4+00 0/0 0/0 1/1 .text initShadowScaleLight__9daAlink_cFv
*/
@@ -18555,14 +18669,11 @@ asm void daAlink_c::shadowDraw() {
#pragma pop
/* 800CC25C-800CC298 0C6B9C 003C+00 3/3 0/0 0/0 .text modelCalc__9daAlink_cFP8J3DModel */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::modelCalc(J3DModel* param_0) {
- nofralloc
-#include "asm/d/a/d_a_alink/modelCalc__9daAlink_cFP8J3DModel.s"
+void daAlink_c::modelCalc(J3DModel* p_model) {
+ if (mClothesChangeWaitTimer == 0) {
+ p_model->calc();
+ }
}
-#pragma pop
/* 800CC298-800CC2E0 0C6BD8 0048+00 2/2 0/0 0/0 .text basicModelDraw__9daAlink_cFP8J3DModel */
#pragma push
@@ -18603,14 +18714,14 @@ asm void daAlink_c::setWaterDropColor(J3DGXColorS10 const* param_0) {
#pragma pop
/* 800CC7DC-800CC7FC 0C711C 0020+00 2/2 0/0 0/0 .text initTevCustomColor__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::initTevCustomColor() {
- nofralloc
-#include "asm/d/a/d_a_alink/initTevCustomColor__9daAlink_cFv.s"
+void daAlink_c::initTevCustomColor() {
+ mTevStr.field_0x367 = 0;
+ mTevStr.field_0x358 = 0;
+ mTevStr.field_0x35a = 0;
+ mTevStr.field_0x35c = 0;
+ mTevStr.field_0x360 = 0;
+ mTevStr.field_0x362 = 0;
}
-#pragma pop
/* 800CC7FC-800CD78C 0C713C 0F90+00 1/1 0/0 0/0 .text draw__9daAlink_cFv */
#pragma push
@@ -18678,14 +18789,30 @@ asm daAlink_c::~daAlink_c() {
#pragma pop
/* 800CE208-800CE294 0C8B48 008C+00 1/0 0/0 0/0 .text daAlink_Delete__FP9daAlink_c */
+// destructor issue
+#ifdef NONMATCHING
+static bool daAlink_Delete(daAlink_c* p_link) {
+ if (p_link->getClothesChangeWaitTimer() != 0) {
+ p_link->loadModelDVD();
+ return false;
+ } else if (p_link->getShieldChangeWaitTimer() != 0) {
+ p_link->loadShieldModelDVD();
+ return false;
+ } else {
+ delete p_link;
+ return true;
+ }
+}
+#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-static asm void daAlink_Delete(daAlink_c* param_0) {
+static asm bool daAlink_Delete(daAlink_c* param_0) {
nofralloc
#include "asm/d/a/d_a_alink/daAlink_Delete__FP9daAlink_c.s"
}
#pragma pop
+#endif
/* 800CE294-800CE468 0C8BD4 01D4+00 1/1 0/0 0/0 .text checkNoSubjectModeCamera__9daAlink_cFv */
#pragma push
@@ -18864,14 +18991,9 @@ u32 daAlink_c::checkHorseRide() const {
}
/* 800CF298-800CF2B4 0C9BD8 001C+00 1/0 0/0 0/0 .text getLeftItemMatrix__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm Mtx* daAlink_c::getLeftItemMatrix() {
- nofralloc
-#include "asm/d/a/d_a_alink/getLeftItemMatrix__9daAlink_cFv.s"
+MtxP daAlink_c::getLeftItemMatrix() {
+ return field_0x0650->i_getAnmMtx(field_0x30c0);
}
-#pragma pop
/* 800CF2B4-800CF2C8 0C9BF4 0014+00 1/0 0/0 0/0 .text checkBoarRide__9daAlink_cCFv */
u32 daAlink_c::checkBoarRide() const {
@@ -18884,55 +19006,33 @@ u32 daAlink_c::checkSpinnerRide() const {
}
/* 800CF2DC-800CF2F8 0C9C1C 001C+00 1/0 0/0 0/0 .text getLeftHandMatrix__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm Mtx* daAlink_c::getLeftHandMatrix() {
- nofralloc
-#include "asm/d/a/d_a_alink/getLeftHandMatrix__9daAlink_cFv.s"
+MtxP daAlink_c::getLeftHandMatrix() {
+ return field_0x0650->i_getAnmMtx(field_0x30b8);
}
-#pragma pop
/* 800CF2F8-800CF314 0C9C38 001C+00 1/0 0/0 0/0 .text getRightHandMatrix__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm Mtx* daAlink_c::getRightHandMatrix() {
- nofralloc
-#include "asm/d/a/d_a_alink/getRightHandMatrix__9daAlink_cFv.s"
+MtxP daAlink_c::getRightHandMatrix() {
+ return field_0x0650->i_getAnmMtx(field_0x30ba);
}
-#pragma pop
/* 800CF314-800CF328 0C9C54 0014+00 1/0 0/0 0/0 .text
* onSceneChangeArea__9daAlink_cFUcUcP10fopAc_ac_c */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::onSceneChangeArea(u8 param_0, u8 param_1, fopAc_ac_c* param_2) {
- nofralloc
-#include "asm/d/a/d_a_alink/onSceneChangeArea__9daAlink_cFUcUcP10fopAc_ac_c.s"
+void daAlink_c::onSceneChangeArea(u8 param_0, u8 param_1, fopAc_ac_c* param_2) {
+ field_0x3112 = param_0;
+ field_0x2fac = param_1;
+ field_0x2808 = param_2;
}
-#pragma pop
/* 800CF328-800CF344 0C9C68 001C+00 1/0 0/0 0/0 .text getRightItemMatrix__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm Mtx* daAlink_c::getRightItemMatrix() {
- nofralloc
-#include "asm/d/a/d_a_alink/getRightItemMatrix__9daAlink_cFv.s"
+MtxP daAlink_c::getRightItemMatrix() {
+ return field_0x0650->i_getAnmMtx(field_0x30c2);
}
-#pragma pop
/* 800CF344-800CF380 0C9C84 003C+00 1/0 0/0 0/0 .text checkPlayerNoDraw__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkPlayerNoDraw() {
- nofralloc
-#include "asm/d/a/d_a_alink/checkPlayerNoDraw__9daAlink_cFv.s"
+BOOL daAlink_c::checkPlayerNoDraw() {
+ return dComIfGp_checkCameraAttentionStatus(field_0x317c, 2) ||
+ i_checkNoResetFlg0(FLG0_UNK_8000000);
}
-#pragma pop
/* 800CF380-800CFC3C 0C9CC0 08BC+00 1/1 0/0 0/0 .text __ct__9daAlink_cFv */
#pragma push
@@ -19053,33 +19153,18 @@ static asm void cMtx_multVec(f32 const (*param_0)[4], Vec const* param_1, Vec* p
#pragma pop
/* 800CFFE0-800CFFF4 0CA920 0014+00 1/1 0/0 0/0 .text getAnmMtx__8J3DModelFi */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm Mtx* J3DModel::getAnmMtx(int param_0) {
- nofralloc
-#include "asm/d/a/d_a_alink/getAnmMtx__8J3DModelFi.s"
+MtxP J3DModel::getAnmMtx(int i) {
+ return mMtxBuffer->getAnmMtx(i);
}
-#pragma pop
/* 800CFFF4-800D0020 0CA934 002C+00 1/1 0/0 0/0 .text setBaseTRMtx__8J3DModelFPA4_f */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void J3DModel::setBaseTRMtx(f32 (*param_0)[4]) {
- nofralloc
-#include "asm/d/a/d_a_alink/setBaseTRMtx__8J3DModelFPA4_f.s"
+void J3DModel::setBaseTRMtx(MtxP matrix) {
+ PSMTXCopy(matrix, mBaseTransformMtx);
}
-#pragma pop
/* 800D0020-800D0048 0CA960 0028+00 1/1 0/0 0/0 .text checkFmChainGrabAnime__9daAlink_cCFv */
BOOL daAlink_c::checkFmChainGrabAnime() const {
- bool fmChainGrab = false;
-
- if (checkUpperAnime(ANM_HUMAN_CHAIN_GRAB) || checkUpperAnime(ANM_WOLF_CHAIN_GRAB)) {
- fmChainGrab = true;
- }
- return fmChainGrab;
+ return checkUpperAnime(ANM_HUMAN_CHAIN_GRAB) || checkUpperAnime(ANM_WOLF_CHAIN_GRAB);
}
/* 800D0048-800D005C 0CA988 0014+00 1/1 0/0 0/0 .text checkSmallUpperGuardAnime__9daAlink_cCFv */
@@ -19125,35 +19210,14 @@ void dBgS_Acch::ClrGroundHit() {
}
/* 800D00EC-800D0110 0CAA2C 0024+00 1/1 0/0 0/0 .text checkReinRide__9daAlink_cCFv */
-// regalloc
-#ifdef NONMATCHING
BOOL daAlink_c::checkReinRide() const {
- bool reinRide = false;
-
- if (mRideStatus == 1 || mRideStatus == 2) {
- reinRide = true;
- }
- return reinRide;
-}
-#else
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm BOOL daAlink_c::checkReinRide() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkReinRide__9daAlink_cCFv.s"
+ return mRideStatus == 1 || mRideStatus == 2;
}
-#pragma pop
-#endif
/* 800D0110-800D0138 0CAA50 0028+00 1/1 0/0 0/0 .text checkWolfEnemyThrowAnime__9daAlink_cCFv */
BOOL daAlink_c::checkWolfEnemyThrowAnime() const {
- bool wolfEnemyThrowAnime = false;
-
- if (checkUpperAnime(ANM_WOLF_ENEMY_THROW_LEFT) || checkUpperAnime(ANM_WOLF_ENEMY_THROW_RIGHT)) {
- wolfEnemyThrowAnime = true;
- }
- return wolfEnemyThrowAnime;
+ return checkUpperAnime(ANM_WOLF_ENEMY_THROW_LEFT) ||
+ checkUpperAnime(ANM_WOLF_ENEMY_THROW_RIGHT);
}
/* 800D0138-800D014C 0CAA78 0014+00 1/1 0/0 0/0 .text checkSpecialDemoMode__9daAlink_cCFv
@@ -19169,24 +19233,14 @@ void daAlink_c::setMidnaTalkStatus(u8 status) {
}
/* 800D0164-800D0180 0CAAA4 001C+00 1/1 0/0 0/0 .text set3DStatus__9daAlink_cFUcUc */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::set3DStatus(u8 param_0, u8 param_1) {
- nofralloc
-#include "asm/d/a/d_a_alink/set3DStatus__9daAlink_cFUcUc.s"
+void daAlink_c::set3DStatus(u8 status, u8 direction) {
+ dComIfGp_set3DStatus(status, direction, 0);
}
-#pragma pop
/* 800D0180-800D018C 0CAAC0 000C+00 1/1 0/0 0/0 .text offSetFlg__16daAlink_matAnm_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_matAnm_c::offSetFlg() {
- nofralloc
-#include "asm/d/a/d_a_alink/offSetFlg__16daAlink_matAnm_cFv.s"
+void daAlink_matAnm_c::offSetFlg() {
+ mSetFlag = 0;
}
-#pragma pop
/* 800D018C-800D0198 0CAACC 000C+00 1/1 0/0 0/0 .text checkModeFlg__9daAlink_cCFUl */
u32 daAlink_c::checkModeFlg(u32 pFlag) const {
@@ -19204,24 +19258,18 @@ u8 daAlink_c::getClothesChangeWaitTimer() const {
}
/* 800D01A8-800D01E0 0CAAE8 0038+00 1/0 0/0 0/0 .text checkHorseStart__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkHorseStart() {
- nofralloc
-#include "asm/d/a/d_a_alink/checkHorseStart__9daAlink_cFv.s"
+u32 daPy_py_c::getLastSceneMode() {
+ return dComIfGs_getLastSceneMode();
+}
+
+BOOL daAlink_c::checkHorseStart() {
+ return checkHorseStart(getLastSceneMode() & 0xF, getStartMode());
}
-#pragma pop
/* 800D01E0-800D0208 0CAB20 0028+00 1/0 0/0 0/0 .text checkCutTurnCharge__9daAlink_cCFv
*/
BOOL daAlink_c::checkCutTurnCharge() const {
- bool cutTurnCharge = false;
-
- if (mActionID == CUT_TURN_MOVE && mCommonCounter == 0) {
- cutTurnCharge = true;
- }
- return cutTurnCharge;
+ return mActionID == CUT_TURN_MOVE && mCommonCounter == 0;
}
/* 800D0208-800D0228 0CAB48 0020+00 1/0 0/0 0/0 .text checkAcceptDungeonWarpAlink__9daAlink_cFi */
@@ -19256,86 +19304,55 @@ s16 daAlink_c::checkSumouWithstand() const {
*/
void daAlink_c::setMidnaMsgNum(fopAc_ac_c* param_0, u16 pMsgNum) {
mMidnaMsgNum = pMsgNum;
- field_0x2800 = param_0;
+ static_cast<fopAc_ac_c*>(mMidnaMsg) = param_0;
}
/* 800D0290-800D029C 0CABD0 000C+00 1/0 0/0 0/0 .text getModelMtx__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm Mtx* daAlink_c::getModelMtx() {
- nofralloc
-#include "asm/d/a/d_a_alink/getModelMtx__9daAlink_cFv.s"
+MtxP daAlink_c::getModelMtx() {
+ return field_0x0650->getBaseTRMtx();
}
-#pragma pop
/* 800D029C-800D02A4 0CABDC 0008+00 1/0 0/0 0/0 .text getInvMtx__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm Mtx* daAlink_c::getInvMtx() {
- nofralloc
-#include "asm/d/a/d_a_alink/getInvMtx__9daAlink_cFv.s"
+MtxP daAlink_c::getInvMtx() {
+ return mInvMtx;
}
-#pragma pop
/* 800D02A4-800D02B8 0CABE4 0014+00 1/0 0/0 0/0 .text getLinkBackBone1Matrix__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm Mtx* daAlink_c::getLinkBackBone1Matrix() {
- nofralloc
-#include "asm/d/a/d_a_alink/getLinkBackBone1Matrix__9daAlink_cFv.s"
+MtxP daAlink_c::getLinkBackBone1Matrix() {
+ return field_0x0650->i_getAnmMtx(1);
}
-#pragma pop
/* 800D02B8-800D02CC 0CABF8 0014+00 1/0 0/0 0/0 .text getWolfMouthMatrix__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm Mtx* daAlink_c::getWolfMouthMatrix() {
- nofralloc
-#include "asm/d/a/d_a_alink/getWolfMouthMatrix__9daAlink_cFv.s"
+MtxP daAlink_c::getWolfMouthMatrix() {
+ return field_0x0650->i_getAnmMtx(13);
}
-#pragma pop
/* 800D02CC-800D02E0 0CAC0C 0014+00 1/0 0/0 0/0 .text getWolfBackbone2Matrix__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm Mtx* daAlink_c::getWolfBackbone2Matrix() {
- nofralloc
-#include "asm/d/a/d_a_alink/getWolfBackbone2Matrix__9daAlink_cFv.s"
+MtxP daAlink_c::getWolfBackbone2Matrix() {
+ return field_0x0650->i_getAnmMtx(2);
}
-#pragma pop
/* 800D02E0-800D0334 0CAC20 0054+00 1/0 0/0 0/0 .text getBottleMtx__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::getBottleMtx() {
- nofralloc
-#include "asm/d/a/d_a_alink/getBottleMtx__9daAlink_cFv.s"
+MtxP daAlink_c::getBottleMtx() {
+ if (mHeldItemModel != NULL && checkBottleItem(mEquipItem)) {
+ return mHeldItemModel->getBaseTRMtx();
+ }
+
+ return NULL;
}
-#pragma pop
/* 800D0334-800D0350 0CAC74 001C+00 1/0 0/0 0/0 .text getHeadMtx__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::getHeadMtx() {
- nofralloc
-#include "asm/d/a/d_a_alink/getHeadMtx__9daAlink_cFv.s"
+MtxP daAlink_c::getHeadMtx() {
+ return field_0x0650->i_getAnmMtx(field_0x30b4);
}
-#pragma pop
/* 800D0350-800D0358 0CAC90 0008+00 1/0 0/0 0/0 .text getGroundY__9daAlink_cFv */
-float daAlink_c::getGroundY() {
+f32 daAlink_c::getGroundY() {
return mLinkAcch.GetGroundH();
}
/* 800D0358-800D0360 0CAC98 0008+00 1/0 0/0 0/0 .text getBaseAnimeFrameRate__9daAlink_cCFv */
-float daAlink_c::getBaseAnimeFrameRate() const {
+f32 daAlink_c::getBaseAnimeFrameRate() const {
return mFrameCtrl1[0].getRate();
}
@@ -19351,10 +19368,10 @@ s32 daAlink_c::getItemID() const {
/* 800D0370-800D038C 0CACB0 001C+00 1/0 0/0 0/0 .text getGrabActorID__9daAlink_cCFv */
s32 daAlink_c::getGrabActorID() const {
- if (field_0x2fdc == 0x102) {
+ if (mEquipItem == 0x102) {
return mItemActor.getID();
} else {
- return field_0x282c.getID();
+ return mGrabItemActor.getID();
}
}
@@ -19362,12 +19379,13 @@ s32 daAlink_c::getGrabActorID() const {
*/
void daAlink_c::setForcePutPos(cXyz const& pPutPos) {
mForcePutPos = pPutPos;
- i_onEndResetFlg1(UnkForcePutPos);
+ i_onEndResetFlg1(UNK_FORCE_PUT_POS);
}
/* 800D03B4-800D03C8 0CACF4 0014+00 1/0 0/0 0/0 .text checkPlayerFly__9daAlink_cCFv */
u32 daAlink_c::checkPlayerFly() const {
- return i_checkModeFlg(PLAYER_FLY);
+ return i_checkModeFlg(MODE_SWIMMING | MODE_ROPE_WALK | MODE_VINE_CLIMB | MODE_UNK_800 |
+ MODE_NO_COLLISION | MODE_CLIMB | MODE_JUMP);
}
/* 800D03C8-800D03DC 0CAD08 0014+00 1/0 0/0 0/0 .text checkFrontRoll__9daAlink_cCFv */
@@ -19376,605 +19394,350 @@ BOOL daAlink_c::checkFrontRoll() const {
}
/* 800D03DC-800D03F0 0CAD1C 0014+00 1/0 0/0 0/0 .text checkWolfDash__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkWolfDash() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkWolfDash__9daAlink_cCFv.s"
+BOOL daAlink_c::checkWolfDash() const {
+ return mActionID == WOLF_DASH;
}
-#pragma pop
/* 800D03F0-800D0414 0CAD30 0024+00 1/0 0/0 0/0 .text checkAutoJump__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkAutoJump() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkAutoJump__9daAlink_cCFv.s"
+BOOL daAlink_c::checkAutoJump() const {
+ return mActionID == HUMAN_AUTOJUMP || mActionID == WOLF_AUTOJUMP;
}
-#pragma pop
/* 800D0414-800D0444 0CAD54 0030+00 1/0 0/0 0/0 .text checkSideStep__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkSideStep() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkSideStep__9daAlink_cCFv.s"
+bool daAlink_c::checkSideStep() const {
+ return (mActionID == HUMAN_SIDESTEP || mActionID == WOLF_SIDESTEP) && field_0x300a != 0;
}
-#pragma pop
/* 800D0444-800D0468 0CAD84 0024+00 1/0 0/0 0/0 .text checkWolfTriggerJump__9daAlink_cCFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkWolfTriggerJump() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkWolfTriggerJump__9daAlink_cCFv.s"
+bool daAlink_c::checkWolfTriggerJump() const {
+ return mActionID == WOLF_SIDESTEP || mActionID == WOLF_JUMPATTACK;
}
-#pragma pop
/* 800D0468-800D047C 0CADA8 0014+00 1/0 0/0 0/0 .text checkGuardBreakMode__9daAlink_cCFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkGuardBreakMode() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkGuardBreakMode__9daAlink_cCFv.s"
+BOOL daAlink_c::checkGuardBreakMode() const {
+ return mActionID == GUARD_BREAK;
}
-#pragma pop
/* 800D047C-800D04A4 0CADBC 0028+00 1/0 0/0 0/0 .text checkLv3Slide__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkLv3Slide() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkLv3Slide__9daAlink_cCFv.s"
+bool daAlink_c::checkLv3Slide() const {
+ return mActionID == HUMAN_SLIDE && field_0x300e != 0;
}
-#pragma pop
/* 800D04A4-800D04B8 0CADE4 0014+00 1/0 0/0 0/0 .text checkWolfHowlDemoMode__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkWolfHowlDemoMode() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkWolfHowlDemoMode__9daAlink_cCFv.s"
+bool daAlink_c::checkWolfHowlDemoMode() const {
+ return mActionID == WOLF_HOWL;
}
-#pragma pop
/* 800D04B8-800D04CC 0CADF8 0014+00 1/0 0/0 0/0 .text checkElecDamage__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkElecDamage() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkElecDamage__9daAlink_cCFv.s"
+BOOL daAlink_c::checkElecDamage() const {
+ return mActionID == ELEC_DAMAGE;
}
-#pragma pop
/* 800D04CC-800D04F4 0CAE0C 0028+00 1/0 0/0 0/0 .text checkEmptyBottleSwing__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkEmptyBottleSwing() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkEmptyBottleSwing__9daAlink_cCFv.s"
+BOOL daAlink_c::checkEmptyBottleSwing() const {
+ return mEquipItem == EMPTY_BOTTLE && mActionID == BOTTLE_SWING;
}
-#pragma pop
/* 800D04F4-800D0508 0CAE34 0014+00 1/0 0/0 0/0 .text checkBottleSwingMode__9daAlink_cCFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkBottleSwingMode() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkBottleSwingMode__9daAlink_cCFv.s"
+BOOL daAlink_c::checkBottleSwingMode() const {
+ return mActionID == BOTTLE_SWING;
}
-#pragma pop
/* 800D0508-800D051C 0CAE48 0014+00 1/0 0/0 0/0 .text checkHawkWait__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkHawkWait() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkHawkWait__9daAlink_cCFv.s"
+BOOL daAlink_c::checkHawkWait() const {
+ return mActionID == HAWK_WAIT;
}
-#pragma pop
/* 800D051C-800D0544 0CAE5C 0028+00 1/0 0/0 0/0 .text checkGoatThrow__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkGoatThrow() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkGoatThrow__9daAlink_cCFv.s"
+BOOL daAlink_c::checkGoatThrow() const {
+ return mActionID == GOAT_THROW && mCommonCounter != 0;
}
-#pragma pop
/* 800D0544-800D0570 0CAE84 002C+00 1/0 0/0 0/0 .text checkGoatThrowAfter__9daAlink_cCFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkGoatThrowAfter() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkGoatThrowAfter__9daAlink_cCFv.s"
+BOOL daAlink_c::checkGoatThrowAfter() const {
+ return mActionID == GOAT_THROW && field_0x3478 > FLOAT_LABEL(lit_6108);
}
-#pragma pop
/* 800D0570-800D0598 0CAEB0 0028+00 1/0 0/0 0/0 .text checkWolfTagLockJump__9daAlink_cCFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkWolfTagLockJump() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkWolfTagLockJump__9daAlink_cCFv.s"
+BOOL daAlink_c::checkWolfTagLockJump() const {
+ return mActionID == WOLF_TAGLOCK_JUMP && field_0x3198 == 0;
}
-#pragma pop
/* 800D0598-800D05AC 0CAED8 0014+00 1/0 0/0 0/0 .text checkWolfTagLockJumpLand__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkWolfTagLockJumpLand() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkWolfTagLockJumpLand__9daAlink_cCFv.s"
+BOOL daAlink_c::checkWolfTagLockJumpLand() const {
+ return mActionID == WOLF_TAGLOCK_LAND;
}
-#pragma pop
/* 800D05AC-800D05C0 0CAEEC 0014+00 1/0 0/0 0/0 .text checkWolfRopeHang__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkWolfRopeHang() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkWolfRopeHang__9daAlink_cCFv.s"
+BOOL daAlink_c::checkWolfRopeHang() const {
+ return mActionID == WOLF_ROPE_HANG;
}
-#pragma pop
/* 800D05C0-800D05D4 0CAF00 0014+00 1/0 0/0 0/0 .text checkRollJump__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkRollJump() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkRollJump__9daAlink_cCFv.s"
+BOOL daAlink_c::checkRollJump() const {
+ return mActionID == ROLL_JUMP;
}
-#pragma pop
/* 800D05D4-800D05E8 0CAF14 0014+00 1/0 0/0 0/0 .text checkGoronRideWait__9daAlink_cCFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkGoronRideWait() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkGoronRideWait__9daAlink_cCFv.s"
+BOOL daAlink_c::checkGoronRideWait() const {
+ return mActionID == GORON_RIDE_WAIT;
}
-#pragma pop
/* 800D05E8-800D05FC 0CAF28 0014+00 1/0 0/0 0/0 .text checkWolfChain__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkWolfChain() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkWolfChain__9daAlink_cCFv.s"
+BOOL daAlink_c::checkWolfChain() const {
+ return mActionID == WOLF_CHAIN;
}
-#pragma pop
/* 800D05FC-800D0610 0CAF3C 0014+00 1/0 0/0 0/0 .text checkWolfWait__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkWolfWait() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkWolfWait__9daAlink_cCFv.s"
+BOOL daAlink_c::checkWolfWait() const {
+ return mActionID == WOLF_WAIT;
}
-#pragma pop
/* 800D0610-800D0624 0CAF50 0014+00 1/0 0/0 0/0 .text checkWolfJumpAttack__9daAlink_cCFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkWolfJumpAttack() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkWolfJumpAttack__9daAlink_cCFv.s"
+BOOL daAlink_c::checkWolfJumpAttack() const {
+ return mActionID == WOLF_JUMPATTACK;
}
-#pragma pop
/* 800D0624-800D0638 0CAF64 0014+00 1/0 0/0 0/0 .text checkWolfRSit__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkWolfRSit() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkWolfRSit__9daAlink_cCFv.s"
+BOOL daAlink_c::checkWolfRSit() const {
+ return mActionID == WOLF_RSIT;
}
-#pragma pop
/* 800D0638-800D0660 0CAF78 0028+00 1/0 0/0 0/0 .text checkBottleDrinkEnd__9daAlink_cCFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkBottleDrinkEnd() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkBottleDrinkEnd__9daAlink_cCFv.s"
+BOOL daAlink_c::checkBottleDrinkEnd() const {
+ return mActionID == BOTTLE_DRINK && field_0x300e != 0;
}
-#pragma pop
/* 800D0660-800D0674 0CAFA0 0014+00 1/0 0/0 0/0 .text checkWolfDig__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkWolfDig() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkWolfDig__9daAlink_cCFv.s"
+BOOL daAlink_c::checkWolfDig() const {
+ return mActionID == WOLF_DIG;
}
-#pragma pop
/* 800D0674-800D0688 0CAFB4 0014+00 1/0 0/0 0/0 .text checkCutCharge__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkCutCharge() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkCutCharge__9daAlink_cCFv.s"
+BOOL daAlink_c::checkCutCharge() const {
+ return mActionID == CUT_TURN_MOVE;
}
-#pragma pop
/* 800D0688-800D06B0 0CAFC8 0028+00 1/0 0/0 0/0 .text checkCutLargeJumpCharge__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkCutLargeJumpCharge() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkCutLargeJumpCharge__9daAlink_cCFv.s"
+BOOL daAlink_c::checkCutLargeJumpCharge() const {
+ return mActionID == CUT_TURN_MOVE && mCommonCounter != 0;
}
-#pragma pop
/* 800D06B0-800D06D8 0CAFF0 0028+00 1/0 0/0 0/0 .text checkComboCutTurn__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkComboCutTurn() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkComboCutTurn__9daAlink_cCFv.s"
+BOOL daAlink_c::checkComboCutTurn() const {
+ return mActionID == COMBO_CUT_TURN && mComboCutCount != 0;
}
-#pragma pop
/* 800D06D8-800D0704 0CB018 002C+00 1/0 0/0 0/0 .text checkClimbMove__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkClimbMove() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkClimbMove__9daAlink_cCFv.s"
+BOOL daAlink_c::checkClimbMove() const {
+ return mActionID == CLIMB_MOVE_VERTICAL || mActionID == CLIMB_MOVE_LADDER ||
+ mActionID == CLIMB_MOVE_HORIZONTAL;
}
-#pragma pop
/* 800D0704-800D0718 0CB044 0014+00 1/0 0/0 0/0 .text checkGrassWhistle__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkGrassWhistle() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkGrassWhistle__9daAlink_cCFv.s"
+BOOL daAlink_c::checkGrassWhistle() const {
+ return mActionID == GRASS_WHISTLE;
}
-#pragma pop
/* 800D0718-800D072C 0CB058 0014+00 1/0 0/0 0/0 .text checkBoarRun__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkBoarRun() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkBoarRun__9daAlink_cCFv.s"
+BOOL daAlink_c::checkBoarRun() const {
+ return mActionID == BOAR_RUN;
}
-#pragma pop
/* 800D072C-800D0794 0CB06C 0068+00 1/0 0/0 0/0 .text checkHorseRideNotReady__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkHorseRideNotReady() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkHorseRideNotReady__9daAlink_cCFv.s"
+BOOL daAlink_c::checkHorseRideNotReady() const {
+ return checkHorseRide() && mActionID != HORSE_RIDE && mActionID != HORSE_GETOFF;
}
-#pragma pop
/* 800D0794-800D079C 0CB0D4 0008+00 1/0 0/0 0/0 .text getSearchBallScale__9daAlink_cCFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::getSearchBallScale() const {
- nofralloc
-#include "asm/d/a/d_a_alink/getSearchBallScale__9daAlink_cCFv.s"
+f32 daAlink_c::getSearchBallScale() const {
+ return mSearchBallScale;
}
-#pragma pop
/* 800D079C-800D07A4 0CB0DC 0008+00 1/0 0/0 0/0 .text checkFastShotTime__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkFastShotTime() {
- nofralloc
-#include "asm/d/a/d_a_alink/checkFastShotTime__9daAlink_cFv.s"
+s16 daAlink_c::checkFastShotTime() {
+ return mFastShotTime;
}
-#pragma pop
/* 800D07A4-800D07D4 0CB0E4 0030+00 1/0 0/0 0/0 .text checkCutJumpCancelTurn__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkCutJumpCancelTurn() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkCutJumpCancelTurn__9daAlink_cCFv.s"
+BOOL daAlink_c::checkCutJumpCancelTurn() const {
+ return (mActionID == CUT_JUMP || mActionID == CUT_JUMP_LAND) && field_0x3198 != 2;
}
-#pragma pop
/* 800D07D4-800D07FC 0CB114 0028+00 1/0 0/0 0/0 .text
* checkSingleBoarBattleSecondBowReady__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkSingleBoarBattleSecondBowReady() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkSingleBoarBattleSecondBowReady__9daAlink_cCFv.s"
+BOOL daAlink_c::checkSingleBoarBattleSecondBowReady() const {
+ return mActionID == RIDE_BOW_READY && mCommonCounter != 0;
}
-#pragma pop
/* 800D07FC-800D0818 0CB13C 001C+00 1/0 0/0 0/0 .text cancelDungeonWarpReadyNeck__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::cancelDungeonWarpReadyNeck() {
- nofralloc
-#include "asm/d/a/d_a_alink/cancelDungeonWarpReadyNeck__9daAlink_cFv.s"
+void daAlink_c::cancelDungeonWarpReadyNeck() {
+ if (mActionID != DUNGEON_WARP_READY) {
+ return;
+ }
+ offModeFlg(MODE_UNK_100);
}
-#pragma pop
/* 800D0818-800D0830 0CB158 0018+00 1/0 0/0 0/0 .text
* onSceneChangeAreaJump__9daAlink_cFUcUcP10fopAc_ac_c */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::onSceneChangeAreaJump(u8 param_0, u8 param_1, fopAc_ac_c* param_2) {
- nofralloc
-#include "asm/d/a/d_a_alink/onSceneChangeAreaJump__9daAlink_cFUcUcP10fopAc_ac_c.s"
+void daAlink_c::onSceneChangeAreaJump(u8 param_0, u8 param_1, fopAc_ac_c* param_2) {
+ field_0x3112 = param_0 | 0x8000;
+ field_0x2fac = param_1;
+ field_0x2808 = param_2;
}
-#pragma pop
/* 800D0830-800D084C 0CB170 001C+00 1/0 0/0 0/0 .text onSceneChangeDead__9daAlink_cFUci
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::onSceneChangeDead(u8 param_0, int param_1) {
- nofralloc
-#include "asm/d/a/d_a_alink/onSceneChangeDead__9daAlink_cFUci.s"
+void daAlink_c::onSceneChangeDead(u8 param_0, int param_1) {
+ if (mActionID != DEAD) {
+ return;
+ }
+ field_0x3012 = param_0;
+ field_0x3198 = param_1;
}
-#pragma pop
/* 800D084C-800D0860 0CB18C 0014+00 1/0 0/0 0/0 .text checkNoEquipItem__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkNoEquipItem() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkNoEquipItem__9daAlink_cCFv.s"
+bool daAlink_c::checkNoEquipItem() const {
+ return mEquipItem == NO_ITEM;
}
-#pragma pop
/* 800D0860-800D087C 0CB1A0 001C+00 1/0 0/0 0/0 .text getBoardCutTurnOffsetAngleY__9daAlink_cCFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::getBoardCutTurnOffsetAngleY() const {
- nofralloc
-#include "asm/d/a/d_a_alink/getBoardCutTurnOffsetAngleY__9daAlink_cCFv.s"
+s16 daAlink_c::getBoardCutTurnOffsetAngleY() const {
+ if (mActionID == BOARD_CUT_TURN) {
+ return field_0x3012;
+ }
+ return 0;
}
-#pragma pop
/* 800D087C-800D0884 0CB1BC 0008+00 1/0 0/0 0/0 .text getMagneBootsTopVec__9daAlink_cFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm cXyz* daAlink_c::getMagneBootsTopVec() {
- nofralloc
-#include "asm/d/a/d_a_alink/getMagneBootsTopVec__9daAlink_cFv.s"
+cXyz* daAlink_c::getMagneBootsTopVec() {
+ return &mMagneBootsTopVec;
}
-#pragma pop
/* 800D0884-800D08B0 0CB1C4 002C+00 1/0 0/0 0/0 .text setCargoCarry__9daAlink_cFP10fopAc_ac_c */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::setCargoCarry(fopAc_ac_c* param_0) {
- nofralloc
-#include "asm/d/a/d_a_alink/setCargoCarry__9daAlink_cFP10fopAc_ac_c.s"
+void daAlink_c::setCargoCarry(fopAc_ac_c* p_actor) {
+ mSpecialMode = SMODE_CARGO_CARRY;
+ mCargoCarryActor.setData(p_actor);
}
-#pragma pop
/* 800D08B0-800D08DC 0CB1F0 002C+00 1/0 0/0 0/0 .text setGoronSideMove__9daAlink_cFP10fopAc_ac_c
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::setGoronSideMove(fopAc_ac_c* param_0) {
- nofralloc
-#include "asm/d/a/d_a_alink/setGoronSideMove__9daAlink_cFP10fopAc_ac_c.s"
+void daAlink_c::setGoronSideMove(fopAc_ac_c* p_actor) {
+ mSpecialMode = SMODE_GORON_THROW;
+ mCargoCarryActor.setData(p_actor);
}
-#pragma pop
/* 800D08DC-800D091C 0CB21C 0040+00 1/0 0/0 0/0 .text setSumouReady__9daAlink_cFP10fopAc_ac_c */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::setSumouReady(fopAc_ac_c* param_0) {
- nofralloc
-#include "asm/d/a/d_a_alink/setSumouReady__9daAlink_cFP10fopAc_ac_c.s"
+void daAlink_c::setSumouReady(fopAc_ac_c* p_actor) {
+ mSpecialMode = SMODE_SUMO_READY;
+ mCargoCarryActor.setData(p_actor);
+ mDemo.setDemoMode(1);
}
-#pragma pop
/* 800D091C-800D0930 0CB25C 0014+00 1/0 0/0 0/0 .text setSumouPushBackDirection__9daAlink_cFs */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::setSumouPushBackDirection(s16 param_0) {
- nofralloc
-#include "asm/d/a/d_a_alink/setSumouPushBackDirection__9daAlink_cFs.s"
+void daAlink_c::setSumouPushBackDirection(s16 param_0) {
+ if (mActionID != SUMOU_PUSH) {
+ return;
+ }
+ field_0x3010 = param_0;
}
-#pragma pop
/* 800D0930-800D0948 0CB270 0018+00 1/0 0/0 0/0 .text setSumouLoseHeadUp__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::setSumouLoseHeadUp() {
- nofralloc
-#include "asm/d/a/d_a_alink/setSumouLoseHeadUp__9daAlink_cFv.s"
+void daAlink_c::setSumouLoseHeadUp() {
+ if (mActionID != SUMOU_WIN_LOSE) {
+ return;
+ }
+ mSpecialMode = SMODE_SUMO_LOSE;
}
-#pragma pop
/* 800D0948-800D095C 0CB288 0014+00 1/0 0/0 0/0 .text checkPriActorOwn__9daAlink_cCFPC10fopAc_ac_c
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkPriActorOwn(fopAc_ac_c const* param_0) const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkPriActorOwn__9daAlink_cCFPC10fopAc_ac_c.s"
+bool daAlink_c::checkPriActorOwn(fopAc_ac_c const* p_actor) const {
+ return field_0x27f4 == p_actor;
}
-#pragma pop
/* 800D095C-800D0970 0CB29C 0014+00 1/0 0/0 0/0 .text
* checkWolfEnemyBiteAllOwn__9daAlink_cCFPC10fopAc_ac_c */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkWolfEnemyBiteAllOwn(fopAc_ac_c const* param_0) const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkWolfEnemyBiteAllOwn__9daAlink_cCFPC10fopAc_ac_c.s"
+bool daAlink_c::checkWolfEnemyBiteAllOwn(fopAc_ac_c const* p_actor) const {
+ return field_0x281c.getActorConst() == p_actor;
}
-#pragma pop
/* 800D0970-800D0984 0CB2B0 0014+00 1/0 0/0 0/0 .text setWolfEnemyHangBiteAngle__9daAlink_cFs */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::setWolfEnemyHangBiteAngle(s16 param_0) {
- nofralloc
-#include "asm/d/a/d_a_alink/setWolfEnemyHangBiteAngle__9daAlink_cFs.s"
+void daAlink_c::setWolfEnemyHangBiteAngle(s16 angle) {
+ if (mActionID != WOLF_ENEMY_HANG_BITE) {
+ return;
+ }
+ field_0x3010 = angle;
}
-#pragma pop
/* 800D0984-800D0998 0CB2C4 0014+00 1/0 0/0 0/0 .text setSumouGraspCancelCount__9daAlink_cFi */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::setSumouGraspCancelCount(int param_0) {
- nofralloc
-#include "asm/d/a/d_a_alink/setSumouGraspCancelCount__9daAlink_cFi.s"
+void daAlink_c::setSumouGraspCancelCount(int param_0) {
+ if (mActionID != SUMOU_PUSH) {
+ return;
+ }
+ mCommonCounter = param_0;
}
-#pragma pop
/* 800D0998-800D09AC 0CB2D8 0014+00 1/0 0/0 0/0 .text checkItemSwordEquip__9daAlink_cCFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkItemSwordEquip() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkItemSwordEquip__9daAlink_cCFv.s"
+bool daAlink_c::checkItemSwordEquip() const {
+ return mEquipItem == EQUIP_SWORD;
}
-#pragma pop
/* 800D09AC-800D09B4 0CB2EC 0008+00 1/0 0/0 0/0 .text getSinkShapeOffset__9daAlink_cCFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm float daAlink_c::getSinkShapeOffset() const {
- nofralloc
-#include "asm/d/a/d_a_alink/getSinkShapeOffset__9daAlink_cCFv.s"
+f32 daAlink_c::getSinkShapeOffset() const {
+ return mSinkShapeOffset;
}
-#pragma pop
/* 800D09B4-800D09C8 0CB2F4 0014+00 1/0 0/0 0/0 .text checkSinkDead__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkSinkDead() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkSinkDead__9daAlink_cCFv.s"
+BOOL daAlink_c::checkSinkDead() const {
+ return field_0x2fbd == 0xFF;
}
-#pragma pop
/* 800D09C8-800D09DC 0CB308 0014+00 1/0 0/0 0/0 .text checkCutJumpMode__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkCutJumpMode() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkCutJumpMode__9daAlink_cCFv.s"
+BOOL daAlink_c::checkCutJumpMode() const {
+ return mActionID == CUT_JUMP;
}
-#pragma pop
/* 800D09DC-800D09E4 0CB31C 0008+00 1/0 0/0 0/0 .text getGiantPuzzleAimAngle__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm s16 daAlink_c::getGiantPuzzleAimAngle() const {
- nofralloc
-#include "asm/d/a/d_a_alink/getGiantPuzzleAimAngle__9daAlink_cCFv.s"
+s16 daAlink_c::getGiantPuzzleAimAngle() const {
+ return mCommonCounter;
}
-#pragma pop
/* 800D09E4-800D09EC 0CB324 0008+00 1/0 0/0 0/0 .text getSwordChangeWaitTimer__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::getSwordChangeWaitTimer() const {
- nofralloc
-#include "asm/d/a/d_a_alink/getSwordChangeWaitTimer__9daAlink_cCFv.s"
+u8 daAlink_c::getSwordChangeWaitTimer() const {
+ return mSwordChangeWaitTimer;
}
-#pragma pop
/* 800D09EC-800D0A14 0CB32C 0028+00 1/0 0/0 0/0 .text checkMetamorphose__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkMetamorphose() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkMetamorphose__9daAlink_cCFv.s"
+BOOL daAlink_c::checkMetamorphose() const {
+ return mActionID == METAMORPHOSE && field_0x300a == 0;
}
-#pragma pop
/* 800D0A14-800D0A28 0CB354 0014+00 1/0 0/0 0/0 .text checkWolfDownAttackPullOut__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkWolfDownAttackPullOut() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkWolfDownAttackPullOut__9daAlink_cCFv.s"
+BOOL daAlink_c::checkWolfDownAttackPullOut() const {
+ return mActionID == WOLF_DOWNATTACK_PULLOUT;
}
-#pragma pop
/* 800D0A28-800D0A30 0CB368 0008+00 1/0 0/0 0/0 .text getMidnaAtnPos__9daAlink_cCFv */
+// vtable issue
+#ifdef NONMATCHING
+cXyz* daAlink_c::getMidnaAtnPos() const {
+ return &mMidnaAtnPos;
+}
+#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
@@ -19984,135 +19747,86 @@ extern "C" asm void getMidnaAtnPos__9daAlink_cCFv() {
#include "asm/d/a/d_a_alink/getMidnaAtnPos__9daAlink_cCFv.s"
}
#pragma pop
+#endif
/* 800D0A30-800D0A44 0CB370 0014+00 1/0 0/0 0/0 .text checkCopyRodEquip__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkCopyRodEquip() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkCopyRodEquip__9daAlink_cCFv.s"
+bool daAlink_c::checkCopyRodEquip() const {
+ return mEquipItem == COPY_ROD;
}
-#pragma pop
/* 800D0A44-800D0A6C 0CB384 0028+00 1/0 0/0 0/0 .text checkCanoeFishingGetLeft__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkCanoeFishingGetLeft() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkCanoeFishingGetLeft__9daAlink_cCFv.s"
+bool daAlink_c::checkCanoeFishingGetLeft() const {
+ return mActionID == CANOE_FISHING_GET && field_0x300e == 0;
}
-#pragma pop
/* 800D0A6C-800D0A94 0CB3AC 0028+00 1/0 0/0 0/0 .text checkCanoeFishingGetRight__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkCanoeFishingGetRight() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkCanoeFishingGetRight__9daAlink_cCFv.s"
+bool daAlink_c::checkCanoeFishingGetRight() const {
+ return mActionID == CANOE_FISHING_GET && field_0x300e == 1;
}
-#pragma pop
/* 800D0A94-800D0A9C 0CB3D4 0008+00 1/0 0/0 0/0 .text checkBeeChildDrink__9daAlink_cCFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkBeeChildDrink() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkBeeChildDrink__9daAlink_cCFv.s"
+u8 daAlink_c::checkBeeChildDrink() const {
+ return field_0x2fd3;
}
-#pragma pop
/* 800D0A9C-800D0AA4 0CB3DC 0008+00 1/0 0/0 0/0 .text getWolfHowlMgrP__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::getWolfHowlMgrP() {
- nofralloc
-#include "asm/d/a/d_a_alink/getWolfHowlMgrP__9daAlink_cFv.s"
+Z2WolfHowlMgr* daAlink_c::getWolfHowlMgrP() {
+ return &mZ2WolfHowlMgr;
}
-#pragma pop
/* 800D0AA4-800D0AC8 0CB3E4 0024+00 1/0 0/0 0/0 .text checkWolfHowlSuccessAnime__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkWolfHowlSuccessAnime() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkWolfHowlSuccessAnime__9daAlink_cCFv.s"
+BOOL daAlink_c::checkWolfHowlSuccessAnime() const {
+ return checkUnderMove0BckNoArcWolf(ANM_WOLF_HOWL_SUCCESS);
}
-#pragma pop
/* 800D0AC8-800D0AF0 0CB408 0028+00 1/0 0/0 0/0 .text checkOctaIealHang__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkOctaIealHang() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkOctaIealHang__9daAlink_cCFv.s"
+bool daAlink_c::checkOctaIealHang() const {
+ return mActionID == BOSS_ENEMY_HANG && field_0x32cc == 0;
}
-#pragma pop
/* 800D0AF0-800D0B08 0CB430 0018+00 1/0 0/0 0/0 .text cancelOctaIealHang__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::cancelOctaIealHang() {
- nofralloc
-#include "asm/d/a/d_a_alink/cancelOctaIealHang__9daAlink_cFv.s"
+void daAlink_c::cancelOctaIealHang() {
+ if (mActionID != BOSS_ENEMY_HANG) {
+ return;
+ }
+ field_0x300e = 1;
}
-#pragma pop
/* 800D0B08-800D0B20 0CB448 0018+00 1/0 0/0 0/0 .text cancelDragonHangBackJump__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::cancelDragonHangBackJump() {
- nofralloc
-#include "asm/d/a/d_a_alink/cancelDragonHangBackJump__9daAlink_cFv.s"
+void daAlink_c::cancelDragonHangBackJump() {
+ if (mActionID != BOSS_ENEMY_HANG) {
+ return;
+ }
+ field_0x300e = -1;
}
-#pragma pop
/* 800D0B20-800D0B38 0CB460 0018+00 1/0 0/0 0/0 .text setOctaIealWildHang__9daAlink_cFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::setOctaIealWildHang() {
- nofralloc
-#include "asm/d/a/d_a_alink/setOctaIealWildHang__9daAlink_cFv.s"
+void daAlink_c::setOctaIealWildHang() {
+ if (mActionID != BOSS_ENEMY_HANG) {
+ return;
+ }
+ field_0x3008 = 1;
}
-#pragma pop
/* 800D0B38-800D0B60 0CB478 0028+00 1/0 0/0 0/0 .text checkDragonHangRide__9daAlink_cCFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkDragonHangRide() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkDragonHangRide__9daAlink_cCFv.s"
+bool daAlink_c::checkDragonHangRide() const {
+ return mActionID == BOSS_ENEMY_HANG && field_0x32cc != 0;
}
-#pragma pop
/* 800D0B60-800D0B8C 0CB4A0 002C+00 1/0 0/0 0/0 .text playerStartCollisionSE__9daAlink_cFUlUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::playerStartCollisionSE(u32 param_0, u32 param_1) {
- nofralloc
-#include "asm/d/a/d_a_alink/playerStartCollisionSE__9daAlink_cFUlUl.s"
+void daAlink_c::playerStartCollisionSE(u32 param_0, u32 param_1) {
+ mZ2Link.startCollisionSE(param_0, param_1);
}
-#pragma pop
/* 800D0B8C-800D0C6C 0CB4CC 00E0+00 1/0 0/0 0/0 .text __dt__16daAlink_matAnm_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm daAlink_matAnm_c::~daAlink_matAnm_c() {
+// asm daAlink_matAnm_c::~daAlink_matAnm_c() {
+extern "C" asm void __dt__16daAlink_matAnm_cFv() {
nofralloc
#include "asm/d/a/d_a_alink/__dt__16daAlink_matAnm_cFv.s"
}
@@ -20193,76 +19907,71 @@ asm void daAlink_c::checkLightSwordMtrl() {
/* 800D0E98-800D0ECC 0CB7D8 0034+00 5/5 0/0 0/0 .text checkSwordEquipAnime__9daAlink_cCFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkSwordEquipAnime() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkSwordEquipAnime__9daAlink_cCFv.s"
+BOOL daAlink_c::checkSwordEquipAnime() const {
+ return !i_checkNoResetFlg0(FLG0_UNK_1000000) &&
+ (checkUpperAnime(0x255) || checkUpperAnime(0x261));
}
-#pragma pop
/* 800D0ECC-800D0EFC 0CB80C 0030+00 8/8 0/0 0/0 .text checkCutDashAnime__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkCutDashAnime() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkCutDashAnime__9daAlink_cCFv.s"
+BOOL daAlink_c::checkCutDashAnime() const {
+ return checkUpperAnime(0x80) || checkUpperAnime(0x82) || checkUpperAnime(0x81);
}
-#pragma pop
/* 800D0EFC-800D0F5C 0CB83C 0060+00 1/1 0/0 0/0 .text
* checkCutDashEnemyHit__9daAlink_cFR12dCcD_GObjInf */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkCutDashEnemyHit(dCcD_GObjInf& param_0) {
- nofralloc
-#include "asm/d/a/d_a_alink/checkCutDashEnemyHit__9daAlink_cFR12dCcD_GObjInf.s"
+BOOL daAlink_c::checkCutDashEnemyHit(dCcD_GObjInf& obj) {
+ return obj.ChkAtHit() && checkEnemyGroup(obj.GetAtHitAc());
}
-#pragma pop
/* 800D0F5C-800D0F90 0CB89C 0034+00 6/6 0/0 0/0 .text getSwordAtType__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::getSwordAtType() {
- nofralloc
-#include "asm/d/a/d_a_alink/getSwordAtType__9daAlink_cFv.s"
+u32 daAlink_c::getSwordAtType() {
+ return checkMasterSwordEquip() ? 0x4000002 : 2;
}
-#pragma pop
/* 800D0F90-800D102C 0CB8D0 009C+00 3/3 0/0 0/0 .text initCutTurnAt__9daAlink_cFfi */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::initCutTurnAt(f32 param_0, int param_1) {
- nofralloc
-#include "asm/d/a/d_a_alink/initCutTurnAt__9daAlink_cFfi.s"
+void daAlink_c::initCutTurnAt(f32 param_0, int param_1) {
+ field_0xFB8.ResetAtHit();
+ field_0xFB8.OnAtSetBit();
+ field_0xFB8.SetAtType(getSwordAtType());
+ field_0xFB8.SetAtHitMark(3);
+ field_0xFB8.SetAtSe(1);
+ field_0xFB8.SetAtAtp(param_1);
+ u8 mtrl;
+ if (!i_checkNoResetFlg3(FLG3_UNK_100000)) {
+ mtrl = 0;
+ } else {
+ mtrl = 4;
+ }
+ field_0xFB8.SetAtMtrl(mtrl);
+ field_0xFB8.SetR(param_0);
+ field_0x2fd0 = 1;
}
-#pragma pop
/* 800D102C-800D1088 0CB96C 005C+00 2/2 0/0 0/0 .text checkCutFinishJumpUp__9daAlink_cFv
*/
+#ifdef NONMATCHING
+bool daAlink_c::checkCutFinishJumpUp() {
+ return checkCutBackState() && (!checkNotBattleStage() && swordSwingTrigger());
+}
+#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::checkCutFinishJumpUp() {
+asm bool daAlink_c::checkCutFinishJumpUp() {
nofralloc
#include "asm/d/a/d_a_alink/checkCutFinishJumpUp__9daAlink_cFv.s"
}
#pragma pop
+#endif
/* 800D1088-800D10E0 0CB9C8 0058+00 2/2 0/0 0/0 .text changeCutFast__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::changeCutFast() {
- nofralloc
-#include "asm/d/a/d_a_alink/changeCutFast__9daAlink_cFv.s"
+void daAlink_c::changeCutFast() {
+ deleteEquipItem(0, 0);
+ setSwordModel();
+ mComboCutCount = 3;
+ checkCutAction();
+ i_onNoResetFlg0(FLG0_UNK_80000);
}
-#pragma pop
/* 800D10E0-800D1268 0CBA20 0188+00 1/1 0/0 0/0 .text checkCutFastReady__9daAlink_cFv */
#pragma push
@@ -20274,42 +19983,48 @@ asm void daAlink_c::checkCutFastReady() {
}
#pragma pop
+bool daPy_py_c::checkWoodSwordEquip() {
+ return dComIfGs_getSelectEquipSword() == WOOD_STICK;
+}
+
/* 800D1268-800D1310 0CBBA8 00A8+00 9/9 0/0 0/0 .text setSwordModel__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::setSwordModel() {
- nofralloc
-#include "asm/d/a/d_a_alink/setSwordModel__9daAlink_cFv.s"
+void daAlink_c::setSwordModel() {
+ field_0x2fde = 0xFF;
+ mEquipItem = EQUIP_SWORD;
+
+ mDoAud_bgmSetSwordUsing(1);
+ field_0x2f94 = 0;
+
+ if (checkWoodSwordEquip()) {
+ mSwordModel->getModelData()->getMaterialNodePointer(1)->getShape()->hide();
+ } else {
+ mSwordModel->getModelData()->getMaterialNodePointer(0)->getShape()->show();
+ }
}
-#pragma pop
/* 800D1310-800D13AC 0CBC50 009C+00 2/2 0/0 0/0 .text offSwordModel__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::offSwordModel() {
- nofralloc
-#include "asm/d/a/d_a_alink/offSwordModel__9daAlink_cFv.s"
+void daAlink_c::offSwordModel() {
+ mDoAud_bgmSetSwordUsing(0);
+
+ if (mSwordModel == field_0x0668 || mSwordModel == field_0x0660) {
+ mSwordModel->getModelData()->getMaterialNodePointer(0)->getShape()->hide();
+ } else if (mSwordModel == field_0x0670) {
+ field_0x0670->getModelData()->getMaterialNodePointer(1)->getShape()->show();
+ }
}
-#pragma pop
/* 800D13AC-800D13E4 0CBCEC 0038+00 1/1 0/0 0/0 .text checkCutTypeNoBlur__9daAlink_cCFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkCutTypeNoBlur() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkCutTypeNoBlur__9daAlink_cCFv.s"
+BOOL daAlink_c::checkCutTypeNoBlur() const {
+ return mCutType == TYPE_CUT_STAB || mCutType == TYPE_CUT_STAB_COMBO ||
+ mCutType == TYPE_CUT_STAB_FINISH || i_checkNoResetFlg0(UNDER_WATER_MOVEMENT);
}
-#pragma pop
/* 800D13E4-800D1424 0CBD24 0040+00 7/7 0/0 0/0 .text checkCutTurnInput__9daAlink_cCFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::checkCutTurnInput() const {
+asm bool daAlink_c::checkCutTurnInput() const {
nofralloc
#include "asm/d/a/d_a_alink/checkCutTurnInput__9daAlink_cCFv.s"
}
@@ -20317,26 +20032,35 @@ asm void daAlink_c::checkCutTurnInput() const {
/* 800D1424-800D1430 0CBD64 000C+00 7/7 0/0 0/0 .text getCutTurnDirection__9daAlink_cCFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::getCutTurnDirection() const {
- nofralloc
-#include "asm/d/a/d_a_alink/getCutTurnDirection__9daAlink_cCFv.s"
+int daAlink_c::getCutTurnDirection() const {
+ return field_0x3180 < 0;
}
-#pragma pop
/* 800D1430-800D1454 0CBD70 0024+00 17/17 0/0 0/0 .text resetCombo__9daAlink_cFi */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::resetCombo(int param_0) {
- nofralloc
-#include "asm/d/a/d_a_alink/resetCombo__9daAlink_cFi.s"
+void daAlink_c::resetCombo(int param_0) {
+ mComboCutCount = 0;
+ i_offNoResetFlg0(FLG0_UNK_8000);
+ if (param_0 != 0) {
+ mRunCutComboCount = 0;
+ }
}
-#pragma pop
/* 800D1454-800D152C 0CBD94 00D8+00 1/1 0/0 0/0 .text checkComboCnt__9daAlink_cFv */
+// something with i_checkAttentionLock
+#ifdef NONMATCHING
+void daAlink_c::checkComboCnt() {
+ if ((mEquipItem == EQUIP_SWORD && mComboCutCount == 2) &&
+ (i_checkAttentionLock() && (field_0x122C[0].ChkAtHit() || field_0x122C[1].ChkAtHit() ||
+ field_0x122C[2].ChkAtHit()))) {
+ i_onNoResetFlg0(FLG0_UNK_8000);
+ }
+ if (field_0x307e > 0) {
+ field_0x307e--;
+ } else {
+ resetCombo(1);
+ }
+}
+#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
@@ -20345,16 +20069,13 @@ asm void daAlink_c::checkComboCnt() {
#include "asm/d/a/d_a_alink/checkComboCnt__9daAlink_cFv.s"
}
#pragma pop
+#endif
/* 800D152C-800D1540 0CBE6C 0014+00 22/22 0/0 0/0 .text setCutType__9daAlink_cFUc */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::setCutType(u8 param_0) {
- nofralloc
-#include "asm/d/a/d_a_alink/setCutType__9daAlink_cFUc.s"
+void daAlink_c::setCutType(u8 type) {
+ mCutType = type;
+ i_offResetFlg0(RFLG0_UNK_8000000);
}
-#pragma pop
/* 800D1540-800D1688 0CBE80 0148+00 8/8 0/0 0/0 .text
* setCylAtParam__9daAlink_cFUl11dCcG_At_SplUcUciff */
@@ -20382,14 +20103,15 @@ asm void daAlink_c::setSwordAtParam(dCcG_At_Spl param_0, u8 param_1, u8 param_2,
/* 800D1788-800D17EC 0CC0C8 0064+00 1/1 0/0 1/1 .text
* notSwordHitVibActor__9daAlink_cFP10fopAc_ac_c */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::notSwordHitVibActor(fopAc_ac_c* param_0) {
- nofralloc
-#include "asm/d/a/d_a_alink/notSwordHitVibActor__9daAlink_cFP10fopAc_ac_c.s"
+bool daAlink_c::notSwordHitVibActor(fopAc_ac_c* p_actor) {
+ if (p_actor != NULL && fopAcM_GetGroup(p_actor) == 4) {
+ s16 name = fopAcM_GetName(p_actor);
+ if (!checkSpecialNpc(p_actor) && name != 0x108 && name != 0x240) {
+ return true;
+ }
+ }
+ return false;
}
-#pragma pop
/* 800D17EC-800D1920 0CC12C 0134+00 4/4 0/0 0/0 .text
* setSwordHitVibration__9daAlink_cFP12dCcD_GObjInf */
@@ -20404,32 +20126,23 @@ asm void daAlink_c::setSwordHitVibration(dCcD_GObjInf* param_0) {
/* 800D1920-800D1978 0CC260 0058+00 3/3 0/0 0/0 .text checkAtShieldHit__9daAlink_cFR12dCcD_GObjInf
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkAtShieldHit(dCcD_GObjInf& param_0) {
- nofralloc
-#include "asm/d/a/d_a_alink/checkAtShieldHit__9daAlink_cFR12dCcD_GObjInf.s"
+BOOL daAlink_c::checkAtShieldHit(dCcD_GObjInf& param_0) {
+ return param_0.ChkAtHit() && param_0.ChkAtShieldHit();
}
-#pragma pop
/* 800D1978-800D19C8 0CC2B8 0050+00 1/1 0/0 0/0 .text
* checkCutReverseAt__9daAlink_cFP12dCcD_GObjInf */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkCutReverseAt(dCcD_GObjInf* param_0) {
- nofralloc
-#include "asm/d/a/d_a_alink/checkCutReverseAt__9daAlink_cFP12dCcD_GObjInf.s"
+bool daAlink_c::checkCutReverseAt(dCcD_GObjInf* param_0) {
+ param_0->GetAtHitAc();
+ return checkAtShieldHit(*param_0) ? true : false;
}
-#pragma pop
/* 800D19C8-800D1E1C 0CC308 0454+00 5/5 0/0 0/0 .text
* changeCutReverseProc__9daAlink_cFQ29daAlink_c11daAlink_ANM */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::changeCutReverseProc(daAlink_c::daAlink_ANM param_0) {
+asm BOOL daAlink_c::changeCutReverseProc(daAlink_c::daAlink_ANM param_0) {
nofralloc
#include "asm/d/a/d_a_alink/changeCutReverseProc__9daAlink_cFQ29daAlink_c11daAlink_ANM.s"
}
@@ -20447,85 +20160,86 @@ asm void daAlink_c::setCutDash(int param_0, int param_1) {
/* 800D20B4-800D20FC 0CC9F4 0048+00 4/4 0/0 0/0 .text checkForceSwordSwing__9daAlink_cFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkForceSwordSwing() {
- nofralloc
-#include "asm/d/a/d_a_alink/checkForceSwordSwing__9daAlink_cFv.s"
+BOOL daAlink_c::checkForceSwordSwing() {
+ return mEquipItem == EQUIP_SWORD && swordSwingTrigger();
}
-#pragma pop
/* 800D20FC-800D2188 0CCA3C 008C+00 7/7 0/0 0/0 .text setComboReserb__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::setComboReserb() {
- nofralloc
-#include "asm/d/a/d_a_alink/setComboReserb__9daAlink_cFv.s"
+void daAlink_c::setComboReserb() {
+ if (i_checkWolf()) {
+ field_0x307e = daAlinkHIO_wlAttack_c0::m.mComboDuration;
+ } else {
+ field_0x307e = daAlinkHIO_cut_c0::m.mComboDuration;
+ }
+ if (mComboCutCount != 4 && field_0x2fce == 0 && swordSwingTrigger()) {
+ i_onNoResetFlg2(UNK_FLG2_2);
+ }
}
-#pragma pop
/* 800D2188-800D21D0 0CCAC8 0048+00 1/1 0/0 0/0 .text checkComboReserb__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkComboReserb() {
- nofralloc
-#include "asm/d/a/d_a_alink/checkComboReserb__9daAlink_cFv.s"
+BOOL daAlink_c::checkComboReserb() {
+ return i_checkNoResetFlg2(UNK_FLG2_2) && !checkEventRun();
+}
+
+inline u8 i_dComIfGp_getDoStatus() {
+ return g_dComIfG_gameInfo.play.getDoStatus();
}
-#pragma pop
/* 800D21D0-800D2284 0CCB10 00B4+00 1/1 0/0 0/0 .text commonCutAction__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::commonCutAction() {
- nofralloc
-#include "asm/d/a/d_a_alink/commonCutAction__9daAlink_cFv.s"
+bool daAlink_c::commonCutAction() {
+ if (mComboCutCount == 4) {
+ resetCombo(1);
+ }
+
+ if (i_dComIfGp_getDoStatus() == 4) {
+ setDoStatus(0);
+ }
+ mComboCutCount++;
+
+ if (i_checkReinRide()) {
+ procHorseCutInit();
+ if (mComboCutCount > 1) {
+ mComboCutCount = 1;
+ }
+ return true;
+ } else {
+ return false;
+ }
}
-#pragma pop
/* 800D2284-800D22BC 0CCBC4 0038+00 13/13 0/0 0/0 .text setSwordVoiceSe__9daAlink_cFUl */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::setSwordVoiceSe(u32 param_0) {
- nofralloc
-#include "asm/d/a/d_a_alink/setSwordVoiceSe__9daAlink_cFUl.s"
+void daAlink_c::setSwordVoiceSe(u32 sfx_id) {
+ if (!i_checkNoResetFlg0(UNDER_WATER_MOVEMENT)) {
+ voiceStart(sfx_id);
+ }
}
-#pragma pop
/* 800D22BC-800D2304 0CCBFC 0048+00 3/3 0/0 0/0 .text setSwordChargeVoiceSe__9daAlink_cFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::setSwordChargeVoiceSe() {
- nofralloc
-#include "asm/d/a/d_a_alink/setSwordChargeVoiceSe__9daAlink_cFv.s"
+void daAlink_c::setSwordChargeVoiceSe() {
+ if (mCommonCounter != 0) {
+ mCommonCounter--;
+ if (mCommonCounter == 0) {
+ setSwordVoiceSe(Z2SE_AL_V_TAME);
+ }
+ }
}
-#pragma pop
/* 800D2304-800D2368 0CCC44 0064+00 3/3 0/0 0/0 .text setSwordComboVoice__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::setSwordComboVoice() {
- nofralloc
-#include "asm/d/a/d_a_alink/setSwordComboVoice__9daAlink_cFv.s"
+void daAlink_c::setSwordComboVoice() {
+ if (mActionID == CUT_JUMP || mComboCutCount == 4) {
+ setSwordVoiceSe(Z2SE_AL_V_ATTACK_L);
+ } else if (mComboCutCount == 1) {
+ setSwordVoiceSe(Z2SE_AL_V_ATTACK_S);
+ } else {
+ setSwordVoiceSe(Z2SE_AL_V_ATTACK_M);
+ }
}
-#pragma pop
/* 800D2368-800D23C0 0CCCA8 0058+00 3/3 0/0 0/0 .text checkCutTurnInputTrigger__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkCutTurnInputTrigger() {
- nofralloc
-#include "asm/d/a/d_a_alink/checkCutTurnInputTrigger__9daAlink_cFv.s"
+bool daAlink_c::checkCutTurnInputTrigger() {
+ return swordSwingTrigger() && checkCutTurnInput();
}
-#pragma pop
/* 800D23C0-800D2684 0CCD00 02C4+00 7/7 0/0 0/0 .text checkCutAction__9daAlink_cFv */
#pragma push
@@ -20538,14 +20252,17 @@ asm void daAlink_c::checkCutAction() {
#pragma pop
/* 800D2684-800D26EC 0CCFC4 0068+00 9/9 0/0 0/0 .text checkCutTurnCharge__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkCutTurnCharge() {
- nofralloc
-#include "asm/d/a/d_a_alink/checkCutTurnCharge__9daAlink_cFv.s"
+void daAlink_c::checkCutTurnCharge() {
+ if (swordButton()) {
+ if (field_0x3012 < 3) {
+ field_0x3012++;
+ } else {
+ i_onResetFlg0(RFLG0_UNK_40);
+ }
+ } else {
+ field_0x3012 = 0;
+ }
}
-#pragma pop
/* 800D26EC-800D2760 0CD02C 0074+00 4/4 0/0 0/0 .text getCutDirection__9daAlink_cFv */
#pragma push
@@ -20581,7 +20298,7 @@ asm void daAlink_c::checkDoCutAction() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::checkCutBackState() {
+asm BOOL daAlink_c::checkCutBackState() {
nofralloc
#include "asm/d/a/d_a_alink/checkCutBackState__9daAlink_cFv.s"
}
@@ -20650,6 +20367,47 @@ asm void daAlink_c::checkCutAtnActorChange() {
#pragma pop
/* 800D2C78-800D2F58 0CD5B8 02E0+00 2/2 0/0 0/0 .text setCutJumpSpeed__9daAlink_cFi */
+// literals, and small issue with JMAFastSqrt instructions
+#ifdef NONMATCHING
+void daAlink_c::setCutJumpSpeed(int cut_type) {
+ if (i_checkNoResetFlg0(UNDER_WATER_MOVEMENT)) {
+ mNormalSpeed *= daAlinkHIO_magneBoots_c0::m.mWaterVelocityX;
+ mSpeed.y *= daAlinkHIO_magneBoots_c0::m.mWaterVelocityY;
+ } else if (checkHeavyStateOn(1, 1)) {
+ mSpeed.y *= 1.35f;
+ }
+
+ // cut_type 0 = standing jump attack
+ if (mTargetedActor != NULL && cut_type == 0) {
+ mCollisionRot.y = cLib_targetAngleY(&mCurrent.mPosition, &mTargetedActor->mEyePos);
+ cXyz targetPos(mTargetedActor->mEyePos.x - (cM_ssin(mCollisionRot.y) * 70.0f),
+ mTargetedActor->mEyePos.y + 50.0f,
+ mTargetedActor->mEyePos.z - (cM_scos(mCollisionRot.y) * 70.0f));
+
+ if (fopAcM_gc_c::gndCheck(&targetPos)) {
+ targetPos.y = fopAcM_gc_c::getGroundY();
+ } else {
+ targetPos.y = mTargetedActor->mEyePos.y;
+ }
+
+ f32 dvar12 = mSpeed.y + mGravity;
+ f32 dvar10 = 1.0f / mGravity;
+ f32 fvar1 = targetPos.y - (mCurrent.mPosition.y - (dvar10 * (dvar12 * dvar12) * 0.5f));
+
+ if (fvar1 > 0.0f) {
+ fvar1 = 0.0f;
+ }
+ f32 sqrt = JMAFastSqrt(fvar1 * 2.0f * dvar10);
+ f32 speedDiv = sqrt - (dvar12 * dvar10);
+ f32 squareDist = mCurrent.mPosition.absXZ(targetPos);
+
+ if (squareDist > 500.0f) {
+ squareDist = 500.0f;
+ }
+ mNormalSpeed = squareDist / speedDiv;
+ }
+}
+#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
@@ -20658,6 +20416,7 @@ asm void daAlink_c::setCutJumpSpeed(int param_0) {
#include "asm/d/a/d_a_alink/setCutJumpSpeed__9daAlink_cFi.s"
}
#pragma pop
+#endif
/* 800D2F58-800D31B8 0CD898 0260+00 3/3 0/0 0/0 .text procCutNormalInit__9daAlink_cFi */
#pragma push
@@ -20762,24 +20521,62 @@ asm void daAlink_c::procCutReverse() {
#pragma pop
/* 800D42FC-800D43F8 0CEC3C 00FC+00 2/2 0/0 0/0 .text procCutJumpInit__9daAlink_cFi */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::procCutJumpInit(int param_0) {
- nofralloc
-#include "asm/d/a/d_a_alink/procCutJumpInit__9daAlink_cFi.s"
+bool daAlink_c::procCutJumpInit(int jump_type) {
+ commonProcInit(CUT_JUMP);
+ setSingleAnimeParam(ANM_CUT_JUMP, &daAlinkHIO_cutJump_c0::m.mCutAnm);
+ if (jump_type != 0) {
+ mNormalSpeed = daAlinkHIO_cutJump_c0::m.mAirJumpSpeedH;
+ mSpeed.y = daAlinkHIO_cutJump_c0::m.mAirJumpSpeedV;
+ } else {
+ mNormalSpeed = daAlinkHIO_cutJump_c0::m.mBaseJumpSpeedH;
+ mSpeed.y = daAlinkHIO_cutJump_c0::m.mBaseJumpSpeedV;
+ }
+ setCutJumpSpeed(jump_type);
+ mCurrent.mAngle.y = mCollisionRot.y;
+ setSwordAtParam(dCcG_At_Spl_UNK_01, 3, 1, 3, daAlinkHIO_cut_c0::m.mSwordLength,
+ daAlinkHIO_cut_c0::m.mSwordRadius);
+ setCutType(TYPE_CUT_JUMP);
+ setSwordComboVoice();
+ dComIfGp_setPlayerStatus0(0, 0x8000);
+ field_0x3198 = 2;
+ return true;
}
-#pragma pop
/* 800D43F8-800D452C 0CED38 0134+00 1/0 0/0 0/0 .text procCutJump__9daAlink_cFv */
+#ifdef NONMATCHING
+bool daAlink_c::procCutJump() {
+ if (mCurrent.mAngle.y == mCollisionRot.y && changeCutReverseProc(ANM_CUT_JUMP)) {
+ mCurrent.mAngle.y += 0x8000;
+ mNormalSpeed = 27.0f;
+ cXyz xyz(0.0f, 1.0f, 0.0f);
+ dComIfGp_getVibration().StartShock(5, 31, xyz);
+ } else if (mCurrent.mAngle.y != mCollisionRot.y) {
+ cLib_chaseF(&mNormalSpeed, 5.0f, 1.0f);
+ }
+
+ if (checkCutTurnInput()) {
+ field_0x3198 = getCutTurnDirection();
+ }
+ if (mLinkAcch.ChkGroundHit()) {
+ procCutJumpLandInit(field_0x3198);
+ } else if (mFrameCtrl1[0].getFrame() >= daAlinkHIO_cutJump_c0::m.mStartAttackFrame) {
+ if (!i_checkNoResetFlg0(FLG0_UNK_40)) {
+ seStartSwordCut(Z2SE_AL_SWORD_SWING_L);
+ }
+ i_onResetFlg0(RFLG0_UNK_2);
+ }
+ return true;
+}
+#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::procCutJump() {
+asm bool daAlink_c::procCutJump() {
nofralloc
#include "asm/d/a/d_a_alink/procCutJump__9daAlink_cFv.s"
}
#pragma pop
+#endif
/* 800D452C-800D4684 0CEE6C 0158+00 1/1 0/0 0/0 .text procCutJumpLandInit__9daAlink_cFi
*/
@@ -20978,14 +20775,66 @@ asm void daAlink_c::procCutLargeJumpInit() {
#pragma pop
/* 800D6484-800D66C0 0D0DC4 023C+00 1/0 0/0 0/0 .text procCutLargeJump__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::procCutLargeJump() {
- nofralloc
-#include "asm/d/a/d_a_alink/procCutLargeJump__9daAlink_cFv.s"
+bool daAlink_c::procCutLargeJump() {
+ daPy_frameCtrl_c* ctrl = &mFrameCtrl1[0];
+
+ if (field_0x3010 != 0) {
+ field_0x2f99 = 4;
+ }
+
+ if (i_checkModeFlg(2) && checkCutTurnInput()) {
+ field_0x3198 = getCutTurnDirection();
+ }
+
+ if (mCommonCounter == 0) {
+ if (ctrl->checkAnmEnd()) {
+ field_0x2f99 = 12;
+ setSingleAnimeParam(ANM_CUT_JUMP_LARGE, &daAlinkHIO_cutLargeJump_c0::m.mCutAnm);
+ mCommonCounter = 1;
+ setSwordVoiceSe(Z2SE_AL_V_JUMP_ATTACK_L_2);
+ } else {
+ if (ctrl->getFrame() >= lit_7307) {
+ field_0x3010 = 1;
+ }
+
+ if (!i_checkModeFlg(2) && ctrl->getFrame() >= lit_7808) {
+ setJumpMode();
+ mNormalSpeed = daAlinkHIO_cutLargeJump_c0::m.mCutSpeedH;
+ mSpeed.y = daAlinkHIO_cutLargeJump_c0::m.mCutSpeedV;
+ setCutJumpSpeed(0);
+ }
+
+ if (ctrl->getFrame() >= daAlinkHIO_cutLargeJump_c0::m.mJumpAttackStartF &&
+ ctrl->getFrame() < daAlinkHIO_cutLargeJump_c0::m.mJumpAttackEndF) {
+ if (!i_checkNoResetFlg0(FLG0_UNK_40)) {
+ seStartSwordCut(Z2SE_AL_SWORD_SWING_S);
+ }
+ i_onResetFlg0(2);
+ }
+ }
+ } else {
+ if (field_0x300e != 0) {
+ field_0x300e--;
+ if (field_0x300e == 0) {
+ setSwordAtParam(dCcG_At_Spl_UNK_01, 3, 1, 4, daAlinkHIO_cut_c0::m.mSwordLength,
+ daAlinkHIO_cut_c0::m.mSwordRadius);
+ setCutType(TYPE_CUT_LARGE_JUMP);
+ }
+ }
+
+ if (mLinkAcch.ChkGroundHit()) {
+ procCutLargeJumpLandInit(field_0x3198);
+ } else {
+ if (ctrl->getFrame() >= daAlinkHIO_cutLargeJump_c0::m.mCutInitF) {
+ if (!i_checkNoResetFlg0(FLG0_UNK_40)) {
+ seStartSwordCut(Z2SE_AL_SWORD_SWING_S);
+ }
+ i_onResetFlg0(2);
+ }
+ }
+ }
+ return true;
}
-#pragma pop
/* 800D66C0-800D67FC 0D1000 013C+00 1/1 0/0 0/0 .text procCutLargeJumpLandInit__9daAlink_cFi */
#pragma push
@@ -21570,7 +21419,7 @@ asm void daAlink_c::procCoSwimFreezeReturn() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::checkEnemyGroup(fopAc_ac_c* param_0) {
+asm BOOL daAlink_c::checkEnemyGroup(fopAc_ac_c* param_0) {
nofralloc
#include "asm/d/a/d_a_alink/checkEnemyGroup__9daAlink_cFP10fopAc_ac_c.s"
}
@@ -21580,7 +21429,7 @@ asm void daAlink_c::checkEnemyGroup(fopAc_ac_c* param_0) {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::checkSpecialNpc(fopAc_ac_c* param_0) {
+asm BOOL daAlink_c::checkSpecialNpc(fopAc_ac_c* param_0) {
nofralloc
#include "asm/d/a/d_a_alink/checkSpecialNpc__9daAlink_cFP10fopAc_ac_c.s"
}
@@ -21600,7 +21449,7 @@ asm void daAlink_c::checkShieldAttackEmphasys() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::checkGuardActionChange() {
+asm BOOL daAlink_c::checkGuardActionChange() {
nofralloc
#include "asm/d/a/d_a_alink/checkGuardActionChange__9daAlink_cFv.s"
}
@@ -21667,21 +21516,43 @@ asm void daAlink_c::setArrowShieldPos(cXyz* param_0, csXyz* param_1, cXyz const*
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::checkUpperGuardAnime() const {
+asm BOOL daAlink_c::checkUpperGuardAnime() const {
nofralloc
#include "asm/d/a/d_a_alink/checkUpperGuardAnime__9daAlink_cCFv.s"
}
#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;
+}
+#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm bool daAlink_c::checkPlayerGuard() const {
+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
@@ -21810,7 +21681,7 @@ asm void daAlink_c::procGuardBreak() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::procTurnMoveInit(int param_0) {
+asm bool daAlink_c::procTurnMoveInit(int param_0) {
nofralloc
#include "asm/d/a/d_a_alink/procTurnMoveInit__9daAlink_cFi.s"
}
@@ -21881,7 +21752,7 @@ asm void daAlink_c::getArrowIncAtMax() const {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::checkBowAndSlingItem(int param_0) {
+asm BOOL daAlink_c::checkBowAndSlingItem(int param_0) {
nofralloc
#include "asm/d/a/d_a_alink/checkBowAndSlingItem__9daAlink_cFi.s"
}
@@ -22065,7 +21936,7 @@ asm void daAlink_c::setBowModel() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::checkBowGrabLeftHand() const {
+asm bool daAlink_c::checkBowGrabLeftHand() const {
nofralloc
#include "asm/d/a/d_a_alink/checkBowGrabLeftHand__9daAlink_cCFv.s"
}
@@ -22142,75 +22013,75 @@ asm void daAlink_c::procBowMove() {
#pragma pop
/* 800DFFE0-800E0010 0DA920 0030+00 0/0 0/0 1/1 .text checkBoomerangLockAccept__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkBoomerangLockAccept() {
- nofralloc
-#include "asm/d/a/d_a_alink/checkBoomerangLockAccept__9daAlink_cFv.s"
+BOOL daAlink_c::checkBoomerangLockAccept() {
+ return mSight.getDrawFlg() && i_dComIfGp_checkPlayerStatus0(0, 0x80000);
}
-#pragma pop
/* 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.field_0x38;
+ } else {
+ speed = daAlinkHIO_boom_c0::m.field_0x34;
+ }
+
+ if (i_checkModeFlg(0x400) && mRideActor.getActor() != NULL && mSpeedF > FLOAT_LABEL(lit_6108)) {
+ speed += mSpeedF;
+ }
+
+ return speed;
+}
+#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::getBoomSpeed() {
+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 */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::getBoomCatchSpeed() const {
- nofralloc
-#include "asm/d/a/d_a_alink/getBoomCatchSpeed__9daAlink_cCFv.s"
+f32 daAlink_c::getBoomCatchSpeed() const {
+ return daAlinkHIO_boom_c0::m.mCatchSpeed;
}
-#pragma pop
/* 800E00C0-800E011C 0DAA00 005C+00 1/1 0/0 1/1 .text getBoomFlyMax__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::getBoomFlyMax() const {
- nofralloc
-#include "asm/d/a/d_a_alink/getBoomFlyMax__9daAlink_cCFv.s"
+f32 daAlink_c::getBoomFlyMax() const {
+ if (i_checkModeFlg(0x400) && !checkCanoeRide()) {
+ return daAlinkHIO_boom_c0::m.field_0x40;
+ } else {
+ return daAlinkHIO_boom_c0::m.field_0x3c;
+ }
}
-#pragma pop
/* 800E011C-800E0190 0DAA5C 0074+00 1/1 0/0 2/2 .text getBoomLockMax__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::getBoomLockMax() {
- nofralloc
-#include "asm/d/a/d_a_alink/getBoomLockMax__9daAlink_cFv.s"
+f32 daAlink_c::getBoomLockMax() {
+ f32 max = getBoomFlyMax();
+
+ if (checkBossBabaRoom()) {
+ return lit_12475;
+ } else if (daAlinkHIO_boom_c0::m.field_0x44 > max) {
+ return daAlinkHIO_boom_c0::m.field_0x44;
+ } else {
+ return max;
+ }
}
-#pragma pop
/* 800E0190-800E01A0 0DAAD0 0010+00 0/0 0/0 1/1 .text getBoomBgThroughTime__9daAlink_cCFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::getBoomBgThroughTime() const {
- nofralloc
-#include "asm/d/a/d_a_alink/getBoomBgThroughTime__9daAlink_cCFv.s"
+s16 daAlink_c::getBoomBgThroughTime() const {
+ return daAlinkHIO_boom_c0::m.mBgThroughTime;
}
-#pragma pop
/* 800E01A0-800E01CC 0DAAE0 002C+00 1/1 0/0 0/0 .text checkBossBabaRoom__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkBossBabaRoom() {
- nofralloc
-#include "asm/d/a/d_a_alink/checkBossBabaRoom__9daAlink_cFv.s"
+bool daAlink_c::checkBossBabaRoom() {
+ return checkStageName("D_MN05A");
}
-#pragma pop
/* 800E01CC-800E0210 0DAB0C 0044+00 0/0 1/1 0/0 .text
* cancelBoomerangLock__9daAlink_cFP10fopAc_ac_c */
@@ -22224,14 +22095,17 @@ asm void daAlink_c::cancelBoomerangLock(fopAc_ac_c* param_0) {
#pragma pop
/* 800E0210-800E0244 0DAB50 0034+00 2/2 0/0 0/0 .text getBoomerangActor__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::getBoomerangActor() {
- nofralloc
-#include "asm/d/a/d_a_alink/getBoomerangActor__9daAlink_cFv.s"
+fopAc_ac_c* daAlink_c::getBoomerangActor() {
+ if (mThrowBoomerangActor.getID() != 0xFFFFFFFF) {
+ return mThrowBoomerangActor.getActor();
+ }
+
+ if (mEquipItem == BOOMERANG) {
+ return mItemActor.getActor();
+ }
+
+ return NULL;
}
-#pragma pop
/* 800E0244-800E02B8 0DAB84 0074+00 0/0 1/1 0/0 .text checkBoomerangChargeEnd__9daAlink_cFv */
#pragma push
@@ -22256,31 +22130,30 @@ asm void daAlink_c::checkBoomerangCarry(fopAc_ac_c* param_0) {
/* 800E03D0-800E0440 0DAD10 0070+00 6/6 0/0 0/0 .text initBoomerangUpperAnimeSpeed__9daAlink_cFi
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::initBoomerangUpperAnimeSpeed(int param_0) {
- nofralloc
-#include "asm/d/a/d_a_alink/initBoomerangUpperAnimeSpeed__9daAlink_cFi.s"
+void daAlink_c::initBoomerangUpperAnimeSpeed(int param_0) {
+ if (!checkBoomerangThrowAnime()) {
+ if (param_0 != 0) {
+ f32 tmp = FLOAT_LABEL(lit_6108);
+ mFrameCtrl2[2].setRate(tmp);
+ mFrameCtrl2[2].setFrame(tmp);
+ getNowAnmPackUpper(UPPER_NOW)->setFrame(tmp);
+ } else {
+ mFrameCtrl2[2].setRate(daAlinkHIO_boom_c0::m.field_0x2c);
+ }
+ }
}
-#pragma pop
/* 800E0440-800E04AC 0DAD80 006C+00 9/9 0/0 0/0 .text checkBoomerangAnime__9daAlink_cCFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkBoomerangAnime() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkBoomerangAnime__9daAlink_cCFv.s"
+BOOL daAlink_c::checkBoomerangAnime() const {
+ return checkBoomerangReadyAnime() || checkBoomerangThrowAnime();
}
-#pragma pop
/* 800E04AC-800E04E8 0DADEC 003C+00 13/13 0/0 0/0 .text checkBoomerangThrowAnime__9daAlink_cCFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::checkBoomerangThrowAnime() const {
+asm BOOL daAlink_c::checkBoomerangThrowAnime() const {
nofralloc
#include "asm/d/a/d_a_alink/checkBoomerangThrowAnime__9daAlink_cCFv.s"
}
@@ -22307,24 +22180,20 @@ asm void daAlink_c::setBoomerangReadyAnime() {
#pragma pop
/* 800E05E8-800E0630 0DAF28 0048+00 2/2 0/0 0/0 .text setThrowBoomerangAnime__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::setThrowBoomerangAnime() {
- nofralloc
-#include "asm/d/a/d_a_alink/setThrowBoomerangAnime__9daAlink_cFv.s"
+void daAlink_c::setThrowBoomerangAnime() {
+ setUpperAnimeParam(0x53, UPPER_NOW, &daAlinkHIO_boom_c0::m.mThrowAnm);
+ cancelItemUseQuake(0);
}
-#pragma pop
/* 800E0630-800E06B8 0DAF70 0088+00 2/2 0/0 0/0 .text setBoomerangCatchAnime__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::setBoomerangCatchAnime() {
- nofralloc
-#include "asm/d/a/d_a_alink/setBoomerangCatchAnime__9daAlink_cFv.s"
+void daAlink_c::setBoomerangCatchAnime() {
+ setUpperAnimeParam(0x52, UPPER_NOW, &daAlinkHIO_boom_c0::m.mCatchAnm);
+ setFacePriBck(0xE8);
+ field_0x2f97 = 254;
+ if (mEquipItem != COPY_ROD) {
+ seStartOnlyReverb(JA_SE_LK_BOOM_CATCH);
+ }
}
-#pragma pop
/* 800E06B8-800E08C4 0DAFF8 020C+00 1/1 0/0 0/0 .text throwBoomerang__9daAlink_cFv */
#pragma push
@@ -22461,67 +22330,49 @@ asm void daAlink_c::procBoomerangCatch() {
#pragma pop
/* 800E12E0-800E1310 0DBC20 0030+00 1/1 0/0 0/0 .text checkLv6BossRoom__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkLv6BossRoom() {
- nofralloc
-#include "asm/d/a/d_a_alink/checkLv6BossRoom__9daAlink_cFv.s"
+BOOL daAlink_c::checkLv6BossRoom() {
+ return checkStageName("D_MN06A");
}
-#pragma pop
/* 800E1310-800E1320 0DBC50 0010+00 0/0 0/0 1/1 .text getCopyRodBallSpeed__9daAlink_cCFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::getCopyRodBallSpeed() const {
- nofralloc
-#include "asm/d/a/d_a_alink/getCopyRodBallSpeed__9daAlink_cCFv.s"
+f32 daAlink_c::getCopyRodBallSpeed() const {
+ return daAlinkHIO_copyRod_c0::m.mBallSpeed;
}
-#pragma pop
/* 800E1320-800E1330 0DBC60 0010+00 0/0 0/0 1/1 .text getCopyRodBallReturnSpeed__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::getCopyRodBallReturnSpeed() const {
- nofralloc
-#include "asm/d/a/d_a_alink/getCopyRodBallReturnSpeed__9daAlink_cCFv.s"
+f32 daAlink_c::getCopyRodBallReturnSpeed() const {
+ return daAlinkHIO_copyRod_c0::m.mBallReturnSpeed;
}
-#pragma pop
/* 800E1330-800E1374 0DBC70 0044+00 3/3 0/0 2/2 .text getCopyRodBallDisMax__9daAlink_cCFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::getCopyRodBallDisMax() const {
- nofralloc
-#include "asm/d/a/d_a_alink/getCopyRodBallDisMax__9daAlink_cCFv.s"
+f32 daAlink_c::getCopyRodBallDisMax() const {
+ if (checkLv6BossRoom()) {
+ return daAlinkHIO_copyRod_c0::m.mBossBallMaxDistance;
+ }
+
+ return daAlinkHIO_copyRod_c0::m.mBallMaxDistance;
}
-#pragma pop
/* 800E1374-800E1390 0DBCB4 001C+00 6/6 0/0 7/7 .text getCopyRodControllActor__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::getCopyRodControllActor() {
- nofralloc
-#include "asm/d/a/d_a_alink/getCopyRodControllActor__9daAlink_cFv.s"
+fopAc_ac_c* daAlink_c::getCopyRodControllActor() {
+ if (mCopyRodAcKeep.getActor() != NULL) {
+ return static_cast<daCrod_c*>(mCopyRodAcKeep.getActor())->getControllActor();
+ }
+
+ return NULL;
}
-#pragma pop
/* 800E1390-800E13AC 0DBCD0 001C+00 0/0 4/4 1/1 .text getCopyRodCameraActor__9daAlink_cFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::getCopyRodCameraActor() {
- nofralloc
-#include "asm/d/a/d_a_alink/getCopyRodCameraActor__9daAlink_cFv.s"
+fopAc_ac_c* daAlink_c::getCopyRodCameraActor() {
+ if (mCopyRodAcKeep.getActor() != NULL) {
+ return static_cast<daCrod_c*>(mCopyRodAcKeep.getActor())->getCameraActor();
+ }
+
+ return NULL;
}
-#pragma pop
/* 800E13AC-800E1408 0DBCEC 005C+00 2/2 0/0 0/0 .text initCopyRodUpperAnimeSpeed__9daAlink_cFi */
#pragma push
@@ -22533,22 +22384,29 @@ asm void daAlink_c::initCopyRodUpperAnimeSpeed(int param_0) {
}
#pragma pop
+/* void daAlink_c::initCopyRodUpperAnimeSpeed(int param_0) {
+ if (checkCopyRodThrowAnime()) {
+ if (param_1 == 0) {
+ mFrameCtrl2[2].setRate();
+ }
+ f32 tmp = FLOAT_LABEL(lit_6108);
+ mFrameCtrl2[2].setRate(tmp);
+ mFrameCtrl2[2].setFrame(tmp);
+
+ }
+} */
+
/* 800E1408-800E145C 0DBD48 0054+00 2/2 0/0 0/0 .text checkForestOldCentury__9daAlink_cFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkForestOldCentury() {
- nofralloc
-#include "asm/d/a/d_a_alink/checkForestOldCentury__9daAlink_cFv.s"
+BOOL daAlink_c::checkForestOldCentury() {
+ return checkStageName("F_SP117") && dComIfGp_roomControl_getStayNo() == 2;
}
-#pragma pop
/* 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() {
+asm BOOL daAlink_c::checkCopyRodTopUse() {
nofralloc
#include "asm/d/a/d_a_alink/checkCopyRodTopUse__9daAlink_cFv.s"
}
@@ -22565,14 +22423,14 @@ asm void daAlink_c::checkCopyRodAnime() const {
#pragma pop
/* 800E158C-800E15FC 0DBECC 0070+00 2/2 0/0 0/0 .text setCopyRodControllAnime__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::setCopyRodControllAnime() {
- nofralloc
-#include "asm/d/a/d_a_alink/setCopyRodControllAnime__9daAlink_cFv.s"
+void daAlink_c::setCopyRodControllAnime() {
+ if (checkNoUpperAnime() && getCopyRodControllActor()) {
+ setUpperAnimeBaseSpeed(0x202, FLOAT_LABEL(lit_6108), lit_6109);
+ field_0x2f96 = 2;
+ field_0x2f97 = 5;
+ field_0x33e8 = FLOAT_LABEL(lit_6108);
+ }
}
-#pragma pop
/* 800E15FC-800E1748 0DBF3C 014C+00 1/1 0/0 0/0 .text
* setCopyRodControllUpperSpeedRate__9daAlink_cFv */
@@ -22586,17 +22444,48 @@ asm void daAlink_c::setCopyRodControllUpperSpeedRate() {
#pragma pop
/* 800E1748-800E1840 0DC088 00F8+00 2/2 0/0 0/0 .text setCopyRodModel__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::setCopyRodModel() {
- nofralloc
-#include "asm/d/a/d_a_alink/setCopyRodModel__9daAlink_cFv.s"
+void daAlink_c::setCopyRodModel() {
+ JKRHeap* heap = setItemHeap();
+ J3DModelData* mdl_data = loadAramBmd(0x315, 0x5400);
+ mHeldItemModel = initModel(mdl_data, 0x80000, 0x1000000);
+ field_0x0724 = loadAramItemBrk(0x323, mHeldItemModel);
+ 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);
+ mHeldItemModel->i_setBaseTRMtx(field_0x0650->i_getAnmMtx(field_0x30c0));
+ mHeldItemModel->calc();
}
-#pragma pop
/* 800E1840-800E191C 0DC180 00DC+00 2/2 0/0 0/0 .text setCopyRodReadyAnime__9daAlink_cFv
*/
+// regalloc
+#ifdef NONMATCHING
+void daAlink_c::setCopyRodReadyAnime() {
+ f32 tmp;
+ if (i_checkAttentionLock()) {
+ tmp = daAlinkHIO_boom_c0::m.valc;
+ } else {
+ tmp = FLOAT_LABEL(lit_6108);
+ }
+
+ setUpperAnimeBaseSpeed(0x54, tmp, 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);
+ initLockAt();
+}
+#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
@@ -22605,16 +22494,34 @@ asm void daAlink_c::setCopyRodReadyAnime() {
#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 */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::throwCopyRod() {
- nofralloc
-#include "asm/d/a/d_a_alink/throwCopyRod__9daAlink_cFv.s"
+void daAlink_c::throwCopyRod() {
+ daCrod_c* copy_rod = static_cast<daCrod_c*>(mItemActor.getActor());
+ i_onNoResetFlg1(FLG1_UNK_10000);
+
+ if (checkCopyRodTopUse()) {
+ copy_rod->setThrow();
+ mCopyRodAcKeep = mItemActor;
+ i_onNoResetFlg3(COPY_ROD_THROW_AFTER);
+ mItemActor.clearData();
+ }
+ dComIfGp_clearPlayerStatus0(0, 0x80);
+ mFastShotTime = -1;
+ voiceStart(Z2SE_AL_V_ATTACK_S);
+ seStartSwordCut(Z2SE_AL_COPYROD_SWING);
+
+ if (mLinkAcch.ChkGroundHit()) {
+ if (checkZeroSpeedF()) {
+ field_0x2f98 = 3;
+ procAtnActorWaitInit();
+ } else {
+ procAtnActorMoveInit();
+ }
+ field_0x2060->initOldFrameMorf(FLOAT_LABEL(lit_6108), 0, 35);
+ }
}
-#pragma pop
/* 800E1A30-800E1ADC 0DC370 00AC+00 0/0 0/0 1/1 .text returnCopyRod__9daAlink_cFv */
#pragma push
@@ -22626,6 +22533,18 @@ asm void daAlink_c::returnCopyRod() {
}
#pragma pop
+/* void daAlink_c::returnCopyRod() {
+ i_offNoResetFlg3(COPY_ROD_THROW_AFTER);
+
+ if (mEquipItem == 0x46) {
+ mItemActor = mCopyRodAcKeep;
+ i_onNoResetFlg0(FLG0_UNK_20);
+ cXyz tmp(0, 1, 0);
+ dComIfGp_getVibration().StartShock(1, 1, tmp);
+ }
+ mCopyRodAcKeep.clearData();
+} */
+
/* 800E1ADC-800E1BB4 0DC41C 00D8+00 2/2 0/0 0/0 .text checkUpperItemActionCopyRod__9daAlink_cFv */
#pragma push
#pragma optimization_level 0
@@ -22897,168 +22816,100 @@ asm void daAlink_c::procMagneBootsFly() {
/* 800E3760-800E3770 0DE0A0 0010+00 0/0 0/0 7/7 .text getBombExplodeTime__9daAlink_cCFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::getBombExplodeTime() const {
- nofralloc
-#include "asm/d/a/d_a_alink/getBombExplodeTime__9daAlink_cCFv.s"
+s16 daAlink_c::getBombExplodeTime() const {
+ return daAlinkHIO_bomb_c0::m.mExplodeTime;
}
-#pragma pop
/* 800E3770-800E3780 0DE0B0 0010+00 0/0 0/0 2/2 .text getBombGravity__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::getBombGravity() const {
- nofralloc
-#include "asm/d/a/d_a_alink/getBombGravity__9daAlink_cCFv.s"
+f32 daAlink_c::getBombGravity() const {
+ return daAlinkHIO_bomb_c0::m.mGravity;
}
-#pragma pop
/* 800E3780-800E3790 0DE0C0 0010+00 0/0 0/0 2/2 .text getBombMaxFallSpeed__9daAlink_cCFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::getBombMaxFallSpeed() const {
- nofralloc
-#include "asm/d/a/d_a_alink/getBombMaxFallSpeed__9daAlink_cCFv.s"
+f32 daAlink_c::getBombMaxFallSpeed() const {
+ return daAlinkHIO_bomb_c0::m.mMaxFallSpeed;
}
-#pragma pop
/* 800E3790-800E37A0 0DE0D0 0010+00 0/0 0/0 1/1 .text getBombBoundRate__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::getBombBoundRate() const {
- nofralloc
-#include "asm/d/a/d_a_alink/getBombBoundRate__9daAlink_cCFv.s"
+f32 daAlink_c::getBombBoundRate() const {
+ return daAlinkHIO_bomb_c0::m.mBoundRate;
}
-#pragma pop
/* 800E37A0-800E37B0 0DE0E0 0010+00 0/0 0/0 1/1 .text getBombStopSpeedY__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::getBombStopSpeedY() const {
- nofralloc
-#include "asm/d/a/d_a_alink/getBombStopSpeedY__9daAlink_cCFv.s"
+f32 daAlink_c::getBombStopSpeedY() const {
+ return daAlinkHIO_bomb_c0::m.mStopSpeedY;
}
-#pragma pop
/* 800E37B0-800E37C0 0DE0F0 0010+00 0/0 0/0 1/1 .text getBombMaxSpeedY__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::getBombMaxSpeedY() const {
- nofralloc
-#include "asm/d/a/d_a_alink/getBombMaxSpeedY__9daAlink_cCFv.s"
+f32 daAlink_c::getBombMaxSpeedY() const {
+ return daAlinkHIO_bomb_c0::m.mMaxSpeedY;
}
-#pragma pop
/* 800E37C0-800E37D0 0DE100 0010+00 0/0 0/0 1/1 .text getBombEffScale__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::getBombEffScale() const {
- nofralloc
-#include "asm/d/a/d_a_alink/getBombEffScale__9daAlink_cCFv.s"
+f32 daAlink_c::getBombEffScale() const {
+ return daAlinkHIO_bomb_c0::m.mEffScale;
}
-#pragma pop
/* 800E37D0-800E37E0 0DE110 0010+00 0/0 0/0 1/1 .text getBombAtR__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::getBombAtR() const {
- nofralloc
-#include "asm/d/a/d_a_alink/getBombAtR__9daAlink_cCFv.s"
+f32 daAlink_c::getBombAtR() const {
+ return daAlinkHIO_bomb_c0::m.mAtRadius;
}
-#pragma pop
/* 800E37E0-800E37F0 0DE120 0010+00 0/0 0/0 1/1 .text getEnemyBombColorR__9daAlink_cCFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::getEnemyBombColorR() const {
- nofralloc
-#include "asm/d/a/d_a_alink/getEnemyBombColorR__9daAlink_cCFv.s"
+s16 daAlink_c::getEnemyBombColorR() const {
+ return daAlinkHIO_bomb_c0::m.mEnemyBombColorR;
}
-#pragma pop
/* 800E37F0-800E3800 0DE130 0010+00 0/0 0/0 2/2 .text getBombWaterGravity__9daAlink_cCFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::getBombWaterGravity() const {
- nofralloc
-#include "asm/d/a/d_a_alink/getBombWaterGravity__9daAlink_cCFv.s"
+f32 daAlink_c::getBombWaterGravity() const {
+ return daAlinkHIO_bomb_c0::m.mWaterGravity;
}
-#pragma pop
/* 800E3800-800E3810 0DE140 0010+00 0/0 0/0 2/2 .text getBombWaterMaxFallSpeed__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::getBombWaterMaxFallSpeed() const {
- nofralloc
-#include "asm/d/a/d_a_alink/getBombWaterMaxFallSpeed__9daAlink_cCFv.s"
+f32 daAlink_c::getBombWaterMaxFallSpeed() const {
+ return daAlinkHIO_bomb_c0::m.mWaterMaxFallSpeed;
}
-#pragma pop
/* 800E3810-800E3820 0DE150 0010+00 0/0 0/0 1/1 .text
* getBombExplodeWaterEffectLimit__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::getBombExplodeWaterEffectLimit() const {
- nofralloc
-#include "asm/d/a/d_a_alink/getBombExplodeWaterEffectLimit__9daAlink_cCFv.s"
+f32 daAlink_c::getBombExplodeWaterEffectLimit() const {
+ return daAlinkHIO_bomb_c0::m.mExplodeWaterEffectLimit;
}
-#pragma pop
/* 800E3820-800E3830 0DE160 0010+00 0/0 0/0 1/1 .text getBombInsectLimitAngle__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::getBombInsectLimitAngle() const {
- nofralloc
-#include "asm/d/a/d_a_alink/getBombInsectLimitAngle__9daAlink_cCFv.s"
+s16 daAlink_c::getBombInsectLimitAngle() const {
+ return daAlinkHIO_bomb_c0::m.mBombInsectLimitAngle;
}
-#pragma pop
/* 800E3830-800E3858 0DE170 0028+00 2/2 0/0 0/0 .text daAlink_checkLightBallA__FP10fopAc_ac_c */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-static asm void daAlink_checkLightBallA(fopAc_ac_c* param_0) {
- nofralloc
-#include "asm/d/a/d_a_alink/daAlink_checkLightBallA__FP10fopAc_ac_c.s"
+static bool daAlink_checkLightBallA(fopAc_ac_c* p_actor) {
+ if (fopAcM_GetName(p_actor) == 0x2FC &&
+ static_cast<daObjCarry_c*>(p_actor)->getType() == daObjCarry_c::TYPE_BALL_S) {
+ return true;
+ }
+ return false;
}
-#pragma pop
/* 800E3858-800E3880 0DE198 0028+00 2/2 0/0 0/0 .text daAlink_checkLightBallB__FP10fopAc_ac_c */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-static asm void daAlink_checkLightBallB(fopAc_ac_c* param_0) {
- nofralloc
-#include "asm/d/a/d_a_alink/daAlink_checkLightBallB__FP10fopAc_ac_c.s"
+static bool daAlink_checkLightBallB(fopAc_ac_c* p_actor) {
+ if (fopAcM_GetName(p_actor) == 0x2FC &&
+ static_cast<daObjCarry_c*>(p_actor)->getType() == daObjCarry_c::TYPE_BALL_S_2) {
+ return true;
+ }
+ return false;
}
-#pragma pop
/* 800E3880-800E38EC 0DE1C0 006C+00 1/1 0/0 0/0 .text daAlink_searchLightBall__FP10fopAc_ac_cPv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-static asm void daAlink_searchLightBall(fopAc_ac_c* param_0, void* param_1) {
- nofralloc
-#include "asm/d/a/d_a_alink/daAlink_searchLightBall__FP10fopAc_ac_cPv.s"
+static fopAc_ac_c* daAlink_searchLightBall(fopAc_ac_c* p_actor, void* param_1) {
+ if ((daPy_py_c::checkCarryStartLightBallA() && daAlink_checkLightBallA(p_actor)) ||
+ (daPy_py_c::checkCarryStartLightBallB() && daAlink_checkLightBallB(p_actor))) {
+ return p_actor;
+ }
+ return NULL;
}
-#pragma pop
/* 800E38EC-800E3994 0DE22C 00A8+00 1/1 0/0 0/0 .text checkGrabLineCheck__9daAlink_cFv */
#pragma push
@@ -23083,24 +22934,39 @@ asm void daAlink_c::setGrabCollisionOffset(f32 param_0, f32 param_1, cBgS_PolyIn
/* 800E3A14-800E3A9C 0DE354 0088+00 1/0 0/0 0/0 .text exchangeGrabActor__9daAlink_cFP10fopAc_ac_c
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::exchangeGrabActor(fopAc_ac_c* param_0) {
- nofralloc
-#include "asm/d/a/d_a_alink/exchangeGrabActor__9daAlink_cFP10fopAc_ac_c.s"
+bool daAlink_c::exchangeGrabActor(fopAc_ac_c* p_actor) {
+ fopAc_ac_c* actor = mGrabItemActor.getActor();
+
+ if (actor == NULL) {
+ return false;
+ }
+
+ fopAcM_cancelCarryNow(actor);
+ actor->mCollisionRot.z = 0;
+ actor->mCollisionRot.x = 0;
+ if (checkGrabCarryActor()) {
+ actor->mCurrent.mAngle.z = 0;
+ actor->mCurrent.mAngle.x = 0;
+ }
+ setGrabItemActor(p_actor);
+ return true;
}
-#pragma pop
/* 800E3A9C-800E3BCC 0DE3DC 0130+00 1/0 0/0 0/0 .text setForceGrab__9daAlink_cFP10fopAc_ac_cii */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::setForceGrab(fopAc_ac_c* param_0, int param_1, int param_2) {
- nofralloc
-#include "asm/d/a/d_a_alink/setForceGrab__9daAlink_cFP10fopAc_ac_cii.s"
+bool daAlink_c::setForceGrab(fopAc_ac_c* p_actor, int param_1, int param_2) {
+ if (((param_1 != 0 || !checkEventRun()) && !i_checkWolf()) &&
+ (((mEquipItem == NO_ITEM || (param_2 != 0 && checkHookshotItem(mEquipItem)))) &&
+ ((i_checkModeFlg(MODE_UNK_10000000) &&
+ (checkHorseNoUpperAnime() || checkHorseTurnAnime())) ||
+ param_2 != 0 && checkHookshotAnime()))) {
+ deleteEquipItem(1, 0);
+ setGrabItemActor(p_actor);
+ field_0x33e4 = lit_8785;
+ setGrabUpperAnime(daAlinkHIO_basic_c0::m.mAnmBlendFactor);
+ return true;
+ }
+ return false;
}
-#pragma pop
/* 800E3BCC-800E3C1C 0DE50C 0050+00 2/2 0/0 0/0 .text getGrabThrowRate__9daAlink_cFv */
#pragma push
@@ -23148,7 +23014,7 @@ asm void daAlink_c::checkGrabAnimeAndThrow() const {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::checkGrabCarryActor() {
+asm BOOL daAlink_c::checkGrabCarryActor() {
nofralloc
#include "asm/d/a/d_a_alink/checkGrabCarryActor__9daAlink_cFv.s"
}
@@ -23686,14 +23552,19 @@ asm void daAlink_c::setFmChainPosFromOut(fopAc_ac_c* param_0, cXyz* param_1, int
#pragma pop
/* 800E7BD0-800E7C30 0E2510 0060+00 1/0 0/0 0/0 .text checkChainBlockPushPull__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkChainBlockPushPull() {
- nofralloc
-#include "asm/d/a/d_a_alink/checkChainBlockPushPull__9daAlink_cFv.s"
+bool daAlink_c::checkChainBlockPushPull() {
+ if (i_checkFmChainGrabAnime()) {
+ fopAc_ac_c* actor = field_0x2844.getActor();
+ if (actor != NULL) {
+ s16 name = fopAcM_GetName(actor);
+ // actor is Cblock || chainSw || Cwall
+ if (name == 0x7E || name == 0x16F || name == 0x7F) {
+ return true;
+ }
+ }
+ }
+ return false;
}
-#pragma pop
/* 800E7C30-800E7CC0 0E2570 0090+00 2/2 0/0 0/0 .text procFmChainUpInit__9daAlink_cFv */
#pragma push
@@ -23801,10 +23672,10 @@ asm void daAlink_c::checkPullBehindWall() {
/* 800E8298-800E82B0 0E2BD8 0018+00 3/3 0/0 0/0 .text offGoatStopGame__9daAlink_cFv */
void daAlink_c::offGoatStopGame() {
- if (field_0x560[0xA] != 0x2a) {
+ if (mSpecialMode != SMODE_GOAT_STOP) {
return;
} else {
- field_0x560[0xA] = 0;
+ mSpecialMode = 0;
}
}
@@ -24043,8 +23914,8 @@ asm void daAlink_c::checkSumouVsActor() {
/* 800EA8D0-800EA908 0E5210 0038+00 5/5 0/0 0/0 .text cancelSumouMode__9daAlink_cFv */
void daAlink_c::cancelSumouMode() {
- field_0x2854.clearData();
- field_0x560[0xA] = 0;
+ mCargoCarryActor.clearData();
+ mSpecialMode = 0;
}
/* 800EA908-800EA92C 0E5248 0024+00 2/2 0/0 0/0 .text sumouPunchTrigger__9daAlink_cFv */
@@ -24372,7 +24243,7 @@ asm void daAlink_c::getReinHandType() const {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::checkHorseLieAnime() const {
+asm BOOL daAlink_c::checkHorseLieAnime() const {
nofralloc
#include "asm/d/a/d_a_alink/checkHorseLieAnime__9daAlink_cCFv.s"
}
@@ -24413,7 +24284,7 @@ asm void daAlink_c::setHorseTurnUpperAnime(int param_0) {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::checkHorseNoUpperAnime() const {
+asm BOOL daAlink_c::checkHorseNoUpperAnime() const {
nofralloc
#include "asm/d/a/d_a_alink/checkHorseNoUpperAnime__9daAlink_cCFv.s"
}
@@ -25422,7 +25293,7 @@ asm void daAlink_c::initCanoeRide() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::checkCanoeJumpRide() {
+asm BOOL daAlink_c::checkCanoeJumpRide() {
nofralloc
#include "asm/d/a/d_a_alink/checkCanoeJumpRide__9daAlink_cFv.s"
}
@@ -27956,7 +27827,8 @@ asm void daAlink_c::procBoardCutTurn() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::hsChainShape_c::draw() {
+extern "C" asm void draw__Q29daAlink_c14hsChainShape_cFv() {
+ // asm void daAlink_c::hsChainShape_c::draw() {
nofralloc
#include "asm/d/a/d_a_alink/draw__Q29daAlink_c14hsChainShape_cFv.s"
}
@@ -29502,7 +29374,7 @@ asm void daAlink_c::setIronBallPos() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::checkIronBallAnime() const {
+asm BOOL daAlink_c::checkIronBallAnime() const {
nofralloc
#include "asm/d/a/d_a_alink/checkIronBallAnime__9daAlink_cCFv.s"
}
@@ -29638,7 +29510,7 @@ asm void daAlink_c::procIronBallReturn() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::checkEventRun() const {
+asm BOOL daAlink_c::checkEventRun() const {
nofralloc
#include "asm/d/a/d_a_alink/checkEventRun__9daAlink_cCFv.s"
}
@@ -30725,10 +30597,10 @@ asm void daAlink_c::procGanonFinishInit() {
/* 8011EA78-8011EAE8 1193B8 0070+00 1/0 0/0 0/0 .text procGanonFinish__9daAlink_cFv */
bool daAlink_c::procGanonFinish() {
- i_onEndResetFlg1(GanonFinish);
+ i_onEndResetFlg1(GANON_FINISH);
mCurrent.mPosition = field_0x37c8;
if (mFrameCtrl1[0].checkAnmEnd()) {
- setSingleAnimeBaseMorf(GANON_FINISH, lit_6041);
+ setSingleAnimeBaseMorf(ANM_GANON_FINISH, lit_6041);
}
return true;
}
@@ -30801,7 +30673,7 @@ asm void daAlink_c::procMasterSwordPull() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::checkLv7DungeonShop() {
+asm BOOL daAlink_c::checkLv7DungeonShop() {
nofralloc
#include "asm/d/a/d_a_alink/checkLv7DungeonShop__9daAlink_cFv.s"
}
@@ -30903,34 +30775,85 @@ asm void daAlink_c::checkAcceptWarp() {
#pragma pop
/* 8011F7D8-8011F8B8 11A118 00E0+00 2/2 0/0 0/0 .text dungeonReturnWarp__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::dungeonReturnWarp() {
- nofralloc
-#include "asm/d/a/d_a_alink/dungeonReturnWarp__9daAlink_cFv.s"
+void daAlink_c::dungeonReturnWarp() {
+ cXyz pos = dComIfGs_getWarpPlayerPos();
+ s16 angle = dComIfGs_getWarpPlayerAngleY();
+ s8 room = dComIfGs_getWarpRoomNo();
+ char name[8];
+ strcpy(name, dComIfGs_getWarpStageName());
+
+ dComIfGs_setRestartRoom(pos, angle, room);
+ dComIfGp_setNextStage(name, -1, dComIfGs_getRestartRoomNo(), -1, FLOAT_LABEL(lit_6108), 12, 0,
+ 0, 0, 1, 0);
+ u32 data = setParamData(dComIfGs_getRestartRoomNo(), 0, 0xCA, 0);
+ dComIfGs_setRestartRoomParam(data);
}
-#pragma pop
/* 8011F8B8-8011F9EC 11A1F8 0134+00 1/0 0/0 0/0 .text skipPortalObjWarp__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::skipPortalObjWarp() {
- nofralloc
-#include "asm/d/a/d_a_alink/skipPortalObjWarp__9daAlink_cFv.s"
+void daAlink_c::skipPortalObjWarp() {
+ if (mActionID == WARP && field_0x300e <= 0) {
+ return;
+ }
+
+ 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,
+ -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);
+ }
+
+ if (mActionID == WARP) {
+ field_0x300e = -1;
+ }
}
-#pragma pop
/* 8011F9EC-8011FBC0 11A32C 01D4+00 1/1 0/0 0/0 .text checkWarpStart__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkWarpStart() {
- nofralloc
-#include "asm/d/a/d_a_alink/checkWarpStart__9daAlink_cFv.s"
+void daAlink_c::checkWarpStart() {
+ if (dMeter2Info_getWarpStatus() != 0) {
+ if (dMeter2Info_getWarpStatus() == 3 || dComIfGp_event_compulsory(this, 0, 0xFFFF)) {
+ i_onNoResetFlg0(0x4000);
+ if (dMeter2Info_getWarpStatus() == 3) {
+ const char* portal;
+ if (!i_checkMidnaRide()) {
+ if (dComIfGp_TargetWarpPt_get() == 3) {
+ mEvtInfo.setArchiveName("Obj_kbrg");
+ portal = kBridgePortal;
+ } else if (dComIfGp_TargetWarpPt_get() == 6) {
+ mEvtInfo.setArchiveName("Obj_obrg");
+ portal = oBridgePortal;
+ } else if (dComIfGp_TargetWarpPt_get() == 9) {
+ mEvtInfo.setArchiveName("M_VolcBom");
+ portal = volcBomPortal;
+ } else if (dComIfGp_TargetWarpPt_get() == 8) {
+ mEvtInfo.setArchiveName("SCanCrs");
+ portal = cannonPortal;
+ } else {
+ portal = defaultPortal;
+ }
+ } else {
+ dComIfGp_TargetWarpPt_set(0xFF);
+ portal = defaultPortal;
+ }
+ fopAcM_orderOtherEvent(this, portal, 0xFFFF, 1, 1);
+ } else {
+ mDemo.i_setSpecialDemoType();
+ if (dMeter2Info_getWarpStatus() == 1) {
+ stage_stag_info_class* stag_info = dComIfGp_getStageStagInfo();
+ u32 tmp = dStage_stagInfo_GetEscapeWarp(stag_info);
+ dStage_changeScene(tmp, FLOAT_LABEL(lit_6108), 0, -1, mCollisionRot.y, -1);
+ } else {
+ dungeonReturnWarp();
+ }
+ }
+ }
+ g_meter2_info.resetWarpStatus();
+ }
}
-#pragma pop
/* 8011FBC0-8011FD4C 11A500 018C+00 3/3 0/0 0/0 .text warpModelTexScroll__9daAlink_cFv */
#pragma push
@@ -31001,6 +30924,15 @@ void daAlink_c::commonFallInit(int param_0) {
/* 80120580-80120634 11AEC0 00B4+00 21/21 0/0 0/0 .text
* setEmitter__9daAlink_cFPUlUsPC4cXyzPC5csXyz */
+// matches with literal
+#ifdef NONMATCHING
+void daAlink_c::setEmitter(u32* param_0, u16 param_1, cXyz const* param_2, csXyz const* param_3) {
+ *param_0 = dComIfGp_particle_set(*param_0, param_1, param_2, &mTevStr, param_3, NULL, 0xFF,
+ NULL, 0xFF, NULL, NULL, NULL);
+ dComIfGp_particle_levelEmitterOnEventMove(*param_0);
+ dComIfGp_particle_getEmitter(*param_0);
+}
+#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
@@ -31010,18 +30942,17 @@ asm void daAlink_c::setEmitter(u32* param_0, u16 param_1, cXyz const* param_2,
#include "asm/d/a/d_a_alink/setEmitter__9daAlink_cFPUlUsPC4cXyzPC5csXyz.s"
}
#pragma pop
+#endif
/* 80120634-801206C4 11AF74 0090+00 4/4 0/0 0/0 .text
* setEmitterPolyColor__9daAlink_cFPUlUsR13cBgS_PolyInfoPC4cXyzPC5csXyz */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::setEmitterPolyColor(u32* param_0, u16 param_1, cBgS_PolyInfo& param_2,
- cXyz const* param_3, csXyz const* param_4) {
- nofralloc
-#include "asm/d/a/d_a_alink/setEmitterPolyColor__9daAlink_cFPUlUsR13cBgS_PolyInfoPC4cXyzPC5csXyz.s"
+void 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);
}
-#pragma pop
/* 801206C4-80120778 11B004 00B4+00 2/2 0/0 0/0 .text
* setEmitterColor__9daAlink_cFPUlUsPC4cXyzPC5csXyz */
@@ -31353,6 +31284,24 @@ asm void daAlink_c::setWaterDropEffect() {
/* 801244E4-801245EC 11EE24 0108+00 1/1 0/0 0/0 .text setSwordUpColorEffect__9daAlink_cFv
*/
+// matches with literals
+#ifdef NONMATCHING
+void daAlink_c::setSwordUpColorEffect() {
+ f32 max_intensity;
+ if (mSwordUpTimer != 0) {
+ max_intensity = 1.0f;
+ } else {
+ max_intensity = 0.0f;
+ }
+ cLib_chaseF(&mSwordUpColorIntensity, max_intensity, 0.1f);
+
+ for (int i = 0; i < 2; i++) {
+ field_0x32b0[i].mColor.r = mSwordUpColorIntensity * swordUpColor[i].r;
+ field_0x32b0[i].mColor.g = mSwordUpColorIntensity * swordUpColor[i].g;
+ field_0x32b0[i].mColor.b = mSwordUpColorIntensity * swordUpColor[i].b;
+ }
+}
+#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
@@ -31361,6 +31310,7 @@ asm void daAlink_c::setSwordUpColorEffect() {
#include "asm/d/a/d_a_alink/setSwordUpColorEffect__9daAlink_cFv.s"
}
#pragma pop
+#endif
/* 801245EC-80124738 11EF2C 014C+00 1/1 0/0 0/0 .text setSwordCutSplash__9daAlink_cFv */
#pragma push
@@ -31374,14 +31324,11 @@ asm void daAlink_c::setSwordCutSplash() {
/* 80124738-801247A8 11F078 0070+00 1/1 0/0 0/0 .text setMetamorphoseEffectStartLink__9daAlink_cFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::setMetamorphoseEffectStartLink() {
- nofralloc
-#include "asm/d/a/d_a_alink/setMetamorphoseEffectStartLink__9daAlink_cFv.s"
+void daAlink_c::setMetamorphoseEffectStartLink() {
+ setEmitter(&field_0x31f8, 0x24F, &field_0x37c8, NULL);
+ setEmitter(&field_0x31fc, 0x250, &field_0x37c8, NULL);
+ setEmitter(&field_0x3200, 0x6E8, &cXyz::Zero, NULL);
}
-#pragma pop
/* 801247A8-801248A8 11F0E8 0100+00 1/1 0/0 0/0 .text setMetamorphoseEffect__9daAlink_cFv
*/
@@ -31418,14 +31365,10 @@ extern "C" asm void execute__29dAlink_bottleWaterPcallBack_cFP14JPABaseEmitterP1
#pragma pop
/* 80124B68-80124BA4 11F4A8 003C+00 2/2 0/0 0/0 .text resetFairyEffect__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::resetFairyEffect() {
- nofralloc
-#include "asm/d/a/d_a_alink/resetFairyEffect__9daAlink_cFv.s"
+void daAlink_c::resetFairyEffect() {
+ stopDrawParticle(field_0x3258);
+ stopDrawParticle(field_0x325c);
}
-#pragma pop
/* 80124BA4-80124E28 11F4E4 0284+00 1/1 0/0 0/0 .text setBottleEffect__9daAlink_cFv */
#pragma push
@@ -31438,14 +31381,16 @@ asm void daAlink_c::setBottleEffect() {
#pragma pop
/* 80124E28-80124EA8 11F768 0080+00 2/2 0/0 0/0 .text clearFirePointDamageEffect__9daAlink_cFi */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::clearFirePointDamageEffect(int param_0) {
- nofralloc
-#include "asm/d/a/d_a_alink/clearFirePointDamageEffect__9daAlink_cFi.s"
+void daAlink_c::clearFirePointDamageEffect(int i) {
+ firePointEff_c* fire_eff = &field_0x32d8[i];
+
+ if (fire_eff->field_0x0 != 0) {
+ stopDrawParticle(fire_eff->field_0x4);
+ stopDrawParticle(fire_eff->field_0x8);
+ }
+ fire_eff->field_0x0 = 0;
+ fire_eff->field_0x24 = cXyz::Zero;
}
-#pragma pop
/* 80124EA8-80124FA4 11F7E8 00FC+00 1/1 0/0 0/0 .text initFirePointDamageEffectAll__9daAlink_cFv
*/
@@ -31500,6 +31445,16 @@ asm void daAlink_c::setWoodShieldBurnEffect() {
#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);
+ }
+ field_0x2fcb = 0;
+ }
+}
+#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
@@ -31508,6 +31463,7 @@ asm void daAlink_c::clearWoodShieldBurnEffect() {
#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
@@ -31521,15 +31477,17 @@ asm void daAlink_c::setWoodShieldBurnOutEffect() {
/* 801256EC-80125778 12002C 008C+00 2/2 0/0 0/0 .text
* initBlur__14daAlink_blur_cFfiPC4cXyzPC4cXyzPC4cXyz */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_blur_c::initBlur(f32 param_0, int param_1, cXyz const* param_2,
- cXyz const* param_3, cXyz const* param_4) {
- nofralloc
-#include "asm/d/a/d_a_alink/initBlur__14daAlink_blur_cFfiPC4cXyzPC4cXyzPC4cXyz.s"
+void daAlink_blur_c::initBlur(f32 param_0, int param_1, cXyz const* param_2, cXyz const* param_3,
+ cXyz const* param_4) {
+ field_0x24 = param_0;
+ field_0x1c = param_1;
+ field_0x2c = *param_4;
+ field_0x38[0] = *param_2;
+ field_0x308[0] = *param_3;
+ field_0x38[1] = field_0x38[0];
+ field_0x308[1] = field_0x308[0];
+ field_0x14 = 0;
}
-#pragma pop
/* 80125778-8012589C 1200B8 0124+00 1/1 0/0 0/0 .text
* setBezierPos__FPC4cXyzPC4cXyzPC4cXyzPC4cXyzfP4cXyz */
@@ -31589,14 +31547,82 @@ extern "C" asm void draw__14daAlink_blur_cFv() {
#pragma pop
/* 80125F14-80126350 120854 043C+00 1/1 0/0 0/0 .text create__20daAlink_lockCursor_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_lockCursor_c::create() {
- nofralloc
-#include "asm/d/a/d_a_alink/create__20daAlink_lockCursor_cFv.s"
+BOOL daAlink_lockCursor_c::create() {
+ JKRArchive* arc = dComIfG_getObjectResInfo(l_arcName)->getArchive();
+
+ f32 tmp = FLOAT_LABEL(lit_6108);
+ field_0x2c = tmp;
+ field_0x4 = false;
+ field_0x30 = tmp;
+
+ mScrn = new J2DScreen();
+ if (mScrn == NULL) {
+ return false;
+ }
+
+ mScrn->setPriority("zelda_v_cursor_new_yellow.blo", 0x100000, arc);
+ dPaneClass_showNullPane(mScrn);
+
+ void* tmpData = JKRFileLoader::getGlbResource("zelda_v_cursor_new_yellow.bpk", arc);
+ field_0x24 = (J2DAnmColorKey*)J2DAnmLoaderDataBase::load(tmpData);
+ if (field_0x24 == NULL) {
+ return false;
+ }
+
+ tmpData = JKRFileLoader::getGlbResource("zelda_v_cursor_new_yellow.bck", arc);
+ field_0x28 = (J2DAnmTransformKey*)J2DAnmLoaderDataBase::load(tmpData);
+ if (field_0x28 == NULL) {
+ return false;
+ }
+
+ tmpData = JKRFileLoader::getGlbResource("zelda_v_cursor_new_yellow_02.brk", arc);
+ field_0x1c = (J2DAnmTevRegKey*)J2DAnmLoaderDataBase::load(tmpData);
+ if (field_0x1c == NULL) {
+ return false;
+ }
+
+ tmpData = JKRFileLoader::getGlbResource("zelda_v_cursor_new_yellow.brk", arc);
+ field_0x20 = (J2DAnmTevRegKey*)J2DAnmLoaderDataBase::load(tmpData);
+ if (field_0x20 == NULL) {
+ return false;
+ }
+
+ field_0xc = mScrn->search('n_all');
+ mCursor0 = mScrn->search('cursor0');
+ mCursor1 = mScrn->search('cursor1');
+ mCursor2 = mScrn->search('cursor2');
+
+ field_0x28->searchUpdateMaterialID(mScrn);
+ field_0xc->setAnimation(field_0x28);
+ mCursor0->setAnimation(field_0x28);
+ mCursor1->setAnimation(field_0x28);
+ mCursor2->setAnimation(field_0x28);
+ field_0x28->setFrame(FLOAT_LABEL(lit_6108));
+
+ field_0x24->searchUpdateMaterialID(mScrn);
+ mCursor0->setAnimation(field_0x24);
+ mCursor1->setAnimation(field_0x24);
+ mCursor2->setAnimation(field_0x24);
+ mScrn->search('flash')->setAnimation(field_0x24);
+ field_0x24->setFrame(FLOAT_LABEL(lit_6108));
+
+ field_0x1c->searchUpdateMaterialID(mScrn);
+ field_0x20->searchUpdateMaterialID(mScrn);
+ mCursor0->setAnimation(field_0x1c);
+ mCursor1->setAnimation(field_0x1c);
+ mCursor2->setAnimation(field_0x1c);
+ mCursor0->setAnimation(field_0x20);
+ mCursor1->setAnimation(field_0x20);
+ mCursor2->setAnimation(field_0x20);
+ f32 tmp2 = FLOAT_LABEL(lit_6108);
+ field_0x1c->setFrame(tmp2);
+ field_0x20->setFrame(tmp2);
+
+ mScrn->animation();
+ mScrn->setUserInfo('n_43');
+ field_0xc->setUserInfo(0x20);
+ return true;
}
-#pragma pop
/* 80126350-80126354 120C90 0004+00 0/0 4/0 0/0 .text setAnimation__7J2DPaneFP15J2DAnmTevRegKey */
void J2DPane::setAnimation(J2DAnmTevRegKey* param_0) {
@@ -31630,14 +31656,14 @@ extern "C" asm void draw__20daAlink_lockCursor_cFv() {
#pragma pop
/* 80126650-801266C0 120F90 0070+00 1/1 0/0 0/0 .text create__15daAlink_sight_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_sight_c::create() {
- nofralloc
-#include "asm/d/a/d_a_alink/create__15daAlink_sight_cFv.s"
+bool daAlink_sight_c::create() {
+ if (!mLockCursor.create()) {
+ return false;
+ }
+ ResTIMG* data = (ResTIMG*)dComIfG_getObjectRes(l_arcName, daAlink_c::getSightBti());
+ setSightImage(data);
+ return true;
}
-#pragma pop
/* 801266C0-80126710 121000 0050+00 1/0 0/0 0/0 .text draw__15daAlink_sight_cFv */
#pragma push
@@ -31651,6 +31677,16 @@ extern "C" asm void draw__15daAlink_sight_cFv() {
#pragma pop
/* 80126710-80126740 121050 0030+00 2/2 0/0 0/0 .text onLockFlg__15daAlink_sight_cFv */
+// matches with literals
+#ifdef NONMATCHING
+void daAlink_sight_c::onLockFlg() {
+ if (mLockFlag) {
+ return;
+ }
+ mLockFlag = true;
+ mLockCursor.initFrame();
+}
+#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
@@ -31659,6 +31695,7 @@ asm void daAlink_sight_c::onLockFlg() {
#include "asm/d/a/d_a_alink/onLockFlg__15daAlink_sight_cFv.s"
}
#pragma pop
+#endif
/* 80126740-80126928 121080 01E8+00 2/2 0/0 0/0 .text changeCommon__9daAlink_cFv */
#pragma push
@@ -31691,40 +31728,33 @@ asm void daAlink_c::changeLink(int param_0) {
#pragma pop
/* 80127C54-80127CAC 122594 0058+00 2/2 0/0 0/0 .text onWolfEyeUp__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::onWolfEyeUp() {
- nofralloc
-#include "asm/d/a/d_a_alink/onWolfEyeUp__9daAlink_cFv.s"
+void daAlink_c::onWolfEyeUp() {
+ if (mWolfEyeUp == 0) {
+ mZ2Link.setWolfEyeOpen(true);
+ mWolfEyeUp = daAlinkHIO_wolf_c0::m.mSensesLingerTime;
+ field_0x2fd2 = 20;
+ }
}
-#pragma pop
/* 80127CAC-80127CF0 1225EC 0044+00 5/5 0/0 0/0 .text offWolfEyeUp__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::offWolfEyeUp() {
- nofralloc
-#include "asm/d/a/d_a_alink/offWolfEyeUp__9daAlink_cFv.s"
+void daAlink_c::offWolfEyeUp() {
+ if (mWolfEyeUp != 0) {
+ mWolfEyeUp = 0;
+ field_0x2fd2 = 20;
+ mZ2Link.setWolfEyeOpen(false);
+ }
}
-#pragma pop
/* 80127CF0-80127D14 122630 0024+00 1/1 0/0 0/0 .text wolfSenseTrigger__9daAlink_cFv */
-void daAlink_c::wolfSenseTrigger() {
- itemTriggerCheck(1);
+BOOL daAlink_c::wolfSenseTrigger() {
+ return itemTriggerCheck(1);
}
/* 80127D14-80127D2C 122654 0018+00 1/1 0/0 0/0 .text setWolfSenceStatus__9daAlink_cFUc
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::setWolfSenceStatus(u8 param_0) {
- nofralloc
-#include "asm/d/a/d_a_alink/setWolfSenceStatus__9daAlink_cFUc.s"
+void daAlink_c::setWolfSenceStatus(u8 status) {
+ dComIfGp_setXStatus(status, 0);
}
-#pragma pop
/* 80127D2C-80127D50 12266C 0024+00 1/1 0/0 0/0 .text wolfClawTrigger__9daAlink_cFv */
void daAlink_c::wolfClawTrigger() {
@@ -31732,14 +31762,9 @@ void daAlink_c::wolfClawTrigger() {
}
/* 80127D50-80127D68 122690 0018+00 2/2 0/0 0/0 .text setWolfDigStatus__9daAlink_cFUc */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::setWolfDigStatus(u8 param_0) {
- nofralloc
-#include "asm/d/a/d_a_alink/setWolfDigStatus__9daAlink_cFUc.s"
+void daAlink_c::setWolfDigStatus(u8 flag) {
+ dComIfGp_setYStatus(13, flag);
}
-#pragma pop
/* 80127D68-80127DC4 1226A8 005C+00 4/4 0/0 0/0 .text checkWolfShapeReverse__9daAlink_cCFv */
#pragma push
@@ -31752,14 +31777,11 @@ asm BOOL daAlink_c::checkWolfShapeReverse() const {
#pragma pop
/* 80127DC4-80127E08 122704 0044+00 1/1 0/0 0/0 .text checkWolfSideStep__9daAlink_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkWolfSideStep() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkWolfSideStep__9daAlink_cCFv.s"
+BOOL daAlink_c::checkWolfSideStep() const {
+ return field_0x2f98 != 0 &&
+ ((mActionID == WOLF_ATN_WAIT && !i_checkModeFlg(1)) || mActionID == WOLF_SIDESTEP_LAND ||
+ mActionID == WOLF_BACKFLIP_LAND);
}
-#pragma pop
/* 80127E08-80127F20 122748 0118+00 1/1 0/0 0/0 .text setWolfTailAngle__9daAlink_cFv */
#pragma push
@@ -31772,14 +31794,9 @@ asm void daAlink_c::setWolfTailAngle() {
#pragma pop
/* 80127F20-80127F50 122860 0030+00 5/5 0/0 0/0 .text checkWolfSlowDash__9daAlink_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkWolfSlowDash() {
- nofralloc
-#include "asm/d/a/d_a_alink/checkWolfSlowDash__9daAlink_cFv.s"
+BOOL daAlink_c::checkWolfSlowDash() {
+ return field_0x2fc7 == 1 || field_0x2fc7 == 3 || field_0x3174 == 11;
}
-#pragma pop
/* 80127F50-80128478 122890 0528+00 1/1 0/0 0/0 .text setSpeedAndAngleWolf__9daAlink_cFv
*/
@@ -31812,16 +31829,17 @@ asm void daAlink_c::checkWolfAtnWait() {
}
#pragma pop
+/* void daAlink_c::checkWolfAtnWait() {
+ return checkEnemyGroup(mTargetedActor) && mDemo.getDemoMode() == 0x17 || mTargetedActor != NULL
+|| fopAcM_GetName(mTargetedActor) == 0x262 ||
+} */
+
/* 8012880C-80128844 12314C 0038+00 27/27 0/0 0/0 .text
* checkUnderMove0BckNoArcWolf__9daAlink_cCFQ29daAlink_c12daAlink_WANM */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkUnderMove0BckNoArcWolf(daAlink_c::daAlink_WANM param_0) const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkUnderMove0BckNoArcWolf__9daAlink_cCFQ29daAlink_c12daAlink_WANM.s"
+BOOL daAlink_c::checkUnderMove0BckNoArcWolf(daAlink_c::daAlink_WANM anm_id) const {
+ return mUnderAnime[0].checkNoSetArcNo() &&
+ m_wlAnmDataTable[anm_id].field_0x0 == mUnderAnime[0].getIdx();
}
-#pragma pop
/* 80128844-80128F0C 123184 06C8+00 11/11 0/0 0/0 .text setBlendWolfMoveAnime__9daAlink_cFf */
#pragma push
@@ -31957,38 +31975,54 @@ asm void daAlink_c::checkWolfLandAction(int param_0) {
}
#pragma pop
+inline bool i_dComIfGp_checkPlayerStatus1(int param_0, u32 flag) {
+ return g_dComIfG_gameInfo.play.checkPlayerStatus(param_0, 1, flag);
+}
+
/* 80129958-801299A8 124298 0050+00 1/1 0/0 1/1 .text checkMidnaUseAbility__9daAlink_cCFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkMidnaUseAbility() const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkMidnaUseAbility__9daAlink_cCFv.s"
+BOOL daAlink_c::checkMidnaUseAbility() const {
+ return i_dComIfGp_checkPlayerStatus1(0, 0x800000) || dKy_withwarp_capture_check();
}
-#pragma pop
/* 801299A8-80129A80 1242E8 00D8+00 1/1 0/0 0/0 .text checkWolfUseAbility__9daAlink_cFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkWolfUseAbility() {
- nofralloc
-#include "asm/d/a/d_a_alink/checkWolfUseAbility__9daAlink_cFv.s"
+void daAlink_c::checkWolfUseAbility() {
+ if (mActionID == 0x137) {
+ return;
+ }
+
+ if (checkMidnaLockJumpPoint() != NULL && !i_checkMidnaRide()) {
+ offWolfEyeUp();
+ } else {
+ if (i_dComIfGs_isEventBit(0x4308) && field_0x2fd2 == 0 && !checkEventRun() &&
+ mWolfEyeUp < daAlinkHIO_wolf_c0::m.mSensesLingerTime && wolfSenseTrigger()) {
+ if (mWolfEyeUp == 0) {
+ onWolfEyeUp();
+ } else {
+ offWolfEyeUp();
+ }
+ }
+ }
}
-#pragma pop
/* 80129A80-80129B44 1243C0 00C4+00 13/13 0/0 0/0 .text checkWolfGroundSpecialMode__9daAlink_cFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::checkWolfGroundSpecialMode() {
- nofralloc
-#include "asm/d/a/d_a_alink/checkWolfGroundSpecialMode__9daAlink_cFv.s"
+bool daAlink_c::checkWolfGroundSpecialMode() {
+ if (mLinkAcch.ChkGroundHit() && !i_checkModeFlg(MODE_PLAYER_FLY) &&
+ i_checkEndResetFlg0(ERFLG0_UNK_1)) {
+ return procCoMetamorphoseInit();
+ } else if (mSpecialMode == SMODE_WOLF_PUZZLE || mSpecialMode == 0x28) {
+ return procWolfGiantPuzzleInit();
+ } else if (checkCargoCarry()) {
+ return procWolfCargoCarryInit();
+ } else if (checkSlideAction()) {
+ return true;
+ } else if (i_checkEndResetFlg1(ERFLG1_UNK_1)) {
+ return procWolfScreamWaitInit();
+ }
+ return false;
}
-#pragma pop
/* 80129B44-8012A02C 124484 04E8+00 46/46 0/0 0/0 .text checkNextActionWolf__9daAlink_cFi
*/
@@ -32749,6 +32783,22 @@ asm void daObj_Sekizoa_c::setWolfHowling() {
#pragma pop
/* 80131408-80131450 12BD48 0048+00 1/0 0/0 0/0 .text checkWolfRope__9daAlink_cFv */
+#ifdef NONMATCHING
+bool daAlink_c::checkWolfRope() {
+ bool ret = false;
+ bool bvar1 = false;
+
+ if (i_checkModeFlg(MODE_UNK_20000) && field_0x280c.getActor() != NULL) {
+ bvar1 = true;
+ }
+
+ // actor is Crope
+ if (bvar1 && fopAcM_GetName(field_0x280c.getActor()) == 0x2BE) {
+ ret = true;
+ }
+ return ret;
+}
+#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
@@ -32757,6 +32807,7 @@ asm bool daAlink_c::checkWolfRope() {
#include "asm/d/a/d_a_alink/checkWolfRope__9daAlink_cFv.s"
}
#pragma pop
+#endif
/* 80131450-80131628 12BD90 01D8+00 2/2 0/0 0/0 .text
* checkWolfRopeHit__9daAlink_cCFP12dCcD_GObjInfPC4cXyzi */
@@ -32963,7 +33014,7 @@ asm void daAlink_c::getWolfTagJumpTime() const {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::checkMidnaLockJumpPoint() const {
+asm cXyz* daAlink_c::checkMidnaLockJumpPoint() const {
nofralloc
#include "asm/d/a/d_a_alink/checkMidnaLockJumpPoint__9daAlink_cCFv.s"
}
@@ -33036,7 +33087,7 @@ static asm void daAlink_searchGiantTalk(fopAc_ac_c* param_0, void* param_1) {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::procWolfGiantPuzzleInit() {
+asm bool daAlink_c::procWolfGiantPuzzleInit() {
nofralloc
#include "asm/d/a/d_a_alink/procWolfGiantPuzzleInit__9daAlink_cFv.s"
}
@@ -33225,7 +33276,7 @@ asm void daAlink_c::setWolfScreamWaitAnime() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::procWolfScreamWaitInit() {
+asm bool daAlink_c::procWolfScreamWaitInit() {
nofralloc
#include "asm/d/a/d_a_alink/procWolfScreamWaitInit__9daAlink_cFv.s"
}
@@ -33565,35 +33616,35 @@ asm void daAlink_c::checkWolfLockData() {
#pragma pop
/* 8013911C-8013916C 133A5C 0050+00 1/0 0/0 0/0 .text checkWolfLock__9daAlink_cCFP10fopAc_ac_c */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::checkWolfLock(fopAc_ac_c* param_0) const {
- nofralloc
-#include "asm/d/a/d_a_alink/checkWolfLock__9daAlink_cCFP10fopAc_ac_c.s"
+bool daAlink_c::checkWolfLock(fopAc_ac_c* p_actor) const {
+ u32 id = fopAcM_GetID(p_actor);
+
+ for (int i = 0; i < mWolfLockNum; i++) {
+ if (id == mWolfLockAcKeep[i].getID()) {
+ return true;
+ }
+ }
+ return false;
}
-#pragma pop
/* 8013916C-801391DC 133AAC 0070+00 1/0 0/0 0/0 .text cancelWolfLock__9daAlink_cFP10fopAc_ac_c */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool daAlink_c::cancelWolfLock(fopAc_ac_c* param_0) {
- nofralloc
-#include "asm/d/a/d_a_alink/cancelWolfLock__9daAlink_cFP10fopAc_ac_c.s"
+bool daAlink_c::cancelWolfLock(fopAc_ac_c* p_actor) {
+ u32 id = fopAcM_GetID(p_actor);
+
+ for (int i = 0; i < mWolfLockNum; i++) {
+ if (id == mWolfLockAcKeep[i].getID()) {
+ mWolfLockAcKeep[i].clearData();
+ return true;
+ }
+ }
+ return false;
}
-#pragma pop
/* 801391DC-801391E4 133B1C 0008+00 0/0 0/0 1/1 .text getWolfLockActorEnd__9daAlink_cFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daAlink_c::getWolfLockActorEnd() {
- nofralloc
-#include "asm/d/a/d_a_alink/getWolfLockActorEnd__9daAlink_cFv.s"
+fopAc_ac_c* daAlink_c::getWolfLockActorEnd() {
+ return mWolfLockAcKeep[0].getActor();
}
-#pragma pop
/* 801391E4-801392A8 133B24 00C4+00 1/1 0/0 0/0 .text
* searchWolfLockEnemy__9daAlink_cFP10fopAc_ac_cPv */
@@ -34116,7 +34167,7 @@ static asm void daAlink_searchEnemyCargo(fopAc_ac_c* param_0, void* param_1) {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daAlink_c::procWolfCargoCarryInit() {
+asm bool daAlink_c::procWolfCargoCarryInit() {
nofralloc
#include "asm/d/a/d_a_alink/procWolfCargoCarryInit__9daAlink_cFv.s"
}
@@ -34704,14 +34755,9 @@ asm void dEvt_info_c::offCondition(u16 param_0) {
#pragma pop
/* 80141210-80141230 13BB50 0020+00 1/1 0/0 0/0 .text checkShieldGet__9daPy_py_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daPy_py_c::checkShieldGet() {
- nofralloc
-#include "asm/d/a/d_a_alink/checkShieldGet__9daPy_py_cFv.s"
+BOOL daPy_py_c::checkShieldGet() {
+ return dComIfGs_getSelectEquipShield() != NO_ITEM;
}
-#pragma pop
/* 80141230-80141264 13BB70 0034+00 1/1 0/0 0/0 .text fopAcM_onSwitch__FPC10fopAc_ac_ci
*/
@@ -34753,7 +34799,7 @@ static asm void dComIfGp_getStage() {
/* 801412B0-801412BC 13BBF0 000C+00 1/1 0/0 0/0 .text checkEquipHeavyBoots__9daPy_py_cCFv
*/
BOOL daPy_py_c::checkEquipHeavyBoots() const {
- return i_checkNoResetFlg0(EquipHeavyBoots);
+ return i_checkNoResetFlg0(EQUIP_HEAVY_BOOTS);
}
/* 801412BC-801412C4 13BBFC 0008+00 1/1 4/4 0/0 .text fopAcM_GetName__FPv */
@@ -34872,29 +34918,19 @@ asm bool dEvt_info_c::checkCommandCatch() {
#pragma pop
/* 8014139C-801413CC 13BCDC 0030+00 1/1 1/1 0/0 .text dComIfGs_isEventBit__FUs */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm BOOL dComIfGs_isEventBit(u16 param_0) {
- nofralloc
-#include "asm/d/a/d_a_alink/dComIfGs_isEventBit__FUs.s"
+BOOL dComIfGs_isEventBit(u16 id) {
+ return g_dComIfG_gameInfo.info.getEvent().isEventBit(id);
}
-#pragma pop
/* 801413CC-801413D8 13BD0C 000C+00 1/1 0/0 0/0 .text checkWolf__9daPy_py_cCFv */
int daPy_py_c::checkWolf() const {
- return i_checkNoResetFlg1(Wolf);
+ return i_checkNoResetFlg1(IS_WOLF);
}
/* 801413D8-801413F8 13BD18 0020+00 1/1 0/0 0/0 .text checkSwordGet__9daPy_py_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daPy_py_c::checkSwordGet() {
- nofralloc
-#include "asm/d/a/d_a_alink/checkSwordGet__9daPy_py_cFv.s"
+BOOL daPy_py_c::checkSwordGet() {
+ return dComIfGs_getSelectEquipSword() != 0xFF;
}
-#pragma pop
/* 801413F8-80141404 13BD38 000C+00 1/1 0/0 0/0 .text
* checkResetFlg0__9daPy_py_cCFQ29daPy_py_c10daPy_RFLG0 */
@@ -34914,6 +34950,11 @@ int daPy_py_c::checkNoResetFlg0(daPy_FLG0 pFlag) const {
}
/* 8014141C-80141438 13BD5C 001C+00 1/1 0/0 0/0 .text dComIfGp_getPlayerCameraID__Fi */
+#ifdef NONMATCHING
+static s32 dComIfGp_getPlayerCameraID(int i) {
+ return g_dComIfG_gameInfo.play.getPlayerCameraID(i);
+}
+#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
@@ -34922,48 +34963,29 @@ static asm void dComIfGp_getPlayerCameraID(int param_0) {
#include "asm/d/a/d_a_alink/dComIfGp_getPlayerCameraID__Fi.s"
}
#pragma pop
+#endif
/* 80141438-80141450 13BD78 0018+00 1/1 0/0 0/0 .text dComIfGp_event_chkEventFlag__FUs */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-static asm void dComIfGp_event_chkEventFlag(u16 param_0) {
- nofralloc
-#include "asm/d/a/d_a_alink/dComIfGp_event_chkEventFlag__FUs.s"
+static u16 dComIfGp_event_chkEventFlag(u16 flag) {
+ return g_dComIfG_gameInfo.play.getEvent().chkEventFlag(flag);
}
-#pragma pop
/* 80141450-80141464 13BD90 0014+00 1/1 0/0 0/0 .text checkCommandDoor__11dEvt_info_cFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm bool dEvt_info_c::checkCommandDoor() {
- nofralloc
-#include "asm/d/a/d_a_alink/checkCommandDoor__11dEvt_info_cFv.s"
+BOOL dEvt_info_c::checkCommandDoor() {
+ return mCommand == 3;
}
-#pragma pop
/* 80141464-801414A4 13BDA4 0040+00 1/1 0/0 0/0 .text
* dComIfGp_evmng_getMyStaffId__FPCcP10fopAc_ac_ci */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-static asm void dComIfGp_evmng_getMyStaffId(char const* param_0, fopAc_ac_c* param_1, int param_2) {
- nofralloc
-#include "asm/d/a/d_a_alink/dComIfGp_evmng_getMyStaffId__FPCcP10fopAc_ac_ci.s"
+static s32 dComIfGp_evmng_getMyStaffId(char const* param_0, fopAc_ac_c* param_1, int param_2) {
+ return dComIfGp_getPEvtManager()->getMyStaffId(param_0, param_1, param_2);
}
-#pragma pop
/* 801414A4-801414C0 13BDE4 001C+00 1/1 0/0 0/0 .text dComIfGp_event_runCheck__Fv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-static asm void dComIfGp_event_runCheck() {
- nofralloc
-#include "asm/d/a/d_a_alink/dComIfGp_event_runCheck__Fv.s"
+static BOOL dComIfGp_event_runCheck() {
+ return g_dComIfG_gameInfo.play.getEvent().runCheck();
}
-#pragma pop
/* 801414C0-801414CC 13BE00 000C+00 1/1 0/0 0/0 .text
* checkNoResetFlg2__9daPy_py_cCFQ29daPy_py_c9daPy_FLG2 */
@@ -34973,22 +34995,17 @@ int daPy_py_c::checkNoResetFlg2(daPy_FLG2 pFlag) const {
/* 801414CC-801414D8 13BE0C 000C+00 1/1 2/2 0/0 .text checkMagneBootsOn__9daPy_py_cCFv */
int daPy_py_c::checkMagneBootsOn() const {
- return i_checkNoResetFlg0(MagneBootsOn);
+ return i_checkNoResetFlg0(MAGNE_BOOTS_ON);
}
/* 801414D8-801414E8 13BE18 0010+00 1/1 2/2 0/0 .text dComIfGp_getHorseActor__Fv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void dComIfGp_getHorseActor() {
- nofralloc
-#include "asm/d/a/d_a_alink/dComIfGp_getHorseActor__Fv.s"
+daHorse_c* dComIfGp_getHorseActor() {
+ return (daHorse_c*)g_dComIfG_gameInfo.play.getPlayerPtr(1);
}
-#pragma pop
/* 801414E8-801414F4 13BE28 000C+00 1/1 0/0 0/0 .text checkBoarSingleBattle__9daPy_py_cCFv */
int daPy_py_c::checkBoarSingleBattle() const {
- return i_checkNoResetFlg2(BoarSingleBattle);
+ return i_checkNoResetFlg2(BOAR_SINGLE_BATTLE);
}
/* 801414F4-80141500 13BE34 000C+00 1/1 0/0 0/0 .text
@@ -35010,12 +35027,12 @@ void daPy_py_c::setMidnaMsgNum(fopAc_ac_c* param_0, u16 param_1) {
}
/* 8014150C-80141514 13BE4C 0008+00 1/0 0/0 0/0 .text getModelMtx__9daPy_py_cFv */
-Mtx* daPy_py_c::getModelMtx() {
+MtxP daPy_py_c::getModelMtx() {
return mCullMtx;
}
/* 80141514-8014151C 13BE54 0008+00 1/0 0/0 0/0 .text getInvMtx__9daPy_py_cFv */
-Mtx* daPy_py_c::getInvMtx() {
+MtxP daPy_py_c::getInvMtx() {
return mCullMtx;
}
@@ -35026,52 +35043,52 @@ cXyz* daPy_py_c::getShadowTalkAtnPos() {
}
/* 80141524-8014152C 13BE64 0008+00 1/0 0/0 0/0 .text getLeftItemMatrix__9daPy_py_cFv */
-Mtx* daPy_py_c::getLeftItemMatrix() {
+MtxP daPy_py_c::getLeftItemMatrix() {
return mCullMtx;
}
/* 8014152C-80141534 13BE6C 0008+00 1/0 0/0 0/0 .text getRightItemMatrix__9daPy_py_cFv */
-Mtx* daPy_py_c::getRightItemMatrix() {
+MtxP daPy_py_c::getRightItemMatrix() {
return mCullMtx;
}
/* 80141534-8014153C 13BE74 0008+00 1/0 0/0 0/0 .text getLeftHandMatrix__9daPy_py_cFv */
-Mtx* daPy_py_c::getLeftHandMatrix() {
+MtxP daPy_py_c::getLeftHandMatrix() {
return mCullMtx;
}
/* 8014153C-80141544 13BE7C 0008+00 1/0 0/0 0/0 .text getRightHandMatrix__9daPy_py_cFv */
-Mtx* daPy_py_c::getRightHandMatrix() {
+MtxP daPy_py_c::getRightHandMatrix() {
return mCullMtx;
}
/* 80141544-8014154C 13BE84 0008+00 1/0 0/0 0/0 .text getLinkBackBone1Matrix__9daPy_py_cFv */
-Mtx* daPy_py_c::getLinkBackBone1Matrix() {
+MtxP daPy_py_c::getLinkBackBone1Matrix() {
return mCullMtx;
}
/* 8014154C-80141554 13BE8C 0008+00 1/0 0/0 0/0 .text getWolfMouthMatrix__9daPy_py_cFv */
-Mtx* daPy_py_c::getWolfMouthMatrix() {
+MtxP daPy_py_c::getWolfMouthMatrix() {
return mCullMtx;
}
/* 80141554-8014155C 13BE94 0008+00 1/0 0/0 0/0 .text getWolfBackbone2Matrix__9daPy_py_cFv */
-Mtx* daPy_py_c::getWolfBackbone2Matrix() {
+MtxP daPy_py_c::getWolfBackbone2Matrix() {
return mCullMtx;
}
/* 8014155C-80141564 13BE9C 0008+00 1/0 0/0 0/0 .text getBottleMtx__9daPy_py_cFv */
-bool daPy_py_c::getBottleMtx() {
- return false;
+MtxP daPy_py_c::getBottleMtx() {
+ return NULL;
}
/* 80141564-8014156C 13BEA4 0008+00 1/0 0/0 0/0 .text checkPlayerGuard__9daPy_py_cCFv */
-bool daPy_py_c::checkPlayerGuard() const {
+BOOL daPy_py_c::checkPlayerGuard() const {
return false;
}
/* 8014156C-80141574 13BEAC 0008+00 1/0 0/0 0/0 .text checkAutoJump__9daPy_py_cCFv */
-bool daPy_py_c::checkAutoJump() const {
+BOOL daPy_py_c::checkAutoJump() const {
return false;
}
@@ -35088,7 +35105,7 @@ bool daPy_py_c::checkWolfTriggerJump() const {
/* 80141584-8014158C 13BEC4 0008+00 1/0 0/0 0/0 .text checkGuardBreakMode__9daPy_py_cCFv
*/
-bool daPy_py_c::checkGuardBreakMode() const {
+BOOL daPy_py_c::checkGuardBreakMode() const {
return false;
}
@@ -35108,45 +35125,45 @@ bool daPy_py_c::checkChainBlockPushPull() {
}
/* 801415A4-801415AC 13BEE4 0008+00 1/0 0/0 0/0 .text checkElecDamage__9daPy_py_cCFv */
-bool daPy_py_c::checkElecDamage() const {
+BOOL daPy_py_c::checkElecDamage() const {
return false;
}
/* 801415AC-801415B4 13BEEC 0008+00 1/0 0/0 0/0 .text checkEmptyBottleSwing__9daPy_py_cCFv */
-bool daPy_py_c::checkEmptyBottleSwing() const {
+BOOL daPy_py_c::checkEmptyBottleSwing() const {
return false;
}
/* 801415B4-801415BC 13BEF4 0008+00 1/0 0/0 0/0 .text checkBottleSwingMode__9daPy_py_cCFv
*/
-bool daPy_py_c::checkBottleSwingMode() const {
+BOOL daPy_py_c::checkBottleSwingMode() const {
return false;
}
/* 801415BC-801415C4 13BEFC 0008+00 1/0 0/0 0/0 .text checkHawkWait__9daPy_py_cCFv */
-bool daPy_py_c::checkHawkWait() const {
+BOOL daPy_py_c::checkHawkWait() const {
return false;
}
/* 801415C4-801415CC 13BF04 0008+00 1/0 0/0 0/0 .text checkGoatThrow__9daPy_py_cCFv */
-bool daPy_py_c::checkGoatThrow() const {
+BOOL daPy_py_c::checkGoatThrow() const {
return false;
}
/* 801415CC-801415D4 13BF0C 0008+00 1/0 0/0 0/0 .text checkGoatThrowAfter__9daPy_py_cCFv
*/
-bool daPy_py_c::checkGoatThrowAfter() const {
+BOOL daPy_py_c::checkGoatThrowAfter() const {
return false;
}
/* 801415D4-801415DC 13BF14 0008+00 1/0 0/0 0/0 .text checkWolfTagLockJump__9daPy_py_cCFv
*/
-bool daPy_py_c::checkWolfTagLockJump() const {
+BOOL daPy_py_c::checkWolfTagLockJump() const {
return false;
}
/* 801415DC-801415E4 13BF1C 0008+00 1/0 0/0 0/0 .text checkWolfTagLockJumpLand__9daPy_py_cCFv */
-bool daPy_py_c::checkWolfTagLockJumpLand() const {
+BOOL daPy_py_c::checkWolfTagLockJumpLand() const {
return false;
}
@@ -35156,39 +35173,39 @@ bool daPy_py_c::checkWolfRope() {
}
/* 801415EC-801415F4 13BF2C 0008+00 1/0 0/0 0/0 .text checkWolfRopeHang__9daPy_py_cCFv */
-bool daPy_py_c::checkWolfRopeHang() const {
+BOOL daPy_py_c::checkWolfRopeHang() const {
return false;
}
/* 801415F4-801415FC 13BF34 0008+00 1/0 0/0 0/0 .text checkRollJump__9daPy_py_cCFv */
-bool daPy_py_c::checkRollJump() const {
+BOOL daPy_py_c::checkRollJump() const {
return false;
}
/* 801415FC-80141604 13BF3C 0008+00 1/0 0/0 0/0 .text checkGoronRideWait__9daPy_py_cCFv
*/
-bool daPy_py_c::checkGoronRideWait() const {
+BOOL daPy_py_c::checkGoronRideWait() const {
return false;
}
/* 80141604-8014160C 13BF44 0008+00 1/0 0/0 0/0 .text checkWolfChain__9daPy_py_cCFv */
-bool daPy_py_c::checkWolfChain() const {
+BOOL daPy_py_c::checkWolfChain() const {
return false;
}
/* 8014160C-80141614 13BF4C 0008+00 1/0 0/0 0/0 .text checkWolfWait__9daPy_py_cCFv */
-bool daPy_py_c::checkWolfWait() const {
+BOOL daPy_py_c::checkWolfWait() const {
return false;
}
/* 80141614-8014161C 13BF54 0008+00 1/0 0/0 0/0 .text checkWolfJumpAttack__9daPy_py_cCFv
*/
-bool daPy_py_c::checkWolfJumpAttack() const {
+BOOL daPy_py_c::checkWolfJumpAttack() const {
return false;
}
/* 8014161C-80141624 13BF5C 0008+00 1/0 0/0 0/0 .text checkWolfRSit__9daPy_py_cCFv */
-bool daPy_py_c::checkWolfRSit() const {
+BOOL daPy_py_c::checkWolfRSit() const {
return false;
}
@@ -35199,28 +35216,28 @@ bool daPy_py_c::checkBubbleFly() const {
/* 8014162C-80141634 13BF6C 0008+00 1/0 0/0 0/0 .text checkBottleDrinkEnd__9daPy_py_cCFv
*/
-bool daPy_py_c::checkBottleDrinkEnd() const {
+BOOL daPy_py_c::checkBottleDrinkEnd() const {
return false;
}
/* 80141634-8014163C 13BF74 0008+00 1/0 0/0 0/0 .text checkWolfDig__9daPy_py_cCFv */
-bool daPy_py_c::checkWolfDig() const {
+BOOL daPy_py_c::checkWolfDig() const {
return false;
}
/* 8014163C-80141644 13BF7C 0008+00 1/0 0/0 0/0 .text checkCutCharge__9daPy_py_cCFv */
-bool daPy_py_c::checkCutCharge() const {
+BOOL daPy_py_c::checkCutCharge() const {
return false;
}
/* 80141644-8014164C 13BF84 0008+00 1/0 0/0 0/0 .text checkCutTurnCharge__9daPy_py_cCFv
*/
-bool daPy_py_c::checkCutTurnCharge() const {
+BOOL daPy_py_c::checkCutTurnCharge() const {
return false;
}
/* 8014164C-80141654 13BF8C 0008+00 1/0 0/0 0/0 .text checkCutLargeJumpCharge__9daPy_py_cCFv */
-bool daPy_py_c::checkCutLargeJumpCharge() const {
+BOOL daPy_py_c::checkCutLargeJumpCharge() const {
return false;
}
@@ -35231,22 +35248,22 @@ bool daPy_py_c::getBokoFlamePos(cXyz* param_0) {
}
/* 8014165C-80141664 13BF9C 0008+00 1/0 0/0 0/0 .text checkComboCutTurn__9daPy_py_cCFv */
-bool daPy_py_c::checkComboCutTurn() const {
+BOOL daPy_py_c::checkComboCutTurn() const {
return false;
}
/* 80141664-8014166C 13BFA4 0008+00 1/0 0/0 0/0 .text checkClimbMove__9daPy_py_cCFv */
-bool daPy_py_c::checkClimbMove() const {
+BOOL daPy_py_c::checkClimbMove() const {
return false;
}
/* 8014166C-80141674 13BFAC 0008+00 1/0 0/0 0/0 .text checkGrassWhistle__9daPy_py_cCFv */
-bool daPy_py_c::checkGrassWhistle() const {
+BOOL daPy_py_c::checkGrassWhistle() const {
return false;
}
/* 80141674-8014167C 13BFB4 0008+00 1/0 0/0 0/0 .text checkBoarRun__9daPy_py_cCFv */
-bool daPy_py_c::checkBoarRun() const {
+BOOL daPy_py_c::checkBoarRun() const {
return false;
}
@@ -35267,14 +35284,9 @@ float daPy_py_c::getBaseAnimeFrameRate() const {
}
/* 80141694-8014169C 13BFD4 0008+00 1/0 0/0 0/0 .text getBaseAnimeFrame__9daPy_py_cCFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm float daPy_py_c::getBaseAnimeFrame() const {
- nofralloc
-#include "asm/d/a/d_a_alink/getBaseAnimeFrame__9daPy_py_cCFv.s"
+f32 daPy_py_c::getBaseAnimeFrame() const {
+ return FLOAT_LABEL(lit_6108);
}
-#pragma pop
/* 8014169C-801416A0 13BFDC 0004+00 1/0 0/0 0/0 .text setAnimeFrame__9daPy_py_cFf */
void daPy_py_c::setAnimeFrame(f32 param_0) {
@@ -35355,13 +35367,13 @@ void daPy_py_c::onMagneGrab(f32 param_0, f32 param_1) {
}
/* 801416F4-801416FC 13C034 0008+00 1/0 0/0 0/0 .text getModelJointMtx__9daPy_py_cFUs */
-bool daPy_py_c::getModelJointMtx(u16 param_0) {
- return false;
+MtxP daPy_py_c::getModelJointMtx(u16 param_0) {
+ return NULL;
}
/* 801416FC-80141704 13C03C 0008+00 1/0 0/0 0/0 .text getHeadMtx__9daPy_py_cFv */
-bool daPy_py_c::getHeadMtx() {
- return false;
+MtxP daPy_py_c::getHeadMtx() {
+ return NULL;
}
/* 80141704-8014170C 13C044 0008+00 1/0 0/0 0/0 .text setHookshotCarryOffset__9daPy_py_cFUiPC4cXyz
@@ -35383,7 +35395,7 @@ bool daPy_py_c::checkIronBallGroundStop() const {
/* 8014171C-80141724 13C05C 0008+00 1/0 0/0 0/0 .text
* checkSingleBoarBattleSecondBowReady__9daPy_py_cCFv */
-bool daPy_py_c::checkSingleBoarBattleSecondBowReady() const {
+BOOL daPy_py_c::checkSingleBoarBattleSecondBowReady() const {
return false;
}
@@ -35471,12 +35483,12 @@ void daPy_py_c::onSceneChangeDead(u8 param_0, int param_1) {
}
/* 80141770-80141778 13C0B0 0008+00 1/0 0/0 0/0 .text getSpinnerActor__9daPy_py_cFv */
-bool daPy_py_c::getSpinnerActor() {
- return false;
+fopAc_ac_c* daPy_py_c::getSpinnerActor() {
+ return NULL;
}
/* 80141778-80141780 13C0B8 0008+00 1/0 0/0 0/0 .text checkHorseRideNotReady__9daPy_py_cCFv */
-bool daPy_py_c::checkHorseRideNotReady() const {
+BOOL daPy_py_c::checkHorseRideNotReady() const {
return false;
}
@@ -35488,18 +35500,13 @@ bool daPy_py_c::checkArrowChargeEnd() const {
/* 80141788-80141790 13C0C8 0008+00 1/0 0/0 0/0 .text getSearchBallScale__9daPy_py_cCFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daPy_py_c::getSearchBallScale() const {
- nofralloc
-#include "asm/d/a/d_a_alink/getSearchBallScale__9daPy_py_cCFv.s"
+f32 daPy_py_c::getSearchBallScale() const {
+ return FLOAT_LABEL(lit_6108);
}
-#pragma pop
/* 80141790-80141798 13C0D0 0008+00 1/0 0/0 0/0 .text checkFastShotTime__9daPy_py_cFv */
-bool daPy_py_c::checkFastShotTime() {
- return false;
+s16 daPy_py_c::checkFastShotTime() {
+ return 0;
}
/* 80141798-801417A0 13C0D8 0008+00 1/0 0/0 0/0 .text checkNoEquipItem__9daPy_py_cCFv */
@@ -35520,8 +35527,8 @@ bool daPy_py_c::checkKandelaarSwing(int param_0) const {
/* 801417B0-801417B8 13C0F0 0008+00 1/0 0/0 0/0 .text getBoardCutTurnOffsetAngleY__9daPy_py_cCFv
*/
-bool daPy_py_c::getBoardCutTurnOffsetAngleY() const {
- return false;
+s16 daPy_py_c::getBoardCutTurnOffsetAngleY() const {
+ return 0;
}
/* 801417B8-801417C0 13C0F8 0008+00 2/0 0/0 0/0 .text getMagneHitPos__9daPy_py_cFv */
@@ -35624,7 +35631,7 @@ bool daPy_py_c::checkCanoeFishingGetRight() const {
/* 80141834-8014183C 13C174 0008+00 1/0 0/0 0/0 .text checkBeeChildDrink__9daPy_py_cCFv
*/
-bool daPy_py_c::checkBeeChildDrink() const {
+u8 daPy_py_c::checkBeeChildDrink() const {
return false;
}
@@ -35649,14 +35656,14 @@ bool daPy_py_c::checkAcceptDungeonWarpAlink(int param_0) {
}
/* 80141854-8014185C 13C194 0008+00 1/0 0/0 0/0 .text getSumouCounter__9daPy_py_cCFv */
-bool daPy_py_c::getSumouCounter() const {
- return false;
+s16 daPy_py_c::getSumouCounter() const {
+ return 0;
}
/* 8014185C-80141864 13C19C 0008+00 1/0 0/0 0/0 .text checkSumouWithstand__9daPy_py_cCFv
*/
-bool daPy_py_c::checkSumouWithstand() const {
- return false;
+s16 daPy_py_c::checkSumouWithstand() const {
+ return 0;
}
/* 80141864-80141868 13C1A4 0004+00 1/0 0/0 0/0 .text cancelGoronThrowEvent__9daPy_py_cFv
@@ -35751,32 +35758,32 @@ void daPy_py_c::changeDragonActor(fopAc_ac_c* param_0) {
}
/* 801418C4-801418CC 13C204 0008+00 1/0 0/0 0/0 .text getClothesChangeWaitTimer__9daPy_py_cCFv */
-bool daPy_py_c::getClothesChangeWaitTimer() const {
- return false;
+u8 daPy_py_c::getClothesChangeWaitTimer() const {
+ return 0;
}
/* 801418CC-801418D4 13C20C 0008+00 1/0 0/0 0/0 .text getShieldChangeWaitTimer__9daPy_py_cCFv */
-bool daPy_py_c::getShieldChangeWaitTimer() const {
- return false;
+u8 daPy_py_c::getShieldChangeWaitTimer() const {
+ return 0;
}
/* 801418D4-801418DC 13C214 0008+00 1/0 0/0 0/0 .text getSwordChangeWaitTimer__9daPy_py_cCFv */
-bool daPy_py_c::getSwordChangeWaitTimer() const {
- return false;
+u8 daPy_py_c::getSwordChangeWaitTimer() const {
+ return 0;
}
/* 801418DC-801418E4 13C21C 0008+00 1/0 0/0 0/0 .text checkMetamorphose__9daPy_py_cCFv */
-bool daPy_py_c::checkMetamorphose() const {
+BOOL daPy_py_c::checkMetamorphose() const {
return false;
}
/* 801418E4-801418EC 13C224 0008+00 1/0 0/0 0/0 .text checkWolfDownAttackPullOut__9daPy_py_cCFv */
-bool daPy_py_c::checkWolfDownAttackPullOut() const {
+BOOL daPy_py_c::checkWolfDownAttackPullOut() const {
return false;
}
/* 801418EC-801418F4 13C22C 0008+00 1/0 0/0 0/0 .text checkBootsOrArmorHeavy__9daPy_py_cCFv */
-bool daPy_py_c::checkBootsOrArmorHeavy() const {
+BOOL daPy_py_c::checkBootsOrArmorHeavy() const {
return false;
}
@@ -35793,37 +35800,32 @@ bool daPy_py_c::checkItemSwordEquip() const {
/* 80141904-8014190C 13C244 0008+00 1/0 0/0 0/0 .text getSinkShapeOffset__9daPy_py_cCFv
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm float daPy_py_c::getSinkShapeOffset() const {
- nofralloc
-#include "asm/d/a/d_a_alink/getSinkShapeOffset__9daPy_py_cCFv.s"
+f32 daPy_py_c::getSinkShapeOffset() const {
+ return FLOAT_LABEL(lit_6108);
}
-#pragma pop
/* 8014190C-80141914 13C24C 0008+00 1/0 0/0 0/0 .text checkSinkDead__9daPy_py_cCFv */
-bool daPy_py_c::checkSinkDead() const {
+BOOL daPy_py_c::checkSinkDead() const {
return false;
}
/* 80141914-8014191C 13C254 0008+00 1/0 0/0 0/0 .text checkHorseStart__9daPy_py_cFv */
-bool daPy_py_c::checkHorseStart() {
+BOOL daPy_py_c::checkHorseStart() {
return false;
}
/* 8014191C-80141924 13C25C 0008+00 1/0 0/0 0/0 .text getWolfHowlMgrP__9daPy_py_cFv */
-bool daPy_py_c::getWolfHowlMgrP() {
- return false;
+Z2WolfHowlMgr* daPy_py_c::getWolfHowlMgrP() {
+ return NULL;
}
/* 80141924-8014192C 13C264 0008+00 1/0 0/0 0/0 .text checkWolfHowlSuccessAnime__9daPy_py_cCFv */
-bool daPy_py_c::checkWolfHowlSuccessAnime() const {
+BOOL daPy_py_c::checkWolfHowlSuccessAnime() const {
return false;
}
/* 8014192C-80141934 13C26C 0008+00 1/0 0/0 0/0 .text checkCopyRodTopUse__9daPy_py_cFv */
-bool daPy_py_c::checkCopyRodTopUse() {
+BOOL daPy_py_c::checkCopyRodTopUse() {
return false;
}
@@ -35833,7 +35835,7 @@ bool daPy_py_c::checkCopyRodEquip() const {
}
/* 8014193C-80141944 13C27C 0008+00 1/0 0/0 0/0 .text checkCutJumpMode__9daPy_py_cCFv */
-bool daPy_py_c::checkCutJumpMode() const {
+BOOL daPy_py_c::checkCutJumpMode() const {
return false;
}
@@ -35900,18 +35902,18 @@ static void dMeter2Info_setFloatingMessage(u16 pMessageID, s16 pMessageTimer, bo
/* 801419F4-80141A04 13C334 0010+00 1/1 0/0 0/0 .text onForcePanic__9daMidna_cFv */
void daMidna_c::onForcePanic() {
- onEndResetStateFlg0(ForcePanic);
+ onEndResetStateFlg0(FORCE_PANIC);
}
/* 80141A04-80141A10 13C344 000C+00 1/1 0/0 0/0 .text checkForceNormalColor__9daMidna_cCFv */
u32 daMidna_c::checkForceNormalColor() const {
- return checkStateFlg1(ForceNormalColor);
+ return checkStateFlg1(FORCE_NORMAL_COLOR);
}
/* 80141A10-80141A1C 13C350 000C+00 1/1 0/0 0/0 .text checkForceTiredColor__9daMidna_cCFv
*/
u32 daMidna_c::checkForceTiredColor() const {
- return checkStateFlg1(ForceTiredColor);
+ return checkStateFlg1(FORCE_TIRED_COLOR);
}
/* 80141A1C-80141A84 13C35C 0068+00 1/1 0/0 0/0 .text checkMidnaTired__9daMidna_cFv */
@@ -35926,7 +35928,7 @@ asm bool daMidna_c::checkMidnaTired() {
/* 80141A84-80141A94 13C3C4 0010+00 1/1 0/0 0/0 .text onNoServiceWait__9daMidna_cFv */
void daMidna_c::onNoServiceWait() {
- onEndResetStateFlg0(NoServiceWait);
+ onEndResetStateFlg0(NO_SERVICE_WAIT);
}
/* 80141A94-80141ACC 13C3D4 0038+00 1/1 0/0 0/0 .text setControllActorData__8daCrod_cFv
diff --git a/src/d/a/d_a_player.cpp b/src/d/a/d_a_player.cpp
index 9249f54536..9641162398 100644
--- a/src/d/a/d_a_player.cpp
+++ b/src/d/a/d_a_player.cpp
@@ -4,12 +4,14 @@
//
#include "d/a/d_a_player.h"
+#include "SSystem/SComponent/c_math.h"
#include "d/com/d_com_inf_game.h"
#include "dol2asm.h"
#include "dolphin/mtx/mtx.h"
#include "dolphin/types.h"
#include "f_op/f_op_actor_iter.h"
#include "f_op/f_op_actor_mng.h"
+#include "rel/d/a/d_a_boomerang/d_a_boomerang.h"
//
// Types:
@@ -21,10 +23,6 @@ struct mDoMtx_stack_c {
static u8 now[48];
};
-struct JMath {
- static u8 sincosTable_[65536];
-};
-
struct J3DAnmLoaderDataBaseFlag {};
struct J3DAnmLoaderDataBase {
@@ -219,18 +217,22 @@ SECTION_SDATA2 static f32 lit_4250 = 65536.0f;
/* 8015E5B0-8015E654 158EF0 00A4+00 0/0 1/1 18/18 .text initOffset__20daPy_boomerangMove_cFPC4cXyz
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daPy_boomerangMove_c::initOffset(cXyz const* param_0) {
- nofralloc
-#include "asm/d/a/d_a_player/initOffset__20daPy_boomerangMove_cFPC4cXyz.s"
+void daPy_boomerangMove_c::initOffset(cXyz const* param_0) {
+ daBoomerang_c* boomerang = daPy_py_c::getThrowBoomerangActor();
+ if (boomerang != NULL) {
+ bgCheckAfterOffset(param_0);
+ boomerang->onWindCatch();
+ } else {
+ field_0x4 = cM_rndF(lit_4248) + lit_4247;
+ field_0x8 = cM_rndF(lit_4249) + lit_4249;
+ field_0x2 = cM_rndF(lit_4250);
+ }
+ field_0x0 = 0;
}
-#pragma pop
/* ############################################################################################## */
/* 80451018-8045101C 000518 0004+00 2/2 33/32 103/103 .sbss m_midnaActor__9daPy_py_c */
-u8 daPy_py_c::m_midnaActor[4];
+daMidna_c* daPy_py_c::m_midnaActor;
/* 8045101C-80451020 -00001 0004+00 1/1 1/1 1/1 .sbss None */
/* 8045101C 0002+00 data_8045101C m_dropAngleY__20daPy_boomerangMove_c */
@@ -277,6 +279,18 @@ SECTION_SDATA2 static u8 lit_4381[8] = {
/* 8015E87C-8015EA0C 1591BC 0190+00 1/1 1/1 17/17 .text
* bgCheckAfterOffset__20daPy_boomerangMove_cFPC4cXyz */
+// matches with literals (used in inlines)
+#ifdef NONMATCHING
+void daPy_boomerangMove_c::bgCheckAfterOffset(cXyz const* param_0) {
+ daBoomerang_c* boomerang = daPy_py_c::getThrowBoomerangActor();
+ if (boomerang != NULL) {
+ field_0x4 = param_0->y - boomerang->mCurrent.mPosition.y;
+ field_0x8 = boomerang->mCurrent.mPosition.absXZ(*param_0);
+ field_0x2 = cM_atan2s(param_0->x - boomerang->mCurrent.mPosition.x,
+ param_0->z - boomerang->mCurrent.mPosition.z);
+ }
+}
+#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
@@ -285,12 +299,13 @@ asm void daPy_boomerangMove_c::bgCheckAfterOffset(cXyz const* param_0) {
#include "asm/d/a/d_a_player/bgCheckAfterOffset__20daPy_boomerangMove_cFPC4cXyz.s"
}
#pragma pop
+#endif
/* 8015EA0C-8015EA20 15934C 0014+00 0/0 3/3 0/0 .text setParamData__9daPy_py_cFiiii */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daPy_py_c::setParamData(int param_0, int param_1, int param_2, int param_3) {
+asm u32 daPy_py_c::setParamData(int param_0, int param_1, int param_2, int param_3) {
nofralloc
#include "asm/d/a/d_a_player/setParamData__9daPy_py_cFiiii.s"
}
@@ -323,7 +338,7 @@ asm BOOL daPy_py_c::checkFishingRodItem(int param_0) {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daPy_py_c::checkBombItem(int param_0) {
+asm BOOL daPy_py_c::checkBombItem(int param_0) {
nofralloc
#include "asm/d/a/d_a_player/checkBombItem__9daPy_py_cFi.s"
}
@@ -333,7 +348,7 @@ asm void daPy_py_c::checkBombItem(int param_0) {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daPy_py_c::checkBottleItem(int param_0) {
+asm BOOL daPy_py_c::checkBottleItem(int param_0) {
nofralloc
#include "asm/d/a/d_a_player/checkBottleItem__9daPy_py_cFi.s"
}
@@ -352,40 +367,24 @@ asm void daPy_py_c::checkDrinkBottleItem(int param_0) {
/* 8015EB40-8015EB68 159480 0028+00 0/0 4/4 0/0 .text checkOilBottleItem__9daPy_py_cFi */
BOOL daPy_py_c::checkOilBottleItem(int i_itemNo) {
- bool isOilBottleItem = false;
- if (i_itemNo == CHUCHU_YELLOW || i_itemNo == OIL_BOTTLE_2 || i_itemNo == OIL_BOTTLE) {
- isOilBottleItem = true;
- }
- return isOilBottleItem;
+ return i_itemNo == CHUCHU_YELLOW || i_itemNo == OIL_BOTTLE_2 || i_itemNo == OIL_BOTTLE;
}
/* 8015EB68-8015EB90 1594A8 0028+00 0/0 2/2 0/0 .text checkOpenBottleItem__9daPy_py_cFi
*/
BOOL daPy_py_c::checkOpenBottleItem(int i_itemNo) {
- bool isOpenBottleItem = false;
- if (i_itemNo == WATER_BOTTLE || i_itemNo == WORM || i_itemNo == FAIRY) {
- isOpenBottleItem = true;
- }
- return isOpenBottleItem;
+ return i_itemNo == WATER_BOTTLE || i_itemNo == WORM || i_itemNo == FAIRY;
}
/* 8015EB90-8015EBB8 1594D0 0028+00 0/0 11/11 0/0 .text checkBowItem__9daPy_py_cFi */
BOOL daPy_py_c::checkBowItem(int i_itemNo) {
- bool isBowItem = false;
- if (i_itemNo == BOW || i_itemNo == BOMB_ARROW || i_itemNo == HAWK_ARROW) {
- isBowItem = true;
- }
- return isBowItem;
+ return i_itemNo == BOW || i_itemNo == BOMB_ARROW || i_itemNo == HAWK_ARROW;
}
/* 8015EBB8-8015EBD8 1594F8 0020+00 0/0 23/23 0/0 .text checkHookshotItem__9daPy_py_cFi
*/
BOOL daPy_py_c::checkHookshotItem(int i_itemNo) {
- bool isHookshotItem = false;
- if (i_itemNo == HOOKSHOT || i_itemNo == W_HOOKSHOT) {
- isHookshotItem = true;
- }
- return isHookshotItem;
+ return i_itemNo == HOOKSHOT || i_itemNo == W_HOOKSHOT;
}
/* 8015EBD8-8015EC28 159518 0050+00 0/0 3/3 0/0 .text checkTradeItem__9daPy_py_cFi */
@@ -401,11 +400,7 @@ asm BOOL daPy_py_c::checkTradeItem(int param_0) {
/* 8015EC28-8015EC48 159568 0020+00 0/0 2/2 0/0 .text checkDungeonWarpItem__9daPy_py_cFi
*/
BOOL daPy_py_c::checkDungeonWarpItem(int i_itemNo) {
- bool isDungeonWarpItem = false;
- if (i_itemNo == DUNGEON_EXIT || i_itemNo == DUNGEON_BACK) {
- isDungeonWarpItem = true;
- }
- return isDungeonWarpItem;
+ return i_itemNo == DUNGEON_EXIT || i_itemNo == DUNGEON_BACK;
}
/* 8015EC48-8015ECB8 159588 0070+00 0/0 10/10 3/3 .text setActor__16daPy_actorKeep_cFv */
@@ -580,9 +575,9 @@ J3DAnmBase* daPy_anmHeap_c::loadDataDemoRID(u16 pID, u16 pArcNo) {
}
/* 8015F168-8015F1A0 159AA8 0038+00 1/1 4/4 0/0 .text setAnimeHeap__14daPy_anmHeap_cFv */
-void daPy_anmHeap_c::setAnimeHeap() {
+JKRHeap* daPy_anmHeap_c::setAnimeHeap() {
mAnimeHeap->freeAll();
- mDoExt_setCurrentHeap(mAnimeHeap);
+ return mDoExt_setCurrentHeap(mAnimeHeap);
}
/* ############################################################################################## */
@@ -909,7 +904,7 @@ asm void daPy_py_c::checkRoomRestartStart() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daPy_py_c::checkCarryStartLightBallA() {
+asm u32 daPy_py_c::checkCarryStartLightBallA() {
nofralloc
#include "asm/d/a/d_a_player/checkCarryStartLightBallA__9daPy_py_cFv.s"
}
@@ -919,7 +914,7 @@ asm void daPy_py_c::checkCarryStartLightBallA() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void daPy_py_c::checkCarryStartLightBallB() {
+asm u32 daPy_py_c::checkCarryStartLightBallB() {
nofralloc
#include "asm/d/a/d_a_player/checkCarryStartLightBallB__9daPy_py_cFv.s"
}
@@ -962,14 +957,10 @@ bool daPy_py_c::checkBoomerangChargeTime() {
}
/* 8015F8D0-8015F8E4 15A210 0014+00 3/3 1/1 5/5 .text getThrowBoomerangActor__9daPy_py_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daPy_py_c::getThrowBoomerangActor() {
- nofralloc
-#include "asm/d/a/d_a_player/getThrowBoomerangActor__9daPy_py_cFv.s"
+daBoomerang_c* daPy_py_c::getThrowBoomerangActor() {
+ return static_cast<daBoomerang_c*>(
+ daAlink_getAlinkActorClass()->getThrowBoomerangAcKeep()->getActor());
}
-#pragma pop
/* 8015F8E4-8015F914 15A224 0030+00 0/0 0/0 2/2 .text
* cancelBoomerangLockActor__9daPy_py_cFP10fopAc_ac_c */
diff --git a/src/d/bg/d_bg_s_acch.cpp b/src/d/bg/d_bg_s_acch.cpp
index 5c1fedf3e1..8dd0d7bb34 100644
--- a/src/d/bg/d_bg_s_acch.cpp
+++ b/src/d/bg/d_bg_s_acch.cpp
@@ -813,6 +813,6 @@ static asm void func_8007748C() {
#pragma pop
/* 80077494-8007749C 071DD4 0008+00 0/0 1/0 0/0 .text checkPlayerFly__9daPy_py_cCFv */
-bool daPy_py_c::checkPlayerFly() const {
- return false;
+u32 daPy_py_c::checkPlayerFly() const {
+ return 0;
}
diff --git a/src/d/com/d_com_inf_game.cpp b/src/d/com/d_com_inf_game.cpp
index 7376015fb6..d5cf762663 100644
--- a/src/d/com/d_com_inf_game.cpp
+++ b/src/d/com/d_com_inf_game.cpp
@@ -28,10 +28,6 @@ struct dSmplMdl_draw_c {
/* 80049058 */ void removeModel(J3DModelData*, int);
};
-struct dPa_control_c {
- /* 8004BACC */ dPa_control_c();
-};
-
struct dMapInfo_n {
/* 8003EE5C */ void getMapPlayerPos();
};
@@ -401,7 +397,7 @@ inline u8 dStage_stagInfo_GetSaveTbl(stage_stag_info_class* param_0) {
}
inline BOOL dComIfGs_isEventBit(u16 id) {
- return g_dComIfG_gameInfo.info.getSavedata().getEvent().isEventBit(id);
+ return g_dComIfG_gameInfo.info.getEvent().isEventBit(id);
}
inline int dComIfGs_isItemFirstBit(u8 i_no) {
@@ -978,9 +974,9 @@ int dComIfG_play_c::getLayerNo_common_common(const char* stageName, int roomId,
else if (dComIfGs_isTmpBit(0x0601)) {
if (dComIfGs_isTmpBit(0x0602)) {
layer = 2;
+ } else {
+ layer = 3;
}
- } else {
- layer = 3;
}
}
@@ -1150,22 +1146,22 @@ int dComIfG_play_c::getLayerNo_common_common(const char* stageName, int roomId,
layer = 13;
}
}
+ }
- // Stage is Hyrule Castle Sewers and room is Prison Cell
- if (!strcmp(stageName, "R_SP107") && roomId == 0) {
- // Haven't been to Hyrule Castle Sewers
- if (!dComIfGs_isEventBit(0x4D08)) {
- layer = 11;
- }
+ // Stage is Hyrule Castle Sewers and room is Prison Cell
+ if (!strcmp(stageName, "R_SP107") && roomId == 0) {
+ // Haven't been to Hyrule Castle Sewers
+ if (!dComIfGs_isEventBit(0x4D08)) {
+ layer = 11;
}
- // Stage and room is Zant Throne Room
- else if (!strcmp(stageName, "D_MN08A") && roomId == 10) {
- // Defeated Zant
- if (dComIfGs_isEventBit(0x5410)) {
- layer = 1;
- } else {
- layer = 0;
- }
+ }
+ // Stage and room is Zant Throne Room
+ else if (!strcmp(stageName, "D_MN08A") && roomId == 10) {
+ // Defeated Zant
+ if (dComIfGs_isEventBit(0x5410)) {
+ layer = 1;
+ } else {
+ layer = 0;
}
}
}
@@ -1728,7 +1724,7 @@ asm void dComIfGs_offOneZoneSwitch(int param_0, int param_1) {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void dComIfGs_isOneZoneSwitch(int param_0, int param_1) {
+asm BOOL dComIfGs_isOneZoneSwitch(int param_0, int param_1) {
nofralloc
#include "asm/d/com/d_com_inf_game/dComIfGs_isOneZoneSwitch__Fii.s"
}
@@ -2276,7 +2272,7 @@ cXyz dComIfGs_getWarpPlayerPos() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void dComIfGs_getWarpPlayerPos() {
+asm cXyz& dComIfGs_getWarpPlayerPos() {
nofralloc
#include "asm/d/com/d_com_inf_game/dComIfGs_getWarpPlayerPos__Fv.s"
}
@@ -2287,7 +2283,7 @@ s16 dComIfGs_getWarpPlayerAngleY() {
return dComIfGs_getLastWarpMarkPlayerAngleY();
}
-int dComIfGs_getWarpRoomNo() {
+s8 dComIfGs_getWarpRoomNo() {
return dComIfGs_getLastWarpMarkRoomNo();
}
diff --git a/src/d/d_att_dist.cpp b/src/d/d_att_dist.cpp
index 80dd6e347d..2dd152e72f 100644
--- a/src/d/d_att_dist.cpp
+++ b/src/d/d_att_dist.cpp
@@ -1,445 +1,243 @@
-//
-// Generated By: dol2asm
-// Translation Unit: d/d_att_dist
-//
-
#include "d/d_att_dist.h"
+#include "d/d_attention.h"
#include "dol2asm.h"
#include "dolphin/types.h"
-//
-// Types:
-//
-
-struct dAttention_c {
- static u8 dist_table[6552];
-};
-
-//
-// Forward References:
-//
-
-extern "C" u8 dist_table__12dAttention_c[6552];
-
-//
-// External References:
-//
-
-//
-// Declarations:
-//
-
/* ############################################################################################## */
/* 803A9C70-803AB608 006D90 1998+00 0/0 5/5 13/13 .data dist_table__12dAttention_c */
-SECTION_DATA u8 dAttention_c::dist_table[6552] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x3C, 0x23, 0xD7, 0x0A, 0x00, 0x00, 0x00, 0x00, 0x43, 0x7A, 0x00, 0x00,
- 0x43, 0xBB, 0x80, 0x00, 0x43, 0xFA, 0x00, 0x00, 0x43, 0xC8, 0x00, 0x00, 0xC3, 0xC8, 0x00, 0x00,
- 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x3B, 0x80, 0x00, 0x43, 0x7A, 0x00, 0x00,
- 0x43, 0x9C, 0x40, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0xBB, 0x80, 0x00, 0x44, 0x1C, 0x40, 0x00, 0x43, 0xFA, 0x00, 0x00,
- 0x43, 0xFA, 0x00, 0x00, 0xC3, 0xFA, 0x00, 0x00, 0x41, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0xFA, 0x00, 0x00, 0x44, 0x16, 0x00, 0x00, 0x44, 0xBB, 0x80, 0x00, 0x44, 0xFA, 0x00, 0x00,
- 0xC4, 0xFA, 0x00, 0x00, 0x41, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x3B, 0x80, 0x00,
- 0x43, 0x7A, 0x00, 0x00, 0x43, 0x9C, 0x40, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0xA0, 0x00, 0x00, 0x42, 0xC8, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x41, 0xF0, 0x00, 0x00, 0xC3, 0x02, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x01, 0x42, 0xC8, 0x00, 0x00, 0x42, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x42, 0x48, 0x00, 0x00, 0xC2, 0xF0, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
- 0x42, 0xC8, 0x00, 0x00, 0x42, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0x34, 0x00, 0x00,
- 0xC2, 0xFA, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x42, 0xC8, 0x00, 0x00,
- 0x42, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0x20, 0x00, 0x00, 0xC3, 0x02, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x42, 0xA0, 0x00, 0x00, 0x42, 0xC8, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x42, 0x20, 0x00, 0x00, 0xC2, 0xDC, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x01, 0x42, 0xA0, 0x00, 0x00, 0x42, 0xC8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x41, 0x20, 0x00, 0x00, 0xC3, 0x02, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
- 0x43, 0x48, 0x00, 0x00, 0x43, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0xC8, 0x00, 0x00,
- 0xC2, 0xF0, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x42, 0xC8, 0x00, 0x00,
- 0x42, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x41, 0xF0, 0x00, 0x00, 0xC3, 0x70, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x43, 0x48, 0x00, 0x00, 0x43, 0x5C, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x48, 0x00, 0x00, 0xC3, 0x48, 0x00, 0x00, 0x41, 0x20, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x04, 0x42, 0xC8, 0x00, 0x00, 0x42, 0xF0, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0xC3, 0x48, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04,
- 0x42, 0xC8, 0x00, 0x00, 0x42, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x41, 0xA0, 0x00, 0x00,
- 0xC2, 0xF0, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x48, 0x00, 0x00,
- 0x43, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0xC8, 0x00, 0x00, 0xC2, 0xF0, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x43, 0xFA, 0x00, 0x00, 0x44, 0x2F, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x44, 0x48, 0x00, 0x00, 0xC4, 0x48, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0xFA, 0x00, 0x00, 0x44, 0x2F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x44, 0x48, 0x00, 0x00, 0xC4, 0x48, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x44, 0x7A, 0x00, 0x00, 0x44, 0x89, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x2F, 0x00, 0x00,
- 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x16, 0x00, 0x00,
- 0x43, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0xFA, 0x00, 0x00, 0x44, 0x16, 0x00, 0x00,
- 0x45, 0x8C, 0xA0, 0x00, 0x44, 0xFA, 0x00, 0x00, 0xC4, 0xFA, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0xC8, 0x00, 0x00, 0x43, 0xE1, 0x00, 0x00, 0x43, 0x48, 0x00, 0x00,
- 0x43, 0xFA, 0x00, 0x00, 0xC3, 0xFA, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x45, 0x1C, 0x40, 0x00, 0x45, 0x22, 0x80, 0x00, 0x45, 0x1C, 0x40, 0x00, 0x45, 0x1C, 0x40, 0x00,
- 0xC4, 0xFA, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x45, 0x9C, 0x40, 0x00,
- 0x45, 0xAB, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0xFA, 0x00, 0x00, 0xC4, 0xFA, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x45, 0x9C, 0x40, 0x00, 0x45, 0xAB, 0xE0, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x44, 0xFA, 0x00, 0x00, 0xC4, 0xFA, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x34, 0x00, 0x00, 0x43, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x41, 0xF0, 0x00, 0x00, 0xC3, 0x02, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0xFA, 0x00, 0x00, 0x44, 0x16, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x16, 0x00, 0x00,
- 0xC2, 0xF0, 0x00, 0x00, 0x42, 0xC8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x7A, 0x00, 0x00,
- 0x44, 0x7A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0xFA, 0x00, 0x00, 0xC3, 0xFA, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xBF, 0x80, 0x00, 0x00, 0xBF, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x42, 0xF0, 0x00, 0x00, 0x42, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x41, 0xF0, 0x00, 0x00, 0xC3, 0x02, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x16, 0x00, 0x00, 0x43, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x48, 0x00, 0x00,
- 0xC3, 0x48, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x43, 0x16, 0x00, 0x00,
- 0x43, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x16, 0x00, 0x00, 0xC3, 0x16, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x84, 0x44, 0x7A, 0x00, 0x00, 0x44, 0x96, 0x00, 0x00,
- 0x44, 0xE1, 0x00, 0x00, 0x44, 0xFA, 0x00, 0x00, 0xC4, 0xFA, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0xBB, 0x80, 0x00, 0x44, 0x1C, 0x40, 0x00, 0x43, 0xFA, 0x00, 0x00,
- 0x44, 0x3B, 0x80, 0x00, 0xC3, 0xFA, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x44, 0x96, 0x00, 0x00, 0x44, 0xE1, 0x00, 0x00, 0x44, 0x96, 0x00, 0x00, 0x43, 0xFA, 0x00, 0x00,
- 0xC4, 0x89, 0x80, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x3C, 0x23, 0xD7, 0x0A, 0x00, 0x00, 0x00, 0x00, 0x43, 0x48, 0x00, 0x00, 0x43, 0x5C, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x44, 0x44, 0xED, 0x80, 0x00, 0x44, 0xED, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x44, 0xFA, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x44, 0xED, 0x80, 0x00, 0x44, 0xFA, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0xFA, 0x00, 0x00,
- 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x42, 0xA0, 0x00, 0x00,
- 0x42, 0xC8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x41, 0xF0, 0x00, 0x00, 0xC3, 0x02, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x42, 0xC8, 0x00, 0x00, 0x42, 0xDC, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x42, 0x48, 0x00, 0x00, 0xC2, 0xF0, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x04, 0x43, 0x02, 0x00, 0x00, 0x43, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x42, 0x34, 0x00, 0x00, 0xC2, 0xFA, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
- 0x43, 0x20, 0x00, 0x00, 0x43, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0x20, 0x00, 0x00,
- 0xC3, 0x02, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x43, 0x3E, 0x00, 0x00,
- 0x43, 0x52, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0x20, 0x00, 0x00, 0xC2, 0xDC, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x43, 0xBB, 0x80, 0x00, 0x44, 0x1C, 0x40, 0x00,
- 0x43, 0xFA, 0x00, 0x00, 0x44, 0x48, 0x00, 0x00, 0xC3, 0xFA, 0x00, 0x00, 0x41, 0x20, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x42, 0xC8, 0x00, 0x00, 0x43, 0xC8, 0x00, 0x00, 0x43, 0xFA, 0x00, 0x00,
- 0x43, 0xFA, 0x00, 0x00, 0xC3, 0xFA, 0x00, 0x00, 0x41, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x16, 0x00, 0x00, 0x43, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x48, 0x00, 0x00,
- 0xC3, 0x48, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x44, 0x7A, 0x00, 0x00,
- 0x44, 0x89, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x48, 0x00, 0x00, 0xC3, 0x48, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, 0x1C, 0x40, 0x00, 0x46, 0x1F, 0x60, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x46, 0x1C, 0x40, 0x00, 0xC6, 0x1C, 0x40, 0x00, 0x42, 0xC8, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x46, 0x1C, 0x40, 0x00, 0x46, 0x1F, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x46, 0x1C, 0x40, 0x00, 0xC6, 0x1C, 0x40, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x44, 0xBB, 0x80, 0x00, 0x44, 0xE1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x44, 0x7A, 0x00, 0x00,
- 0x44, 0x96, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0xC8, 0x00, 0x00, 0xC3, 0xC8, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x46, 0x1C, 0x40, 0x00, 0x46, 0x1F, 0x60, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x46, 0x1C, 0x40, 0x00, 0xC6, 0x1C, 0x40, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0x43, 0xAF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x48, 0x00, 0x00, 0x43, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x2F, 0x00, 0x00,
- 0x42, 0xC8, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x16, 0x00, 0x00,
- 0x44, 0x2F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x2F, 0x00, 0x00, 0x42, 0xC8, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x2F, 0x00, 0x00, 0x44, 0x7A, 0x00, 0x00,
- 0x43, 0xFA, 0x00, 0x00, 0x43, 0xFA, 0x00, 0x00, 0xC3, 0xFA, 0x00, 0x00, 0x41, 0x20, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x02, 0x00, 0x00, 0x43, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x42, 0x34, 0x00, 0x00, 0xC2, 0xFA, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x47, 0xC3, 0x50, 0x00, 0x47, 0xC3, 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x47, 0xC3, 0x50, 0x00,
- 0xC7, 0xC3, 0x50, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, 0x1C, 0x40, 0x00,
- 0x46, 0x1D, 0xD0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x45, 0x3B, 0x80, 0x00, 0xC4, 0xFA, 0x00, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x2F, 0x00, 0x00, 0x44, 0x7A, 0x00, 0x00,
- 0x43, 0xFA, 0x00, 0x00, 0x44, 0x7A, 0x00, 0x00, 0xC3, 0xFA, 0x00, 0x00, 0x41, 0x20, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0xFA, 0x00, 0x00, 0x44, 0x16, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0xFA, 0x00, 0x00, 0xC3, 0xFA, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x44, 0x2F, 0x00, 0x00, 0x44, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x2F, 0x00, 0x00,
- 0xC4, 0x2F, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, 0x1C, 0x40, 0x00,
- 0x46, 0x1F, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, 0x1C, 0x40, 0x00, 0xC6, 0x1C, 0x40, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0xC8, 0x00, 0x00, 0x43, 0xE1, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x44, 0x16, 0x00, 0x00, 0xC4, 0x16, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x04, 0x43, 0xFA, 0x00, 0x00, 0x44, 0x09, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x44, 0x16, 0x00, 0x00, 0xC4, 0x16, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04,
- 0x44, 0xFA, 0x00, 0x00, 0x45, 0x09, 0x80, 0x00, 0x43, 0xFA, 0x00, 0x00, 0x43, 0xFA, 0x00, 0x00,
- 0xC3, 0xFA, 0x00, 0x00, 0x41, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0xFA, 0x00, 0x00,
- 0x44, 0x16, 0x00, 0x00, 0x43, 0x48, 0x00, 0x00, 0x43, 0xFA, 0x00, 0x00, 0xC3, 0xFA, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0x43, 0xAF, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x44, 0x16, 0x00, 0x00, 0xC4, 0x16, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x04, 0x43, 0xFA, 0x00, 0x00, 0x44, 0x09, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x44, 0x16, 0x00, 0x00, 0xC4, 0x16, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04,
- 0x44, 0x96, 0x00, 0x00, 0x44, 0xFA, 0x00, 0x00, 0x44, 0x96, 0x00, 0x00, 0x44, 0x48, 0x00, 0x00,
- 0xC3, 0xFA, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x20, 0x00, 0x00,
- 0x43, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0x20, 0x00, 0x00, 0xC3, 0x02, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x0C, 0x00, 0x00, 0x43, 0x16, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x7A, 0x00, 0x00, 0xC2, 0x48, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x01, 0x43, 0xFA, 0x00, 0x00, 0x44, 0x16, 0x00, 0x00, 0x44, 0x3B, 0x80, 0x00,
- 0x44, 0xFA, 0x00, 0x00, 0xC4, 0xFA, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0xFA, 0x00, 0x00, 0x44, 0x16, 0x00, 0x00, 0x44, 0x3B, 0x80, 0x00, 0x43, 0x48, 0x00, 0x00,
- 0xC3, 0x48, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x48, 0x00, 0x00,
- 0x43, 0x7A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC4, 0x7A, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x43, 0x96, 0x00, 0x00, 0x43, 0xAF, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC4, 0x7A, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x04, 0x44, 0x7A, 0x00, 0x00, 0x44, 0xFA, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x44, 0x7A, 0x00, 0x00, 0xC4, 0x7A, 0x00, 0x00, 0x3D, 0xCC, 0xCC, 0xCD, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x48, 0x00, 0x00, 0x43, 0x7A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0xC3, 0x96, 0x00, 0x00, 0x40, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x43, 0x96, 0x00, 0x00,
- 0x43, 0xAF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00,
- 0x40, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x45, 0x3B, 0x80, 0x00, 0x45, 0x41, 0xC0, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0x45, 0x3B, 0x80, 0x00, 0xC5, 0x3B, 0x80, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x44, 0xFA, 0x00, 0x00, 0x45, 0x03, 0x40, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0x44, 0xFA, 0x00, 0x00, 0xC4, 0xFA, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x16, 0x00, 0x00, 0x43, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0xC8, 0x00, 0x00,
- 0xC2, 0xC8, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x45, 0x5A, 0xC0, 0x00,
- 0x45, 0x5A, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x45, 0x3B, 0x80, 0x00, 0xC5, 0x3B, 0x80, 0x00,
- 0x42, 0xC8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0xBB, 0x80, 0x00, 0x44, 0x1C, 0x40, 0x00,
- 0x43, 0xFA, 0x00, 0x00, 0x43, 0xFA, 0x00, 0x00, 0xC3, 0xFA, 0x00, 0x00, 0x42, 0x20, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x48, 0x00, 0x00, 0x43, 0x7A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0xC4, 0x7A, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44,
- 0x43, 0x96, 0x00, 0x00, 0x43, 0xAF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0xC4, 0x7A, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x43, 0x16, 0x00, 0x00,
- 0x43, 0x16, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0x20, 0x00, 0x00, 0xC3, 0x02, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x42, 0xC8, 0x00, 0x00, 0x42, 0xC8, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x42, 0x20, 0x00, 0x00, 0xC3, 0x02, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0xBB, 0x80, 0x00, 0x44, 0x7A, 0x00, 0x00, 0x43, 0xFA, 0x00, 0x00,
- 0x43, 0xFA, 0x00, 0x00, 0xC3, 0xFA, 0x00, 0x00, 0x41, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x44, 0xFA, 0x00, 0x00, 0x44, 0xFA, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x7A, 0x00, 0x00,
- 0xC4, 0x7A, 0x00, 0x00, 0x3D, 0xCC, 0xCC, 0xCD, 0x00, 0x00, 0x00, 0x04, 0x42, 0xC8, 0x00, 0x00,
- 0x43, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x20, 0x00, 0x00, 0xC3, 0x16, 0x00, 0x00,
- 0x41, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x42, 0x48, 0x00, 0x00, 0x42, 0x8C, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x0C, 0x42, 0xC8, 0x00, 0x00, 0x42, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C,
- 0x43, 0x16, 0x00, 0x00, 0x43, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x43, 0x48, 0x00, 0x00,
- 0x43, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x43, 0x7A, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x0C, 0x43, 0x96, 0x00, 0x00, 0x43, 0xAF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C,
- 0x43, 0xAF, 0x00, 0x00, 0x43, 0xC8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x43, 0xC8, 0x00, 0x00,
- 0x43, 0xE1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x43, 0xE1, 0x00, 0x00, 0x43, 0xFA, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x0C, 0x43, 0xFA, 0x00, 0x00, 0x44, 0x09, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C,
- 0x44, 0x09, 0x80, 0x00, 0x44, 0x22, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x44, 0x16, 0x00, 0x00,
- 0x44, 0x2F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x44, 0x22, 0x80, 0x00, 0x44, 0x2F, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x0C, 0x44, 0x2F, 0x00, 0x00, 0x44, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C,
- 0x44, 0x3B, 0x80, 0x00, 0x44, 0x54, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x44, 0x48, 0x00, 0x00,
- 0x44, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x44, 0x54, 0x80, 0x00, 0x44, 0x7A, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x0C, 0x44, 0x61, 0x00, 0x00, 0x44, 0x89, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C,
- 0x44, 0x6D, 0x80, 0x00, 0x44, 0x8F, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x44, 0x7A, 0x00, 0x00,
- 0x44, 0x96, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x42, 0x48, 0x00, 0x00, 0x42, 0x8C, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x14, 0x42, 0xC8, 0x00, 0x00, 0x42, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14,
- 0x43, 0x16, 0x00, 0x00, 0x43, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, 0x43, 0x48, 0x00, 0x00,
- 0x43, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, 0x43, 0x7A, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x14, 0x43, 0x96, 0x00, 0x00, 0x43, 0xAF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14,
- 0x43, 0xAF, 0x00, 0x00, 0x43, 0xC8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, 0x43, 0xC8, 0x00, 0x00,
- 0x43, 0xE1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, 0x43, 0xE1, 0x00, 0x00, 0x43, 0xFA, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x14, 0x43, 0xFA, 0x00, 0x00, 0x44, 0x09, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14,
- 0x44, 0x09, 0x80, 0x00, 0x44, 0x22, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, 0x44, 0x16, 0x00, 0x00,
- 0x44, 0x2F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, 0x44, 0x22, 0x80, 0x00, 0x44, 0x2F, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x14, 0x44, 0x2F, 0x00, 0x00, 0x44, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14,
- 0x44, 0x3B, 0x80, 0x00, 0x44, 0x54, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, 0x44, 0x48, 0x00, 0x00,
- 0x44, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, 0x44, 0x54, 0x80, 0x00, 0x44, 0x7A, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x14, 0x44, 0x61, 0x00, 0x00, 0x44, 0x89, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14,
- 0x44, 0x6D, 0x80, 0x00, 0x44, 0x8F, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, 0x44, 0x7A, 0x00, 0x00,
- 0x44, 0x96, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, 0x42, 0x48, 0x00, 0x00, 0x42, 0x8C, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x24, 0x42, 0xC8, 0x00, 0x00, 0x42, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x24,
- 0x43, 0x16, 0x00, 0x00, 0x43, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x24, 0x43, 0x48, 0x00, 0x00,
- 0x43, 0x7A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x24, 0x43, 0x7A, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x24, 0x43, 0x96, 0x00, 0x00, 0x43, 0xAF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x24,
- 0x43, 0xAF, 0x00, 0x00, 0x43, 0xC8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x24, 0x43, 0xC8, 0x00, 0x00,
- 0x43, 0xE1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x24, 0x43, 0xE1, 0x00, 0x00, 0x43, 0xFA, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x24, 0x43, 0xFA, 0x00, 0x00, 0x44, 0x09, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x24,
- 0x44, 0x09, 0x80, 0x00, 0x44, 0x22, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x24, 0x44, 0x16, 0x00, 0x00,
- 0x44, 0x2F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x24, 0x44, 0x22, 0x80, 0x00, 0x44, 0x2F, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x24, 0x44, 0x2F, 0x00, 0x00, 0x44, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x24,
- 0x44, 0x3B, 0x80, 0x00, 0x44, 0x54, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x24, 0x44, 0x48, 0x00, 0x00,
- 0x44, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x24, 0x44, 0x54, 0x80, 0x00, 0x44, 0x7A, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x24, 0x44, 0x61, 0x00, 0x00, 0x44, 0x89, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x24,
- 0x44, 0x6D, 0x80, 0x00, 0x44, 0x8F, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x24, 0x44, 0x7A, 0x00, 0x00,
- 0x44, 0x96, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x24, 0x42, 0x48, 0x00, 0x00, 0x42, 0x8C, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x44, 0x42, 0xC8, 0x00, 0x00, 0x42, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44,
- 0x43, 0x16, 0x00, 0x00, 0x43, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x43, 0x48, 0x00, 0x00,
- 0x43, 0x7A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x43, 0x7A, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x44, 0x43, 0x96, 0x00, 0x00, 0x43, 0xAF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44,
- 0x43, 0xAF, 0x00, 0x00, 0x43, 0xC8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x43, 0xC8, 0x00, 0x00,
- 0x43, 0xE1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x43, 0xE1, 0x00, 0x00, 0x43, 0xFA, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x44, 0x43, 0xFA, 0x00, 0x00, 0x44, 0x09, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44,
- 0x44, 0x09, 0x80, 0x00, 0x44, 0x22, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x44, 0x16, 0x00, 0x00,
- 0x44, 0x2F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x44, 0x22, 0x80, 0x00, 0x44, 0x3B, 0x80, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x44, 0x44, 0x2F, 0x00, 0x00, 0x44, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44,
- 0x44, 0x3B, 0x80, 0x00, 0x44, 0x54, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x44, 0x48, 0x00, 0x00,
- 0x44, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x44, 0x54, 0x80, 0x00, 0x44, 0x7A, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x44, 0x44, 0x61, 0x00, 0x00, 0x44, 0x89, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44,
- 0x44, 0x6D, 0x80, 0x00, 0x44, 0x8F, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x44, 0x7A, 0x00, 0x00,
- 0x44, 0x96, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x42, 0x48, 0x00, 0x00, 0x42, 0x8C, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x84, 0x42, 0xC8, 0x00, 0x00, 0x42, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x84,
- 0x43, 0x16, 0x00, 0x00, 0x43, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x84, 0x43, 0x48, 0x00, 0x00,
- 0x43, 0x7A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x84, 0x43, 0x7A, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x84, 0x43, 0x96, 0x00, 0x00, 0x43, 0xAF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x84,
- 0x43, 0xAF, 0x00, 0x00, 0x43, 0xC8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x84, 0x43, 0xC8, 0x00, 0x00,
- 0x43, 0xE1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x84, 0x43, 0xE1, 0x00, 0x00, 0x43, 0xFA, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x84, 0x43, 0xFA, 0x00, 0x00, 0x44, 0x09, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x84,
- 0x44, 0x09, 0x80, 0x00, 0x44, 0x22, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x84, 0x44, 0x16, 0x00, 0x00,
- 0x44, 0x2F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x84, 0x44, 0x22, 0x80, 0x00, 0x44, 0x3B, 0x80, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x84, 0x44, 0x2F, 0x00, 0x00, 0x44, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x84,
- 0x44, 0x3B, 0x80, 0x00, 0x44, 0x54, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x84, 0x44, 0x48, 0x00, 0x00,
- 0x44, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x84, 0x44, 0x54, 0x80, 0x00, 0x44, 0x7A, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x84, 0x44, 0x61, 0x00, 0x00, 0x44, 0x89, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x84,
- 0x44, 0x6D, 0x80, 0x00, 0x44, 0x8F, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x84, 0x44, 0x7A, 0x00, 0x00,
- 0x44, 0x96, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x84, 0x42, 0x48, 0x00, 0x00, 0x42, 0x8C, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x01, 0x04, 0x42, 0xC8, 0x00, 0x00, 0x42, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0x04,
- 0x43, 0x16, 0x00, 0x00, 0x43, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0x04, 0x43, 0x48, 0x00, 0x00,
- 0x43, 0x7A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0x04, 0x43, 0x7A, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x01, 0x04, 0x43, 0x96, 0x00, 0x00, 0x43, 0xAF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0x04,
- 0x43, 0xAF, 0x00, 0x00, 0x43, 0xC8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0x04, 0x43, 0xC8, 0x00, 0x00,
- 0x43, 0xE1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0x04, 0x43, 0xE1, 0x00, 0x00, 0x43, 0xFA, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x01, 0x04, 0x43, 0xFA, 0x00, 0x00, 0x44, 0x09, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0x04,
- 0x44, 0x09, 0x80, 0x00, 0x44, 0x22, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0x04, 0x44, 0x16, 0x00, 0x00,
- 0x44, 0x2F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0x04, 0x44, 0x22, 0x80, 0x00, 0x44, 0x3B, 0x80, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x01, 0x04, 0x44, 0x2F, 0x00, 0x00, 0x44, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0x04,
- 0x44, 0x3B, 0x80, 0x00, 0x44, 0x54, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0x04, 0x44, 0x48, 0x00, 0x00,
- 0x44, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0x04, 0x44, 0x54, 0x80, 0x00, 0x44, 0x7A, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x01, 0x04, 0x44, 0x61, 0x00, 0x00, 0x44, 0x89, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0x04,
- 0x44, 0x6D, 0x80, 0x00, 0x44, 0x8F, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0x04, 0x44, 0x7A, 0x00, 0x00,
- 0x44, 0x96, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0x04, 0x42, 0x48, 0x00, 0x00, 0x42, 0x8C, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x04, 0x42, 0xC8, 0x00, 0x00, 0x42, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04,
- 0x43, 0x16, 0x00, 0x00, 0x43, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x43, 0x48, 0x00, 0x00,
- 0x43, 0x7A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x43, 0x7A, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x04, 0x43, 0x96, 0x00, 0x00, 0x43, 0xAF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04,
- 0x43, 0xAF, 0x00, 0x00, 0x43, 0xC8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x43, 0xC8, 0x00, 0x00,
- 0x43, 0xE1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x43, 0xE1, 0x00, 0x00, 0x43, 0xFA, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x04, 0x43, 0xFA, 0x00, 0x00, 0x44, 0x09, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04,
- 0x44, 0x09, 0x80, 0x00, 0x44, 0x22, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x44, 0x16, 0x00, 0x00,
- 0x44, 0x2F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x44, 0x22, 0x80, 0x00, 0x44, 0x3B, 0x80, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x04, 0x44, 0x2F, 0x00, 0x00, 0x44, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04,
- 0x44, 0x3B, 0x80, 0x00, 0x44, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x44, 0x48, 0x00, 0x00,
- 0x44, 0x6D, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x44, 0x54, 0x80, 0x00, 0x44, 0x7A, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x04, 0x44, 0x61, 0x00, 0x00, 0x44, 0x89, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04,
- 0x44, 0x6D, 0x80, 0x00, 0x44, 0x8F, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00,
- 0xC3, 0x96, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x44, 0x7A, 0x00, 0x00,
- 0x44, 0x96, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x96, 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00,
- 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04,
+dist_entry dAttention_c::dist_table[234] = {
+ {0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.01f, 0},
+ {250.0f, 375.0f, 500.0f, 400.0f, -400.0f, 0.5f, 0},
+ {187.5f, 250.0f, 312.5f, 300.0f, -300.0f, 1.0f, 0},
+ {375.0f, 625.0f, 500.0f, 500.0f, -500.0f, 10.0f, 0},
+ {500.0f, 600.0f, 1500.0f, 2000.0f, -2000.0f, 10.0f, 0},
+ {187.5f, 250.0f, 312.5f, 300.0f, -300.0f, 1.0f, 0},
+ {80.0f, 100.0f, 0.0f, 30.0f, -130.0f, 1.0f, 1},
+ {100.0f, 120.0f, 0.0f, 50.0f, -120.0f, 1.0f, 1},
+ {100.0f, 120.0f, 0.0f, 45.0f, -125.0f, 1.0f, 1},
+ {100.0f, 120.0f, 0.0f, 40.0f, -130.0f, 1.0f, 1},
+ {80.0f, 100.0f, 0.0f, 40.0f, -110.0f, 1.0f, 1},
+ {80.0f, 100.0f, 0.0f, 10.0f, -130.0f, 1.0f, 1},
+ {200.0f, 240.0f, 0.0f, 100.0f, -120.0f, 1.0f, 1},
+ {100.0f, 120.0f, 0.0f, 30.0f, -240.0f, 1.0f, 1},
+ {200.0f, 220.0f, 0.0f, 200.0f, -200.0f, 10.0f, 4},
+ {100.0f, 120.0f, 300.0f, 300.0f, -200.0f, 1.0f, 4},
+ {100.0f, 120.0f, 0.0f, 20.0f, -120.0f, 1.0f, 0},
+ {200.0f, 200.0f, 0.0f, 400.0f, -120.0f, 1.0f, 1},
+ {500.0f, 700.0f, 0.0f, 800.0f, -800.0f, 1.0f, 0},
+ {500.0f, 700.0f, 0.0f, 800.0f, -800.0f, 1.0f, 0},
+ {1000.0f, 1100.0f, 0.0f, 700.0f, -300.0f, 1.0f, 0},
+ {150.0f, 200.0f, 0.0f, 300.0f, -300.0f, 1.0f, 0},
+ {500.0f, 600.0f, 4500.0f, 2000.0f, -2000.0f, 1.0f, 0},
+ {400.0f, 450.0f, 200.0f, 500.0f, -500.0f, 1.0f, 0},
+ {2500.0f, 2600.0f, 2500.0f, 2500.0f, -2000.0f, 1.0f, 0},
+ {5000.0f, 5500.0f, 0.0f, 2000.0f, -2000.0f, 1.0f, 0},
+ {5000.0f, 5500.0f, 0.0f, 2000.0f, -2000.0f, 1.0f, 0},
+ {180.0f, 180.0f, 0.0f, 30.0f, -130.0f, 1.0f, 0},
+ {500.0f, 600.0f, 0.0f, 600.0f, -120.0f, 100.0f, 0},
+ {1000.0f, 1000.0f, 0.0f, 500.0f, -500.0f, 1.0f, 0},
+ {-1.0f, -1.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0},
+ {120.0f, 120.0f, 0.0f, 30.0f, -130.0f, 1.0f, 0},
+ {150.0f, 160.0f, 0.0f, 200.0f, -200.0f, 1.0f, 4},
+ {150.0f, 160.0f, 0.0f, 150.0f, -150.0f, 1.0f, 132},
+ {1000.0f, 1200.0f, 1800.0f, 2000.0f, -2000.0f, 1.0f, 0},
+ {375.0f, 625.0f, 500.0f, 750.0f, -500.0f, 1.0f, 0},
+ {1200.0f, 1800.0f, 1200.0f, 500.0f, -1100.0f, 1.0f, 0},
+ {0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.01f, 0},
+ {200.0f, 220.0f, 0.0f, 300.0f, -300.0f, 1.0f, 68},
+ {1900.0f, 1900.0f, 0.0f, 2000.0f, -300.0f, 1.0f, 0},
+ {1900.0f, 2000.0f, 0.0f, 2000.0f, -300.0f, 1.0f, 1},
+ {80.0f, 100.0f, 0.0f, 30.0f, -130.0f, 1.0f, 1},
+ {100.0f, 110.0f, 0.0f, 50.0f, -120.0f, 1.0f, 4},
+ {130.0f, 140.0f, 0.0f, 45.0f, -125.0f, 1.0f, 1},
+ {160.0f, 180.0f, 0.0f, 40.0f, -130.0f, 1.0f, 1},
+ {190.0f, 210.0f, 0.0f, 40.0f, -110.0f, 1.0f, 1},
+ {375.0f, 625.0f, 500.0f, 800.0f, -500.0f, 10.0f, 0},
+ {100.0f, 400.0f, 500.0f, 500.0f, -500.0f, 10.0f, 0},
+ {150.0f, 160.0f, 0.0f, 200.0f, -200.0f, 1.0f, 4},
+ {1000.0f, 1100.0f, 0.0f, 200.0f, -200.0f, 1.0f, 0},
+ {10000.0f, 10200.0f, 0.0f, 10000.0f, -10000.0f, 100.0f, 0},
+ {10000.0f, 10200.0f, 0.0f, 10000.0f, -10000.0f, 1.0f, 0},
+ {1500.0f, 1800.0f, 0.0f, 300.0f, -300.0f, 1.0f, 4},
+ {1000.0f, 1200.0f, 0.0f, 400.0f, -400.0f, 1.0f, 4},
+ {10000.0f, 10200.0f, 0.0f, 10000.0f, -10000.0f, 1.0f, 0},
+ {300.0f, 350.0f, 0.0f, 300.0f, -300.0f, 1.0f, 0},
+ {200.0f, 240.0f, 0.0f, 700.0f, 100.0f, 1.0f, 0},
+ {600.0f, 700.0f, 0.0f, 700.0f, 100.0f, 1.0f, 0},
+ {700.0f, 1000.0f, 500.0f, 500.0f, -500.0f, 10.0f, 0},
+ {130.0f, 140.0f, 0.0f, 45.0f, -125.0f, 1.0f, 0},
+ {100000.0f, 100100.0f, 0.0f, 100000.0f, -100000.0f, 1.0f, 0},
+ {10000.0f, 10100.0f, 0.0f, 3000.0f, -2000.0f, 300.0f, 0},
+ {700.0f, 1000.0f, 500.0f, 1000.0f, -500.0f, 10.0f, 0},
+ {500.0f, 600.0f, 0.0f, 500.0f, -500.0f, 1.0f, 0},
+ {700.0f, 800.0f, 0.0f, 700.0f, -700.0f, 1.0f, 0},
+ {10000.0f, 10200.0f, 0.0f, 10000.0f, -10000.0f, 1.0f, 0},
+ {400.0f, 450.0f, 0.0f, 600.0f, -600.0f, 1.0f, 4},
+ {500.0f, 550.0f, 0.0f, 600.0f, -600.0f, 1.0f, 4},
+ {2000.0f, 2200.0f, 500.0f, 500.0f, -500.0f, 10.0f, 0},
+ {500.0f, 600.0f, 200.0f, 500.0f, -500.0f, 1.0f, 0},
+ {300.0f, 350.0f, 0.0f, 600.0f, -600.0f, 1.0f, 4},
+ {500.0f, 550.0f, 0.0f, 600.0f, -600.0f, 1.0f, 4},
+ {1200.0f, 2000.0f, 1200.0f, 800.0f, -500.0f, 2.0f, 0},
+ {160.0f, 180.0f, 0.0f, 40.0f, -130.0f, 1.0f, 0},
+ {140.0f, 150.0f, 0.0f, 250.0f, -50.0f, 1.0f, 1},
+ {500.0f, 600.0f, 750.0f, 2000.0f, -2000.0f, 1.0f, 0},
+ {500.0f, 600.0f, 750.0f, 200.0f, -200.0f, 1.0f, 0},
+ {200.0f, 250.0f, 0.0f, 300.0f, -1000.0f, 1.0f, 4},
+ {300.0f, 350.0f, 0.0f, 300.0f, -1000.0f, 1.0f, 4},
+ {1000.0f, 2000.0f, 0.0f, 1000.0f, -1000.0f, 0.1f, 0},
+ {200.0f, 250.0f, 0.0f, 300.0f, -300.0f, 2.5f, 4},
+ {300.0f, 350.0f, 0.0f, 300.0f, -300.0f, 2.5f, 4},
+ {3000.0f, 3100.0f, 300.0f, 3000.0f, -3000.0f, 1.0f, 0},
+ {2000.0f, 2100.0f, 300.0f, 2000.0f, -2000.0f, 1.0f, 0},
+ {150.0f, 200.0f, 0.0f, 100.0f, -100.0f, 1.0f, 17},
+ {3500.0f, 3500.0f, 0.0f, 3000.0f, -3000.0f, 100.0f, 0},
+ {375.0f, 625.0f, 500.0f, 500.0f, -500.0f, 40.0f, 0},
+ {200.0f, 250.0f, 0.0f, 300.0f, -1000.0f, 1.0f, 68},
+ {300.0f, 350.0f, 0.0f, 300.0f, -1000.0f, 1.0f, 68},
+ {150.0f, 150.0f, 0.0f, 40.0f, -130.0f, 1.0f, 1},
+ {100.0f, 100.0f, 0.0f, 40.0f, -130.0f, 1.0f, 0},
+ {375.0f, 1000.0f, 500.0f, 500.0f, -500.0f, 10.0f, 0},
+ {2000.0f, 2000.0f, 0.0f, 1000.0f, -1000.0f, 0.1f, 4},
+ {100.0f, 200.0f, 0.0f, 160.0f, -150.0f, 10.0f, 4},
+ {50.0f, 70.0f, 0.0f, 300.0f, -300.0f, 1.0f, 12},
+ {100.0f, 120.0f, 0.0f, 300.0f, -300.0f, 1.0f, 12},
+ {150.0f, 180.0f, 0.0f, 300.0f, -300.0f, 1.0f, 12},
+ {200.0f, 240.0f, 0.0f, 300.0f, -300.0f, 1.0f, 12},
+ {250.0f, 300.0f, 0.0f, 300.0f, -300.0f, 1.0f, 12},
+ {300.0f, 350.0f, 0.0f, 300.0f, -300.0f, 1.0f, 12},
+ {350.0f, 400.0f, 0.0f, 300.0f, -300.0f, 1.0f, 12},
+ {400.0f, 450.0f, 0.0f, 300.0f, -300.0f, 1.0f, 12},
+ {450.0f, 500.0f, 0.0f, 300.0f, -300.0f, 1.0f, 12},
+ {500.0f, 550.0f, 0.0f, 300.0f, -300.0f, 1.0f, 12},
+ {550.0f, 650.0f, 0.0f, 300.0f, -300.0f, 1.0f, 12},
+ {600.0f, 700.0f, 0.0f, 300.0f, -300.0f, 1.0f, 12},
+ {650.0f, 700.0f, 0.0f, 300.0f, -300.0f, 1.0f, 12},
+ {700.0f, 800.0f, 0.0f, 300.0f, -300.0f, 1.0f, 12},
+ {750.0f, 850.0f, 0.0f, 300.0f, -300.0f, 1.0f, 12},
+ {800.0f, 900.0f, 0.0f, 300.0f, -300.0f, 1.0f, 12},
+ {850.0f, 1000.0f, 0.0f, 300.0f, -300.0f, 1.0f, 12},
+ {900.0f, 1100.0f, 0.0f, 300.0f, -300.0f, 1.0f, 12},
+ {950.0f, 1150.0f, 0.0f, 300.0f, -300.0f, 1.0f, 12},
+ {1000.0f, 1200.0f, 0.0f, 300.0f, -300.0f, 1.0f, 12},
+ {50.0f, 70.0f, 0.0f, 300.0f, -300.0f, 1.0f, 20},
+ {100.0f, 120.0f, 0.0f, 300.0f, -300.0f, 1.0f, 20},
+ {150.0f, 180.0f, 0.0f, 300.0f, -300.0f, 1.0f, 20},
+ {200.0f, 240.0f, 0.0f, 300.0f, -300.0f, 1.0f, 20},
+ {250.0f, 300.0f, 0.0f, 300.0f, -300.0f, 1.0f, 20},
+ {300.0f, 350.0f, 0.0f, 300.0f, -300.0f, 1.0f, 20},
+ {350.0f, 400.0f, 0.0f, 300.0f, -300.0f, 1.0f, 20},
+ {400.0f, 450.0f, 0.0f, 300.0f, -300.0f, 1.0f, 20},
+ {450.0f, 500.0f, 0.0f, 300.0f, -300.0f, 1.0f, 20},
+ {500.0f, 550.0f, 0.0f, 300.0f, -300.0f, 1.0f, 20},
+ {550.0f, 650.0f, 0.0f, 300.0f, -300.0f, 1.0f, 20},
+ {600.0f, 700.0f, 0.0f, 300.0f, -300.0f, 1.0f, 20},
+ {650.0f, 700.0f, 0.0f, 300.0f, -300.0f, 1.0f, 20},
+ {700.0f, 800.0f, 0.0f, 300.0f, -300.0f, 1.0f, 20},
+ {750.0f, 850.0f, 0.0f, 300.0f, -300.0f, 1.0f, 20},
+ {800.0f, 900.0f, 0.0f, 300.0f, -300.0f, 1.0f, 20},
+ {850.0f, 1000.0f, 0.0f, 300.0f, -300.0f, 1.0f, 20},
+ {900.0f, 1100.0f, 0.0f, 300.0f, -300.0f, 1.0f, 20},
+ {950.0f, 1150.0f, 0.0f, 300.0f, -300.0f, 1.0f, 20},
+ {1000.0f, 1200.0f, 0.0f, 300.0f, -300.0f, 1.0f, 20},
+ {50.0f, 70.0f, 0.0f, 300.0f, -300.0f, 1.0f, 36},
+ {100.0f, 120.0f, 0.0f, 300.0f, -300.0f, 1.0f, 36},
+ {150.0f, 180.0f, 0.0f, 300.0f, -300.0f, 1.0f, 36},
+ {200.0f, 250.0f, 0.0f, 300.0f, -300.0f, 1.0f, 36},
+ {250.0f, 300.0f, 0.0f, 300.0f, -300.0f, 1.0f, 36},
+ {300.0f, 350.0f, 0.0f, 300.0f, -300.0f, 1.0f, 36},
+ {350.0f, 400.0f, 0.0f, 300.0f, -300.0f, 1.0f, 36},
+ {400.0f, 450.0f, 0.0f, 300.0f, -300.0f, 1.0f, 36},
+ {450.0f, 500.0f, 0.0f, 300.0f, -300.0f, 1.0f, 36},
+ {500.0f, 550.0f, 0.0f, 300.0f, -300.0f, 1.0f, 36},
+ {550.0f, 650.0f, 0.0f, 300.0f, -300.0f, 1.0f, 36},
+ {600.0f, 700.0f, 0.0f, 300.0f, -300.0f, 1.0f, 36},
+ {650.0f, 700.0f, 0.0f, 300.0f, -300.0f, 1.0f, 36},
+ {700.0f, 800.0f, 0.0f, 300.0f, -300.0f, 1.0f, 36},
+ {750.0f, 850.0f, 0.0f, 300.0f, -300.0f, 1.0f, 36},
+ {800.0f, 900.0f, 0.0f, 300.0f, -300.0f, 1.0f, 36},
+ {850.0f, 1000.0f, 0.0f, 300.0f, -300.0f, 1.0f, 36},
+ {900.0f, 1100.0f, 0.0f, 300.0f, -300.0f, 1.0f, 36},
+ {950.0f, 1150.0f, 0.0f, 300.0f, -300.0f, 1.0f, 36},
+ {1000.0f, 1200.0f, 0.0f, 300.0f, -300.0f, 1.0f, 36},
+ {50.0f, 70.0f, 0.0f, 300.0f, -300.0f, 1.0f, 68},
+ {100.0f, 120.0f, 0.0f, 300.0f, -300.0f, 1.0f, 68},
+ {150.0f, 180.0f, 0.0f, 300.0f, -300.0f, 1.0f, 68},
+ {200.0f, 250.0f, 0.0f, 300.0f, -300.0f, 1.0f, 68},
+ {250.0f, 300.0f, 0.0f, 300.0f, -300.0f, 1.0f, 68},
+ {300.0f, 350.0f, 0.0f, 300.0f, -300.0f, 1.0f, 68},
+ {350.0f, 400.0f, 0.0f, 300.0f, -300.0f, 1.0f, 68},
+ {400.0f, 450.0f, 0.0f, 300.0f, -300.0f, 1.0f, 68},
+ {450.0f, 500.0f, 0.0f, 300.0f, -300.0f, 1.0f, 68},
+ {500.0f, 550.0f, 0.0f, 300.0f, -300.0f, 1.0f, 68},
+ {550.0f, 650.0f, 0.0f, 300.0f, -300.0f, 1.0f, 68},
+ {600.0f, 700.0f, 0.0f, 300.0f, -300.0f, 1.0f, 68},
+ {650.0f, 750.0f, 0.0f, 300.0f, -300.0f, 1.0f, 68},
+ {700.0f, 800.0f, 0.0f, 300.0f, -300.0f, 1.0f, 68},
+ {750.0f, 850.0f, 0.0f, 300.0f, -300.0f, 1.0f, 68},
+ {800.0f, 900.0f, 0.0f, 300.0f, -300.0f, 1.0f, 68},
+ {850.0f, 1000.0f, 0.0f, 300.0f, -300.0f, 1.0f, 68},
+ {900.0f, 1100.0f, 0.0f, 300.0f, -300.0f, 1.0f, 68},
+ {950.0f, 1150.0f, 0.0f, 300.0f, -300.0f, 1.0f, 68},
+ {1000.0f, 1200.0f, 0.0f, 300.0f, -300.0f, 1.0f, 68},
+ {50.0f, 70.0f, 0.0f, 300.0f, -300.0f, 1.0f, 132},
+ {100.0f, 120.0f, 0.0f, 300.0f, -300.0f, 1.0f, 132},
+ {150.0f, 180.0f, 0.0f, 300.0f, -300.0f, 1.0f, 132},
+ {200.0f, 250.0f, 0.0f, 300.0f, -300.0f, 1.0f, 132},
+ {250.0f, 300.0f, 0.0f, 300.0f, -300.0f, 1.0f, 132},
+ {300.0f, 350.0f, 0.0f, 300.0f, -300.0f, 1.0f, 132},
+ {350.0f, 400.0f, 0.0f, 300.0f, -300.0f, 1.0f, 132},
+ {400.0f, 450.0f, 0.0f, 300.0f, -300.0f, 1.0f, 132},
+ {450.0f, 500.0f, 0.0f, 300.0f, -300.0f, 1.0f, 132},
+ {500.0f, 550.0f, 0.0f, 300.0f, -300.0f, 1.0f, 132},
+ {550.0f, 650.0f, 0.0f, 300.0f, -300.0f, 1.0f, 132},
+ {600.0f, 700.0f, 0.0f, 300.0f, -300.0f, 1.0f, 132},
+ {650.0f, 750.0f, 0.0f, 300.0f, -300.0f, 1.0f, 132},
+ {700.0f, 800.0f, 0.0f, 300.0f, -300.0f, 1.0f, 132},
+ {750.0f, 850.0f, 0.0f, 300.0f, -300.0f, 1.0f, 132},
+ {800.0f, 900.0f, 0.0f, 300.0f, -300.0f, 1.0f, 132},
+ {850.0f, 1000.0f, 0.0f, 300.0f, -300.0f, 1.0f, 132},
+ {900.0f, 1100.0f, 0.0f, 300.0f, -300.0f, 1.0f, 132},
+ {950.0f, 1150.0f, 0.0f, 300.0f, -300.0f, 1.0f, 132},
+ {1000.0f, 1200.0f, 0.0f, 300.0f, -300.0f, 1.0f, 132},
+ {50.0f, 70.0f, 0.0f, 300.0f, -300.0f, 1.0f, 260},
+ {100.0f, 120.0f, 0.0f, 300.0f, -300.0f, 1.0f, 260},
+ {150.0f, 180.0f, 0.0f, 300.0f, -300.0f, 1.0f, 260},
+ {200.0f, 250.0f, 0.0f, 300.0f, -300.0f, 1.0f, 260},
+ {250.0f, 300.0f, 0.0f, 300.0f, -300.0f, 1.0f, 260},
+ {300.0f, 350.0f, 0.0f, 300.0f, -300.0f, 1.0f, 260},
+ {350.0f, 400.0f, 0.0f, 300.0f, -300.0f, 1.0f, 260},
+ {400.0f, 450.0f, 0.0f, 300.0f, -300.0f, 1.0f, 260},
+ {450.0f, 500.0f, 0.0f, 300.0f, -300.0f, 1.0f, 260},
+ {500.0f, 550.0f, 0.0f, 300.0f, -300.0f, 1.0f, 260},
+ {550.0f, 650.0f, 0.0f, 300.0f, -300.0f, 1.0f, 260},
+ {600.0f, 700.0f, 0.0f, 300.0f, -300.0f, 1.0f, 260},
+ {650.0f, 750.0f, 0.0f, 300.0f, -300.0f, 1.0f, 260},
+ {700.0f, 800.0f, 0.0f, 300.0f, -300.0f, 1.0f, 260},
+ {750.0f, 850.0f, 0.0f, 300.0f, -300.0f, 1.0f, 260},
+ {800.0f, 900.0f, 0.0f, 300.0f, -300.0f, 1.0f, 260},
+ {850.0f, 1000.0f, 0.0f, 300.0f, -300.0f, 1.0f, 260},
+ {900.0f, 1100.0f, 0.0f, 300.0f, -300.0f, 1.0f, 260},
+ {950.0f, 1150.0f, 0.0f, 300.0f, -300.0f, 1.0f, 260},
+ {1000.0f, 1200.0f, 0.0f, 300.0f, -300.0f, 1.0f, 260},
+ {50.0f, 70.0f, 0.0f, 300.0f, -300.0f, 1.0f, 4},
+ {100.0f, 120.0f, 0.0f, 300.0f, -300.0f, 1.0f, 4},
+ {150.0f, 180.0f, 0.0f, 300.0f, -300.0f, 1.0f, 4},
+ {200.0f, 250.0f, 0.0f, 300.0f, -300.0f, 1.0f, 4},
+ {250.0f, 300.0f, 0.0f, 300.0f, -300.0f, 1.0f, 4},
+ {300.0f, 350.0f, 0.0f, 300.0f, -300.0f, 1.0f, 4},
+ {350.0f, 400.0f, 0.0f, 300.0f, -300.0f, 1.0f, 4},
+ {400.0f, 450.0f, 0.0f, 300.0f, -300.0f, 1.0f, 4},
+ {450.0f, 500.0f, 0.0f, 300.0f, -300.0f, 1.0f, 4},
+ {500.0f, 550.0f, 0.0f, 300.0f, -300.0f, 1.0f, 4},
+ {550.0f, 650.0f, 0.0f, 300.0f, -300.0f, 1.0f, 4},
+ {600.0f, 700.0f, 0.0f, 300.0f, -300.0f, 1.0f, 4},
+ {650.0f, 750.0f, 0.0f, 300.0f, -300.0f, 1.0f, 4},
+ {700.0f, 800.0f, 0.0f, 300.0f, -300.0f, 1.0f, 4},
+ {750.0f, 900.0f, 0.0f, 300.0f, -300.0f, 1.0f, 4},
+ {800.0f, 950.0f, 0.0f, 300.0f, -300.0f, 1.0f, 4},
+ {850.0f, 1000.0f, 0.0f, 300.0f, -300.0f, 1.0f, 4},
+ {900.0f, 1100.0f, 0.0f, 300.0f, -300.0f, 1.0f, 4},
+ {950.0f, 1150.0f, 0.0f, 300.0f, -300.0f, 1.0f, 4},
+ {1000.0f, 1200.0f, 0.0f, 300.0f, -300.0f, 1.0f, 4},
};
diff --git a/src/d/d_attention.cpp b/src/d/d_attention.cpp
index 9344018554..e38167ef3e 100644
--- a/src/d/d_attention.cpp
+++ b/src/d/d_attention.cpp
@@ -933,7 +933,7 @@ asm void dAttention_c::CheckObjectTarget(s32 param_0) {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void dAttention_c::LockonTruth() {
+asm bool dAttention_c::LockonTruth() {
nofralloc
#include "asm/d/d_attention/LockonTruth__12dAttention_cFv.s"
}
diff --git a/src/d/event/d_event.cpp b/src/d/event/d_event.cpp
index c30bb716b9..a6fc85fd47 100644
--- a/src/d/event/d_event.cpp
+++ b/src/d/event/d_event.cpp
@@ -628,7 +628,7 @@ bool dEvt_control_c::compulsory(void* param_0, char const* param_1, u16 param_2)
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm bool dEvt_control_c::compulsory(void* param_0, char const* param_1, u16 param_2) {
+asm BOOL dEvt_control_c::compulsory(void* param_0, char const* param_1, u16 param_2) {
nofralloc
#include "asm/d/event/d_event/compulsory__14dEvt_control_cFPvPCcUs.s"
}
diff --git a/src/d/event/d_event_data.cpp b/src/d/event/d_event_data.cpp
index 7c3b85a839..98c0831c87 100644
--- a/src/d/event/d_event_data.cpp
+++ b/src/d/event/d_event_data.cpp
@@ -4,6 +4,7 @@
//
#include "d/event/d_event_data.h"
+#include "d/com/d_com_inf_game.h"
#include "dol2asm.h"
#include "dolphin/types.h"
@@ -18,45 +19,6 @@ struct mDoGph_gInf_c {
static f32 mFadeRate;
};
-struct dVibration_c {
- /* 8006FA24 */ void StartShock(int, int, cXyz);
- /* 8006FB10 */ void StartQuake(int, int, cXyz);
- /* 8006FC0C */ void StartQuake(u8 const*, int, int, cXyz);
- /* 8006FD94 */ void StopQuake(int);
-};
-
-struct dMsgObject_c {
- /* 8023806C */ void demoMessageGroup();
-};
-
-struct dEvt_control_c {
- /* 80042914 */ void setSkipProc(void*, int (*)(void*, int), int);
- /* 80042958 */ void setSkipZev(void*, char*);
- /* 80043278 */ void getStageEventDt();
- /* 800432EC */ void convPId(unsigned int);
- /* 8004331C */ void getStbDemoData(char*);
- /* 800434D8 */ void searchMapEventData(u8);
- /* 8004365C */ void setPt2(void*);
- /* 8004368C */ void setPtT(void*);
- /* 800436BC */ void setPtI(void*);
- /* 800436F4 */ void setPtD(void*);
-};
-
-struct dEvent_manager_c {
- /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int);
- /* 80047D4C */ void getIsAddvance(int);
- /* 80047F5C */ void getMyNowCutName(int);
- /* 800480EC */ void getMySubstanceP(int, char const*, int);
- /* 80048144 */ void getMySubstanceNum(int, char const*);
- /* 8004817C */ void cutEnd(int);
-};
-
-struct dDlst_list_c {
- /* 800568D8 */ void wipeIn(f32);
-
- static f32 mWipeRate;
-};
-
struct dDemo_c {
/* 80039B6C */ void start(u8 const*, cXyz*, f32);
/* 80039CF8 */ void end();
@@ -75,8 +37,6 @@ struct Z2SeqMgr {
/* 802AFE18 */ void bgmStreamPlay();
};
-struct JAISoundID {};
-
struct Z2SeMgr {
/* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8);
};
@@ -189,7 +149,6 @@ extern "C" void _restgpr_28();
extern "C" void _restgpr_29();
extern "C" u8 const tempBitLabels__20dSv_event_tmp_flag_c[370 + 2 /* padding */];
extern "C" u8 saveBitLabels__16dSv_event_flag_c[1644 + 4 /* padding */];
-extern "C" extern u8 g_dComIfG_gameInfo[122384];
extern "C" f32 mFadeRate__13mDoGph_gInf_c;
extern "C" extern u8 struct_80450BE4[4];
extern "C" u8 m_control__7dDemo_c[4];
@@ -316,14 +275,117 @@ SECTION_SDATA2 static f32 lit_4265 = 15.0f;
SECTION_SDATA2 static f64 lit_4267 = 4503601774854144.0 /* cast s32 to float */;
/* 80043A14-80043D60 03E354 034C+00 1/1 0/0 0/0 .text dEvDt_Next_Stage__Fii */
+// bunch of issues with sclsInfo section. regalloc for the rest
+#ifdef NONMATCHING
+static int dEvDt_Next_Stage(int index, int wipe_type) {
+ char* stage;
+ s16 point;
+ s8 roomNo;
+ s8 layer;
+ u32 mode = 0; // uvar8 - retail
+ s8 wipe = wipe_type; // ivar10
+ int noVisit = true;
+ int wipe_time = 0; // bvar9
+ f32 speed = FLOAT_LABEL(lit_4264); // dvar12
+ bool setHour = false; // bvar2
+ f32 hour = speed; // set to 0.0f dvar13
+
+ int* p_id = dComIfGp_evmng_getMyIntegerP(index, "ID");
+ if (p_id != NULL) {
+ int id = *p_id;
+ s8 room_no = dComIfGp_roomControl_getStayNo();
+ stage_scls_info_dummy_class* info;
+ if (room_no == -1) {
+ info = dComIfGp_getStageSclsInfo();
+ } else {
+ info = dComIfGp_roomControl_getStatusRoomDt(room_no)->mRoomDt.getSclsInfo();
+ }
+
+ if (info != NULL && id >= 0 && id < info->numEntries) {
+ stage = info->mEntries[id].mStage;
+ point = info->mEntries[id].mStart;
+ roomNo = info->mEntries[id].mRoom;
+ layer = dStage_sclsInfo_getSceneLayer(&info->mEntries[id]);
+ wipe = dStage_sclsInfo_getWipe(&info->mEntries[id]);
+ wipe_time = dStage_sclsInfo_getWipeTime(&info->mEntries[id]);
+
+ if (wipe == 15) {
+ wipe = 0;
+ }
+
+ s8 timeH = dStage_sclsInfo_getTimeH(&info->mEntries[id]);
+ if (timeH >= 0 && timeH <= 23) {
+ setHour = true;
+ hour = timeH;
+ }
+ }
+ }
+
+ char* stageP = dComIfGp_evmng_getMyStringP(index, "Stage");
+ if (stageP != NULL) {
+ stage = stageP;
+ }
+
+ int* pointP = dComIfGp_evmng_getMyIntegerP(index, "StartCode");
+ if (pointP != NULL) {
+ point = *pointP;
+ }
+
+ int* roomP = dComIfGp_evmng_getMyIntegerP(index, "RoomNo");
+ if (roomP != NULL) {
+ roomNo = *roomP;
+ }
+
+ int* layerP = dComIfGp_evmng_getMyIntegerP(index, "Layer");
+ if (layerP != NULL) {
+ layer = *layerP;
+ }
+
+ int* wipeP = dComIfGp_evmng_getMyIntegerP(index, "Wipe");
+ if (wipeP != NULL) {
+ wipe = *wipeP;
+ }
+
+ int* modeP = dComIfGp_evmng_getMyIntegerP(index, "Mode");
+ if (modeP != NULL) {
+ mode = *modeP;
+ }
+
+ f32* speedP = dComIfGp_evmng_getMyFloatP(index, "Speed");
+ if (speedP != NULL) {
+ speed = *speedP;
+ }
+
+ f32* hourP = dComIfGp_evmng_getMyFloatP(index, "Hour");
+ if (hourP != NULL) {
+ hour = *hourP;
+ setHour = true;
+ }
+
+ int* noVisitP = dComIfGp_evmng_getMyIntegerP(index, "NoVisit");
+ if (noVisitP != NULL) {
+ noVisit = false;
+ }
+
+ if (stage != NULL && point != -1) {
+ if (setHour) {
+ dKy_set_nexttime(15.0f * hour);
+ }
+ dComIfGp_setNextStage(stage, point, roomNo, layer, speed, mode, 1, wipe, 0, noVisit,
+ wipe_time);
+ }
+ return 1;
+}
+#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-static asm void dEvDt_Next_Stage(int param_0, int param_1) {
+static asm int dEvDt_Next_Stage(int param_0, int param_1) {
nofralloc
#include "asm/d/event/d_event_data/dEvDt_Next_Stage__Fii.s"
}
#pragma pop
+#endif
/* 80043D60-80043DC8 03E6A0 0068+00 3/3 0/0 0/0 .text flagCheck__11dEvDtFlag_cFi */
#pragma push
@@ -447,25 +509,28 @@ asm void dEvDtStaff_c::specialProc() {
}
#pragma pop
+inline dEvent_manager_c& dComIfGp_getEventManager() {
+ return g_dComIfG_gameInfo.play.getEvtManager();
+}
+
/* 80044134-80044170 03EA74 003C+00 0/0 1/1 0/0 .text init__12dEvDtStaff_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void dEvDtStaff_c::init() {
- nofralloc
-#include "asm/d/event/d_event_data/init__12dEvDtStaff_cFv.s"
+void dEvDtStaff_c::init() {
+ mCurrentCut = mStartCut;
+ field_0x40 = true;
+ field_0x41 = false;
+ field_0x3c = -1;
+ if (mType == TYPE_CAMERA) {
+ dComIfGp_getEventManager().setCameraPlay(1);
+ }
}
-#pragma pop
/* 80044170-80044190 03EAB0 0020+00 1/1 0/0 0/0 .text advanceCut__12dEvDtStaff_cFi */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void dEvDtStaff_c::advanceCut(int param_0) {
- nofralloc
-#include "asm/d/event/d_event_data/advanceCut__12dEvDtStaff_cFi.s"
+void dEvDtStaff_c::advanceCut(int cut) {
+ mCurrentCut = cut;
+ field_0x40 = true;
+ field_0x41 = false;
+ field_0x3c = -1;
}
-#pragma pop
/* ############################################################################################## */
/* 80379DD0-80379DD0 006430 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
@@ -676,34 +741,66 @@ asm void dEvDtCut_c::startCheck() {
#pragma pop
/* 80046138-8004616C 040A78 0034+00 1/1 7/7 0/0 .text init__11dEvDtBase_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void dEvDtBase_c::init() {
- nofralloc
-#include "asm/d/event/d_event_data/init__11dEvDtBase_cFv.s"
+int dEvDtBase_c::init() {
+ mHeaderP = NULL;
+ mEventP = NULL;
+ mStaffP = NULL;
+ mCutP = NULL;
+ mDataP = NULL;
+ mFDataP = NULL;
+ mIDataP = NULL;
+ mSDataP = NULL;
+ mRoomNo = -1;
+ return 0;
}
-#pragma pop
/* 8004616C-8004628C 040AAC 0120+00 0/0 6/6 0/0 .text init__11dEvDtBase_cFPci */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void dEvDtBase_c::init(char* param_0, int param_1) {
- nofralloc
-#include "asm/d/event/d_event_data/init__11dEvDtBase_cFPci.s"
+int dEvDtBase_c::init(char* p_data, int roomNo) {
+ init();
+ if (p_data == NULL) {
+ return 0;
+ } else {
+ setHeaderP((event_binary_data_header*)p_data);
+
+ if (getEventNum() > 0) {
+ setEventP((dEvDtEvent_c*)(p_data + getEventTop()));
+ }
+
+ if (getStaffNum() > 0) {
+ setStaffP((dEvDtStaff_c*)(p_data + getStaffTop()));
+ }
+
+ if (getCutNum() > 0) {
+ setCutP((dEvDtCut_c*)(p_data + getCutTop()));
+ }
+
+ if (getDataNum() > 0) {
+ setDataP((dEvDtData_c*)(p_data + getDataTop()));
+ }
+
+ if (getFDataNum() > 0) {
+ setFDataP((f32*)(p_data + getFDataTop()));
+ }
+
+ if (getIDataNum() > 0) {
+ setIDataP((int*)(p_data + getIDataTop()));
+ }
+
+ if (getSDataNum() > 0) {
+ setSDataP((char*)(p_data + getSDataTop()));
+ }
+
+ mRoomNo = roomNo;
+ return getEventNum();
+ }
}
-#pragma pop
/* 8004628C-800462FC 040BCC 0070+00 0/0 1/1 0/0 .text advanceCut__11dEvDtBase_cFP12dEvDtEvent_c */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void dEvDtBase_c::advanceCut(dEvDtEvent_c* param_0) {
- nofralloc
-#include "asm/d/event/d_event_data/advanceCut__11dEvDtBase_cFP12dEvDtEvent_c.s"
+void dEvDtBase_c::advanceCut(dEvDtEvent_c* p_event) {
+ for (int i = 0; i < p_event->getNStaff(); i++) {
+ advanceCutLocal(mStaffP + p_event->getStaff(i));
+ }
}
-#pragma pop
/* 800462FC-800463DC 040C3C 00E0+00 1/1 0/0 0/0 .text
* advanceCutLocal__11dEvDtBase_cFP12dEvDtStaff_c */
diff --git a/src/d/event/d_event_manager.cpp b/src/d/event/d_event_manager.cpp
index abcc88e10d..e8e0db6958 100644
--- a/src/d/event/d_event_manager.cpp
+++ b/src/d/event/d_event_manager.cpp
@@ -199,21 +199,11 @@ SECTION_DEAD static char const* const stringBase_8037A071 = "(!BAD DATA!)";
#pragma pop
/* 803A8270-803A82A8 -00001 0038+00 1/1 0/0 0/0 .data soecial_names$3966 */
-SECTION_DATA static void* soecial_names[14] = {
- (void*)&d_event_d_event_manager__stringBase0,
- (void*)(((char*)&d_event_d_event_manager__stringBase0) + 0x10),
- (void*)(((char*)&d_event_d_event_manager__stringBase0) + 0x1E),
- (void*)(((char*)&d_event_d_event_manager__stringBase0) + 0x2C),
- (void*)(((char*)&d_event_d_event_manager__stringBase0) + 0x3F),
- (void*)(((char*)&d_event_d_event_manager__stringBase0) + 0x50),
- (void*)(((char*)&d_event_d_event_manager__stringBase0) + 0x63),
- (void*)(((char*)&d_event_d_event_manager__stringBase0) + 0x6E),
- (void*)(((char*)&d_event_d_event_manager__stringBase0) + 0x7B),
- (void*)(((char*)&d_event_d_event_manager__stringBase0) + 0x89),
- (void*)(((char*)&d_event_d_event_manager__stringBase0) + 0x94),
- (void*)(((char*)&d_event_d_event_manager__stringBase0) + 0xA3),
- (void*)(((char*)&d_event_d_event_manager__stringBase0) + 0xB2),
- (void*)(((char*)&d_event_d_event_manager__stringBase0) + 0xC3),
+SECTION_DATA static char* soecial_names[14] = {
+ "NORMAL_COMEBACK", "DEFAULT_START", "SHUTTER_START", "SHUTTER_START_STOP",
+ "BS_SHUTTER_START", "BS_SHUTTER_START_B", "KNOB_START", "KNOB_START_B",
+ "FMASTER_START", "FALL_START", "CRAWLOUT_START", "BOSSWARP_START",
+ "PORTALWARP_START", "PORTALWARP_START_B",
};
/* 80046480-800465E8 040DC0 0168+00 1/1 0/0 0/0 .text getEventName__18dEvent_exception_cFv */
@@ -228,14 +218,23 @@ asm void dEvent_exception_c::getEventName() {
/* 800465E8-80046688 040F28 00A0+00 1/1 0/0 0/0 .text
* getSubstance__16dEvent_manager_cFP11dEvDtData_ci */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void dEvent_manager_c::getSubstance(dEvDtData_c* param_0, int param_1) {
- nofralloc
-#include "asm/d/event/d_event_manager/getSubstance__16dEvent_manager_cFP11dEvDtData_ci.s"
+void* dEvent_manager_c::getSubstance(dEvDtData_c* p_data, int type) {
+ if (p_data->getIndex() < 0 || p_data->getNumber() <= 0) {
+ return NULL;
+ } else {
+ switch (p_data->getType()) {
+ case dEvDtData_c::TYPE_FLOAT:
+ case dEvDtData_c::TYPE_VEC:
+ case 2:
+ return getBase().getFDataP(p_data->getIndex());
+ case dEvDtData_c::TYPE_INT:
+ return getBase().getIDataP(p_data->getIndex());
+ case dEvDtData_c::TYPE_STRING:
+ return getBase().getSDataP(p_data->getIndex());
+ }
+ return NULL;
+ }
}
-#pragma pop
dEvent_manager_c::dEvent_manager_c() {
mDataLoaded = false;
@@ -264,18 +263,16 @@ int dEvent_manager_c::create() {
field_0x1b4 = 0;
field_0x1aa = -1;
field_0x1b8 = 0;
- field_0x1b0 = -1;
+ mRoomNo = -1;
mDataLoaded = 0;
for (int i = 4; i <= 9; i++) {
mEventList[i].init();
}
- char* res = (char*)dComIfG_getStageRes(data_80379F50);
- mEventList[3].init(res, -1);
- mEventList[10].init();
- res = (char*)dComIfG_getObjectRes("Event", data_80379F50);
- mEventList[1].init(res, -1);
+ mEventList[3].init((char*)dComIfG_getStageRes(data_80379F50), -1);
+ mEventList[10].init();
+ mEventList[1].init((char*)dComIfG_getObjectRes("Event", data_80379F50), -1);
mEventList[2].init();
return 1;
}
@@ -305,6 +302,35 @@ asm void dEvent_manager_c::demoInit() {
#pragma pop
/* 80046904-800469EC 041244 00E8+00 0/0 1/1 0/0 .text roomInit__16dEvent_manager_cFi */
+// reversed reg alloc
+#ifdef NONMATCHING
+void dEvent_manager_c::roomInit(int roomNo) {
+ if (roomNo == -1) {
+ roomNo = dComIfGp_roomControl_getStayNo();
+ }
+ char arc_name[8];
+ strcpy(arc_name, dComIfG_getRoomArcName(roomNo));
+ char* data = (char*)dComIfG_getStageRes(arc_name, data_80379F50);
+
+ int tmp = -1;
+ for (int i = 4; i <= 9; i++) {
+ if (mEventList[i].getHeaderP() == NULL) {
+ tmp = i;
+ continue;
+ }
+
+ if (mEventList[i].roomNo() == roomNo) {
+ tmp = i;
+ break;
+ }
+ }
+
+ if (tmp != -1) {
+ mEventList[tmp].init(data, roomNo);
+ }
+ mRoomNo = roomNo;
+}
+#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
@@ -313,6 +339,7 @@ asm void dEvent_manager_c::roomInit(int param_0) {
#include "asm/d/event/d_event_manager/roomInit__16dEvent_manager_cFi.s"
}
#pragma pop
+#endif
void dEvent_manager_c::roomFinish(int param_0) {
for (int i = 4; i <= 9; i++) {
@@ -369,19 +396,31 @@ static int allOffObjectCallBack(fopAc_ac_c* pActor, void* param_1) {
/* 80046CB8-80046DA0 0415F8 00E8+00 1/1 0/0 0/0 .text
* startProc__16dEvent_manager_cFP12dEvDtEvent_c */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void dEvent_manager_c::startProc(dEvDtEvent_c* param_0) {
- nofralloc
-#include "asm/d/event/d_event_manager/startProc__16dEvent_manager_cFP12dEvDtEvent_c.s"
+void dEvent_manager_c::startProc(dEvDtEvent_c* p_evnt) {
+ for (int i = 0; i < p_evnt->getNStaff(); i++) {
+ dEvDtStaff_c* staff = getBase().getStaffP(p_evnt->getStaff(i));
+ if (staff->getType() == dEvDtStaff_c::TYPE_DEFAULT) {
+ fopAc_ac_c* ac = specialCast(staff->getName(), 1);
+ if (ac == NULL) {
+ ac = fopAcM_searchFromName4Event(staff->getName(), -1);
+ }
+ if (ac != NULL) {
+ fopAcM_OnStatus(ac, 0x8000);
+ }
+ }
+ if (staff->getType() == dEvDtStaff_c::TYPE_ALL) {
+ issueStaff(staff->getName());
+ }
+ staff->init();
+ }
+ p_evnt->mEventState = 1;
+ mFlags.init();
}
-#pragma pop
/* 80046DA0-80046DAC 0416E0 000C+00 2/2 0/0 0/0 .text
* closeProc__16dEvent_manager_cFP12dEvDtEvent_c */
-void dEvent_manager_c::closeProc(dEvDtEvent_c* param_0) {
- param_0->field_0xa4 = 2;
+void dEvent_manager_c::closeProc(dEvDtEvent_c* p_evnt) {
+ p_evnt->mEventState = 2;
}
/* ############################################################################################## */
@@ -452,23 +491,21 @@ asm void dEvent_manager_c::Experts() {
/* 80047454-800474BC 041D94 0068+00 1/1 0/0 0/0 .text getEventData__16dEvent_manager_cFsi
*/
#ifdef NONMATCHING
-dEvDtEvent_c* dEvent_manager_c::getEventData(s16 param_0, int param_1) {
- dEvDtBase_c* baseptr;
- dEvDtEvent_c* eventptr;
-
- if (param_1 < 1 || param_1 > 12) {
- eventptr = NULL;
+dEvDtEvent_c* dEvent_manager_c::getEventData(s16 param_0, int idx) {
+ if (idx <= 0 || idx > 11) {
+ return NULL;
} else {
- baseptr = &mEventList[param_1];
- if (baseptr == NULL || baseptr->getHeaderP() == NULL) {
- eventptr = NULL;
- } else if (param_0 < 0 || baseptr->getEventNum() <= param_0) {
- eventptr = NULL;
+ dEvDtBase_c* base = &mEventList[idx];
+
+ if (base == NULL || base->getHeaderP() == NULL) {
+ return NULL;
+ } else if (param_0 < 0 || param_0 >= base->getEventNum()) {
+ return NULL;
} else {
- eventptr = baseptr->getEventP(param_1);
+ return base->getEventP(idx);
}
}
- return eventptr;
+ return NULL;
}
#else
#pragma push
@@ -616,7 +653,7 @@ SECTION_DEAD static char const* const stringBase_8037A0C5 = "Link";
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void dEvent_manager_c::getMyStaffId(char const* param_0, fopAc_ac_c* param_1, int param_2) {
+asm s32 dEvent_manager_c::getMyStaffId(char const* param_0, fopAc_ac_c* param_1, int param_2) {
nofralloc
#include "asm/d/event/d_event_manager/getMyStaffId__16dEvent_manager_cFPCcP10fopAc_ac_ci.s"
}
@@ -664,26 +701,60 @@ asm void dEvent_manager_c::getMyNowCutName(int param_0) {
}
#pragma pop
+inline dEvt_control_c& dComIfGp_getEvent() {
+ return g_dComIfG_gameInfo.play.getEvent();
+}
+
/* 80047FC8-800480EC 042908 0124+00 2/2 0/0 0/0 .text getMyDataP__16dEvent_manager_cFiPCci */
+// instruction in wrong place
+#ifdef NONMATCHING
+dEvDtData_c* dEvent_manager_c::getMyDataP(int index, char const* name, int type) {
+ if (dComIfGp_getEvent().getMode() == 0) {
+ return NULL;
+ } else if (index == -1) {
+ return NULL;
+ } else if (field_0x1aa == -1) {
+ return NULL;
+ } else {
+ dEvDtCut_c* cut;
+ if (type != 0) {
+ cut = getBase().getCutStaffStartCutP(index);
+ } else {
+ cut = getBase().getCutStaffCurrentCutP(index);
+ }
+
+ int top = cut->getDataTop();
+ while (top != -1) {
+ dEvDtData_c* data = getBase().getDataP(index);
+ if (!strcmp(name, data->getName())) {
+ return data;
+ }
+ top = data->getNext();
+ }
+
+ return NULL;
+ }
+}
+#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void dEvent_manager_c::getMyDataP(int param_0, char const* param_1, int param_2) {
+asm dEvDtData_c* dEvent_manager_c::getMyDataP(int param_0, char const* param_1, int param_2) {
nofralloc
#include "asm/d/event/d_event_manager/getMyDataP__16dEvent_manager_cFiPCci.s"
}
#pragma pop
+#endif
/* 800480EC-80048144 042A2C 0058+00 0/0 22/22 355/355 .text
* getMySubstanceP__16dEvent_manager_cFiPCci */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void dEvent_manager_c::getMySubstanceP(int param_0, char const* param_1, int param_2) {
- nofralloc
-#include "asm/d/event/d_event_manager/getMySubstanceP__16dEvent_manager_cFiPCci.s"
+void* dEvent_manager_c::getMySubstanceP(int index, char const* name, int type) {
+ dEvDtData_c* data = getMyDataP(index, name, 0);
+ if (data == NULL) {
+ return NULL;
+ }
+ return getSubstance(data, type);
}
-#pragma pop
/* 80048144-8004817C 042A84 0038+00 0/0 12/12 0/0 .text getMySubstanceNum__16dEvent_manager_cFiPCc
*/
@@ -821,7 +892,7 @@ SECTION_DEAD static char const* const stringBase_8037A0DE = "SHUTTER_DOOR";
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void dEvent_manager_c::specialCast(char const* param_0, int param_1) {
+asm fopAc_ac_c* dEvent_manager_c::specialCast(char const* param_0, int param_1) {
nofralloc
#include "asm/d/event/d_event_manager/specialCast__16dEvent_manager_cFPCci.s"
}
diff --git a/src/d/kankyo/d_kankyo.cpp b/src/d/kankyo/d_kankyo.cpp
index 4ef49f0584..ade576a67a 100644
--- a/src/d/kankyo/d_kankyo.cpp
+++ b/src/d/kankyo/d_kankyo.cpp
@@ -27,12 +27,6 @@ struct mDoGph_gInf_c {
static u8 m_bloom[20];
};
-struct dPa_control_c {
- /* 8004CA90 */ void set(u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*, cXyz const*,
- u8, dPa_levelEcallBack*, s8, _GXColor const*, _GXColor const*,
- cXyz const*, f32);
-};
-
struct color_RGB_class {};
struct Z2SeMgr {
@@ -3159,7 +3153,7 @@ static asm void dKy_Indoor_check() {
#pragma pop
/* 801AC2E0-801AC2E8 1A6C20 0008+00 0/0 1/1 0/0 .text dKy_withwarp_capture_check__Fv */
-bool dKy_withwarp_capture_check() {
+BOOL dKy_withwarp_capture_check() {
return false;
}
diff --git a/src/d/menu/d_menu_window.cpp b/src/d/menu/d_menu_window.cpp
index ea1be62740..9d509772ea 100644
--- a/src/d/menu/d_menu_window.cpp
+++ b/src/d/menu/d_menu_window.cpp
@@ -11,8 +11,6 @@
// Types:
//
-struct msg_class {};
-
struct mDoGph_gInf_c {
static u8 mFader[4];
static u8 mFrameBufferTimg[4];
@@ -122,19 +120,11 @@ struct dMenu_Collect2D_c {
/* 801B5FAC */ bool isOutCheck();
};
-struct dDlst_base_c {};
-
-struct dDlst_list_c {
- /* 80056794 */ void set(dDlst_base_c**&, dDlst_base_c**&, dDlst_base_c*);
-};
-
struct dDlst_MENU_CAPTURE_c {
/* 801FDFCC */ void draw();
/* 801FE2E8 */ ~dDlst_MENU_CAPTURE_c();
};
-struct JAISoundID {};
-
struct Z2SeMgr {
/* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8);
};
@@ -387,7 +377,6 @@ extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
extern "C" extern void* __vt__12dDlst_base_c[3];
extern "C" extern void* __vt__10CSTControl[4];
extern "C" u8 m_cpadInfo__8mDoCPd_c[256];
-extern "C" extern u8 g_dComIfG_gameInfo[122384];
extern "C" extern u8 g_mwHIO[304];
extern "C" extern u8 g_mwDHIO[520];
extern "C" extern u8 g_fmapHIO[1188];
diff --git a/src/d/meter/d_meter2.cpp b/src/d/meter/d_meter2.cpp
index b310d96b93..5af6b8a96e 100644
--- a/src/d/meter/d_meter2.cpp
+++ b/src/d/meter/d_meter2.cpp
@@ -6,49 +6,12 @@
#include "d/meter/d_meter2.h"
#include "dol2asm.h"
#include "dolphin/types.h"
+#include "f_op/f_op_msg_mng.h"
//
// Types:
//
-struct msg_class {};
-
-struct dSv_player_status_a_c {
- /* 80032A5C */ void getSelectItemIndex(int) const;
- /* 80032AA8 */ void getRupeeMax() const;
-};
-
-struct dSv_player_item_record_c {
- /* 80033F6C */ void setBombNum(u8, u8);
- /* 80033F7C */ void getBombNum(u8) const;
- /* 80034030 */ void getBottleNum(u8) const;
-};
-
-struct dSv_player_item_max_c {
- /* 800340F8 */ void getBombNum(u8) const;
-};
-
-struct dSv_player_item_c {
- /* 80032FB8 */ void setItem(int, u8);
- /* 80033030 */ void getItem(int, bool) const;
-};
-
-struct dSv_player_collect_c {
- /* 8003422C */ void onCollectCrystal(u8);
- /* 8003424C */ void isCollectCrystal(u8) const;
- /* 80034270 */ void onCollectMirror(u8);
- /* 80034290 */ void isCollectMirror(u8) const;
-};
-
-struct dSv_light_drop_c {
- /* 80034340 */ void getLightDropNum(u8) const;
- /* 8003439C */ void isLightDropGetFlag(u8) const;
-};
-
-struct dSv_event_c {
- /* 800349BC */ void isEventBit(u16) const;
-};
-
struct dScope_c {
/* 80193690 */ dScope_c(u8);
};
@@ -59,27 +22,11 @@ struct dMw_HIO_c {
/* 801F9E24 */ bool getPachinkoFlag();
};
-struct dMsgObject_c {
- /* 802371E4 */ void isPlaceMessage();
- /* 8023822C */ void getStatus();
-};
-
struct dMeterString_c {
/* 8020ED60 */ dMeterString_c(int);
/* 8020F5A4 */ void createString(int);
};
-struct J2DScreen {};
-
-struct dMeterMap_c {
- /* 8020D650 */ void isEnableDispMapAndMapDispSizeTypeNo();
- /* 8020D75C */ void getMapDispEdgeTop();
- /* 8020D948 */ dMeterMap_c(J2DScreen*);
- /* 8020DCE4 */ void _move(u32);
- /* 8020DF1C */ void _draw();
- /* 8020E754 */ void meter_map_move(u32);
-};
-
struct dMeterHakusha_c {
/* 8020C320 */ dMeterHakusha_c(void*);
};
@@ -98,143 +45,10 @@ struct dMeterButton_c {
/* 80209CEC */ void hideAll();
};
-struct dMeter2_c {
- /* 8021EA14 */ void _create();
- /* 8021F128 */ void _execute();
- /* 8021F370 */ void _draw();
- /* 8021F49C */ void _delete();
- /* 8021F6EC */ void emphasisButtonDelete();
- /* 8021F780 */ void setLifeZero();
- /* 8021F7B0 */ void checkStatus();
- /* 8021FD60 */ void moveLife();
- /* 80220180 */ void moveKantera();
- /* 8022051C */ void moveOxygen();
- /* 80220888 */ void moveLightDrop();
- /* 80220C30 */ void moveRupee();
- /* 802210AC */ void moveKey();
- /* 80221244 */ void moveButtonA();
- /* 802217F4 */ void moveButtonB();
- /* 80221EC8 */ void moveButtonR();
- /* 80222000 */ void moveButtonZ();
- /* 802222A0 */ void moveButton3D();
- /* 80222364 */ void moveButtonC();
- /* 80222494 */ void moveButtonS();
- /* 80222518 */ void moveButtonXY();
- /* 80222E88 */ void moveButtonCross();
- /* 802230F8 */ void moveTouchSubMenu();
- /* 802230FC */ void moveSubContents();
- /* 802231C8 */ void move2DContents();
- /* 802237D4 */ void checkSubContents();
- /* 80223BC4 */ void check2DContents();
- /* 80223E00 */ void moveBombNum();
- /* 80224258 */ void moveBottleNum();
- /* 80224354 */ void moveArrowNum();
- /* 80224680 */ void movePachinkoNum();
- /* 802248E4 */ void alphaAnimeLife();
- /* 80224A04 */ void alphaAnimeKantera();
- /* 80224BAC */ void alphaAnimeOxygen();
- /* 80224D6C */ void alphaAnimeLightDrop();
- /* 80224DC0 */ void alphaAnimeRupee();
- /* 80224F70 */ void alphaAnimeKey();
- /* 802250F4 */ void alphaAnimeButton();
- /* 802254C0 */ void alphaAnimeButtonCross();
- /* 802256DC */ void isShowLightDrop();
- /* 802258A0 */ void killSubContents(u8);
- /* 80225960 */ void isKeyVisible();
- /* 802259F8 */ void isArrowEquip();
- /* 80225A64 */ void isPachinkoEquip();
-};
-
-struct dMeter2Info_c {
- /* 8021C1DC */ void isFloatingMessageVisible();
- /* 8021C950 */ void isDirectUseItem(int);
- /* 8021DCE0 */ void decHotSpringTimer();
-};
-
-struct JKRExpHeap {};
-
-struct dMeter2Draw_c {
- /* 8020FAB4 */ dMeter2Draw_c(JKRExpHeap*);
- /* 8021135C */ void exec(u32);
- /* 802149F4 */ void drawLife(s16, s16, f32, f32);
- /* 80214C20 */ void setAlphaLifeChange(bool);
- /* 80214DF4 */ void setAlphaLifeAnimeMin();
- /* 80214E54 */ void setAlphaLifeAnimeMax();
- /* 802154A8 */ void drawKantera(s32, s32, f32, f32);
- /* 802155B8 */ void setAlphaKanteraChange(bool);
- /* 802156E0 */ void setAlphaKanteraAnimeMin();
- /* 8021575C */ void setAlphaKanteraAnimeMax();
- /* 802157E0 */ void drawOxygen(s32, s32, f32, f32);
- /* 802158F0 */ void setAlphaOxygenChange(bool);
- /* 80215A18 */ void setAlphaOxygenAnimeMin();
- /* 80215A94 */ void setAlphaOxygenAnimeMax();
- /* 80215B18 */ void drawLightDrop(u8, u8, f32, f32, f32, f32, u8);
- /* 80215DA4 */ void setAlphaLightDropChange(bool);
- /* 80215DA8 */ void getNowLightDropRateCalc();
- /* 80215E40 */ void setAlphaLightDropAnimeMin();
- /* 80215F88 */ void setAlphaLightDropAnimeMax();
- /* 8021632C */ void drawRupee(s16);
- /* 80216684 */ void setAlphaRupeeChange(bool);
- /* 802168D0 */ void setAlphaRupeeAnimeMin();
- /* 80216990 */ void setAlphaRupeeAnimeMax();
- /* 80216A40 */ void drawKey(s16);
- /* 80216B28 */ void setAlphaKeyChange(bool);
- /* 80216CA8 */ void setAlphaKeyAnimeMin();
- /* 80216D2C */ void setAlphaKeyAnimeMax();
- /* 80216DAC */ void drawButtonA(u8, f32, f32, f32, f32, f32, bool, bool);
- /* 802170E4 */ void drawButtonB(u8, bool, f32, f32, f32, f32, f32, bool);
- /* 8021764C */ void drawButtonR(u8, u8, bool, bool);
- /* 802176EC */ void drawButtonZ(u8);
- /* 80217904 */ void drawButton3D(u8);
- /* 80217954 */ void drawButtonC(u8, bool);
- /* 802179C0 */ void drawButtonS(u8);
- /* 80217A10 */ void drawButtonBin(u8);
- /* 80217AB4 */ void drawButtonXY(int, u8, u8, bool, bool);
- /* 80218238 */ void getButtonCrossParentInitTransY();
- /* 80218254 */ void drawButtonCross(f32, f32);
- /* 80218338 */ void setAlphaButtonCrossAnimeMin();
- /* 802183A8 */ void setAlphaButtonCrossAnimeMax();
- /* 80218788 */ void setAlphaButtonChange(bool);
- /* 8021901C */ void setAlphaButtonAnimeMin();
- /* 802190A8 */ void setAlphaButtonAnimeMax();
- /* 80219174 */ void setAlphaButtonAAnimeMin();
- /* 80219258 */ void setAlphaButtonAAnimeMax();
- /* 80219324 */ void setAlphaButtonBAnimeMin();
- /* 80219474 */ void setAlphaButtonBAnimeMax();
- /* 802195A4 */ void setButtonIconAAlpha(u8, u32, bool);
- /* 80219788 */ void setButtonIconBAlpha(u8, u32, bool);
- /* 80219A84 */ void setButtonIconMidonaAlpha(u32);
- /* 80219E98 */ void setButtonIconAlpha(int, u8, u32, bool);
- /* 8021A2F4 */ void getActionString(u8, u8, u8*);
- /* 8021AB84 */ void setItemNum(u8, u8, u8);
- /* 8021AEC8 */ void drawItemNum(u8, f32);
- /* 8021AF78 */ void drawKanteraMeter(u8, f32);
- /* 8021B0C8 */ void isButtonVisible();
- /* 8021BC24 */ void getCameraSubject();
- /* 8021BC54 */ void getItemSubject();
- /* 8021BCAC */ void getPlayerSubject();
- /* 8021BCC0 */ void isBButtonShow(bool);
- /* 8021BDD0 */ void getButtonTimer();
-};
-
-struct dDlst_base_c {};
-
-struct dDlst_list_c {
- /* 80056794 */ void set(dDlst_base_c**&, dDlst_base_c**&, dDlst_base_c*);
-};
-
struct dDemo_c {
static u8 m_mode[4];
};
-struct dComIfG_play_c {
- /* 8002B36C */ void setItemBombNumCount(u8, s16);
- /* 8002B384 */ void getItemBombNumCount(u8);
- /* 8002B394 */ void clearItemBombNumCount(u8);
- /* 8002C97C */ void getLayerNo(int);
- /* 8002CBBC */ void getTimerMode();
-};
-
struct dCamera_c {
/* 80174EA4 */ bool CalcSubjectAngle(s16*, s16*);
};
@@ -243,10 +57,6 @@ struct Z2StatusMgr {
/* 802B5F70 */ void heartGaugeOn();
};
-struct JAISoundID {};
-
-struct Vec {};
-
struct Z2SeMgr {
/* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8);
/* 802AC50C */ void seStartLevel(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8);
@@ -256,11 +66,6 @@ struct Z2AudioMgr {
static u8 mAudioMgrPtr[4 + 4 /* padding */];
};
-struct JKRHeap {
- /* 802CE5CC */ void freeAll();
- /* 802CE784 */ void getTotalFreeSize();
-};
-
//
// Forward References:
//
@@ -471,16 +276,13 @@ extern "C" void _restgpr_23();
extern "C" void _restgpr_25();
extern "C" void _restgpr_27();
extern "C" void _restgpr_29();
-extern "C" void strcmp();
extern "C" extern void* g_fopMsg_Method[5 + 1 /* padding */];
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
-extern "C" extern u8 g_dComIfG_gameInfo[122384];
extern "C" extern u8 g_mwHIO[304];
extern "C" extern u8 g_drawHIO[3880];
extern "C" extern u8 g_ringHIO[344];
extern "C" extern u8 g_fmapHIO[1188];
extern "C" extern u8 g_cursorHIO[68 + 4 /* padding */];
-extern "C" extern u8 g_meter2_info[248];
extern "C" u8 m_mode__7dDemo_c[4];
extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */];
diff --git a/src/d/meter/d_meter2_draw.cpp b/src/d/meter/d_meter2_draw.cpp
index 7568bf17b9..4c6cfff35b 100644
--- a/src/d/meter/d_meter2_draw.cpp
+++ b/src/d/meter/d_meter2_draw.cpp
@@ -29,22 +29,6 @@ struct dMsgObject_c {
/* 8023822C */ void getStatus();
};
-struct ResTIMG {};
-
-struct ResTLUT {};
-
-struct JGeometry {
- template <typename A1>
- struct TBox2 {};
- /* TBox2<f32> */
- struct TBox2__template0 {};
-};
-
-struct J2DPicture {
- /* 802FC708 */ J2DPicture(ResTIMG const*);
- /* 802FC800 */ J2DPicture(u64, JGeometry::TBox2<f32> const&, ResTIMG const*, ResTLUT const*);
-};
-
struct JMSMesgEntry_c {};
struct dMeter2Info_c {
@@ -56,157 +40,6 @@ struct dMeter2Info_c {
J2DPicture*, void*, J2DPicture*, int);
};
-struct JUtility {
- struct TColor {};
-};
-
-struct JKRExpHeap {};
-
-struct J2DGrafContext {};
-
-struct JKRArchive {
- /* 802D5B38 */ void getGlbResource(u32, char const*, JKRArchive*);
-};
-
-struct J2DScreen {
- /* 802F8498 */ J2DScreen();
- /* 802F8648 */ void setPriority(char const*, u32, JKRArchive*);
- /* 802F8ED4 */ void draw(f32, f32, J2DGrafContext const*);
- /* 802F9690 */ void animation();
-};
-
-struct CPaneMgrAlpha {
- /* 802553FC */ CPaneMgrAlpha(J2DScreen*, u64, u8, JKRExpHeap*);
- /* 802555C8 */ void show();
- /* 80255608 */ void hide();
- /* 8025564C */ void isVisible();
- /* 802557D0 */ void setAlphaRate(f32);
- /* 80255828 */ void getAlphaRate();
-};
-
-struct J2DBasePosition {};
-
-struct J2DRotateAxis {};
-
-struct J2DPane {
- /* 802F666C */ void appendChild(J2DPane*);
- /* 802F71DC */ void rotate(f32, f32, J2DRotateAxis, f32);
- /* 802F76F8 */ void setBasePosition(J2DBasePosition);
- /* 802F79A8 */ void getGlbVtx(u8) const;
- /* 802F7FCC */ void animationTransform();
-};
-
-struct CPaneMgr {
- /* 80253984 */ CPaneMgr(J2DScreen*, u64, u8, JKRExpHeap*);
- /* 80254458 */ void setBlackWhite(JUtility::TColor, JUtility::TColor);
- /* 802545B0 */ void paneTrans(f32, f32);
- /* 80254EBC */ void getGlobalVtxCenter(J2DPane*, bool, s16);
-};
-
-struct J2DAnmColor {};
-
-struct dMeter2Draw_c {
- /* 8020FAB4 */ dMeter2Draw_c(JKRExpHeap*);
- /* 802102F8 */ ~dMeter2Draw_c();
- /* 80210FB0 */ void init();
- /* 8021135C */ void exec(u32);
- /* 8021151C */ void draw();
- /* 80211BEC */ void initLife();
- /* 80211E64 */ void initMagic();
- /* 80212190 */ void initLightDrop();
- /* 80212404 */ void initRupeeKey();
- /* 802126E4 */ void initButton();
- /* 8021350C */ void initButtonCross();
- /* 80213CEC */ void playPikariBckAnimation(f32);
- /* 80213D6C */ void setPikariBpkAnimation(J2DAnmColor*);
- /* 80213E3C */ void playPikariBpkAnimation(f32);
- /* 80213E94 */ void playOxygenBpkAnimation(J2DAnmColor*);
- /* 802140DC */ void drawPikari(f32, f32, f32*, f32, JUtility::TColor, JUtility::TColor,
- JUtility::TColor, JUtility::TColor, f32, u8);
- /* 80213FF0 */ void drawPikari(CPaneMgr*, f32*, f32, JUtility::TColor, JUtility::TColor,
- JUtility::TColor, JUtility::TColor, f32, u8);
- /* 8021462C */ void drawPikariHakusha(f32, f32, f32, f32, JUtility::TColor, JUtility::TColor,
- JUtility::TColor, JUtility::TColor);
- /* 802147CC */ void changeTextureLife(int, bool, u8);
- /* 802149F4 */ void drawLife(s16, s16, f32, f32);
- /* 80214C20 */ void setAlphaLifeChange(bool);
- /* 80214DF4 */ void setAlphaLifeAnimeMin();
- /* 80214E54 */ void setAlphaLifeAnimeMax();
- /* 80214EB4 */ void drawKanteraScreen(u8);
- /* 80215290 */ void drawMagic(s16, s16, f32, f32);
- /* 80215380 */ void setAlphaMagicChange(bool);
- /* 802154A8 */ void drawKantera(s32, s32, f32, f32);
- /* 802155B8 */ void setAlphaKanteraChange(bool);
- /* 802156E0 */ void setAlphaKanteraAnimeMin();
- /* 8021575C */ void setAlphaKanteraAnimeMax();
- /* 802157E0 */ void drawOxygen(s32, s32, f32, f32);
- /* 802158F0 */ void setAlphaOxygenChange(bool);
- /* 80215A18 */ void setAlphaOxygenAnimeMin();
- /* 80215A94 */ void setAlphaOxygenAnimeMax();
- /* 80215B18 */ void drawLightDrop(u8, u8, f32, f32, f32, f32, u8);
- /* 80215DA4 */ void setAlphaLightDropChange(bool);
- /* 80215DA8 */ void getNowLightDropRateCalc();
- /* 80215E40 */ void setAlphaLightDropAnimeMin();
- /* 80215F88 */ void setAlphaLightDropAnimeMax();
- /* 8021632C */ void drawRupee(s16);
- /* 80216684 */ void setAlphaRupeeChange(bool);
- /* 802168D0 */ void setAlphaRupeeAnimeMin();
- /* 80216990 */ void setAlphaRupeeAnimeMax();
- /* 80216A40 */ void drawKey(s16);
- /* 80216B28 */ void setAlphaKeyChange(bool);
- /* 80216CA8 */ void setAlphaKeyAnimeMin();
- /* 80216D2C */ void setAlphaKeyAnimeMax();
- /* 80216DAC */ void drawButtonA(u8, f32, f32, f32, f32, f32, bool, bool);
- /* 802170E4 */ void drawButtonB(u8, bool, f32, f32, f32, f32, f32, bool);
- /* 8021764C */ void drawButtonR(u8, u8, bool, bool);
- /* 802176EC */ void drawButtonZ(u8);
- /* 80217904 */ void drawButton3D(u8);
- /* 80217954 */ void drawButtonC(u8, bool);
- /* 802179C0 */ void drawButtonS(u8);
- /* 80217A10 */ void drawButtonBin(u8);
- /* 80217AB4 */ void drawButtonXY(int, u8, u8, bool, bool);
- /* 80218238 */ void getButtonCrossParentInitTransY();
- /* 80218254 */ void drawButtonCross(f32, f32);
- /* 80218338 */ void setAlphaButtonCrossAnimeMin();
- /* 802183A8 */ void setAlphaButtonCrossAnimeMax();
- /* 80218448 */ void setAlphaButtonCrossItemAnimeMin();
- /* 80218524 */ void setAlphaButtonCrossItemAnimeMax();
- /* 802185E8 */ void setAlphaButtonCrossMapAnimeMin();
- /* 802186C4 */ void setAlphaButtonCrossMapAnimeMax();
- /* 80218788 */ void setAlphaButtonChange(bool);
- /* 8021901C */ void setAlphaButtonAnimeMin();
- /* 802190A8 */ void setAlphaButtonAnimeMax();
- /* 80219174 */ void setAlphaButtonAAnimeMin();
- /* 80219258 */ void setAlphaButtonAAnimeMax();
- /* 80219324 */ void setAlphaButtonBAnimeMin();
- /* 80219474 */ void setAlphaButtonBAnimeMax();
- /* 802195A4 */ void setButtonIconAAlpha(u8, u32, bool);
- /* 80219788 */ void setButtonIconBAlpha(u8, u32, bool);
- /* 80219A84 */ void setButtonIconMidonaAlpha(u32);
- /* 80219E98 */ void setButtonIconAlpha(int, u8, u32, bool);
- /* 8021A29C */ void getNumberTexture(int);
- /* 8021A2F4 */ void getActionString(u8, u8, u8*);
- /* 8021A468 */ void changeTextureItemB(u8);
- /* 8021A71C */ void changeTextureItemXY(int, u8);
- /* 8021A9C8 */ void setAlphaAnimeMin(CPaneMgrAlpha*, s16);
- /* 8021AAA4 */ void setAlphaAnimeMax(CPaneMgrAlpha*, s16);
- /* 8021AB84 */ void setItemNum(u8, u8, u8);
- /* 8021AEC8 */ void drawItemNum(u8, f32);
- /* 8021AF78 */ void drawKanteraMeter(u8, f32);
- /* 8021B0C8 */ void isButtonVisible();
- /* 8021B104 */ void setItemParamX(u8);
- /* 8021B364 */ void setItemParamY(u8);
- /* 8021B5B0 */ void setItemParamZ(u8);
- /* 8021B810 */ void setItemParamB(u8);
- /* 8021BB6C */ void getFishingType();
- /* 8021BBB4 */ void getCanoeFishing();
- /* 8021BC24 */ void getCameraSubject();
- /* 8021BC54 */ void getItemSubject();
- /* 8021BCAC */ void getPlayerSubject();
- /* 8021BCC0 */ void isBButtonShow(bool);
- /* 8021BDD0 */ void getButtonTimer();
-};
-
struct dKantera_icon_c {
/* 801AE938 */ dKantera_icon_c();
/* 801AEB7C */ void setAlphaRate(f32);
@@ -221,8 +54,6 @@ struct dItem_data {
struct JAISoundID {};
-struct Vec {};
-
struct Z2SeMgr {
/* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8);
/* 802AC50C */ void seStartLevel(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8);
@@ -232,20 +63,6 @@ struct Z2AudioMgr {
static u8 mAudioMgrPtr[4 + 4 /* padding */];
};
-struct JKRHeap {
- /* 802CE4D4 */ void alloc(u32, int);
- /* 802CE548 */ void free(void*);
-};
-
-struct JKRFileLoader {
- /* 802D4270 */ void getGlbResource(char const*, JKRFileLoader*);
-};
-
-struct J2DTextBox {
- /* 80300658 */ void getStringPtr() const;
- /* 8030074C */ void setString(s16, char const*, ...);
-};
-
struct J2DAnmLoaderDataBase {
/* 80308A6C */ void load(void const*);
};
diff --git a/src/d/meter/d_meter_map.cpp b/src/d/meter/d_meter_map.cpp
index ab01a90614..f19625aff0 100644
--- a/src/d/meter/d_meter_map.cpp
+++ b/src/d/meter/d_meter_map.cpp
@@ -36,38 +36,6 @@ struct dMsgObject_c {
/* 8023822C */ void getStatus();
};
-struct J2DScreen {};
-
-struct dMeterMap_c {
- /* 8020D49C */ void isEnableDispMap();
- /* 8020D528 */ void getMapDispSizeTypeNo();
- /* 8020D650 */ void isEnableDispMapAndMapDispSizeTypeNo();
- /* 8020D690 */ void getMapDispEdgeBottomY_Layout();
- /* 8020D698 */ void isEventRunCheck();
- /* 8020D72C */ void getMapDispEdgeLeftX_Layout();
- /* 8020D75C */ void getMapDispEdgeTop();
- /* 8020D7E4 */ bool getDispPosInside_OffsetX();
- /* 8020D7EC */ void getDispPosOutSide_OffsetX();
- /* 8020D874 */ void setDispPosInsideFlg_SE_On();
- /* 8020D8BC */ void setDispPosOutsideFlg_SE_On();
- /* 8020D8F8 */ void setMapAlpha(u8);
- /* 8020D900 */ void isMapOpenCheck();
- /* 8020D948 */ dMeterMap_c(J2DScreen*);
- /* 8020D990 */ ~dMeterMap_c();
- /* 8020D9EC */ void _create(J2DScreen*);
- /* 8020DC50 */ void _delete();
- /* 8020DCE4 */ void _move(u32);
- /* 8020DF1C */ void _draw();
- /* 8020DF68 */ void draw();
- /* 8020E070 */ void ctrlShowMap();
- /* 8020E45C */ void checkMoveStatus();
- /* 8020E4C8 */ void isShow(u32);
- /* 8020E620 */ void isFmapScreen();
- /* 8020E70C */ void isDmapScreen();
- /* 8020E754 */ void meter_map_move(u32);
- /* 8020E9CC */ void keyCheck();
-};
-
struct dMap_c {
/* 80029874 */ dMap_c(int, int, int, int);
/* 8002A32C */ void _move(f32, f32, int, f32);
@@ -86,8 +54,6 @@ struct dDlst_list_c {
struct JAISoundID {};
-struct Vec {};
-
struct Z2SeMgr {
/* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8);
};
@@ -96,8 +62,6 @@ struct Z2AudioMgr {
static u8 mAudioMgrPtr[4 + 4 /* padding */];
};
-struct ResTIMG {};
-
struct J2DPicture {
/* 802FC708 */ J2DPicture(ResTIMG const*);
};
@@ -333,7 +297,7 @@ void dMeterMap_c::setMapAlpha(u8 param_0) {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void dMeterMap_c::isMapOpenCheck() {
+asm bool dMeterMap_c::isMapOpenCheck() {
nofralloc
#include "asm/d/meter/d_meter_map/isMapOpenCheck__11dMeterMap_cFv.s"
}
diff --git a/src/d/particle/d_particle.cpp b/src/d/particle/d_particle.cpp
index c677279916..d968dc9a1d 100644
--- a/src/d/particle/d_particle.cpp
+++ b/src/d/particle/d_particle.cpp
@@ -50,13 +50,6 @@ struct dPa_wbPcallBack_c {
struct JPADrawInfo {};
-struct JPAResourceManager {
- /* 80273E10 */ JPAResourceManager(void const*, JKRHeap*);
- /* 80273EA8 */ void checkUserIndexDuplication(u16) const;
- /* 80273EEC */ void swapTexture(ResTIMG const*, char const*);
- /* 80273FCC */ void getResUserWork(u16) const;
-};
-
struct JGeometry {
template <typename A1>
struct TVec3 {};
@@ -75,17 +68,6 @@ struct JPAEmitterManager {
/* 8027E354 */ void clearResourceManager(u8);
};
-struct dPa_simpleEcallBack {
- /* 8004ADF4 */ dPa_simpleEcallBack();
- /* 8004AE1C */ void executeAfter(JPABaseEmitter*);
- /* 8004AF94 */ void draw(JPABaseEmitter*);
- /* 8004AF98 */ void create(JPAEmitterManager*, u16, u8);
- /* 8004B064 */ void createEmitter(JPAEmitterManager*);
- /* 8004B168 */ void set(cXyz const*, dKy_tevstr_c const*, u8, _GXColor const&, _GXColor const&,
- int, f32);
- /* 8004FC08 */ ~dPa_simpleEcallBack();
-};
-
struct dPa_simpleData_c {
/* 8004B024 */ ~dPa_simpleData_c();
/* 8004B060 */ dPa_simpleData_c();
@@ -205,82 +187,6 @@ struct dPa_followEcallBack {
struct cBgS_PolyInfo {};
-struct dPa_control_c {
- struct level_c {
- struct emitter_c {
- /* 8004B504 */ void onActive();
- /* 8004B544 */ void entry(u32, u16, JPABaseEmitter*, dPa_levelEcallBack*);
- /* 8004B5AC */ void cleanup();
- /* 8004FBFC */ emitter_c();
- };
-
- /* 8004B688 */ level_c();
- /* 8004B7A8 */ void execute();
- /* 8004B6F8 */ void execute(dPa_control_c::level_c::emitter_c*);
- /* 8004B808 */ void cleanup();
- /* 8004B874 */ void get(u32);
- /* 8004B8B4 */ void forceOnEventMove(u32);
- /* 8004B8E8 */ void allForceOnEventMove();
- /* 8004B918 */ void getEmitter(u32);
- /* 8004B94C */ void entry(u16, JPABaseEmitter*, dPa_levelEcallBack*);
- /* 8004BA40 */ void addTable(dPa_control_c::level_c::emitter_c*);
- /* 8004BA74 */ void cutTable(dPa_control_c::level_c::emitter_c*);
- };
-
- /* 8004BACC */ dPa_control_c();
- /* 8004BB70 */ void getRM_ID(u16);
- /* 8004BB78 */ void createCommon(void const*);
- /* 8004BCDC */ void createRoomScene();
- /* 8004BDFC */ void readScene(u8, mDoDvdThd_toMainRam_c**);
- /* 8004BEB0 */ void createScene(void const*);
- /* 8004BF3C */ void removeRoomScene(bool);
- /* 8004BFD4 */ void removeScene(bool);
- /* 8004C054 */ void cleanup();
- /* 8004C078 */ void calc3D();
- /* 8004C0EC */ void calc2D();
- /* 8004C134 */ void calcMenu();
- /* 8004C188 */ void draw(JPADrawInfo*, u8);
- /* 8004C218 */ void setHitMark(u16, fopAc_ac_c*, cXyz const*, csXyz const*, cXyz const*, u32);
- /* 8004C838 */ void setWaterRipple(u32*, cBgS_PolyInfo&, cXyz const*, f32, dKy_tevstr_c const*,
- cXyz const*, s8);
- /* 8004CA90 */ void set(u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*, cXyz const*,
- u8, dPa_levelEcallBack*, s8, _GXColor const*, _GXColor const*,
- cXyz const*, f32);
- /* 8004D4CC */ void set(u32, u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*,
- cXyz const*, u8, dPa_levelEcallBack*, s8, _GXColor const*,
- _GXColor const*, cXyz const*, f32);
- /* 8004CF90 */ void getPolyColor(cBgS_PolyInfo&, int, _GXColor*, _GXColor*, u8*, f32*);
- /* 8004D6A4 */ void setPoly(u32, u16, cBgS_PolyInfo&, cXyz const*, dKy_tevstr_c const*,
- csXyz const*, cXyz const*, int, dPa_levelEcallBack*, s8,
- cXyz const*);
- /* 8004D068 */ void setPoly(u16, cBgS_PolyInfo&, cXyz const*, dKy_tevstr_c const*, csXyz const*,
- cXyz const*, int, dPa_levelEcallBack*, s8, cXyz const*);
- /* 8004D128 */ void newSimple(u16, u8, u32*);
- /* 8004D1B8 */ void setSimple(u16, cXyz const*, dKy_tevstr_c const*, u8, _GXColor const&,
- _GXColor const&, int, f32);
- /* 8004D23C */ void getSimple(u16);
- /* 8004D770 */ void setStopContinue(u32);
- /* 8004D7C4 */ void setSimpleFoot(u32, u32*, cBgS_PolyInfo&, cXyz const*, dKy_tevstr_c const*,
- int, csXyz const*, cXyz const*, dPa_levelEcallBack*, s8,
- cXyz const*);
- /* 8004D988 */ void setCommonPoly(u32*, cBgS_PolyInfo*, cXyz const*, cXyz const*,
- dKy_tevstr_c const*, u32, u32, csXyz const*, cXyz const*, s8);
-
- static u8 mTsubo[64];
- static u8 mLifeBall[24];
- static u8 mWindViewMatrix[48];
- static u8 mEmitterMng[4];
- static u8 mWaterBubblePcallBack[4];
- static u8 mFsenthPcallBack[4];
- static u8 mLight8EcallBack[4];
- static u8 mLight8PcallBack[4];
- static u8 m_b_Light8EcallBack[4];
- static u8 m_b_Light8PcallBack[4];
- static u8 m_d_Light8EcallBack[4];
- static u8 m_d_Light8PcallBack[4];
- static u8 mParticleTracePCB[4 + 4 /* padding */];
-};
-
struct dJntCol_c {
/* 80036C44 */ void getHitmarkPosAndAngle(cXyz const*, csXyz const*, cXyz*, csXyz*, int) const;
};
@@ -1628,7 +1534,7 @@ asm void dPa_control_c::level_c::allForceOnEventMove() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void dPa_control_c::level_c::getEmitter(u32 param_0) {
+asm dPa_control_c::level_c::emitter_c* dPa_control_c::level_c::getEmitter(u32 param_0) {
nofralloc
#include "asm/d/particle/d_particle/getEmitter__Q213dPa_control_c7level_cFUl.s"
}
@@ -2144,11 +2050,11 @@ static asm void dPa_kankyocolor_set(f32 param_0, JPABaseEmitter* param_1,
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void dPa_control_c::set(u32 param_0, u8 param_1, u16 param_2, cXyz const* param_3,
- dKy_tevstr_c const* param_4, csXyz const* param_5, cXyz const* param_6,
- u8 param_7, dPa_levelEcallBack* param_8, s8 param_9,
- _GXColor const* param_10, _GXColor const* param_11,
- cXyz const* param_12, f32 param_13) {
+asm u32 dPa_control_c::set(u32 param_0, u8 param_1, u16 param_2, cXyz const* param_3,
+ dKy_tevstr_c const* param_4, csXyz const* param_5, cXyz const* param_6,
+ u8 param_7, dPa_levelEcallBack* param_8, s8 param_9,
+ _GXColor const* param_10, _GXColor const* param_11, cXyz const* param_12,
+ f32 param_13) {
nofralloc
#include "asm/d/particle/d_particle/func_8004D4CC.s"
}
@@ -2160,10 +2066,10 @@ asm void dPa_control_c::set(u32 param_0, u8 param_1, u16 param_2, cXyz const* pa
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void dPa_control_c::setPoly(u32 param_0, u16 param_1, cBgS_PolyInfo& param_2,
- cXyz const* param_3, dKy_tevstr_c const* param_4,
- csXyz const* param_5, cXyz const* param_6, int param_7,
- dPa_levelEcallBack* param_8, s8 param_9, cXyz const* param_10) {
+asm u32 dPa_control_c::setPoly(u32 param_0, u16 param_1, cBgS_PolyInfo& param_2,
+ cXyz const* param_3, dKy_tevstr_c const* param_4,
+ csXyz const* param_5, cXyz const* param_6, int param_7,
+ dPa_levelEcallBack* param_8, s8 param_9, cXyz const* param_10) {
nofralloc
#include "asm/d/particle/d_particle/func_8004D6A4.s"
}
@@ -2379,7 +2285,8 @@ asm void dPa_particleTracePcallBack_c::execute(JPABaseEmitter* param_0, JPABaseP
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm dPa_levelEcallBack::~dPa_levelEcallBack() {
+// asm dPa_levelEcallBack::~dPa_levelEcallBack() {
+extern "C" asm void __dt__18dPa_levelEcallBackFv() {
nofralloc
#include "asm/d/particle/d_particle/__dt__18dPa_levelEcallBackFv.s"
}
@@ -2415,7 +2322,8 @@ asm dPa_control_c::level_c::emitter_c::emitter_c() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm dPa_simpleEcallBack::~dPa_simpleEcallBack() {
+// asm dPa_simpleEcallBack::~dPa_simpleEcallBack() {
+extern "C" asm void __dt__19dPa_simpleEcallBackFv() {
nofralloc
#include "asm/d/particle/d_particle/__dt__19dPa_simpleEcallBackFv.s"
}
@@ -2435,7 +2343,8 @@ asm dPa_particleTracePcallBack_c::~dPa_particleTracePcallBack_c() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm dPa_hermiteEcallBack_c::~dPa_hermiteEcallBack_c() {
+// asm dPa_hermiteEcallBack_c::~dPa_hermiteEcallBack_c() {
+extern "C" asm void __dt__22dPa_hermiteEcallBack_cFv() {
nofralloc
#include "asm/d/particle/d_particle/__dt__22dPa_hermiteEcallBack_cFv.s"
}
@@ -2666,7 +2575,7 @@ asm dPa_setColorEcallBack::~dPa_setColorEcallBack() {
/* 80050368-8005036C 04ACA8 0004+00 10/0 0/0 0/0 .text
* execute__18JPAEmitterCallBackFP14JPABaseEmitter */
-void JPAEmitterCallBack::execute(JPABaseEmitter* param_0) {
+extern "C" void execute__18JPAEmitterCallBackFP14JPABaseEmitter() {
/* empty function */
}
diff --git a/src/d/save/d_save.cpp b/src/d/save/d_save.cpp
index 20ed84ed21..43a7a57c25 100644
--- a/src/d/save/d_save.cpp
+++ b/src/d/save/d_save.cpp
@@ -9,15 +9,7 @@
#include "d/meter/d_meter2_info.h"
#include "dol2asm.h"
#include "dolphin/types.h"
-
-//
-// Types:
-//
-
-struct daObjCarry_c {
- /* 80031CF8 */ void clrSaveFlag();
- /* 80031D04 */ void setSaveFlag();
-};
+#include "rel/d/a/obj/d_a_obj_carry/d_a_obj_carry.h"
//
// Forward References:
@@ -1456,11 +1448,11 @@ bool dSv_danBit_c::init(s8 i_stage) {
unk28[i] = 0xFFFF;
}
- clrSaveFlag__12daObjCarry_cFv();
+ daObjCarry_c::clrSaveFlag();
return true;
} else {
- setSaveFlag__12daObjCarry_cFv();
+ daObjCarry_c::setSaveFlag();
return false;
}
}
diff --git a/src/f_op/f_op_actor_mng.cpp b/src/f_op/f_op_actor_mng.cpp
index adcfc1be3a..866b1d5dd8 100644
--- a/src/f_op/f_op_actor_mng.cpp
+++ b/src/f_op/f_op_actor_mng.cpp
@@ -1948,7 +1948,7 @@ asm s32 fopAcM_findObject4EventCB(fopAc_ac_c* param_0, void* param_1) {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm s32 fopAcM_searchFromName4Event(char const* param_0, s16 param_1) {
+asm fopAc_ac_c* fopAcM_searchFromName4Event(char const* param_0, s16 param_1) {
nofralloc
#include "asm/f_op/f_op_actor_mng/fopAcM_searchFromName4Event__FPCcs.s"
}
diff --git a/src/f_op/f_op_msg_mng.cpp b/src/f_op/f_op_msg_mng.cpp
index ec8875c295..9cf71a65d8 100644
--- a/src/f_op/f_op_msg_mng.cpp
+++ b/src/f_op/f_op_msg_mng.cpp
@@ -373,7 +373,7 @@ asm void J2DPicture::insert(char const* param_0, u8 param_1, f32 param_2) {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void fopMsgM_createExpHeap(u32 param_0, JKRHeap* param_1) {
+asm JKRExpHeap* fopMsgM_createExpHeap(u32 param_0, JKRHeap* param_1) {
nofralloc
#include "asm/f_op/f_op_msg_mng/fopMsgM_createExpHeap__FUlP7JKRHeap.s"
}
diff --git a/src/m_Do/m_Do_ext.cpp b/src/m_Do/m_Do_ext.cpp
index 0e6f5a4dde..e850d25c3e 100644
--- a/src/m_Do/m_Do_ext.cpp
+++ b/src/m_Do/m_Do_ext.cpp
@@ -18,25 +18,6 @@
// Types:
//
-struct mDoExt_morf_c {
- /* 8000F950 */ mDoExt_morf_c();
- /* 8000FAE8 */ ~mDoExt_morf_c();
- /* 8000FB7C */ void setMorf(f32);
- /* 8000FBC0 */ void frameUpdate();
-};
-
-struct mDoExt_invisibleModel {
- /* 8000E53C */ void create(J3DModel*, u8);
- /* 8000E6C8 */ void entryJoint(cXyz*);
- /* 8000E7C0 */ void entryDL(cXyz*);
-};
-
-struct mDoExt_invJntPacket {
- /* 8000E5F8 */ ~mDoExt_invJntPacket();
- /* 8000E654 */ mDoExt_invJntPacket();
- /* 80012220 */ void draw();
-};
-
struct mDoExt_btpAnm {
/* 8000D54C */ void init(J3DMaterialTable*, J3DAnmTexPattern*, int, int, f32, s16, s16);
/* 8000D5E8 */ void entry(J3DMaterialTable*, s16);
@@ -46,11 +27,6 @@ struct mDoExt_blkAnm {
/* 8000DA08 */ void init(J3DDeformData*, J3DAnmCluster*, int, int, f32, s16, s16);
};
-struct mDoExt_MtxCalcOldFrame {
- /* 8000F848 */ void initOldFrameMorf(f32, u16, u16);
- /* 8000F8CC */ void decOldFrameMorfCounter();
-};
-
struct mDoExt_MtxCalcAnmBlendTblOld {
/* 8000F4B0 */ void calc();
/* 80014EB0 */ ~mDoExt_MtxCalcAnmBlendTblOld();
@@ -203,12 +179,6 @@ struct JUTCacheFont {
/* 802DD188 */ JUTCacheFont(ResFONT const*, u32, JKRHeap*);
};
-struct J3DMtxCalcNoAnmBase {
- /* 8000FA8C */ ~J3DMtxCalcNoAnmBase();
-};
-
-template <typename A0, typename B0>
-struct J3DMtxCalcNoAnm {};
/* J3DMtxCalcNoAnm<J3DMtxCalcCalcTransformMaya, J3DMtxCalcJ3DSysInitMaya> */
struct J3DMtxCalcNoAnm__template0 {
/* 8000FA20 */ void func_8000FA20(void* _this);
@@ -2518,7 +2488,8 @@ extern "C" asm void func_8000FA20(void* _this) {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm J3DMtxCalcNoAnmBase::~J3DMtxCalcNoAnmBase() {
+// asm J3DMtxCalcNoAnmBase::~J3DMtxCalcNoAnmBase() {
+extern "C" asm void __dt__19J3DMtxCalcNoAnmBaseFv() {
nofralloc
#include "asm/m_Do/m_Do_ext/__dt__19J3DMtxCalcNoAnmBaseFv.s"
}
@@ -2528,7 +2499,8 @@ asm J3DMtxCalcNoAnmBase::~J3DMtxCalcNoAnmBase() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm mDoExt_morf_c::~mDoExt_morf_c() {
+// asm mDoExt_morf_c::~mDoExt_morf_c() {
+extern "C" asm void __dt__13mDoExt_morf_cFv() {
nofralloc
#include "asm/m_Do/m_Do_ext/__dt__13mDoExt_morf_cFv.s"
}
@@ -2920,7 +2892,8 @@ asm void mDoExt_McaMorf2::stopZelAnime() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
-asm void mDoExt_invJntPacket::draw() {
+// asm void mDoExt_invJntPacket::draw() {
+extern "C" asm void draw__19mDoExt_invJntPacketFv() {
nofralloc
#include "asm/m_Do/m_Do_ext/draw__19mDoExt_invJntPacketFv.s"
}