d_a_tag_poFire OK

This commit is contained in:
Trueffeloot 2023-04-08 06:24:08 +02:00
parent 78196a1889
commit f49824a4e0
5 changed files with 88 additions and 204 deletions

View File

@ -6,6 +6,7 @@
class mDoHIO_entry_c {
public:
virtual ~mDoHIO_entry_c() {}
u8 unk_0x4;
};
#endif /* M_DO_M_DO_HOSTIO_H */

View File

@ -26,7 +26,6 @@ public:
/* 80D5B2EC */ daLv6CstaSw_HIO_c();
/* 80D5B740 */ virtual ~daLv6CstaSw_HIO_c();
/* 0x04 */ s8 field_0x4;
};
#endif /* D_A_TAG_LV6CSTASW_H */

View File

@ -1,6 +1,27 @@
#ifndef D_A_TAG_POFIRE_H
#define D_A_TAG_POFIRE_H
#include "dolphin/types.h"
#include "d/com/d_com_inf_game.h"
#include "f_op/f_op_actor_mng.h"
#include "m_Do/m_Do_hostIO.h"
class daTagPoFire_c : public fopAc_ac_c {
public:
/* 80D5DB38 */ void setBaseMtx();
/* 80D5DB90 */ int create();
/* 80D5DBF0 */ int Execute();
/* 80D5DC20 */ int Draw();
/* 80D5DC28 */ int Delete();
/* 0x568 */ u8 field_0x568;
/* 0x569 */ u8 field_0x569;
/* 0x56B */ u16 field_0x56b;
};
class daTagPoFire_HIO_c : public mDoHIO_entry_c {
public:
/* 80D5DACC */ daTagPoFire_HIO_c();
/* 80D5DCB0 */ virtual ~daTagPoFire_HIO_c();
};
#endif /* D_A_TAG_POFIRE_H */

View File

@ -7,7 +7,7 @@
/* 80D5B2EC-80D5B310 0000EC 0024+00 1/1 0/0 0/0 .text __ct__17daLv6CstaSw_HIO_cFv */
daLv6CstaSw_HIO_c::daLv6CstaSw_HIO_c() {
field_0x4 = 0;
unk_0x4 = 0;
}
/* 80D5B358-80D5B3B0 000158 0058+00 1/1 0/0 0/0 .text setBaseMtx__13daLv6CstaSw_cFv */

View File

