mirror of
https://github.com/zeldaret/ss
synced 2026-08-08 10:33:26 -04:00
Merge pull request #54 from robojumper/dAcTWoodArea_c
A bit of dAcTWoodArea_c
This commit is contained in:
+14
-5
@@ -93,13 +93,13 @@ protected:
|
||||
public:
|
||||
/* 8002c3b0 */ dAcBase_c();
|
||||
|
||||
void setPostion(mVec3_c &r) {
|
||||
void setPostion(const mVec3_c &r) {
|
||||
position = r;
|
||||
}
|
||||
void SetScale(mVec3_c &r) {
|
||||
void SetScale(const mVec3_c &r) {
|
||||
scale = r;
|
||||
}
|
||||
void SetRotation(mAng3_c &r) {
|
||||
void SetRotation(const mAng3_c &r) {
|
||||
rotation = r;
|
||||
}
|
||||
|
||||
@@ -113,8 +113,17 @@ public:
|
||||
void copyRotation() {
|
||||
rot_copy = rotation;
|
||||
}
|
||||
mVec3_c GetPostionDifference(const dAcBase_c *other) {
|
||||
return position - other->position;
|
||||
mVec3_c GetPostionDifference(const dAcBase_c &other) {
|
||||
return position - other.position;
|
||||
}
|
||||
|
||||
f32 getSquareDistanceTo(const mVec3_c &point) {
|
||||
mVec3_c diff = position - point;
|
||||
return diff.x * diff.x + diff.z * diff.z;
|
||||
}
|
||||
|
||||
bool IsOutOfRange(const mVec3_c &point, f32 radius) {
|
||||
return getSquareDistanceTo(point) > radius;
|
||||
}
|
||||
|
||||
public:
|
||||
|
||||
@@ -2,8 +2,10 @@
|
||||
#define D_A_OBJ_BASE_H
|
||||
|
||||
#include "d/a/d_a_base.h"
|
||||
#include "m/m_mtx.h"
|
||||
#include "m/types_m.h"
|
||||
|
||||
|
||||
// Ghidra: ActorObjectBase
|
||||
// size: 0x330
|
||||
// vtable: 0x805015b8
|
||||
@@ -25,6 +27,12 @@ public:
|
||||
f32 forwardAccel;
|
||||
f32 forwardMaxSpeed;
|
||||
// TODO: add the rest
|
||||
u8 unk1[0x15C - 0x150];
|
||||
/* 0x15C */ mMtx_c worldMatrix;
|
||||
|
||||
nw4r::math::AABB boundingBox;
|
||||
|
||||
u8 unk_0x1A4[0x330 - 0x1A4];
|
||||
|
||||
public:
|
||||
// could be their own thing?
|
||||
@@ -39,12 +47,12 @@ public:
|
||||
public:
|
||||
/* 8002def0 */ dAcObjBase_c();
|
||||
/* 8002e050 */ virtual ~dAcObjBase_c();
|
||||
/* 8002e0e0 */ virtual int preCreate();
|
||||
/* 8002e150 */ virtual int preExecute();
|
||||
/* 8002e2a0 */ virtual void postExecute();
|
||||
/* 8002e330 */ virtual int preDraw();
|
||||
/* 8002e0e0 */ virtual int preCreate() override;
|
||||
/* 8002e150 */ virtual int preExecute() override;
|
||||
/* 8002e2a0 */ virtual void postExecute(MAIN_STATE_e state) override;
|
||||
/* 8002e330 */ virtual int preDraw() override;
|
||||
/* 8002e5b0 */ virtual void *getObjectListEntry();
|
||||
/* 8002e5c0 */ virtual bool restorePosRotFromCopy();
|
||||
/* 8002e5c0 */ virtual bool restorePosRotFromCopy() override;
|
||||
/* 8002ea10 */ virtual bool canBeLinkedToWoodTag();
|
||||
/* 8002ea20 */ virtual bool drop();
|
||||
|
||||
|
||||
@@ -6,6 +6,11 @@
|
||||
|
||||
class dPlayer: public dAcObjBase_c {
|
||||
public:
|
||||
/* 0x330 */ u8 unk_0x330[0x350 - 0x330];
|
||||
/* 0x350 */ u32 someFlags;
|
||||
|
||||
|
||||
|
||||
static dPlayer *LINK;
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user