mirror of
https://github.com/zeldaret/st
synced 2026-10-16 00:26:14 -04:00
Match actors 5 (#164)
* ActorUnkTGTZ OK * ActorUnkSWCH OK * ActorUnkFLEN OK * fix build * mark flen as complete for eur * ActorUnkCLLT OK * ActorUnkMLCK OK * ActorRollingStone and ActorItemTornado OK * remove useless thing
This commit is contained in:
@@ -155,7 +155,7 @@ public:
|
||||
|
||||
void Destroy() {
|
||||
for (UnkStruct_PlayerGet_ec *ptr = this->mUnk_00; ptr != &this->mUnk_00[ARRAY_LEN(this->mUnk_00)]; ++ptr) {
|
||||
ptr->func_ov000_020a0334();
|
||||
ptr->mUnk_00.func_ov000_020a0334();
|
||||
}
|
||||
|
||||
this->mUnk_08.Init();
|
||||
|
||||
@@ -23,7 +23,6 @@ public:
|
||||
/* 10 */
|
||||
|
||||
void func_ov031_020e45fc();
|
||||
void func_ov031_020e5704();
|
||||
};
|
||||
|
||||
class ActorItemBoomerang_11C : public UnkStruct_ov031_Items_00 {
|
||||
@@ -73,7 +72,7 @@ public:
|
||||
/* 118 */ unk32 mUnk_118;
|
||||
/* 11C */ ActorItemBoomerang_11C mUnk_11C;
|
||||
/* 128 */ u32 mUnk_128;
|
||||
/* 12C */ UnkStruct_PlayerGet_ec mUnk_12C[0x3];
|
||||
/* 12C */ UnkSystem7 mUnk_12C[0x3];
|
||||
/* 138 */ Timer mUnk_138;
|
||||
/* 13C */ u16 mUnk_13C;
|
||||
/* 13E */ PAD(0x13E, 0x140);
|
||||
|
||||
@@ -60,7 +60,7 @@ public:
|
||||
/* 1D6 */ u16 mUnk_1D6;
|
||||
/* 1D8 */ unk32 mUnk_1D8;
|
||||
/* 1DC */ fx32 mUnk_1DC;
|
||||
/* 1E0 */ UnkStruct_PlayerGet_ec mUnk_1E0[0x3];
|
||||
/* 1E0 */ UnkSystem7 mUnk_1E0[0x3];
|
||||
/* 1EC */
|
||||
|
||||
ActorItemTornado();
|
||||
|
||||
@@ -8,6 +8,7 @@
|
||||
#include "Render/ModelRender.hpp"
|
||||
#include "Unknown/UnkStruct_ov031_Items.hpp"
|
||||
#include "global.h"
|
||||
#include "nitro/fx.h"
|
||||
#include "types.h"
|
||||
|
||||
enum ActorRollingStoneState_ {
|
||||
@@ -22,7 +23,7 @@ enum ActorRollingStoneState_ {
|
||||
ActorRollingStoneState_8 = 8,
|
||||
ActorRollingStoneState_9 = 9,
|
||||
ActorRollingStoneState_10 = 10,
|
||||
ActorRollingStoneState_MAX
|
||||
ActorRollingStoneState_Max
|
||||
};
|
||||
|
||||
class ActorRollingStone;
|
||||
@@ -64,7 +65,7 @@ public:
|
||||
/* 108 */ u16 mUnk_108;
|
||||
/* 10A */ PAD(0x10A, 0x10C);
|
||||
/* 10C */ MtxFx33 mUnk_10C;
|
||||
/* 130 */ UnkStruct_PlayerGet_ec mUnk_130[0x2];
|
||||
/* 130 */ UnkSystem7 mUnk_130[0x2];
|
||||
/* 138 */ unk16 mUnk_138;
|
||||
/* 13C */ Cylinder mUnk_13C;
|
||||
/* 14C */ unk32 mUnk_14C;
|
||||
|
||||
@@ -6,11 +6,15 @@
|
||||
#include "global.h"
|
||||
#include "types.h"
|
||||
|
||||
class ActorUnkEFIK_98 : public UnkSystem7 {
|
||||
public:
|
||||
};
|
||||
|
||||
class ActorUnkEFIK : public Actor {
|
||||
public:
|
||||
/* 00 (base) */
|
||||
/* 94 */ unk32 mUnk_94;
|
||||
/* 98 */ UnkSystem7 mUnk_98;
|
||||
/* 98 */ ActorUnkEFIK_98 mUnk_98;
|
||||
/* 9C */ unk32 mUnk_9C;
|
||||
/* A0 */ unk32 mUnk_A0;
|
||||
|
||||
|
||||
@@ -48,13 +48,13 @@ public:
|
||||
/* 30 */ virtual void vfunc_2C(unk32 param1) override;
|
||||
/* 34 */ virtual void vfunc_30(Actor_vfunc_30 *param1) override;
|
||||
|
||||
void func_ov031_020f6984();
|
||||
static void func_ov031_020f6e5c(RefStruct param1);
|
||||
static void func_ov031_020f6ea8(RefStruct *param0, u16 param1, const VecFx32 *param2, s16 param3, u16 param4);
|
||||
void func_ov031_020f6f20(unk32 param1);
|
||||
void func_ov031_020f7358();
|
||||
void func_ov031_020f73e4();
|
||||
void func_ov031_020f73f0();
|
||||
|
||||
static void func_ov031_020f6e5c(RefStruct param1);
|
||||
static void func_ov031_020f6ea8(RefStruct *param0, u16 param1, const VecFx32 *param2, s16 param3, u16 param4);
|
||||
};
|
||||
|
||||
class ActorProfileUnkTGTZ : public ActorProfile_Derived1 {
|
||||
|
||||
@@ -84,6 +84,18 @@ struct ActorRef {
|
||||
return ret;
|
||||
}
|
||||
|
||||
const bool UnkCheck2Alt() {
|
||||
bool ret = false;
|
||||
|
||||
if (((s32) this->type_index == REF_TYPE_INDEX(ActorRefType_0, 0x100) ||
|
||||
this->type_index == REF_TYPE_INDEX(ActorRefType_0, 0x101)) &&
|
||||
this->GetTypeIndex1() == 0x01) {
|
||||
ret = true;
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
const bool UnkCheck3(u16 value) {
|
||||
BOOL ret = false;
|
||||
|
||||
|
||||
@@ -215,7 +215,7 @@ public:
|
||||
struct UnkStruct_ov019_020d24c8_28_258_00 {
|
||||
/* 00 */ void *mUnk_00;
|
||||
/* 04 */ unk32 mUnk_04;
|
||||
/* 0C */
|
||||
/* 08 */
|
||||
|
||||
UnkStruct_ov019_020d24c8_28_258_00() {}
|
||||
|
||||
@@ -1022,15 +1022,16 @@ public:
|
||||
/* 00 */ UnkSystem7_UnkStruct_00 *mUnk_00;
|
||||
/* 04 */
|
||||
|
||||
WEAK UnkSystem7() {
|
||||
this->mUnk_00 = NULL;
|
||||
}
|
||||
|
||||
UnkSystem7(UnkSystem7_UnkStruct_00 *param1) {
|
||||
this->mUnk_00 = param1;
|
||||
}
|
||||
|
||||
~UnkSystem7() {
|
||||
this->func_ov000_020a0304();
|
||||
}
|
||||
~UnkSystem7();
|
||||
|
||||
void func_ov000_020a0304(void);
|
||||
void func_ov000_020a0334();
|
||||
};
|
||||
|
||||
@@ -1047,16 +1048,15 @@ public:
|
||||
mUnk_08(param3) {}
|
||||
};
|
||||
|
||||
class UnkStruct_PlayerGet_ec : public UnkSystem7 {
|
||||
class UnkStruct_PlayerGet_ec {
|
||||
public:
|
||||
/* 00 (base) */
|
||||
/* 00 */ UnkSystem7 mUnk_00;
|
||||
/* 04 */
|
||||
|
||||
UnkStruct_PlayerGet_ec(UnkSystem7_UnkStruct_00 *param1) :
|
||||
UnkSystem7(param1) {}
|
||||
mUnk_00(param1) {}
|
||||
|
||||
UnkStruct_PlayerGet_ec();
|
||||
~UnkStruct_PlayerGet_ec();
|
||||
};
|
||||
|
||||
class UnkActorSystem2 : public GameModeManagerBase_104 {
|
||||
|
||||
@@ -96,8 +96,8 @@ public:
|
||||
~UnkStruct_027e0ce0_1C();
|
||||
|
||||
// overlay 0
|
||||
G3d_Model *func_ov000_0208ed30(unk32 param1, unk32 param2, char *param3);
|
||||
UnkStruct_ov000_02058a84 *func_ov000_0208ee94(unk32 param1, unk32 param2, char *param3, unk32 param4);
|
||||
G3d_Model *func_ov000_0208ed30(unk32 param1, unk32 param2, const char *param3);
|
||||
UnkStruct_ov000_02058a84 *func_ov000_0208ee94(unk32 param1, unk32 param2, const char *param3, unk32 param4);
|
||||
|
||||
// overlay 1
|
||||
void func_ov001_020bccec();
|
||||
@@ -936,7 +936,7 @@ public:
|
||||
void func_ov000_0208bd20(bool param1, unk32 param2, unk32 param3);
|
||||
void func_ov000_0208bd30(bool param1, unk32 param2, unk32 param3, unk32 param4);
|
||||
bool func_ov000_0208be0c(RefStruct param1);
|
||||
bool func_ov000_0208be70(VecFx32 param1);
|
||||
bool func_ov000_0208be70();
|
||||
bool func_ov000_0208bee8();
|
||||
bool func_ov000_0208bf34(unk32 param1);
|
||||
|
||||
|
||||
@@ -122,10 +122,9 @@ public:
|
||||
// overlay 0
|
||||
void func_ov000_0209feac(unk32 param1, VecFx32 *param2, unk32 param3, unk32 param4, unk32 param5);
|
||||
void func_ov000_0209ff24(unk32 param1, VecFx32 *param2, VecFx16 *param3, unk32 param4);
|
||||
void func_ov000_0209ff8c(UnkStruct_PlayerGet_ec *param1, unk32 param2, VecFx32 *param3, unk32 param4);
|
||||
void func_ov000_020a0000(UnkStruct_PlayerGet_ec *param1, void *param2, unk32 *param3, VecFx32 *param4, unk32 param5);
|
||||
void func_ov000_020a00d4(UnkStruct_PlayerGet_ec *param1, unk32 param2, unk32 param3, unk32 param4, VecFx32 *param5,
|
||||
unk32 param6);
|
||||
void func_ov000_0209ff8c(UnkSystem7 *param1, unk32 param2, VecFx32 *param3, unk32 param4);
|
||||
void func_ov000_020a0000(UnkSystem7 *param1, void *param2, unk32 *param3, VecFx32 *param4, unk32 param5);
|
||||
void func_ov000_020a00d4(UnkSystem7 *param1, unk32 param2, unk32 param3, unk32 param4, VecFx32 *param5, unk32 param6);
|
||||
void func_ov000_020a0110(UnkSystem7 *param1);
|
||||
void func_ov000_020a0140(UnkSystem7 *param1, VecFx32 *param2);
|
||||
void func_ov000_020a0220(void *param1, void *param2);
|
||||
|
||||
+4
-6
@@ -41,12 +41,10 @@
|
||||
#define DF_CONCAT3(a, b, c) DF_CONCAT3_(a, b, c)
|
||||
#define DF_UNIQUE_IDENT(ident_) DF_CONCAT3(ident_, _, __LINE__)
|
||||
|
||||
// sometimes we need something in .bss
|
||||
// to force things in .data to align properly
|
||||
#define DATA_ALIGN_FIX() int DF_UNIQUE_IDENT(__data_align_fix)
|
||||
|
||||
// for cases where `DATA_ALIGN_FIX` doesn't work
|
||||
#define DATA_ALIGN_FIX2() \
|
||||
// sometimes we need dummy variables to force a section to align properly
|
||||
#define DUMMY_BSS() int DF_UNIQUE_IDENT(__data_align_fix)
|
||||
#define DUMMY_DATA(n) char DF_UNIQUE_IDENT(__data_align_fix)[n] = {1}
|
||||
#define DUMMY_RODATA() \
|
||||
static const int DF_UNIQUE_IDENT(__data_align_fix) = 0; \
|
||||
void DF_UNIQUE_IDENT(__data_align_fix_func)() { \
|
||||
*(int *) &DF_UNIQUE_IDENT(__data_align_fix) = 0; \
|
||||
|
||||
Reference in New Issue
Block a user