mirror of
https://github.com/zeldaret/st
synced 2026-07-05 13:33:47 -04:00
Start decompiling ActorUnkRBLS (#98)
* feat: Match ActorUnkRBLS vfunc_18, 20, 24 and 2C * fix: Use FLOAT_TO_FX32 instead of raw hex * feat: Update symbols * fix: Fix ModelRender::vfunc_18 symbol and childs declarations
This commit is contained in:
@@ -111,7 +111,7 @@ _ZN11ModelRender8vfunc_20Ev kind:function(arm,size=0x18) addr:0x02057d84
|
||||
func_ov000_02057d9c kind:function(arm,size=0x2c) addr:0x02057d9c
|
||||
_ZN11ModelRender8vfunc_10EP7VecFx32P5Mat3pS1_ kind:function(arm,size=0x7c) addr:0x02057dc8
|
||||
_ZN11ModelRender8vfunc_14EP5Mat3pP7VecFx32 kind:function(arm,size=0x64) addr:0x02057e44
|
||||
_ZN11ModelRender8vfunc_18Ev kind:function(arm,size=0x1c) addr:0x02057ea8
|
||||
_ZN11ModelRender8vfunc_18EP7VecFx32 kind:function(arm,size=0x1c) addr:0x02057ea8
|
||||
_ZN15ModelRenderBaseD1Ev kind:function(thumb,size=0x2) addr:0x02057ec4
|
||||
_ZN15ModelRenderBaseD0Ev kind:function(thumb,size=0xc) addr:0x02057ec8
|
||||
_ZN15ModelRenderBaseD2Ev kind:function(thumb,size=0x2) addr:0x02057ed4
|
||||
|
||||
@@ -252,10 +252,10 @@ _ZN19ActorProfileUnkRBLS6CreateEv kind:function(arm,size=0x24) addr:0x0215f2c4
|
||||
_ZN19ActorProfileUnkRBLSC1Ev kind:function(arm,size=0x28) addr:0x0215f2e8
|
||||
_ZN12ActorUnkRBLSC1Ev kind:function(arm,size=0xc4) addr:0x0215f310
|
||||
_ZN12ActorUnkRBLS19func_ov063_0215f3d4Ev kind:function(arm,size=0x14) addr:0x0215f3d4
|
||||
_ZN12ActorUnkRBLS19func_ov063_0215f3e8Ev kind:function(arm,size=0x8c) addr:0x0215f3e8
|
||||
_ZN12ActorUnkRBLS19func_ov063_0215f474Ev kind:function(arm,size=0x14) addr:0x0215f474
|
||||
_ZN12ActorUnkRBLS19func_ov063_0215f488Ev kind:function(arm,size=0x14) addr:0x0215f488
|
||||
_ZN12ActorUnkRBLS19func_ov063_0215f49cEv kind:function(arm,size=0x20) addr:0x0215f49c
|
||||
_ZN12ActorUnkRBLS8vfunc_18Ev kind:function(arm,size=0x8c) addr:0x0215f3e8
|
||||
_ZN12ActorUnkRBLS8vfunc_20Ev kind:function(arm,size=0x14) addr:0x0215f474
|
||||
_ZN12ActorUnkRBLS8vfunc_24Ev kind:function(arm,size=0x14) addr:0x0215f488
|
||||
_ZN12ActorUnkRBLS8vfunc_2CEv kind:function(arm,size=0x20) addr:0x0215f49c
|
||||
_ZN12ActorUnkRBLSD0Ev kind:function(arm,size=0x1c) addr:0x0215f4bc
|
||||
_ZN12ActorUnkRBLSD1Ev kind:function(arm,size=0x28) addr:0x0215f4d8
|
||||
_ZN12ActorUnkRBLS19func_ov063_0215f500Ev kind:function(arm,size=0x30) addr:0x0215f500
|
||||
@@ -465,7 +465,7 @@ data_ov063_021636f0 kind:data(any) addr:0x021636f0
|
||||
data_ov063_02163704 kind:data(any) addr:0x02163704
|
||||
_ZTV19data_ov063_0216370c kind:data(any) addr:0x0216370c
|
||||
data_ov063_02163740 kind:data(any) addr:0x02163740
|
||||
_ZTV19data_ov063_02163758 kind:data(any) addr:0x02163758
|
||||
_ZTV19ActorProfileUnkRBLS kind:data(any) addr:0x02163758
|
||||
data_ov063_02163784 kind:data(any) addr:0x02163784
|
||||
_ZTV19data_ov063_021637c4 kind:data(any) addr:0x021637c4
|
||||
data_ov063_02163828 kind:data(any) addr:0x02163828
|
||||
|
||||
@@ -111,7 +111,7 @@ _ZN11ModelRender8vfunc_20Ev kind:function(arm,size=0x18) addr:0x02059304
|
||||
func_ov000_0205931c kind:function(arm,size=0x2c) addr:0x0205931c
|
||||
_ZN11ModelRender8vfunc_10EP7VecFx32P5Mat3pS1_ kind:function(arm,size=0x7c) addr:0x02059348
|
||||
_ZN11ModelRender8vfunc_14EP5Mat3pP7VecFx32 kind:function(arm,size=0x64) addr:0x020593c4
|
||||
_ZN11ModelRender8vfunc_18Ev kind:function(arm,size=0x1c) addr:0x02059428
|
||||
_ZN11ModelRender8vfunc_18EP7VecFx32 kind:function(arm,size=0x1c) addr:0x02059428
|
||||
_ZN15ModelRenderBaseD1Ev kind:function(thumb,size=0x2) addr:0x02059444
|
||||
_ZN15ModelRenderBaseD0Ev kind:function(thumb,size=0xc) addr:0x02059448
|
||||
_ZN15ModelRenderBaseD2Ev kind:function(thumb,size=0x2) addr:0x02059454
|
||||
|
||||
@@ -253,10 +253,10 @@ _ZN19ActorProfileUnkRBLS6CreateEv kind:function(arm,size=0x24) addr:0x02161098
|
||||
_ZN19ActorProfileUnkRBLSC1Ev kind:function(arm,size=0x28) addr:0x021610bc
|
||||
_ZN12ActorUnkRBLSC1Ev kind:function(arm,size=0xc4) addr:0x021610e4
|
||||
_ZN12ActorUnkRBLS19func_ov063_021611a8Ev kind:function(arm,size=0x14) addr:0x021611a8
|
||||
_ZN12ActorUnkRBLS19func_ov063_021611bcEv kind:function(arm,size=0x8c) addr:0x021611bc
|
||||
_ZN12ActorUnkRBLS19func_ov063_02161248Ev kind:function(arm,size=0x14) addr:0x02161248
|
||||
_ZN12ActorUnkRBLS19func_ov063_0216125cEv kind:function(arm,size=0x14) addr:0x0216125c
|
||||
_ZN12ActorUnkRBLS19func_ov063_02161270Ev kind:function(arm,size=0x20) addr:0x02161270
|
||||
_ZN12ActorUnkRBLS8vfunc_18Ev kind:function(arm,size=0x8c) addr:0x021611bc
|
||||
_ZN12ActorUnkRBLS8vfunc_20Ev kind:function(arm,size=0x14) addr:0x02161248
|
||||
_ZN12ActorUnkRBLS8vfunc_24Ev kind:function(arm,size=0x14) addr:0x0216125c
|
||||
_ZN12ActorUnkRBLS8vfunc_2CEv kind:function(arm,size=0x20) addr:0x02161270
|
||||
_ZN12ActorUnkRBLSD0Ev kind:function(arm,size=0x1c) addr:0x02161290
|
||||
_ZN12ActorUnkRBLSD1Ev kind:function(arm,size=0x28) addr:0x021612ac
|
||||
_ZN12ActorUnkRBLS19func_ov063_021612d4Ev kind:function(arm,size=0x30) addr:0x021612d4
|
||||
@@ -466,7 +466,7 @@ data_ov063_02165518 kind:data(any) addr:0x02165518 ambiguous
|
||||
data_ov063_02165524 kind:data(any) addr:0x02165524
|
||||
_ZTV19data_ov063_0216552c kind:data(any) addr:0x0216552c
|
||||
data_ov063_02165560 kind:data(any) addr:0x02165560
|
||||
_ZTV19data_ov063_02165578 kind:data(any) addr:0x02165578
|
||||
_ZTV19ActorProfileUnkRBLS kind:data(any) addr:0x02165578
|
||||
data_ov063_021655a4 kind:data(any) addr:0x021655a4
|
||||
_ZTV19data_ov063_021655e4 kind:data(any) addr:0x021655e4
|
||||
data_ov063_02165648 kind:data(any) addr:0x02165648
|
||||
|
||||
@@ -4,9 +4,19 @@
|
||||
|
||||
#include "Actor/Actor.hpp"
|
||||
#include "Actor/ActorProfile.hpp"
|
||||
#include "Render/ModelRender.hpp"
|
||||
#include "global.h"
|
||||
#include "types.h"
|
||||
|
||||
struct UnkStruct_data_ov063_02163740 {
|
||||
/* 00 */ unk32 mUnk_00;
|
||||
/* 04 */ unk32 mUnk_04;
|
||||
/* 08 */ unk32 mUnk_08;
|
||||
/* 0C */ unk32 mUnk_0C;
|
||||
/* 10 */ unk32 mUnk_10;
|
||||
/* 14 */ unk32 mUnk_14;
|
||||
};
|
||||
|
||||
class ActorUnkRBLS_C4 : public Actor_C4 {
|
||||
public:
|
||||
ActorUnkRBLS_C4(Actor *param1);
|
||||
@@ -20,17 +30,24 @@ public:
|
||||
class ActorUnkRBLS : public Actor {
|
||||
public:
|
||||
/* 00 (base) */
|
||||
/* 94 */
|
||||
/* 94 */ ModelRender mUnk_94;
|
||||
/* F4 */ unk32 mUnk_F4;
|
||||
/* F8 */ STRUCT_PAD(0xF8, 0x110);
|
||||
/* 110 */ UnkSystem5 mUnk_110;
|
||||
/* 130 */ void *mUnk_130;
|
||||
/* 134 */ STRUCT_PAD(0x134, 0x160);
|
||||
/* 160 */
|
||||
|
||||
ActorUnkRBLS();
|
||||
|
||||
/* 18 */ virtual unk32 vfunc_18(void);
|
||||
/* 20 */ virtual void vfunc_20(void);
|
||||
/* 24 */ virtual void vfunc_24(void);
|
||||
/* 2C */ virtual void vfunc_2C(void);
|
||||
|
||||
/* 4C */ virtual ~ActorUnkRBLS() override;
|
||||
|
||||
void func_ov063_0215f3d4(void);
|
||||
void func_ov063_0215f3e8(void);
|
||||
void func_ov063_0215f474(void);
|
||||
void func_ov063_0215f488(void);
|
||||
void func_ov063_0215f49c(void);
|
||||
void func_ov063_0215f500(void);
|
||||
};
|
||||
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
#pragma once
|
||||
|
||||
#include "global.h"
|
||||
#include "nitro/fx.h"
|
||||
#include "types.h"
|
||||
|
||||
#include <nns/g3d/g3d.h>
|
||||
@@ -40,7 +41,7 @@ public:
|
||||
/* 0C */ virtual void vfunc_0C() = 0;
|
||||
/* 10 */ virtual void vfunc_10(VecFx32 *param1, Mat3p *param2, VecFx32 *param3) = 0;
|
||||
/* 14 */ virtual void vfunc_14(Mat3p *param1, VecFx32 *param2) = 0;
|
||||
/* 18 */ virtual void vfunc_18() = 0;
|
||||
/* 18 */ virtual void vfunc_18(VecFx32 *param1) = 0;
|
||||
/* 1C */
|
||||
};
|
||||
|
||||
@@ -59,7 +60,7 @@ public:
|
||||
/* 0C */ virtual void vfunc_0C() override;
|
||||
/* 10 */ virtual void vfunc_10(VecFx32 *param1, Mat3p *param2, VecFx32 *param3) override; // SetTransform?
|
||||
/* 14 */ virtual void vfunc_14(Mat3p *param1, VecFx32 *param2) override; // SetRotationTranslation?
|
||||
/* 18 */ virtual void vfunc_18() override;
|
||||
/* 18 */ virtual void vfunc_18(VecFx32 *param1) override;
|
||||
/* 1C */ virtual void vfunc_1C(UnkSystem4_vfunc_1C *param1);
|
||||
/* 20 */ virtual void vfunc_20();
|
||||
|
||||
@@ -79,7 +80,7 @@ public:
|
||||
/* 00 */ virtual ~UnkSystem6_Derived1() override {}
|
||||
/* 10 */ virtual void vfunc_10(VecFx32 *param1, Mat3p *param2, VecFx32 *param3) override;
|
||||
/* 14 */ virtual void vfunc_14(Mat3p *param1, VecFx32 *param2) override;
|
||||
/* 18 */ virtual void vfunc_18() override;
|
||||
/* 18 */ virtual void vfunc_18(VecFx32 *param1) override;
|
||||
};
|
||||
|
||||
class UnkSystem6_Derived2 : public UnkSystem6_Derived1 {
|
||||
|
||||
@@ -1,7 +1,15 @@
|
||||
//! TODO: This file was generated automatically and might contain errors
|
||||
|
||||
#include "Actor/ActorUnkRBLS.hpp"
|
||||
#include "System/SysNew.hpp"
|
||||
#include "MapObject/MapObjectTreasureSpawned.hpp"
|
||||
#include "Render/ModelRender.hpp"
|
||||
#include "Unknown/UnkStruct_027e0cd8.hpp"
|
||||
#include "nitro/fx.h"
|
||||
#include "nitro/math.h"
|
||||
|
||||
extern UnkStruct_data_ov063_02163740 data_ov063_02163740; // = {0, 0x534C4252, 0, 0, 0, 0};
|
||||
|
||||
extern "C" void func_ov000_02099f64(unk32 *param1, UnkStruct_data_ov063_02163740 param2, unk32 param3);
|
||||
|
||||
DECL_PROFILE(ActorProfileUnkRBLS);
|
||||
|
||||
@@ -12,13 +20,36 @@ Actor *ActorProfileUnkRBLS::Create() {
|
||||
ActorProfileUnkRBLS::ActorProfileUnkRBLS() :
|
||||
ActorProfile_Derived1(ActorId_RBLS) {}
|
||||
|
||||
ActorUnkRBLS::ActorUnkRBLS() {}
|
||||
ActorUnkRBLS::ActorUnkRBLS() :
|
||||
mUnk_94(NULL),
|
||||
mUnk_110(&mUnk_130, NULL) {}
|
||||
|
||||
unk32 ActorUnkRBLS::vfunc_18(void) {
|
||||
this->mPos.x -= FLOAT_TO_FX32(0.5f);
|
||||
this->mPos.z -= FLOAT_TO_FX32(0.5f);
|
||||
this->mPos.y = 0;
|
||||
func_ov000_02099f64(&this->mUnk_F4, data_ov063_02163740, 0x1000);
|
||||
(*(MapObjectTreasureSpawned *) &this->mUnk_F4).vfunc_3C();
|
||||
|
||||
data_027e0cd8->mUnk_0C->mUnk_12A = 0;
|
||||
return 1; //! INFO: bool?
|
||||
}
|
||||
|
||||
void ActorUnkRBLS::vfunc_20(void) {
|
||||
(*(Actor *) &this->mUnk_F4).vfunc_34(); //! WARN: NOT an Actor
|
||||
}
|
||||
|
||||
void ActorUnkRBLS::vfunc_24(void) {
|
||||
this->vfunc_20();
|
||||
}
|
||||
|
||||
void ActorUnkRBLS::vfunc_2C(void) {
|
||||
ModelRender *param1 = &this->mUnk_94;
|
||||
VecFx32 *param2 = &this->mPos;
|
||||
param1->vfunc_18(param2);
|
||||
}
|
||||
|
||||
void ActorUnkRBLS::func_ov063_0215f3d4(void) {}
|
||||
void ActorUnkRBLS::func_ov063_0215f3e8(void) {}
|
||||
void ActorUnkRBLS::func_ov063_0215f474(void) {}
|
||||
void ActorUnkRBLS::func_ov063_0215f488(void) {}
|
||||
void ActorUnkRBLS::func_ov063_0215f49c(void) {}
|
||||
void ActorUnkRBLS::func_ov063_0215f500(void) {}
|
||||
|
||||
ActorUnkRBLS::~ActorUnkRBLS() {}
|
||||
|
||||
Reference in New Issue
Block a user