mirror of https://github.com/zeldaret/tp.git
d_a_e_ba mostly done (#2147)
This commit is contained in:
parent
c36da6a366
commit
7a528eb5b6
|
|
@ -1,26 +0,0 @@
|
|||
lbl_8067ED30:
|
||||
/* 8067ED30 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 8067ED34 7C 08 02 A6 */ mflr r0
|
||||
/* 8067ED38 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 8067ED3C 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 8067ED40 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 8067ED44 38 9F 04 D0 */ addi r4, r31, 0x4d0
|
||||
/* 8067ED48 38 A0 00 06 */ li r5, 6
|
||||
/* 8067ED4C 38 C0 00 00 */ li r6, 0
|
||||
/* 8067ED50 38 E0 00 03 */ li r7, 3
|
||||
/* 8067ED54 4B 99 DD 85 */ bl fopAcM_createDisappear__FPC10fopAc_ac_cPC4cXyzUcUcUc
|
||||
/* 8067ED58 80 1F 00 B0 */ lwz r0, 0xb0(r31)
|
||||
/* 8067ED5C 54 04 46 3E */ srwi r4, r0, 0x18
|
||||
/* 8067ED60 2C 04 00 FF */ cmpwi r4, 0xff
|
||||
/* 8067ED64 41 82 00 18 */ beq lbl_8067ED7C
|
||||
/* 8067ED68 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
|
||||
/* 8067ED6C 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
|
||||
/* 8067ED70 88 1F 04 E2 */ lbz r0, 0x4e2(r31)
|
||||
/* 8067ED74 7C 05 07 74 */ extsb r5, r0
|
||||
/* 8067ED78 4B 9B 64 89 */ bl onSwitch__10dSv_info_cFii
|
||||
lbl_8067ED7C:
|
||||
/* 8067ED7C 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 8067ED80 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 8067ED84 7C 08 03 A6 */ mtlr r0
|
||||
/* 8067ED88 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 8067ED8C 4E 80 00 20 */ blr
|
||||
|
|
@ -1,29 +0,0 @@
|
|||
lbl_8067EE38:
|
||||
/* 8067EE38 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 8067EE3C 7C 08 02 A6 */ mflr r0
|
||||
/* 8067EE40 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 8067EE44 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 8067EE48 93 C1 00 08 */ stw r30, 8(r1)
|
||||
/* 8067EE4C 7C 7E 1B 78 */ mr r30, r3
|
||||
/* 8067EE50 80 63 05 C4 */ lwz r3, 0x5c4(r3)
|
||||
/* 8067EE54 83 E3 00 04 */ lwz r31, 4(r3)
|
||||
/* 8067EE58 3C 60 80 43 */ lis r3, g_env_light@ha /* 0x8042CA54@ha */
|
||||
/* 8067EE5C 38 63 CA 54 */ addi r3, r3, g_env_light@l /* 0x8042CA54@l */
|
||||
/* 8067EE60 38 80 00 00 */ li r4, 0
|
||||
/* 8067EE64 38 BE 04 D0 */ addi r5, r30, 0x4d0
|
||||
/* 8067EE68 38 DE 01 0C */ addi r6, r30, 0x10c
|
||||
/* 8067EE6C 4B B2 49 59 */ bl settingTevStruct__18dScnKy_env_light_cFiP4cXyzP12dKy_tevstr_c
|
||||
/* 8067EE70 3C 60 80 43 */ lis r3, g_env_light@ha /* 0x8042CA54@ha */
|
||||
/* 8067EE74 38 63 CA 54 */ addi r3, r3, g_env_light@l /* 0x8042CA54@l */
|
||||
/* 8067EE78 80 9F 00 04 */ lwz r4, 4(r31)
|
||||
/* 8067EE7C 38 BE 01 0C */ addi r5, r30, 0x10c
|
||||
/* 8067EE80 4B B2 5F 21 */ bl setLightTevColorType_MAJI__18dScnKy_env_light_cFP12J3DModelDataP12dKy_tevstr_c
|
||||
/* 8067EE84 80 7E 05 C4 */ lwz r3, 0x5c4(r30)
|
||||
/* 8067EE88 4B 99 23 39 */ bl entryDL__16mDoExt_McaMorfSOFv
|
||||
/* 8067EE8C 38 60 00 01 */ li r3, 1
|
||||
/* 8067EE90 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 8067EE94 83 C1 00 08 */ lwz r30, 8(r1)
|
||||
/* 8067EE98 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 8067EE9C 7C 08 03 A6 */ mtlr r0
|
||||
/* 8067EEA0 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 8067EEA4 4E 80 00 20 */ blr
|
||||
|
|
@ -1,51 +0,0 @@
|
|||
lbl_8067EFF8:
|
||||
/* 8067EFF8 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 8067EFFC 7C 08 02 A6 */ mflr r0
|
||||
/* 8067F000 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 8067F004 3C A0 80 40 */ lis r5, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
|
||||
/* 8067F008 38 A5 61 C0 */ addi r5, r5, g_dComIfG_gameInfo@l /* 0x804061C0@l */
|
||||
/* 8067F00C 80 C5 5D AC */ lwz r6, 0x5dac(r5)
|
||||
/* 8067F010 80 06 05 70 */ lwz r0, 0x570(r6)
|
||||
/* 8067F014 54 00 05 EF */ rlwinm. r0, r0, 0, 0x17, 0x17
|
||||
/* 8067F018 41 82 00 10 */ beq lbl_8067F028
|
||||
/* 8067F01C 88 05 4F AD */ lbz r0, 0x4fad(r5)
|
||||
/* 8067F020 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 8067F024 41 82 00 0C */ beq lbl_8067F030
|
||||
lbl_8067F028:
|
||||
/* 8067F028 38 60 00 00 */ li r3, 0
|
||||
/* 8067F02C 48 00 00 70 */ b lbl_8067F09C
|
||||
lbl_8067F030:
|
||||
/* 8067F030 C0 46 04 D4 */ lfs f2, 0x4d4(r6)
|
||||
/* 8067F034 C0 03 04 D4 */ lfs f0, 0x4d4(r3)
|
||||
/* 8067F038 FC 02 00 40 */ fcmpo cr0, f2, f0
|
||||
/* 8067F03C 40 80 00 5C */ bge lbl_8067F098
|
||||
/* 8067F040 C0 03 06 88 */ lfs f0, 0x688(r3)
|
||||
/* 8067F044 FC 00 08 40 */ fcmpo cr0, f0, f1
|
||||
/* 8067F048 40 80 00 50 */ bge lbl_8067F098
|
||||
/* 8067F04C A8 A3 06 84 */ lha r5, 0x684(r3)
|
||||
/* 8067F050 A8 03 04 E6 */ lha r0, 0x4e6(r3)
|
||||
/* 8067F054 7C 05 00 50 */ subf r0, r5, r0
|
||||
/* 8067F058 7C 05 07 34 */ extsh r5, r0
|
||||
/* 8067F05C 7C 80 07 34 */ extsh r0, r4
|
||||
/* 8067F060 2C 00 00 01 */ cmpwi r0, 1
|
||||
/* 8067F064 41 82 00 1C */ beq lbl_8067F080
|
||||
/* 8067F068 7C 05 00 00 */ cmpw r5, r0
|
||||
/* 8067F06C 40 80 00 2C */ bge lbl_8067F098
|
||||
/* 8067F070 7C 04 00 D0 */ neg r0, r4
|
||||
/* 8067F074 7C 00 07 34 */ extsh r0, r0
|
||||
/* 8067F078 7C 05 00 00 */ cmpw r5, r0
|
||||
/* 8067F07C 40 81 00 1C */ ble lbl_8067F098
|
||||
lbl_8067F080:
|
||||
/* 8067F080 7C C4 33 78 */ mr r4, r6
|
||||
/* 8067F084 4B FF FE 9D */ bl other_bg_check__FP10e_ba_classP10fopAc_ac_c
|
||||
/* 8067F088 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 8067F08C 40 82 00 0C */ bne lbl_8067F098
|
||||
/* 8067F090 38 60 00 01 */ li r3, 1
|
||||
/* 8067F094 48 00 00 08 */ b lbl_8067F09C
|
||||
lbl_8067F098:
|
||||
/* 8067F098 38 60 00 00 */ li r3, 0
|
||||
lbl_8067F09C:
|
||||
/* 8067F09C 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 8067F0A0 7C 08 03 A6 */ mtlr r0
|
||||
/* 8067F0A4 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 8067F0A8 4E 80 00 20 */ blr
|
||||
|
|
@ -1,33 +0,0 @@
|
|||
lbl_8067EEA8:
|
||||
/* 8067EEA8 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 8067EEAC 7C 08 02 A6 */ mflr r0
|
||||
/* 8067EEB0 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 8067EEB4 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 8067EEB8 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 8067EEBC 4B 99 9E 25 */ bl fopAc_IsActor__FPv
|
||||
/* 8067EEC0 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 8067EEC4 41 82 00 44 */ beq lbl_8067EF08
|
||||
/* 8067EEC8 A8 1F 00 08 */ lha r0, 8(r31)
|
||||
/* 8067EECC 2C 00 00 FE */ cmpwi r0, 0xfe
|
||||
/* 8067EED0 40 82 00 38 */ bne lbl_8067EF08
|
||||
/* 8067EED4 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
|
||||
/* 8067EED8 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
|
||||
/* 8067EEDC 80 03 5F 18 */ lwz r0, 0x5f18(r3)
|
||||
/* 8067EEE0 54 00 03 19 */ rlwinm. r0, r0, 0, 0xc, 0xc
|
||||
/* 8067EEE4 40 82 00 24 */ bne lbl_8067EF08
|
||||
/* 8067EEE8 4B AE 09 B5 */ bl checkBoomerangCharge__9daPy_py_cFv
|
||||
/* 8067EEEC 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
||||
/* 8067EEF0 41 82 00 18 */ beq lbl_8067EF08
|
||||
/* 8067EEF4 80 1F 00 B0 */ lwz r0, 0xb0(r31)
|
||||
/* 8067EEF8 28 00 00 01 */ cmplwi r0, 1
|
||||
/* 8067EEFC 40 82 00 0C */ bne lbl_8067EF08
|
||||
/* 8067EF00 7F E3 FB 78 */ mr r3, r31
|
||||
/* 8067EF04 48 00 00 08 */ b lbl_8067EF0C
|
||||
lbl_8067EF08:
|
||||
/* 8067EF08 38 60 00 00 */ li r3, 0
|
||||
lbl_8067EF0C:
|
||||
/* 8067EF0C 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 8067EF10 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 8067EF14 7C 08 03 A6 */ mtlr r0
|
||||
/* 8067EF18 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 8067EF1C 4E 80 00 20 */ blr
|
||||
|
|
@ -769,6 +769,8 @@ public:
|
|||
}
|
||||
}
|
||||
|
||||
bool onWolfEnemyCatch(fopAc_ac_c* i_actor) { return onWolfEnemyBiteAll(i_actor, FLG2_UNK_8); }
|
||||
|
||||
void offGoronSideMove() {
|
||||
if (checkGoronSideMove()) {
|
||||
mSpecialMode = 0;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,109 @@
|
|||
#ifndef D_A_E_BA_H
|
||||
#define D_A_E_BA_H
|
||||
|
||||
#include "Z2AudioLib/Z2Creature.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
#include "d/cc/d_cc_d.h"
|
||||
#include "d/bg/d_bg_s_acch.h"
|
||||
#include "d/cc/d_cc_uty.h"
|
||||
#include "d/d_path.h"
|
||||
|
||||
class e_ba_class : public fopEn_enemy_c {
|
||||
public:
|
||||
enum Type {
|
||||
/* 0 */ TYPE_NORMAL,
|
||||
/* 1 */ TYPE_FIRE,
|
||||
/* 2 */ TYPE_ICE,
|
||||
};
|
||||
|
||||
enum HomeType {
|
||||
/* 0 */ HOME_ROOF,
|
||||
/* 1 */ HOME_FLY,
|
||||
/* 2 */ HOME_APPEAR,
|
||||
};
|
||||
|
||||
enum Action {
|
||||
/* 0x0 */ ACT_ROOF,
|
||||
/* 0x1 */ ACT_FIGHT_FLY,
|
||||
/* 0x2 */ ACT_FIGHT,
|
||||
/* 0x3 */ ACT_ATTACK,
|
||||
/* 0x4 */ ACT_RETURN,
|
||||
/* 0x5 */ ACT_FLY,
|
||||
/* 0x6 */ ACT_PATH_FLY,
|
||||
/* 0xA */ ACT_CHANCE = 10,
|
||||
/* 0xD */ ACT_WOLFBITE = 13,
|
||||
/* 0xE */ ACT_WIND,
|
||||
/* 0xF */ ACT_APPEAR,
|
||||
};
|
||||
|
||||
enum Animation {
|
||||
/* 0x4 */ ANM_APPEAR = 4,
|
||||
/* 0x5 */ ANM_DEAD,
|
||||
/* 0x6 */ ANM_FLY,
|
||||
/* 0x7 */ ANM_FURA2,
|
||||
/* 0x8 */ ANM_HOLDWAIT,
|
||||
/* 0x9 */ ANM_HOVERING,
|
||||
/* 0xA */ ANM_WAIT,
|
||||
};
|
||||
|
||||
/* 0x5AC */ request_of_phase_process_class mPhase;
|
||||
/* 0x5B4 */ u8 mHomeType;
|
||||
/* 0x5B5 */ u8 mDistanceParam;
|
||||
/* 0x5B6 */ u8 mType;
|
||||
/* 0x5B7 */ u8 mPathIndex;
|
||||
/* 0x5B8 */ char* mArcName;
|
||||
/* 0x5BC */ u8 field_0x5bc;
|
||||
/* 0x5BD */ s8 mPathPoint;
|
||||
/* 0x5BE */ s8 mPathStep;
|
||||
/* 0x5C0 */ dPath* mpPath;
|
||||
/* 0x5C4 */ mDoExt_McaMorfSO* mpMorf;
|
||||
/* 0x5C8 */ Z2CreatureEnemy mCreatureSound;
|
||||
/* 0x66C */ int mAnm;
|
||||
/* 0x670 */ s16 mCounter;
|
||||
/* 0x672 */ s16 mAction;
|
||||
/* 0x674 */ s16 mMode;
|
||||
/* 0x678 */ cXyz mTargetPos;
|
||||
/* 0x684 */ s16 mPlayerAngleY;
|
||||
/* 0x688 */ f32 mPlayerDistanceXZ;
|
||||
/* 0x68C */ f32 mFightFlyDistance;
|
||||
/* 0x690 */ f32 mSpeedRatio;
|
||||
/* 0x694 */ f32 mBaseAngleSpeed;
|
||||
/* 0x698 */ f32 mKnockbackSpeed;
|
||||
/* 0x69C */ s16 mKnockbackAngle;
|
||||
/* 0x69E */ csXyz mChanceAngle;
|
||||
/* 0x6A4 */ bool mIsDying;
|
||||
/* 0x6A6 */ s16 mTimer[4];
|
||||
/* 0x6AE */ s16 mIFrames;
|
||||
/* 0x6B0 */ cXyz field_0x6b0;
|
||||
/* 0x6BC */ cXyz mWindOffset;
|
||||
/* 0x6C8 */ s16 mWindSpinSpeed;
|
||||
/* 0x6CC */ dBgS_AcchCir mAcchCir;
|
||||
/* 0x70C */ dBgS_ObjAcch mAcch;
|
||||
/* 0x8E4 */ dCcD_Stts mStts;
|
||||
/* 0x920 */ dCcD_Sph mSph;
|
||||
/* 0xA58 */ dCcU_AtInfo mAtInfo;
|
||||
/* 0xA7C */ u32 mSmokeKey1;
|
||||
/* 0xA80 */ u32 mSmokeKey2;
|
||||
/* 0xA84 */ u32 mParticleKey[4];
|
||||
/* 0xA94 */ u8 field_0xa94[0xc];
|
||||
/* 0xAA0 */ bool mHIOInit;
|
||||
};
|
||||
|
||||
STATIC_ASSERT(sizeof(e_ba_class) == 0xAA4);
|
||||
|
||||
class daE_BA_HIO_c {
|
||||
public:
|
||||
/* 8067ECEC */ daE_BA_HIO_c();
|
||||
/* 80681F00 */ virtual ~daE_BA_HIO_c() {}
|
||||
|
||||
/* 0x04 */ s8 field_0x04;
|
||||
/* 0x08 */ f32 mScale;
|
||||
/* 0x0C */ f32 mFlySpeed;
|
||||
/* 0x10 */ f32 mFightDistance;
|
||||
/* 0x14 */ f32 mFightSpeed;
|
||||
/* 0x18 */ f32 mAttackSpeed;
|
||||
};
|
||||
|
||||
STATIC_ASSERT(sizeof(daE_BA_HIO_c) == 0x1C);
|
||||
|
||||
#endif /* D_A_E_BA_H */
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue