mirror of https://github.com/zeldaret/tp.git
d_a_obj_key / d_a_obj_keyhole / d_a_obj_smallkey (#2584)
* obj_key equivalent * obj_keyhole done * obj_smallkey done * use macro
This commit is contained in:
parent
3de1f91acb
commit
c724824c5c
|
|
@ -1975,8 +1975,8 @@ config.libs = [
|
|||
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_katatsumuri"),
|
||||
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_kazeneko"),
|
||||
ActorRel(NonMatching, "d_a_obj_kbox"),
|
||||
ActorRel(NonMatching, "d_a_obj_key"),
|
||||
ActorRel(NonMatching, "d_a_obj_keyhole"),
|
||||
ActorRel(Equivalent, "d_a_obj_key"), # weak func order
|
||||
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_keyhole"),
|
||||
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_ki"),
|
||||
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_kiPot"),
|
||||
ActorRel(NonMatching, "d_a_obj_kita"),
|
||||
|
|
@ -2098,7 +2098,7 @@ config.libs = [
|
|||
ActorRel(Equivalent, "d_a_obj_sekizoa"), # weak function order
|
||||
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_shield"),
|
||||
ActorRel(Equivalent, "d_a_obj_sm_door"), # vtable order
|
||||
ActorRel(NonMatching, "d_a_obj_smallkey"),
|
||||
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_smallkey"),
|
||||
ActorRel(NonMatching, "d_a_obj_smgdoor"),
|
||||
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_smoke"),
|
||||
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_smtile"),
|
||||
|
|
|
|||
|
|
@ -1,6 +1,10 @@
|
|||
#ifndef D_A_E_DB_H
|
||||
#define D_A_E_DB_H
|
||||
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
#include "d/d_bg_s_acch.h"
|
||||
#include "d/d_cc_d.h"
|
||||
#include "d/d_cc_uty.h"
|
||||
|
||||
/**
|
||||
* @ingroup actors-enemies
|
||||
|
|
@ -10,12 +14,65 @@
|
|||
* @details
|
||||
*
|
||||
*/
|
||||
class e_db_class : public fopEn_enemy_c {
|
||||
class e_db_class {
|
||||
public:
|
||||
/* 0x5ac */ u8 field_0x5ac[0x66a - 0x5ac];
|
||||
/* 0x66A */ s16 field_0x66a;
|
||||
/* 0x66C */ s16 field_0x66c;
|
||||
/* 0x66E */ u8 field_0x66e[0x1270 - 0x66e];
|
||||
/* 0x0000 */ fopEn_enemy_c enemy;
|
||||
/* 0x05AC */ request_of_phase_process_class field_0x5ac;
|
||||
/* 0x05B4 */ u8 field_0x5b4;
|
||||
/* 0x05B5 */ u8 field_0x5b5;
|
||||
/* 0x05B6 */ u8 field_0x5b6;
|
||||
/* 0x05B7 */ u8 field_0x5b7;
|
||||
/* 0x05B8 */ mDoExt_McaMorfSO* field_0x5b8;
|
||||
/* 0x05BC */ Z2CreatureEnemy sound;
|
||||
/* 0x0660 */ int field_0x660;
|
||||
/* 0x0664 */ u32 field_0x664;
|
||||
/* 0x0668 */ s16 field_0x668;
|
||||
/* 0x066A */ s16 field_0x66a;
|
||||
/* 0x066C */ s16 field_0x66c;
|
||||
/* 0x0670 */ f32 field_0x670;
|
||||
/* 0x0674 */ cXyz field_0x674;
|
||||
/* 0x0680 */ s16 field_0x680;
|
||||
/* 0x0682 */ u8 field_0x682[0x0684 - 0x0682];
|
||||
/* 0x0684 */ s16 field_0x684;
|
||||
/* 0x0688 */ f32 field_0x688;
|
||||
/* 0x068C */ f32 field_0x68c;
|
||||
/* 0x0690 */ f32 field_0x690;
|
||||
/* 0x0694 */ s16 field_0x694[3];
|
||||
/* 0x069A */ s16 field_0x69a;
|
||||
/* 0x069C */ cXyz field_0x69c[12];
|
||||
/* 0x072C */ csXyz field_0x72c[12];
|
||||
/* 0x0774 */ J3DModel* field_0x774[11];
|
||||
/* 0x07A0 */ u8 field_0x7A0[0x07D4 - 0x07A0];
|
||||
/* 0x07D4 */ f32 field_0x7d4[11];
|
||||
/* 0x0800 */ u8 field_0x800[0x0804 - 0x0800];
|
||||
/* 0x0804 */ mDoExt_3DlineMat1_c field_0x804;
|
||||
/* 0x0840 */ f32 field_0x840;
|
||||
/* 0x0844 */ f32 field_0x844;
|
||||
/* 0x0848 */ f32 field_0x848;
|
||||
/* 0x084C */ u8 field_0x84C[0x084E - 0x084C];
|
||||
/* 0x084E */ s16 field_0x84e;
|
||||
/* 0x0850 */ u8 field_0x850;
|
||||
/* 0x0851 */ u8 field_0x851;
|
||||
/* 0x0852 */ s8 field_0x852;
|
||||
/* 0x0854 */ f32 field_0x854;
|
||||
/* 0x0858 */ f32 field_0x858;
|
||||
/* 0x085C */ s16 field_0x85c;
|
||||
/* 0x085E */ u8 field_0x85E[0x0860 - 0x085E];
|
||||
/* 0x0860 */ s16 field_0x860;
|
||||
/* 0x0864 */ f32 field_0x864;
|
||||
/* 0x0868 */ dCcD_Stts field_0x868;
|
||||
/* 0x08A4 */ dCcD_Sph field_0x8a4;
|
||||
/* 0x09DC */ dCcD_Sph field_0x9dc;
|
||||
/* 0x0B14 */ u8 field_0xb14;
|
||||
/* 0x0B18 */ dCcD_Sph field_0xb18[4];
|
||||
/* 0x0FF8 */ dCcU_AtInfo field_0xff8;
|
||||
/* 0x101C */ dBgS_AcchCir field_0x101c;
|
||||
/* 0x105C */ dBgS_ObjAcch field_0x105c;
|
||||
/* 0x1234 */ fpc_ProcID field_0x1234;
|
||||
/* 0x1238 */ u8 field_0x1238;
|
||||
/* 0x1239 */ u8 field_0x1239;
|
||||
/* 0x123A */ u8 field_0x123A[0x126C - 0x123A];
|
||||
/* 0x126C */ u8 field_0x126c;
|
||||
};
|
||||
|
||||
STATIC_ASSERT(sizeof(e_db_class) == 0x1270);
|
||||
|
|
|
|||
|
|
@ -84,6 +84,7 @@ public:
|
|||
f32 getPlayerRange() const { return mPlayerRange; }
|
||||
int getActionMode() const { return mActionMode; }
|
||||
daE_OC_c* getTalkOc() const { return mpTalk; }
|
||||
J3DModel* getOcModel() { return mpMorf->getModel(); }
|
||||
|
||||
private:
|
||||
/* 0x5a0 */ request_of_phase_process_class mPhaseReqs[2];
|
||||
|
|
|
|||
|
|
@ -193,7 +193,7 @@ public:
|
|||
/* 0x10F4 */ f32 mDemoCamFovy;
|
||||
/* 0x10F8 */ f32 field_0x10f8;
|
||||
/* 0x10FC */ u8 field_0x10fc[0x1104 - 0x10fc];
|
||||
/* 0x1104 */ s8 field_0x1104;
|
||||
/* 0x1104 */ u8 field_0x1104;
|
||||
/* 0x1105 */ u8 field_0x1105[0x1108 - 0x1105];
|
||||
/* 0x1108 */ dMsgFlow_c mMsgFlow;
|
||||
};
|
||||
|
|
|
|||
|
|
@ -2,6 +2,17 @@
|
|||
#define D_A_OBJ_KEY_H
|
||||
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
#include "d/d_bg_s_acch.h"
|
||||
#include "d/d_cc_d.h"
|
||||
|
||||
struct obj_key_s {
|
||||
/* 0x00 */ J3DModel* model[3];
|
||||
/* 0x0C */ cXyz pos[3];
|
||||
/* 0x30 */ cXyz field_0x30[3];
|
||||
/* 0x54 */ csXyz angle[3];
|
||||
/* 0x68 */ f32 ground_y[3];
|
||||
/* 0x74 */ fpc_ProcID key_actor_id;
|
||||
};
|
||||
|
||||
/**
|
||||
* @ingroup actors-objects
|
||||
|
|
@ -11,9 +22,27 @@
|
|||
* @details
|
||||
*
|
||||
*/
|
||||
class obj_key_class : public fopAc_ac_c {
|
||||
private:
|
||||
/* 0x568 */ u8 field_0x568[0x9b8 - 0x568];
|
||||
class obj_key_class {
|
||||
public:
|
||||
/* 0x000 */ fopAc_ac_c actor;
|
||||
/* 0x568 */ request_of_phase_process_class phase;
|
||||
/* 0x570 */ obj_key_s key_s;
|
||||
/* 0x5E8 */ Z2SoundObjSimple sound;
|
||||
/* 0x608 */ u8 field_0x608[0x60A - 0x608];
|
||||
/* 0x60A */ s16 action;
|
||||
/* 0x60C */ s16 field_0x60c;
|
||||
/* 0x60E */ s16 timers[2];
|
||||
/* 0x612 */ s16 field_0x612;
|
||||
/* 0x614 */ s16 field_0x614;
|
||||
/* 0x616 */ s16 field_0x616;
|
||||
/* 0x618 */ f32 field_0x618;
|
||||
/* 0x61C */ u8 hide;
|
||||
/* 0x620 */ dBgS_AcchCir acchcir;
|
||||
/* 0x660 */ dBgS_ObjAcch acch;
|
||||
/* 0x838 */ dCcD_Stts ccStts;
|
||||
/* 0x874 */ dCcD_Sph ccSph;
|
||||
/* 0x9AC */ u32 field_0x9ac[2];
|
||||
/* 0x9B4 */ u8 HIOInit;
|
||||
};
|
||||
|
||||
STATIC_ASSERT(sizeof(obj_key_class) == 0x9b8);
|
||||
|
|
@ -21,7 +50,11 @@ STATIC_ASSERT(sizeof(obj_key_class) == 0x9b8);
|
|||
class daObj_Key_HIO_c {
|
||||
public:
|
||||
/* 80C3F40C */ daObj_Key_HIO_c();
|
||||
/* 80C40F28 */ ~daObj_Key_HIO_c();
|
||||
/* 80C40F28 */ virtual ~daObj_Key_HIO_c() {}
|
||||
|
||||
/* 0x4 */ s8 id;
|
||||
/* 0x8 */ f32 size;
|
||||
/* 0xC */ f32 chain_size;
|
||||
};
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -2,6 +2,20 @@
|
|||
#define D_A_OBJ_KEYHOLE_H
|
||||
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
#include "d/d_cc_d.h"
|
||||
#include "d/d_cc_uty.h"
|
||||
|
||||
struct kh_chain_s {
|
||||
/* 0x000 */ J3DModel* model[16];
|
||||
/* 0x040 */ cXyz field_0x40;
|
||||
/* 0x04C */ cXyz field_0x4c;
|
||||
/* 0x058 */ cXyz field_0x58[16];
|
||||
/* 0x118 */ cXyz field_0x118[16];
|
||||
/* 0x1D8 */ csXyz field_0x1d8[16];
|
||||
/* 0x238 */ f32 field_0x238;
|
||||
/* 0x23C */ dCcD_Stts ccStts;
|
||||
/* 0x278 */ dCcD_Sph ccSph[3];
|
||||
};
|
||||
|
||||
/**
|
||||
* @ingroup actors-objects
|
||||
|
|
@ -11,29 +25,58 @@
|
|||
* @details
|
||||
*
|
||||
*/
|
||||
class obj_keyhole_class : public fopAc_ac_c {
|
||||
class obj_keyhole_class{
|
||||
public:
|
||||
void setOpen() { mOpenState = 1; }
|
||||
bool checkOpenEnd() { return mOpenState == 3; }
|
||||
void setOpen() { open_state = 1; }
|
||||
void setOpenEnd() { open_state = 3; }
|
||||
bool checkOpenEnd() { return open_state == 3; }
|
||||
bool checkOpen() { return open_state == 1; }
|
||||
|
||||
private:
|
||||
/* 0x0568 */ u8 field_0x0568[0x2ca4 - 0x568];
|
||||
/* 0x2ca4 */ u8 mOpenState;
|
||||
/* 0x2ca5 */ u8 field_0x2ca5[0x2cb8 - 0x2ca5];
|
||||
/* 0x0000 */ fopAc_ac_c actor;
|
||||
/* 0x0568 */ request_of_phase_process_class phase;
|
||||
/* 0x0570 */ char* arcname;
|
||||
/* 0x0574 */ mDoExt_McaMorf* lock_modelMorf;
|
||||
/* 0x0578 */ J3DModel* lock_model;
|
||||
/* 0x057C */ int chain_num;
|
||||
/* 0x0580 */ int field_0x580;
|
||||
/* 0x0584 */ u8 arg0;
|
||||
/* 0x0588 */ Z2Creature sound;
|
||||
/* 0x0618 */ s16 hit_timer;
|
||||
/* 0x061A */ s16 field_0x61a;
|
||||
/* 0x061C */ s16 action;
|
||||
/* 0x061E */ s16 mode;
|
||||
/* 0x0620 */ s16 timers[2];
|
||||
/* 0x0624 */ kh_chain_s chain_s[6];
|
||||
/* 0x2AE4 */ f32 field_0x2ae4;
|
||||
/* 0x2AE8 */ f32 field_0x2ae8;
|
||||
/* 0x2AEC */ s16 field_0x2aec;
|
||||
/* 0x2AF0 */ f32 field_0x2af0;
|
||||
/* 0x2AF4 */ f32 field_0x2af4;
|
||||
/* 0x2AF8 */ f32 field_0x2af8;
|
||||
/* 0x2AFC */ f32 field_0x2afc;
|
||||
/* 0x2B00 */ s16 field_0x2b00;
|
||||
/* 0x2B04 */ dCcD_Stts ccStts;
|
||||
/* 0x2B40 */ dCcD_Sph ccSph;
|
||||
/* 0x2C78 */ dCcU_AtInfo atInfo;
|
||||
/* 0x2C9C */ u32 field_0x2c9c;
|
||||
/* 0x2CA0 */ u32 field_0x2ca0;
|
||||
/* 0x2CA4 */ u8 open_state;
|
||||
/* 0x2CA5 */ u8 HIOInit;
|
||||
/* 0x2CA6 */ s8 field_0x2ca6;
|
||||
/* 0x2CA7 */ s8 hide_lock;
|
||||
/* 0x2CA8 */ cXyz field_0x2ca8;
|
||||
/* 0x2CB4 */ u8 field_0x2cb4;
|
||||
};
|
||||
|
||||
STATIC_ASSERT(sizeof(obj_keyhole_class) == 0x2CB8);
|
||||
|
||||
class kh_chain_s {
|
||||
public:
|
||||
/* 80C436A0 */ ~kh_chain_s();
|
||||
/* 80C437A4 */ kh_chain_s();
|
||||
};
|
||||
|
||||
class daObj_Keyhole_HIO_c {
|
||||
public:
|
||||
/* 80C4124C */ daObj_Keyhole_HIO_c();
|
||||
/* 80C4394C */ ~daObj_Keyhole_HIO_c();
|
||||
/* 80C4394C */ virtual ~daObj_Keyhole_HIO_c() {}
|
||||
|
||||
/* 0x4 */ s8 id;
|
||||
/* 0x8 */ f32 obj_size;
|
||||
};
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -2,6 +2,8 @@
|
|||
#define D_A_OBJ_SMALLKEY_H
|
||||
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
#include "d/actor/d_a_itembase.h"
|
||||
#include "d/d_particle.h"
|
||||
|
||||
/**
|
||||
* @ingroup actors-objects
|
||||
|
|
@ -11,52 +13,88 @@
|
|||
* @details
|
||||
*
|
||||
*/
|
||||
class daKey_c : public fopAc_ac_c {
|
||||
class daKey_c : public daItemBase_c {
|
||||
private:
|
||||
/* 80CDB2E0 */ void seStartTwinkle_private(u32);
|
||||
|
||||
public:
|
||||
enum daKey_Status_e {
|
||||
STATUS_INIT_e,
|
||||
STATUS_PARENT_WAIT_e,
|
||||
STATUS_WAIT_e,
|
||||
STATUS_ORDER_GET_DEMO_e,
|
||||
STATUS_GET_DEMO_e,
|
||||
STATUS_SW_ON_WAIT_e,
|
||||
STATUS_BOOMERANG_CARRY_e,
|
||||
STATUS_E_GB_e,
|
||||
};
|
||||
|
||||
/* 80CD9F2C */ void initBaseMtx();
|
||||
/* 80CD9F68 */ void setBaseMtx();
|
||||
/* 80CD9FDC */ void Create();
|
||||
/* 80CDA15C */ bool __CreateHeap();
|
||||
/* 80CDA164 */ void create();
|
||||
/* 80CD9FDC */ int Create();
|
||||
/* 80CDA15C */ int __CreateHeap();
|
||||
/* 80CDA164 */ int create();
|
||||
/* 80CDA680 */ void bg_check();
|
||||
/* 80CDA7E8 */ void actionInitInit();
|
||||
/* 80CDA81C */ void actionInit();
|
||||
/* 80CDA8C8 */ void actionParentWaitInit();
|
||||
/* 80CDA8FC */ void actionParentWait();
|
||||
/* 80CDA9AC */ void actionWaitInit();
|
||||
/* 80CDAA28 */ void actionWait();
|
||||
/* 80CDAB74 */ void initActionOrderGetDemo();
|
||||
/* 80CDAC18 */ void actionOrderGetDemo();
|
||||
/* 80CDAC94 */ void actionGetDemo();
|
||||
/* 80CDAD28 */ void actionInitSwOnWait();
|
||||
/* 80CDADD4 */ void actionSwOnWait();
|
||||
/* 80CDAE54 */ void actionInitBoomerangCarry();
|
||||
/* 80CDAF40 */ void actionBoomerangCarry();
|
||||
/* 80CDA7E8 */ int actionInitInit();
|
||||
/* 80CDA81C */ int actionInit();
|
||||
/* 80CDA8C8 */ int actionParentWaitInit();
|
||||
/* 80CDA8FC */ int actionParentWait();
|
||||
/* 80CDA9AC */ int actionWaitInit();
|
||||
/* 80CDAA28 */ int actionWait();
|
||||
/* 80CDAB74 */ int initActionOrderGetDemo();
|
||||
/* 80CDAC18 */ int actionOrderGetDemo();
|
||||
/* 80CDAC94 */ int actionGetDemo();
|
||||
/* 80CDAD28 */ int actionInitSwOnWait();
|
||||
/* 80CDADD4 */ int actionSwOnWait();
|
||||
/* 80CDAE54 */ int actionInitBoomerangCarry();
|
||||
/* 80CDAF40 */ int actionBoomerangCarry();
|
||||
/* 80CDAFB4 */ void effectSet();
|
||||
/* 80CDB0D8 */ void effectStop();
|
||||
/* 80CDB128 */ void effectCtrl();
|
||||
/* 80CDB2E0 */ void seStartTwinkle_private(u32);
|
||||
/* 80CDB36C */ void actionInitE_GB();
|
||||
/* 80CDB3D8 */ void actionE_GB();
|
||||
/* 80CDB404 */ void execute();
|
||||
/* 80CDB5D4 */ void draw();
|
||||
/* 80CDB628 */ void _delete();
|
||||
/* 80CDB36C */ int actionInitE_GB();
|
||||
/* 80CDB3D8 */ int actionE_GB();
|
||||
/* 80CDB404 */ int execute();
|
||||
/* 80CDB5D4 */ int draw();
|
||||
/* 80CDB628 */ int _delete();
|
||||
|
||||
void setPos(cXyz pos) {
|
||||
current.pos = pos;
|
||||
int getSwNo() { return fopAcM_GetParamBit(this, 16, 8); }
|
||||
int getSaveBitNo() { return fopAcM_GetParamBit(this, 8, 8); }
|
||||
|
||||
u16 getSwOnWaitTimer() { return field_0x93a & 0x3F; }
|
||||
|
||||
void setStatus(u8 i_status) { mStatus = i_status; }
|
||||
bool chkStatus(u8 i_status) { return mStatus == i_status; }
|
||||
|
||||
void setPos(cXyz i_pos) {
|
||||
current.pos = i_pos;
|
||||
}
|
||||
|
||||
void startMove(f32 param_1, f32 param_2) {
|
||||
speedF = param_1;
|
||||
speed.y = param_2;
|
||||
void startMove(f32 i_speedF, f32 i_speedY) {
|
||||
speedF = i_speedF;
|
||||
speed.y = i_speedY;
|
||||
gravity = -6.0f;
|
||||
actionWaitInit();
|
||||
}
|
||||
|
||||
/* 0x568 */ u8 field_0x568[0x978 - 0x568];
|
||||
void seStartTwinkle(u32 i_soundId, cXyz* param_1) {
|
||||
field_0x978 = *param_1;
|
||||
mDoAud_seStartLevel(i_soundId, &field_0x978, 0, dComIfGp_getReverb(fopAcM_GetRoomNo(this)));
|
||||
field_0x984 = 1;
|
||||
}
|
||||
|
||||
/* 0x92C */ fpc_ProcID mItemId;
|
||||
/* 0x930 */ int field_0x930;
|
||||
/* 0x934 */ u8 mStatus;
|
||||
/* 0x935 */ u8 mSwOnTimer;
|
||||
/* 0x936 */ u8 field_0x936;
|
||||
/* 0x937 */ u8 mIsPrmInit;
|
||||
/* 0x938 */ s16 field_0x938;
|
||||
/* 0x93A */ u16 field_0x93a;
|
||||
/* 0x93C */ dPa_followEcallBack mEffect[2];
|
||||
/* 0x964 */ csXyz mEffRot;
|
||||
/* 0x96C */ cXyz mPrevSpeed;
|
||||
/* 0x978 */ cXyz field_0x978;
|
||||
/* 0x984 */ u8 field_0x984;
|
||||
/* 0x985 */ u8 field_0x985[0x988 - 0x985];
|
||||
};
|
||||
|
||||
STATIC_ASSERT(sizeof(daKey_c) == 0x988);
|
||||
|
|
|
|||
|
|
@ -90,6 +90,10 @@ public:
|
|||
setPosition(i_tboxNo, 11, i_pos, -1);
|
||||
}
|
||||
|
||||
static void offStatus(int param_0, int i_flag) {
|
||||
offStatus(0, param_0, i_flag);
|
||||
}
|
||||
|
||||
static u8 const typeToTypeGroup[17][2];
|
||||
static type_group_list mTypeGroupListAll[17];
|
||||
static typeGroupData_c* mTypeGroupData;
|
||||
|
|
|
|||
|
|
@ -756,7 +756,7 @@ int daBdoorL1_c::unlockInit() {
|
|||
obj_keyhole_class* keyhole = (obj_keyhole_class*)fopAcM_SearchByID(mKeyHoleId);
|
||||
if (keyhole != NULL) {
|
||||
keyhole->setOpen();
|
||||
mDoAud_seStart(Z2SE_OBJ_BOSS_LOCK_OPEN, &keyhole->current.pos, 0, 0);
|
||||
mDoAud_seStart(Z2SE_OBJ_BOSS_LOCK_OPEN, &keyhole->actor.current.pos, 0, 0);
|
||||
}
|
||||
field_0x59b = 1;
|
||||
return 1;
|
||||
|
|
|
|||
|
|
@ -330,7 +330,7 @@ int daBdoorL5_c::unlockInit() {
|
|||
obj_keyhole_class* keyHole = (obj_keyhole_class*)fopAcM_SearchByID(mKeyHoleId);
|
||||
if (keyHole != NULL) {
|
||||
keyHole->setOpen();
|
||||
mDoAud_seStart(Z2SE_OBJ_BOSS_LOCK_OPEN_LV5, &keyHole->current.pos, 0, 0);
|
||||
mDoAud_seStart(Z2SE_OBJ_BOSS_LOCK_OPEN_LV5, &keyHole->actor.current.pos, 0, 0);
|
||||
}
|
||||
dComIfGs_onSwitch(door_param2_c::getSwbit(this), fopAcM_GetRoomNo(this));
|
||||
return 1;
|
||||
|
|
|
|||
|
|
@ -89,7 +89,7 @@ static int daE_MK_Draw(e_mk_class* i_this) {
|
|||
static void* s_obj_delete(void* i_actor, void* i_data) {
|
||||
if (fopAcM_IsActor(i_actor)) {
|
||||
if (fopAcM_GetName(i_actor) == PROC_E_DB) {
|
||||
static_cast<e_db_class*>(i_actor)->health = 1000;
|
||||
static_cast<e_db_class*>(i_actor)->enemy.health = 1000;
|
||||
} else if (fopAcM_GetName(i_actor) == PROC_E_DB_LEAF) {
|
||||
fopAcM_delete(static_cast<e_db_leaf_class*>(i_actor));
|
||||
}
|
||||
|
|
@ -216,7 +216,7 @@ static e_db_class* search_db(e_mk_class* i_this) {
|
|||
int i = 0;
|
||||
while (i < target_info_count) {
|
||||
pDekuBaba = (e_db_class*)target_info[i];
|
||||
sp44 = pDekuBaba->current.pos - i_this->enemy.current.pos;
|
||||
sp44 = pDekuBaba->enemy.current.pos - i_this->enemy.current.pos;
|
||||
|
||||
f32 fVar2 = sp44.abs();
|
||||
if ((cM_rndF(1.0f) < 0.5f && fVar2 > 500.0f) && fVar2 < fVar1) {
|
||||
|
|
@ -491,7 +491,7 @@ static void e_mk_shoot(e_mk_class* i_this) {
|
|||
break;
|
||||
|
||||
case 10:
|
||||
sp48 = i_this->field_0x70c->current.pos - i_this->enemy.current.pos;
|
||||
sp48 = i_this->field_0x70c->enemy.current.pos - i_this->enemy.current.pos;
|
||||
cLib_addCalcAngleS2(&i_this->enemy.current.angle.y, cM_atan2s(sp48.x, sp48.z), 2, 0x1000);
|
||||
if (i_this->mpModelMorf->checkFrame(15.0f)) {
|
||||
i_this->mSound.startCreatureVoice(Z2SE_EN_MK_V_THROW_BOOM, -1);
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue