Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions config/GZ2E01/rels/d_a_e_zs/splits.txt
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,6 @@ REL/global_destructor_chain.c:
d/actor/d_a_e_zs.cpp:
.text start:0x000000EC end:0x000022FC
.ctors start:0x00000000 end:0x00000004
.rodata start:0x00000000 end:0x0000007C
.rodata start:0x00000000 end:0x00000079
.data start:0x00000000 end:0x0000014C
.bss start:0x00000008 end:0x0000002C
.bss start:0x00000008 end:0x0000002A
28 changes: 14 additions & 14 deletions config/GZ2E01/rels/d_a_e_zs/symbols.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,11 @@ __register_global_object = .text:0x00000078; // type:function size:0x1C scope:gl
__destroy_global_chain = .text:0x00000094; // type:function size:0x58 scope:global
__ct__12daE_ZS_HIO_cFv = .text:0x000000EC; // type:function size:0x30 scope:global
draw__8daE_ZS_cFv = .text:0x0000011C; // type:function size:0xE8 scope:global
daE_ZS_Draw__FP8daE_ZS_c = .text:0x00000204; // type:function size:0x20 scope:global
daE_ZS_Draw__FP8daE_ZS_c = .text:0x00000204; // type:function size:0x20 scope:local
setBck__8daE_ZS_cFiUcff = .text:0x00000224; // type:function size:0xAC scope:global
setActionMode__8daE_ZS_cFii = .text:0x000002D0; // type:function size:0xC scope:global
damage_check__8daE_ZS_cFv = .text:0x000002DC; // type:function size:0x3B0 scope:global
s_BossSearch__FPvPv = .text:0x0000068C; // type:function size:0x4C scope:global
s_BossSearch__FPvPv = .text:0x0000068C; // type:function size:0x4C scope:local
mBossHandCheck__8daE_ZS_cFv = .text:0x000006D8; // type:function size:0x2CC scope:global
executeAppear__8daE_ZS_cFv = .text:0x000009A4; // type:function size:0x3CC scope:global
executeWait__8daE_ZS_cFv = .text:0x00000D70; // type:function size:0x1EC scope:global
Expand All @@ -19,19 +19,19 @@ action__8daE_ZS_cFv = .text:0x00001308; // type:function size:0x1B0 scope:global
mtx_set__8daE_ZS_cFv = .text:0x000014B8; // type:function size:0xA0 scope:global
cc_set__8daE_ZS_cFv = .text:0x00001558; // type:function size:0x138 scope:global
execute__8daE_ZS_cFv = .text:0x00001690; // type:function size:0x6C scope:global
daE_ZS_Execute__FP8daE_ZS_c = .text:0x000016FC; // type:function size:0x20 scope:global
daE_ZS_IsDelete__FP8daE_ZS_c = .text:0x0000171C; // type:function size:0x8 scope:global
daE_ZS_Execute__FP8daE_ZS_c = .text:0x000016FC; // type:function size:0x20 scope:local
daE_ZS_IsDelete__FP8daE_ZS_c = .text:0x0000171C; // type:function size:0x8 scope:local
_delete__8daE_ZS_cFv = .text:0x00001724; // type:function size:0x74 scope:global
daE_ZS_Delete__FP8daE_ZS_c = .text:0x00001798; // type:function size:0x20 scope:global
daE_ZS_Delete__FP8daE_ZS_c = .text:0x00001798; // type:function size:0x20 scope:local
CreateHeap__8daE_ZS_cFv = .text:0x000017B8; // type:function size:0xEC scope:global
useHeapInit__FP10fopAc_ac_c = .text:0x000018A4; // type:function size:0x20 scope:global
useHeapInit__FP10fopAc_ac_c = .text:0x000018A4; // type:function size:0x20 scope:local
create__8daE_ZS_cFv = .text:0x000018C4; // type:function size:0x324 scope:global
__dt__8cM3dGCylFv = .text:0x00001BE8; // type:function size:0x48 scope:global
__dt__8cM3dGAabFv = .text:0x00001C30; // type:function size:0x48 scope:global
__dt__10dCcD_GSttsFv = .text:0x00001C78; // type:function size:0x5C scope:global
__dt__12dBgS_ObjAcchFv = .text:0x00001CD4; // type:function size:0x70 scope:global
__dt__12dBgS_AcchCirFv = .text:0x00001D44; // type:function size:0x70 scope:global
daE_ZS_Create__FP8daE_ZS_c = .text:0x00001DB4; // type:function size:0x20 scope:global
daE_ZS_Create__FP8daE_ZS_c = .text:0x00001DB4; // type:function size:0x20 scope:local
__dt__10cCcD_GSttsFv = .text:0x00001DD4; // type:function size:0x48 scope:global
__dt__12daE_ZS_HIO_cFv = .text:0x00001E1C; // type:function size:0x48 scope:global
__sinit_d_a_e_zs_cpp = .text:0x00001E64; // type:function size:0x3C scope:local
Expand Down Expand Up @@ -71,16 +71,16 @@ _dtors = .dtors:0x00000000; // type:label scope:global
@4649 = .rodata:0x00000070; // type:object size:0x4 scope:local
@stringBase0 = .rodata:0x00000074; // type:object size:0x5 scope:local data:string_table
...data.0 = .data:0x00000000; // type:label scope:local
cNullVec__6Z2Calc = .data:0x00000000; // type:object size:0xC scope:global
cNullVec__6Z2Calc = .data:0x00000000; // type:object size:0xC scope:local
@1787 = .data:0x0000000C; // type:object size:0x4 scope:local
e_prim$3788 = .data:0x00000020; // type:object size:0x8 scope:local
e_env$3789 = .data:0x00000028; // type:object size:0x8 scope:local
eff_id$3797 = .data:0x00000030; // type:object size:0x6 scope:local
cc_zs_src__22@unnamed@d_a_e_zs_cpp@ = .data:0x00000038; // type:object size:0x44 scope:global
cc_zs_src__22@unnamed@d_a_e_zs_cpp@ = .data:0x00000038; // type:object size:0x44 scope:local
eff_Damage_id$3979 = .data:0x0000007C; // type:object size:0x6 scope:local
eff_Appear_id$4194 = .data:0x00000084; // type:object size:0x4 scope:local
w_eff_id$4324 = .data:0x00000088; // type:object size:0x8 scope:local
l_daE_ZS_Method = .data:0x00000090; // type:object size:0x20 scope:global
l_daE_ZS_Method = .data:0x00000090; // type:object size:0x20 scope:local
g_profile_E_ZS = .data:0x000000B0; // type:object size:0x30 scope:global
__vt__12dBgS_AcchCir = .data:0x000000E0; // type:object size:0xC scope:global
__vt__10cCcD_GStts = .data:0x000000EC; // type:object size:0xC scope:global
Expand All @@ -90,8 +90,8 @@ __vt__8cM3dGAab = .data:0x00000110; // type:object size:0xC scope:global
__vt__12dBgS_ObjAcch = .data:0x0000011C; // type:object size:0x24 scope:global
__vt__12daE_ZS_HIO_c = .data:0x00000140; // type:object size:0xC scope:global
__global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:global
lbl_259_bss_8 = .bss:0x00000008; // type:object size:0x1 data:byte
lbl_259_bss_8 = .bss:0x00000008; // type:object size:0x1 scope:local data:byte
@3925 = .bss:0x0000000C; // type:object size:0xC scope:local
l_HIO = .bss:0x00000018; // type:object size:0x10 scope:global data:byte
lbl_259_bss_28 = .bss:0x00000028; // type:object size:0x1 data:byte
lbl_259_bss_29 = .bss:0x00000029; // type:object size:0x1 data:byte
l_HIO = .bss:0x00000018; // type:object size:0x10 scope:local data:byte
lbl_259_bss_28 = .bss:0x00000028; // type:object size:0x1 scope:local data:byte
lbl_259_bss_29 = .bss:0x00000029; // type:object size:0x1 scope:local data:byte
2 changes: 1 addition & 1 deletion configure.py
Original file line number Diff line number Diff line change
Expand Up @@ -1691,7 +1691,7 @@ def MatchingFor(*versions):
ActorRel(NonMatching, "d_a_e_yr"),
ActorRel(NonMatching, "d_a_e_zh"),
ActorRel(NonMatching, "d_a_e_zm"),
ActorRel(NonMatching, "d_a_e_zs"),
ActorRel(Equivalent, "d_a_e_zs"),
ActorRel(MatchingFor("GZ2E01"), "d_a_formation_mng"),
ActorRel(MatchingFor("GZ2E01"), "d_a_guard_mng"),
ActorRel(NonMatching, "d_a_horse"),
Expand Down
12 changes: 12 additions & 0 deletions include/d/actor/d_a_b_ds.h
Original file line number Diff line number Diff line change
Expand Up @@ -178,6 +178,15 @@ class daB_DS_c : public fopEn_enemy_c {
/* 805DB974 */ cPhs__Step create();
/* 805DC1E8 */ daB_DS_c();

cXyz getHandPosR();
cXyz getHandPosL();
BOOL isOpening() { return mAction == ACT_OPENING_DEMO; }
bool isDemo() { return mIsDemo; }
bool isAppear() { return mIsAppear; }
bool isAppearG() { return mIsAppearG; }
bool isDead() { return mDead; }
bool isArg0() { return arg0; }

private:
/* 0x05AC */ request_of_phase_process_class mPhase;
/* 0x05B4 */ mDoExt_McaMorfSO* mpMorf;
Expand Down Expand Up @@ -321,6 +330,9 @@ class daB_DS_c : public fopEn_enemy_c {
/* 0x2EDC */ dMsgFlow_c mMsgFlow;
};

cXyz daB_DS_c::getHandPosR() { return mHandPos[1]; }
cXyz daB_DS_c::getHandPosL() { return mHandPos[0]; }

STATIC_ASSERT(sizeof(daB_DS_c) == 0x2F28);

class daB_DS_HIO_c {
Expand Down
56 changes: 47 additions & 9 deletions include/d/actor/d_a_e_zs.h
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
#ifndef D_A_E_ZS_H
#define D_A_E_ZS_H

#include "f_op/f_op_actor_mng.h"
#include "d/d_bg_s_acch.h"
#include "d/d_cc_d.h"
#include "f_op/f_op_actor.h"

/**
* @ingroup actors-enemies
Expand All @@ -12,32 +14,68 @@
*
*/
class daE_ZS_c : public fopEn_enemy_c {
/* 808330DC */ void draw();
public:
enum daE_ZS_Action {
/* 0 */ ACT_APPEAR,
/* 1 */ ACT_WAIT,
/* 2 */ ACT_DAMAGE,
/* 3 */ ACT_DRIVE
};

/* 808330DC */ int draw();
/* 808331E4 */ void setBck(int, u8, f32, f32);
/* 80833290 */ void setActionMode(int, int);
/* 8083329C */ void damage_check();
/* 80833698 */ void mBossHandCheck();
/* 80833698 */ u8 mBossHandCheck();
/* 80833964 */ void executeAppear();
/* 80833D30 */ void executeWait();
/* 80833F1C */ void executeDamage();
/* 80834108 */ void executeDrive();
/* 808342C8 */ void action();
/* 80834478 */ void mtx_set();
/* 80834518 */ void cc_set();
/* 80834650 */ void execute();
/* 808346E4 */ void _delete();
/* 80834778 */ void CreateHeap();
/* 80834884 */ void create();
/* 80834650 */ int execute();
/* 808346E4 */ int _delete();
/* 80834778 */ int CreateHeap();
/* 80834884 */ int create();

private:
/* 0x5ac */ u8 field_0x5ac[0xa3c - 0x5ac];
/* 0x5ac */ request_of_phase_process_class mPhase;
/* 0x5b4 */ mDoExt_McaMorfSO* mpMorf;
/* 0x5b8 */ Z2CreatureEnemy mSound;
/* 0x65c */ f32 field_0x65c;
/* 0x660 */ int mAction;
/* 0x664 */ int mMode;
/* 0x668 */ int mResIndex;
/* 0x66c */ u32 mShadowKey;
/* 0x670 */ u8 field_0x670;
/* 0x671 */ u8 field_0x671;
/* 0x672 */ u8 field_0x672;
/* 0x673 */ u8 field_0x673;
/* 0x674 */ dBgS_AcchCir mAcchCir;
/* 0x6b4 */ dBgS_ObjAcch mAcch;
/* 0x88c */ dCcD_Stts mStts;
/* 0x8c8 */ dCcD_Cyl mCyl;
/* 0xa04 */ cCcD_Obj* mpCollider;
/* 0xa08 */ u8 field_0xa08[0xa0c - 0xa08];
/* 0xa0c */ Z2CreatureEnemy* mpSound;
/* 0xa10 */ u8 field_0xa10[0xa22 - 0xa10];
/* 0xa22 */ s8 field_0xa22;
/* 0xa23 */ u8 field_0xa23[0xa28 - 0xa23];
/* 0xa28 */ u8 field_0xa28;
/* 0xa29 */ u8 field_0xa29[0xa3c - 0xa29];
};

STATIC_ASSERT(sizeof(daE_ZS_c) == 0xa3c);

class daE_ZS_HIO_c {
public:
/* 808330AC */ daE_ZS_HIO_c();
/* 80834DDC */ ~daE_ZS_HIO_c();
/* 80834DDC */ virtual ~daE_ZS_HIO_c() {}

/* 0x4 */ s8 field_0x4;
/* 0x8 */ f32 field_0x8;
/* 0xc */ f32 field_0xc;
};


Expand Down
Loading