@ -1,244 +1,107 @@
//
// Generated By: dol2asm
// Translation Unit: d_a_tag_poFire
//
/**
* d_a_tag_poFire.cpp
* Tag - Poe Fire
*/
#include "rel/d/a/tag/d_a_tag_poFire/d_a_tag_poFire.h"
#include "dol2asm.h"
#include "dolphin/types.h"
//
// Types:
//
struct mDoMtx_stack_c {
static u8 now[48];
};
struct mDoHIO_entry_c {
/* 80D5DAF0 */ ~mDoHIO_entry_c();
};
struct fopAc_ac_c {
/* 80018B64 */ fopAc_ac_c();
};
struct daTagPoFire_c {
/* 80D5DB38 */ void setBaseMtx();
/* 80D5DB90 */ void create();
/* 80D5DBF0 */ void Execute();
/* 80D5DC20 */ bool Draw();
/* 80D5DC28 */ bool Delete();
};
struct daTagPoFire_HIO_c {
/* 80D5DACC */ daTagPoFire_HIO_c();
/* 80D5DCB0 */ ~daTagPoFire_HIO_c();
};
//
// Forward References:
//
extern "C" void __ct__17daTagPoFire_HIO_cFv();
extern "C" void __dt__14mDoHIO_entry_cFv();
extern "C" void setBaseMtx__13daTagPoFire_cFv();
extern "C" void create__13daTagPoFire_cFv();
extern "C" void Execute__13daTagPoFire_cFv();
extern "C" bool Draw__13daTagPoFire_cFv();
extern "C" bool Delete__13daTagPoFire_cFv();
extern "C" static void daTagPoFire_Draw__FP13daTagPoFire_c();
extern "C" static void daTagPoFire_Execute__FP13daTagPoFire_c();
extern "C" static void daTagPoFire_Delete__FP13daTagPoFire_c();
extern "C" static void daTagPoFire_Create__FP10fopAc_ac_c();
extern "C" void __dt__17daTagPoFire_HIO_cFv();
extern "C" void __sinit_d_a_tag_poFire_cpp();
//
// External References:
//
extern "C" void mDoMtx_ZXYrotM__FPA4_fsss();
extern "C" void __ct__10fopAc_ac_cFv();
extern "C" void fopAcM_delete__FP10fopAc_ac_c();
extern "C" void __dl__FPv();
extern "C" void PSMTXTrans();
extern "C" extern void* g_fopAc_Method[8];
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
extern "C" u8 now__14mDoMtx_stack_c[48];
extern "C" void __register_global_object();
//
// Declarations:
//
/* ############################################################################################## */
/* 80D5DD5C-80D5DD7C -00001 0020+00 1/0 0/0 0/0 .data l_daTagPoFire_Method */
SECTION_DATA static void* l_daTagPoFire_Method[8] = {
(void*)daTagPoFire_Create__FP10fopAc_ac_c,
(void*)daTagPoFire_Delete__FP13daTagPoFire_c,
(void*)daTagPoFire_Execute__FP13daTagPoFire_c,
(void*)NULL,
(void*)daTagPoFire_Draw__FP13daTagPoFire_c,
(void*)NULL,
(void*)NULL,
(void*)NULL,
};
/* 80D5DD7C-80D5DDAC -00001 0030+00 0/0 0/0 1/0 .data g_profile_Tag_poFire */
SECTION_DATA extern void* g_profile_Tag_poFire[12] = {
(void*)0xFFFFFFFD, (void*)0x0007FFFD,
(void*)0x017A0000, (void*)&g_fpcLf_Method,
(void*)0x0000056C, (void*)NULL,
(void*)NULL, (void*)&g_fopAc_Method,
(void*)0x02890000, (void*)&l_daTagPoFire_Method,
(void*)0x00044000, (void*)0x000E0000,
};
/* 80D5DDAC-80D5DDB8 000050 000C+00 2/2 0/0 0/0 .data __vt__17daTagPoFire_HIO_c */
SECTION_DATA extern void* __vt__17daTagPoFire_HIO_c[3] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)__dt__17daTagPoFire_HIO_cFv,
};
/* 80D5DDB8-80D5DDC4 00005C 000C+00 3/3 0/0 0/0 .data __vt__14mDoHIO_entry_c */
SECTION_DATA extern void* __vt__14mDoHIO_entry_c[3] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)__dt__14mDoHIO_entry_cFv,
};
/* 80D5DACC-80D5DAF0 0000EC 0024+00 1/1 0/0 0/0 .text __ct__17daTagPoFire_HIO_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm daTagPoFire_HIO_c::daTagPoFire_HIO_c() {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_poFire/d_a_tag_poFire/__ct__17daTagPoFire_HIO_cFv.s"
daTagPoFire_HIO_c::daTagPoFire_HIO_c() {
unk_0x4 = 0x14;
}
#pragma pop
/* 80D5DAF0-80D5DB38 000110 0048+00 1/0 0/0 0/0 .text __dt__14mDoHIO_entry_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm mDoHIO_entry_c::~mDoHIO_entry_c() {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_poFire/d_a_tag_poFire/__dt__14mDoHIO_entry_cFv.s"
}
#pragma pop
/* 80D5DB38-80D5DB90 000158 0058+00 1/1 0/0 0/0 .text setBaseMtx__13daTagPoFire_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daTagPoFire_c::setBaseMtx() {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_poFire/d_a_tag_poFire/setBaseMtx__13daTagPoFire_cFv.s"
void daTagPoFire_c::setBaseMtx() {
mDoMtx_stack_c::transS(current.pos.x, current.pos.y, current.pos.z);
mDoMtx_stack_c::ZXYrotM(shape_angle.x, shape_angle.y, shape_angle.z);
}
#pragma pop
/* 80D5DB90-80D5DBF0 0001B0 0060+00 1/1 0/0 0/0 .text create__13daTagPoFire_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daTagPoFire_c::create() {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_poFire/d_a_tag_poFire/create__13daTagPoFire_cFv.s"
int daTagPoFire_c::create() {
if (!fopAcM_CheckCondition(this, 8)) {
new (this) daTagPoFire_c();
fopAcM_OnCondition(this, 8);
}
field_0x569 = 0;
setBaseMtx();
return cPhs_COMPLEATE_e;
}
#pragma pop
/* 80D5DBF0-80D5DC20 000210 0030+00 1/1 0/0 0/0 .text Execute__13daTagPoFire_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daTagPoFire_c::Execute() {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_poFire/d_a_tag_poFire/Execute__13daTagPoFire_cFv.s"
int daTagPoFire_c::Execute() {
if (field_0x569) {
fopAcM_delete(this);
}
return 1;
}
#pragma pop
/* 80D5DC20-80D5DC28 000240 0008+00 1/1 0/0 0/0 .text Draw__13daTagPoFire_cFv */
bool daTagPoFire_c::Draw() {
return true;
int daTagPoFire_c::Draw() {
return 1;
}
/* 80D5DC28-80D5DC30 000248 0008+00 1/1 0/0 0/0 .text Delete__13daTagPoFire_cFv */
bool daTagPoFire_c::Delete() {
return true;
int daTagPoFire_c::Delete() {
return 1;
}
/* 80D5DC30-80D5DC50 000250 0020+00 1/0 0/0 0/0 .text daTagPoFire_Draw__FP13daTagPoFire_c
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void daTagPoFire_Draw(daTagPoFire_c* param_0) {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_poFire/d_a_tag_poFire/daTagPoFire_Draw__FP13daTagPoFire_c.s"
static int daTagPoFire_Draw(daTagPoFire_c* i_this) {
return i_this->Draw();
}
#pragma pop
/* 80D5DC50-80D5DC70 000270 0020+00 1/0 0/0 0/0 .text daTagPoFire_Execute__FP13daTagPoFire_c */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void daTagPoFire_Execute(daTagPoFire_c* param_0) {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_poFire/d_a_tag_poFire/daTagPoFire_Execute__FP13daTagPoFire_c.s"
static int daTagPoFire_Execute(daTagPoFire_c* i_this) {
return i_this->Execute();
}
#pragma pop
/* 80D5DC70-80D5DC90 000290 0020+00 1/0 0/0 0/0 .text daTagPoFire_Delete__FP13daTagPoFire_c */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void daTagPoFire_Delete(daTagPoFire_c* param_0) {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_poFire/d_a_tag_poFire/daTagPoFire_Delete__FP13daTagPoFire_c.s"
static int daTagPoFire_Delete(daTagPoFire_c* i_this) {
return i_this->Delete();
}
#pragma pop
/* 80D5DC90-80D5DCB0 0002B0 0020+00 1/0 0/0 0/0 .text daTagPoFire_Create__FP10fopAc_ac_c
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void daTagPoFire_Create(fopAc_ac_c* param_0) {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_poFire/d_a_tag_poFire/daTagPoFire_Create__FP10fopAc_ac_c.s"
static int daTagPoFire_Create(fopAc_ac_c* i_this) {
return static_cast<daTagPoFire_c*>(i_this)->create();
}
#pragma pop
/* 80D5DCB0-80D5DD0C 0002D0 005C+00 2/1 0/0 0/0 .text __dt__17daTagPoFire_HIO_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm daTagPoFire_HIO_c::~daTagPoFire_HIO_c() {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_poFire/d_a_tag_poFire/__dt__17daTagPoFire_HIO_cFv.s"
}
#pragma pop
daTagPoFire_HIO_c::~daTagPoFire_HIO_c() {}
/* ############################################################################################## */
/* 80D5DDD0-80D5DDDC 000008 000C+00 1/1 0/0 0/0 .bss @3617 */
static u8 lit_3617[12];
/* 80D5DDDC-80D5DDE4 000014 0008+00 1/1 0/0 0/0 .bss l_HIO */
static u8 l_HIO[8];
static daTagPoFire_HIO_c l_HIO;
/* 80D5DD0C-80D5DD48 00032C 003C+00 0/0 1/0 0/0 .text __sinit_d_a_tag_poFire_cpp */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void __sinit_d_a_tag_poFire_cpp() {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_poFire/d_a_tag_poFire/__sinit_d_a_tag_poFire_cpp.s"
}
#pragma pop
/* 80D5DD5C-80D5DD7C -00001 0020+00 1/0 0/0 0/0 .data l_daTagPoFire_Method */
static actor_method_class l_daTagPoFire_Method = {
(process_method_func)daTagPoFire_Create, (process_method_func)daTagPoFire_Delete,
(process_method_func)daTagPoFire_Execute, (process_method_func)NULL,
(process_method_func)daTagPoFire_Draw,
};
#pragma push
#pragma force_active on
REGISTER_CTORS(0x80D5DD0C, __sinit_d_a_tag_poFire_cpp);
#pragma pop
/* 80D5DD7C-80D5DDAC -00001 0030+00 0/0 0/0 1/0 .data g_profile_Tag_poFire */
extern actor_process_profile_definition g_profile_Tag_poFire = {
-3, // mLayerID
7, // mListID
-3, // mListPrio
PROC_Tag_poFire, // mProcName
0, // Padding
&g_fpcLf_Method.mBase, // mSubMtd
sizeof(daTagPoFire_c), // mSize
0, // mSizeOther
0, // mParameters
&g_fopAc_Method.base, // mSubMtd
0x0289, // mPriority
0, // Padding
0, // Padding
&l_daTagPoFire_Method, // mSubMtd
0x00044000, // mStatus
0, // mActorType
14, // mCullType
0, // Padding
0, // Padding
};