summaryrefslogtreecommitdiff
path: root/rel
diff options
context:
space:
mode:
authorTrueffeloot <geiloking135@gmail.com>2023-04-08 06:43:17 +0200
committerTrueffeloot <geiloking135@gmail.com>2023-04-08 06:43:17 +0200
commit4aa1e3447f45283dbdbfa22bd13fe7545aedcdba (patch)
tree7ffe63b4c7f894ff3ae1b075a5378d9cc611af6c /rel
parent5d9e6374e4eb449908166f5e8f3f32e8981b14da (diff)
parent5def43b161686f404ac78345208c6af447c24128 (diff)
Merge remote-tracking branch 'origin/work6'
Diffstat (limited to 'rel')
-rw-r--r--rel/d/a/obj/d_a_obj_bombf/d_a_obj_bombf.cpp38
-rw-r--r--rel/d/a/obj/d_a_obj_cowdoor/d_a_obj_cowdoor.cpp345
-rw-r--r--rel/d/a/tag/d_a_tag_lv6CstaSw/d_a_tag_lv6CstaSw.cpp2
-rw-r--r--rel/d/a/tag/d_a_tag_poFire/d_a_tag_poFire.cpp267
4 files changed, 173 insertions, 479 deletions
diff --git a/rel/d/a/obj/d_a_obj_bombf/d_a_obj_bombf.cpp b/rel/d/a/obj/d_a_obj_bombf/d_a_obj_bombf.cpp
index 40730ab8cd..a51dbbea03 100644
--- a/rel/d/a/obj/d_a_obj_bombf/d_a_obj_bombf.cpp
+++ b/rel/d/a/obj/d_a_obj_bombf/d_a_obj_bombf.cpp
@@ -129,23 +129,23 @@ static actor_method_class l_daObjBombf_Method = {
/* 80BBAEC8-80BBAEF8 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Obj_Bombf */
extern actor_process_profile_definition g_profile_Obj_Bombf = {
- -3,
- 7,
- -3,
- PROC_Obj_Bombf,
- 0,
- &g_fpcLf_Method.mBase,
- sizeof(daObjBombf_c),
- 0,
- 0,
- &g_fopAc_Method.base,
- 0x00FB,
- 0,
- 0,
- &l_daObjBombf_Method,
- 0x00040100,
- 3,
- 14,
- 0,
- 0,
+ -3, // mLayerID
+ 7, // mListID
+ -3, // mListPrio
+ PROC_Obj_Bombf, // mProcName
+ 0, // Padding
+ &g_fpcLf_Method.mBase, // mSubMtd
+ sizeof(daObjBombf_c), // mSize
+ 0, // mSizeOther
+ 0, // mParameters
+ &g_fopAc_Method.base, // mSubMtd
+ 0x00FB, // mPriority
+ 0, // Padding
+ 0, // Padding
+ &l_daObjBombf_Method, // mSubMtd
+ 0x00040100, // mStatus
+ 3, // mActorType
+ 14, // mCullType
+ 0, // Padding
+ 0, // Padding
};
diff --git a/rel/d/a/obj/d_a_obj_cowdoor/d_a_obj_cowdoor.cpp b/rel/d/a/obj/d_a_obj_cowdoor/d_a_obj_cowdoor.cpp
index 781c759f4d..2da2f7918a 100644
--- a/rel/d/a/obj/d_a_obj_cowdoor/d_a_obj_cowdoor.cpp
+++ b/rel/d/a/obj/d_a_obj_cowdoor/d_a_obj_cowdoor.cpp
@@ -1,301 +1,132 @@
-//
-// Generated By: dol2asm
-// Translation Unit: d_a_obj_cowdoor
-//
+/**
+ * d_a_obj_cowdoor.cpp
+ * Cow Door
+ */
#include "rel/d/a/obj/d_a_obj_cowdoor/d_a_obj_cowdoor.h"
-#include "dol2asm.h"
-#include "dolphin/types.h"
-
-//
-// Types:
-//
-
-struct request_of_phase_process_class {};
-
-struct mDoMtx_stack_c {
- static u8 now[48];
-};
-
-struct fopAc_ac_c {};
-
-struct daCowdoor_c {
- /* 80BCC7F8 */ void setBaseMtx();
- /* 80BCC86C */ void Create();
- /* 80BCC8C4 */ void CreateHeap();
- /* 80BCC93C */ void create();
- /* 80BCCA1C */ void Execute(f32 (**)[3][4]);
- /* 80BCCA48 */ void Draw();
- /* 80BCCAEC */ void Delete();
-};
-
-struct dKy_tevstr_c {};
-
-struct J3DModelData {};
-
-struct cXyz {};
-
-struct dScnKy_env_light_c {
- /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*);
- /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*);
-};
-
-struct dRes_info_c {};
-
-struct dRes_control_c {
- /* 8003C37C */ void getRes(char const*, char const*, dRes_info_c*, int);
- /* 8003C6B8 */ void getObjectResName2Index(char const*, char const*);
-};
-
-struct dBgW {};
-
-struct cBgS_PolyInfo {};
-
-struct csXyz {};
-
-struct dBgS_MoveBgActor {
- /* 80078624 */ dBgS_MoveBgActor();
- /* 800786B0 */ bool IsDelete();
- /* 800786B8 */ bool ToFore();
- /* 800786C0 */ bool ToBack();
- /* 800787BC */ void MoveBGCreate(char const*, int,
- void (*)(dBgW*, void*, cBgS_PolyInfo const&, bool, cXyz*,
- csXyz*, csXyz*),
- u32, f32 (*)[3][4]);
- /* 800788DC */ void MoveBGDelete();
- /* 80078950 */ void MoveBGExecute();
-};
-
-struct J3DModel {};
-
-//
-// Forward References:
-//
-
-extern "C" void setBaseMtx__11daCowdoor_cFv();
-extern "C" void Create__11daCowdoor_cFv();
-extern "C" void CreateHeap__11daCowdoor_cFv();
-extern "C" void create__11daCowdoor_cFv();
-extern "C" void Execute__11daCowdoor_cFPPA3_A4_f();
-extern "C" void Draw__11daCowdoor_cFv();
-extern "C" void Delete__11daCowdoor_cFv();
-extern "C" static void daCowdoor_Draw__FP11daCowdoor_c();
-extern "C" static void daCowdoor_Execute__FP11daCowdoor_c();
-extern "C" static void daCowdoor_Delete__FP11daCowdoor_c();
-extern "C" static void daCowdoor_Create__FP10fopAc_ac_c();
-extern "C" extern char const* const d_a_obj_cowdoor__stringBase0;
-
-//
-// External References:
-//
-
-extern "C" void mDoMtx_YrotM__FPA4_fs();
-extern "C" void mDoExt_modelUpdateDL__FP8J3DModel();
-extern "C" void mDoExt_J3DModel__create__FP12J3DModelDataUlUl();
-extern "C" void fopAcM_setCullSizeBox2__FP10fopAc_ac_cP12J3DModelData();
-extern "C" void dComIfG_resLoad__FP30request_of_phase_process_classPCc();
-extern "C" void dComIfG_resDelete__FP30request_of_phase_process_classPCc();
-extern "C" void getRes__14dRes_control_cFPCcPCcP11dRes_info_ci();
-extern "C" void getObjectResName2Index__14dRes_control_cFPCcPCc();
-extern "C" void dBgS_MoveBGProc_TypicalRotY__FP4dBgWPvRC13cBgS_PolyInfobP4cXyzP5csXyzP5csXyz();
-extern "C" void __ct__16dBgS_MoveBgActorFv();
-extern "C" bool IsDelete__16dBgS_MoveBgActorFv();
-extern "C" bool ToFore__16dBgS_MoveBgActorFv();
-extern "C" bool ToBack__16dBgS_MoveBgActorFv();
-extern "C" void
-MoveBGCreate__16dBgS_MoveBgActorFPCciPFP4dBgWPvRC13cBgS_PolyInfobP4cXyzP5csXyzP5csXyz_vUlPA3_A4_f();
-extern "C" void MoveBGDelete__16dBgS_MoveBgActorFv();
-extern "C" void MoveBGExecute__16dBgS_MoveBgActorFv();
-extern "C" void settingTevStruct__18dScnKy_env_light_cFiP4cXyzP12dKy_tevstr_c();
-extern "C" void setLightTevColorType_MAJI__18dScnKy_env_light_cFP12J3DModelDataP12dKy_tevstr_c();
-extern "C" void PSMTXCopy();
-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" extern u8 g_dComIfG_gameInfo[122384];
-extern "C" extern u8 g_env_light[4880];
-extern "C" extern u8 j3dSys[284];
-
-//
-// Declarations:
-//
/* 80BCC7F8-80BCC86C 000078 0074+00 2/2 0/0 0/0 .text setBaseMtx__11daCowdoor_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daCowdoor_c::setBaseMtx() {
- nofralloc
-#include "asm/rel/d/a/obj/d_a_obj_cowdoor/d_a_obj_cowdoor/setBaseMtx__11daCowdoor_cFv.s"
+void daCowdoor_c::setBaseMtx() {
+ PSMTXTrans(mDoMtx_stack_c::now, current.pos.x, current.pos.y, current.pos.z);
+ mDoMtx_stack_c::YrotM(shape_angle.y);
+ PSMTXCopy(mDoMtx_stack_c::now, field_0x5a8->mBaseTransformMtx);
+ PSMTXCopy(mDoMtx_stack_c::now, field_0x56c);
}
-#pragma pop
-
-/* ############################################################################################## */
-/* 80BCCBB4-80BCCBB8 000000 0004+00 1/1 0/0 0/0 .rodata @3648 */
-SECTION_RODATA static f32 const lit_3648 = 5.0f;
-COMPILER_STRIP_GATE(0x80BCCBB4, &lit_3648);
/* 80BCC86C-80BCC8C4 0000EC 0058+00 1/0 0/0 0/0 .text Create__11daCowdoor_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daCowdoor_c::Create() {
- nofralloc
-#include "asm/rel/d/a/obj/d_a_obj_cowdoor/d_a_obj_cowdoor/Create__11daCowdoor_cFv.s"
+int daCowdoor_c::Create() {
+ setBaseMtx();
+ mCullMtx = field_0x5a8->mBaseTransformMtx;
+ fopAcM_setCullSizeBox2(this, field_0x5a8->getModelData());
+ mCullSizeFar = 5.0f;
+ return 1;
}
-#pragma pop
-
-/* ############################################################################################## */
-/* 80BCCBB8-80BCCBB8 000004 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_80BCCBB8 = "A_UHDoor";
-SECTION_DEAD static char const* const stringBase_80BCCBC1 = "A_UHDoor.bmd";
-#pragma pop
/* 80BCCBDC-80BCCBE0 -00001 0004+00 3/3 0/0 0/0 .data l_arcName */
-SECTION_DATA static void* l_arcName = (void*)&d_a_obj_cowdoor__stringBase0;
+static const char* l_arcName[] = {"A_UHDoor"};
/* 80BCCBE0-80BCCBE4 -00001 0004+00 1/1 0/0 0/0 .data l_bmdName */
-SECTION_DATA static void* l_bmdName = (void*)(((char*)&d_a_obj_cowdoor__stringBase0) + 0x9);
+static const char* l_bmdName[] = {"A_UHDoor.bmd"};
/* 80BCC8C4-80BCC93C 000144 0078+00 1/0 0/0 0/0 .text CreateHeap__11daCowdoor_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daCowdoor_c::CreateHeap() {
- nofralloc
-#include "asm/rel/d/a/obj/d_a_obj_cowdoor/d_a_obj_cowdoor/CreateHeap__11daCowdoor_cFv.s"
+int daCowdoor_c::CreateHeap() {
+ field_0x5a8 = mDoExt_J3DModel__create(
+ (J3DModelData*)dComIfG_getObjectRes(l_arcName[0], l_bmdName[0]), 0x80000, 0x11000084);
+ return (field_0x5a8 != NULL) ? 1 : 0;
}
-#pragma pop
-
-/* ############################################################################################## */
-/* 80BCCBB8-80BCCBB8 000004 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_80BCCBCE = "A_UHDoor.dzb";
-#pragma pop
/* 80BCCBE4-80BCCBE8 -00001 0004+00 1/1 0/0 0/0 .data l_dzbName */
-SECTION_DATA static void* l_dzbName = (void*)(((char*)&d_a_obj_cowdoor__stringBase0) + 0x16);
-
-/* 80BCCBE8-80BCCC08 -00001 0020+00 1/0 0/0 0/0 .data l_daCowdoor_Method */
-SECTION_DATA static void* l_daCowdoor_Method[8] = {
- (void*)daCowdoor_Create__FP10fopAc_ac_c,
- (void*)daCowdoor_Delete__FP11daCowdoor_c,
- (void*)daCowdoor_Execute__FP11daCowdoor_c,
- (void*)NULL,
- (void*)daCowdoor_Draw__FP11daCowdoor_c,
- (void*)NULL,
- (void*)NULL,
- (void*)NULL,
-};
-
-/* 80BCCC08-80BCCC38 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Obj_Cowdoor */
-SECTION_DATA extern void* g_profile_Obj_Cowdoor[12] = {
- (void*)0xFFFFFFFD, (void*)0x0003FFFD,
- (void*)0x005D0000, (void*)&g_fpcLf_Method,
- (void*)0x000005AC, (void*)NULL,
- (void*)NULL, (void*)&g_fopAc_Method,
- (void*)0x01BF0000, (void*)&l_daCowdoor_Method,
- (void*)0x00040100, (void*)0x000E0000,
-};
-
-/* 80BCCC38-80BCCC60 00005C 0028+00 1/1 0/0 0/0 .data __vt__11daCowdoor_c */
-SECTION_DATA extern void* __vt__11daCowdoor_c[10] = {
- (void*)NULL /* RTTI */,
- (void*)NULL,
- (void*)CreateHeap__11daCowdoor_cFv,
- (void*)Create__11daCowdoor_cFv,
- (void*)Execute__11daCowdoor_cFPPA3_A4_f,
- (void*)Draw__11daCowdoor_cFv,
- (void*)Delete__11daCowdoor_cFv,
- (void*)IsDelete__16dBgS_MoveBgActorFv,
- (void*)ToFore__16dBgS_MoveBgActorFv,
- (void*)ToBack__16dBgS_MoveBgActorFv,
-};
+static const char* l_dzbName[] = {"A_UHDoor.dzb"};
/* 80BCC93C-80BCCA1C 0001BC 00E0+00 1/1 0/0 0/0 .text create__11daCowdoor_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daCowdoor_c::create() {
- nofralloc
-#include "asm/rel/d/a/obj/d_a_obj_cowdoor/d_a_obj_cowdoor/func_80BCC93C.s"
+int daCowdoor_c::create() {
+ if (!fopAcM_CheckCondition(this, 8)) {
+ new (this) daCowdoor_c();
+ fopAcM_OnCondition(this, 8);
+ }
+ int phase = dComIfG_resLoad(&field_0x5a0, l_arcName[0]);
+ if (phase == cPhs_COMPLEATE_e) {
+ phase =
+ MoveBGCreate(l_arcName[0], dComIfG_getObjctResName2Index(l_arcName[0], l_dzbName[0]),
+ dBgS_MoveBGProc_TypicalRotY, 0x4000, NULL);
+ if (phase == cPhs_ERROR_e) {
+ return phase;
+ }
+ }
+ return phase;
}
-#pragma pop
/* 80BCCA1C-80BCCA48 00029C 002C+00 1/0 0/0 0/0 .text Execute__11daCowdoor_cFPPA3_A4_f */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daCowdoor_c::Execute(f32 (**param_0)[3][4]) {
- nofralloc
-#include "asm/rel/d/a/obj/d_a_obj_cowdoor/d_a_obj_cowdoor/Execute__11daCowdoor_cFPPA3_A4_f.s"
+int daCowdoor_c::Execute(f32 (**param_0)[3][4]) {
+ *param_0 = &field_0x56c;
+ setBaseMtx();
+ return 1;
}
-#pragma pop
/* 80BCCA48-80BCCAEC 0002C8 00A4+00 1/0 0/0 0/0 .text Draw__11daCowdoor_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daCowdoor_c::Draw() {
- nofralloc
-#include "asm/rel/d/a/obj/d_a_obj_cowdoor/d_a_obj_cowdoor/Draw__11daCowdoor_cFv.s"
+int daCowdoor_c::Draw() {
+ g_env_light.settingTevStruct(0x10, &current.pos, &mTevStr);
+ g_env_light.setLightTevColorType_MAJI(field_0x5a8->mModelData, &mTevStr);
+ dComIfGd_setListBG();
+ mDoExt_modelUpdateDL(field_0x5a8);
+ dComIfGd_setList();
+ return 1;
}
-#pragma pop
/* 80BCCAEC-80BCCB20 00036C 0034+00 1/0 0/0 0/0 .text Delete__11daCowdoor_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void daCowdoor_c::Delete() {
- nofralloc
-#include "asm/rel/d/a/obj/d_a_obj_cowdoor/d_a_obj_cowdoor/Delete__11daCowdoor_cFv.s"
+int daCowdoor_c::Delete() {
+ dComIfG_resDelete(&field_0x5a0, l_arcName[0]);
+ return 1;
}
-#pragma pop
/* 80BCCB20-80BCCB4C 0003A0 002C+00 1/0 0/0 0/0 .text daCowdoor_Draw__FP11daCowdoor_c */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-static asm void daCowdoor_Draw(daCowdoor_c* param_0) {
- nofralloc
-#include "asm/rel/d/a/obj/d_a_obj_cowdoor/d_a_obj_cowdoor/daCowdoor_Draw__FP11daCowdoor_c.s"
+static int daCowdoor_Draw(daCowdoor_c* i_this) {
+ return static_cast<dBgS_MoveBgActor*>(i_this)->Draw();
}
-#pragma pop
/* 80BCCB4C-80BCCB6C 0003CC 0020+00 1/0 0/0 0/0 .text daCowdoor_Execute__FP11daCowdoor_c
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-static asm void daCowdoor_Execute(daCowdoor_c* param_0) {
- nofralloc
-#include "asm/rel/d/a/obj/d_a_obj_cowdoor/d_a_obj_cowdoor/daCowdoor_Execute__FP11daCowdoor_c.s"
+static int daCowdoor_Execute(daCowdoor_c* i_this) {
+ return static_cast<dBgS_MoveBgActor*>(i_this)->MoveBGExecute();
}
-#pragma pop
/* 80BCCB6C-80BCCB8C 0003EC 0020+00 1/0 0/0 0/0 .text daCowdoor_Delete__FP11daCowdoor_c
*/
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-static asm void daCowdoor_Delete(daCowdoor_c* param_0) {
- nofralloc
-#include "asm/rel/d/a/obj/d_a_obj_cowdoor/d_a_obj_cowdoor/daCowdoor_Delete__FP11daCowdoor_c.s"
+static int daCowdoor_Delete(daCowdoor_c* i_this) {
+ return static_cast<dBgS_MoveBgActor*>(i_this)->MoveBGDelete();
}
-#pragma pop
/* 80BCCB8C-80BCCBAC 00040C 0020+00 1/0 0/0 0/0 .text daCowdoor_Create__FP10fopAc_ac_c */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-static asm void daCowdoor_Create(fopAc_ac_c* param_0) {
- nofralloc
-#include "asm/rel/d/a/obj/d_a_obj_cowdoor/d_a_obj_cowdoor/daCowdoor_Create__FP10fopAc_ac_c.s"
+static int daCowdoor_Create(fopAc_ac_c* i_this) {
+ return static_cast<daCowdoor_c*>(i_this)->create();
}
-#pragma pop
-/* 80BCCBB8-80BCCBB8 000004 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
+/* 80BCCBE8-80BCCC08 -00001 0020+00 1/0 0/0 0/0 .data l_daCowdoor_Method */
+static actor_method_class l_daCowdoor_Method = {
+ (process_method_func)daCowdoor_Create, (process_method_func)daCowdoor_Delete,
+ (process_method_func)daCowdoor_Execute, (process_method_func)NULL,
+ (process_method_func)daCowdoor_Draw,
+};
+
+/* 80BCCC08-80BCCC38 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Obj_Cowdoor */
+extern actor_process_profile_definition g_profile_Obj_Cowdoor = {
+ -3, // mLayerID
+ 3, // mListID
+ -3, // mListPrio
+ PROC_Obj_Cowdoor, // mProcName
+ 0, // Padding
+ &g_fpcLf_Method.mBase, // mSubMtd
+ sizeof(daCowdoor_c), // mSize
+ 0, // mSizeOther
+ 0, // mParameters
+ &g_fopAc_Method.base, // mSubMtd
+ 0x01BF, // mPriority
+ 0, // Padding
+ 0, // Padding
+ &l_daCowdoor_Method, // mSubMtd
+ 0x00040100, // mStatus
+ 0, // mActorType
+ 14, // mCullType
+ 0, // Padding
+ 0, // Padding
+}; \ No newline at end of file
diff --git a/rel/d/a/tag/d_a_tag_lv6CstaSw/d_a_tag_lv6CstaSw.cpp b/rel/d/a/tag/d_a_tag_lv6CstaSw/d_a_tag_lv6CstaSw.cpp
index 9b1942f0d3..a679220474 100644
--- a/rel/d/a/tag/d_a_tag_lv6CstaSw/d_a_tag_lv6CstaSw.cpp
+++ b/rel/d/a/tag/d_a_tag_lv6CstaSw/d_a_tag_lv6CstaSw.cpp
@@ -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 */
diff --git a/rel/d/a/tag/d_a_tag_poFire/d_a_tag_poFire.cpp b/rel/d/a/tag/d_a_tag_poFire/d_a_tag_poFire.cpp
index 8eb96eb88b..8f80310218 100644
--- a/rel/d/a/tag/d_a_tag_poFire/d_a_tag_poFire.cpp
+++ b/rel/d/a/tag/d_a_tag_poFire/d_a_tag_poFire.cpp
@@ -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"
-}
-#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"
+daTagPoFire_HIO_c::daTagPoFire_HIO_c() {
+ unk_0x4 = 0x14;
}
-#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];
-
-/* 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
+static daTagPoFire_HIO_c l_HIO;
-#pragma push
-#pragma force_active on
-REGISTER_CTORS(0x80D5DD0C, __sinit_d_a_tag_poFire_cpp);
-#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,
+};
+
+/* 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
+};