Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

daMagLift_c work #2275

Open
wants to merge 4 commits into
base: main
Choose a base branch
from
Open
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
12 changes: 6 additions & 6 deletions config/GZ2E01/rels/d_a_obj_magLift/symbols.txt
Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,10 @@ modeDead__11daMagLift_cFv = .text:0x000009D8; // type:function size:0x4 scope:gl
setNextPoint__11daMagLift_cFv = .text:0x000009DC; // type:function size:0x134 scope:global
Draw__11daMagLift_cFv = .text:0x00000B10; // type:function size:0xA4 scope:global
Delete__11daMagLift_cFv = .text:0x00000BB4; // type:function size:0x30 scope:global
daMagLift_Draw__FP11daMagLift_c = .text:0x00000BE4; // type:function size:0x2C scope:global
daMagLift_Execute__FP11daMagLift_c = .text:0x00000C10; // type:function size:0x20 scope:global
daMagLift_Delete__FP11daMagLift_c = .text:0x00000C30; // type:function size:0x20 scope:global
daMagLift_Create__FP10fopAc_ac_c = .text:0x00000C50; // type:function size:0x20 scope:global
daMagLift_Draw__FP11daMagLift_c = .text:0x00000BE4; // type:function size:0x2C scope:local
daMagLift_Execute__FP11daMagLift_c = .text:0x00000C10; // type:function size:0x20 scope:local
daMagLift_Delete__FP11daMagLift_c = .text:0x00000C30; // type:function size:0x20 scope:local
daMagLift_Create__FP10fopAc_ac_c = .text:0x00000C50; // type:function size:0x20 scope:local
__dt__15daMagLift_HIO_cFv = .text:0x00000C70; // type:function size:0x5C scope:global
__sinit_d_a_obj_magLift_cpp = .text:0x00000CCC; // type:function size:0x3C scope:local
_ctors = .ctors:0x00000000; // type:label scope:global
Expand Down Expand Up @@ -58,12 +58,12 @@ cNullVec__6Z2Calc = .data:0x00000000; // type:object size:0xC scope:global
@3741 = .data:0x0000005C; // type:object size:0xC scope:local
@3742 = .data:0x00000068; // type:object size:0xC scope:local
mode_proc$3735 = .data:0x00000074; // type:object size:0x60 scope:local
l_daMagLift_Method = .data:0x000000D4; // type:object size:0x20 scope:global
l_daMagLift_Method = .data:0x000000D4; // type:object size:0x20 scope:local
g_profile_Obj_MagLift = .data:0x000000F4; // type:object size:0x30 scope:global
__vt__11daMagLift_c = .data:0x00000124; // type:object size:0x28 scope:global
__vt__15daMagLift_HIO_c = .data:0x0000014C; // type:object size:0xC scope:global
__vt__14mDoHIO_entry_c = .data:0x00000158; // type:object size:0xC scope:global
__global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:global
@3619 = .bss:0x00000008; // type:object size:0xC scope:local
l_HIO = .bss:0x00000014; // type:object size:0x8 scope:global
l_HIO = .bss:0x00000014; // type:object size:0x8 scope:local
lbl_565_bss_1C = .bss:0x0000001C; // type:object size:0x1 data:byte
2 changes: 1 addition & 1 deletion configure.py
Original file line number Diff line number Diff line change
Expand Up @@ -1930,7 +1930,7 @@ def MatchingFor(*versions):
ActorRel(NonMatching, "d_a_obj_lv8OptiLift"),
ActorRel(NonMatching, "d_a_obj_lv8UdFloor"),
ActorRel(NonMatching, "d_a_obj_lv9SwShutter"),
ActorRel(NonMatching, "d_a_obj_magLift"),
ActorRel(Matching, "d_a_obj_magLift"),
ActorRel(NonMatching, "d_a_obj_magLiftRot"),
ActorRel(NonMatching, "d_a_obj_maki"),
ActorRel(NonMatching, "d_a_obj_master_sword"),
Expand Down
48 changes: 37 additions & 11 deletions include/d/actor/d_a_obj_magLift.h
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
#ifndef D_A_OBJ_MAGLIFT_H
#define D_A_OBJ_MAGLIFT_H

#include "f_op/f_op_actor_mng.h"
#include "d/d_bg_s_movebg_actor.h"
#include "d/d_com_inf_game.h"

/**
* @ingroup actors-objects
Expand All @@ -11,12 +12,22 @@
* @details
*
*/
class daMagLift_c : public fopAc_ac_c {
class daMagLift_c : public dBgS_MoveBgActor {
public:
enum Mode_e {
MODE_ACC_e,
MODE_MOVE_e,
MODE_BRK_e,
MODE_WAIT_e,
MODE_WAIT_INIT_e,
MODE_DEAD_e,
MODE_MOVE_WAIT_e
};

/* 80C8DAA0 */ void setBaseMtx();
/* 80C8DB28 */ void CreateHeap();
/* 80C8DB94 */ void create();
/* 80C8DD38 */ void Execute(f32 (**)[3][4]);
/* 80C8DB28 */ int CreateHeap();
/* 80C8DB94 */ int create();
/* 80C8DD38 */ int Execute(Mtx**);
/* 80C8DD88 */ void moveLift();
/* 80C8DE98 */ void modeAcc();
/* 80C8DF20 */ void init_modeMove();
Expand All @@ -31,21 +42,36 @@ class daMagLift_c : public fopAc_ac_c {
/* 80C8E2C4 */ void modeMoveWait();
/* 80C8E318 */ void modeDead();
/* 80C8E31C */ void setNextPoint();
/* 80C8E450 */ void Draw();
/* 80C8E4F4 */ void Delete();
/* 80C8E450 */ int Draw();
/* 80C8E4F4 */ int Delete();

int getMoveSpeed() { return fopAcM_GetParamBit(this, 0x8, 4); }

static u8 const mSpeed[64];
static f32 const mSpeed[16];

private:
/* 0x568 */ u8 field_0x568[0x5d4 - 0x568];
/* 0x5a0 */ request_of_phase_process_class mPhaseReq;
/* 0x5a8 */ J3DModel* mpModel;
/* 0x5ac */ u8 field_0x5ac [0x5ae - 0x5ac];
/* 0x5ae */ u8 field_0x5ae;
/* 0x5af */ s8 field_0x5af;
/* 0x5b0 */ s16 mPoint;
/* 0x5b4 */ cXyz field_0x5b4;
/* 0x5c0 */ cXyz field_0x5c0;
/* 0x5cc */ f32 mMoveSpeed;
/* 0x5d0 */ u8 mMode;
/* 0x5d1 */ u8 is_switch;
};

STATIC_ASSERT(sizeof(daMagLift_c) == 0x5d4);

class daMagLift_HIO_c {
class daMagLift_HIO_c : public mDoHIO_entry_c {
public:
/* 80C8DA2C */ daMagLift_HIO_c();
/* 80C8E5B0 */ ~daMagLift_HIO_c();
/* 80C8E5B0 */ virtual ~daMagLift_HIO_c() {}

/* 0x4 */ u8 field_0x4;
/* 0x5 */ u8 field_0x5;
};


Expand Down
Loading
Loading