mirror of
https://github.com/isledecomp/isle.git
synced 2026-01-24 08:41:16 +00:00
Merge branch 'helicopter' of https://github.com/tahg/isletahg into helicopter
This commit is contained in:
commit
4e9408e57e
@ -23,7 +23,7 @@ class Act2Brick : public LegoPathActor {
|
|||||||
// FUNCTION: LEGO1 0x1007a370
|
// FUNCTION: LEGO1 0x1007a370
|
||||||
inline virtual MxBool IsA(const char* p_name) const override // vtable+0x10
|
inline virtual MxBool IsA(const char* p_name) const override // vtable+0x10
|
||||||
{
|
{
|
||||||
return !strcmp(Act2Brick::ClassName(), p_name) || LegoEntity::IsA(p_name);
|
return !strcmp(p_name, Act2Brick::ClassName()) || LegoEntity::IsA(p_name);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@ -281,7 +281,7 @@ void Helicopter::VTable0x74(Matrix4Impl& p_transform)
|
|||||||
// FUNCTION: LEGO1 0x10003ee0
|
// FUNCTION: LEGO1 0x10003ee0
|
||||||
void Helicopter::VTable0x70(float p_float)
|
void Helicopter::VTable0x70(float p_float)
|
||||||
{
|
{
|
||||||
int state = m_state->GetUnkown8();
|
MxU32 state = m_state->GetUnkown8();
|
||||||
switch (state) {
|
switch (state) {
|
||||||
default:
|
default:
|
||||||
LegoPathActor::VTable0x70(p_float);
|
LegoPathActor::VTable0x70(p_float);
|
||||||
|
|||||||
@ -18,7 +18,7 @@ class HelicopterState : public LegoState {
|
|||||||
// FUNCTION: LEGO1 0x1000e0e0
|
// FUNCTION: LEGO1 0x1000e0e0
|
||||||
inline virtual MxBool IsA(const char* p_name) const override // vtable+0x10
|
inline virtual MxBool IsA(const char* p_name) const override // vtable+0x10
|
||||||
{
|
{
|
||||||
return !strcmp(p_name, ClassName()) || LegoState::IsA(p_name);
|
return !strcmp(p_name, HelicopterState::ClassName()) || LegoState::IsA(p_name);
|
||||||
}
|
}
|
||||||
|
|
||||||
inline void SetUnknown8(MxU32 p_unk0x8) { m_unk0x8 = p_unk0x8; }
|
inline void SetUnknown8(MxU32 p_unk0x8) { m_unk0x8 = p_unk0x8; }
|
||||||
|
|||||||
@ -23,7 +23,7 @@ class LegoAnimationManager : public MxCore {
|
|||||||
// FUNCTION: LEGO1 0x1005ec90
|
// FUNCTION: LEGO1 0x1005ec90
|
||||||
inline virtual MxBool IsA(const char* p_name) const override // vtable+0x10
|
inline virtual MxBool IsA(const char* p_name) const override // vtable+0x10
|
||||||
{
|
{
|
||||||
return !strcmp(p_name, LegoAnimationManager::ClassName()) || MxCore::IsA(p_name);
|
return !strcmp(p_name, ClassName()) || MxCore::IsA(p_name);
|
||||||
}
|
}
|
||||||
|
|
||||||
void FUN_1005f6d0(MxBool);
|
void FUN_1005f6d0(MxBool);
|
||||||
|
|||||||
@ -22,11 +22,11 @@ class LegoCameraController : public MxCore {
|
|||||||
// FUNCTION: LEGO1 0x10011ed0
|
// FUNCTION: LEGO1 0x10011ed0
|
||||||
inline virtual MxBool IsA(const char* p_name) const override // vtable+0x10
|
inline virtual MxBool IsA(const char* p_name) const override // vtable+0x10
|
||||||
{
|
{
|
||||||
return !strcmp(p_name, LegoCameraController::ClassName()) || MxCore::IsA(p_name);
|
return !strcmp(p_name, ClassName()) || MxCore::IsA(p_name);
|
||||||
}
|
}
|
||||||
|
|
||||||
void LegoCameraController::LookAt(Vector3Impl& p_at, Vector3Impl& p_dir, Vector3Impl& p_up);
|
void LookAt(Vector3Impl& p_at, Vector3Impl& p_dir, Vector3Impl& p_up);
|
||||||
void LegoCameraController::FUN_100123e0(Matrix4Data& p_transform, MxU32);
|
void FUN_100123e0(Matrix4Data& p_transform, MxU32);
|
||||||
Vector3Data& FUN_10012740();
|
Vector3Data& FUN_10012740();
|
||||||
Vector3Data& FUN_100127f0();
|
Vector3Data& FUN_100127f0();
|
||||||
Vector3Data& FUN_100128a0();
|
Vector3Data& FUN_100128a0();
|
||||||
|
|||||||
@ -47,7 +47,7 @@ class LegoEntity : public MxEntity {
|
|||||||
virtual void VTable0x44(); // vtable+0x44
|
virtual void VTable0x44(); // vtable+0x44
|
||||||
virtual void VTable0x48(); // vtable+0x48
|
virtual void VTable0x48(); // vtable+0x48
|
||||||
virtual void VTable0x4c(); // vtable+0x4c
|
virtual void VTable0x4c(); // vtable+0x4c
|
||||||
void LegoEntity::FUN_10010c30();
|
void FUN_10010c30();
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
void Init();
|
void Init();
|
||||||
|
|||||||
@ -40,6 +40,7 @@ void LegoROI::FUN_100a46b0(Matrix4Impl& p_transform)
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// STUB: LEGO1 0x100a58f0
|
||||||
void LegoROI::FUN_100a58f0(Matrix4Impl& p_transform)
|
void LegoROI::FUN_100a58f0(Matrix4Impl& p_transform)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|||||||
@ -121,5 +121,5 @@ void SetAppCursor(WPARAM p_wparam)
|
|||||||
// STUB: LEGO1 0x1003ef60
|
// STUB: LEGO1 0x1003ef60
|
||||||
MxBool FUN_1003ef60()
|
MxBool FUN_1003ef60()
|
||||||
{
|
{
|
||||||
return true;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -86,7 +86,7 @@ void LegoWorld::VTable0x54()
|
|||||||
// TODO
|
// TODO
|
||||||
}
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x1001fc80
|
// STUB: LEGO1 0x1001fc80
|
||||||
void LegoWorld::FUN_1001fc80(IslePathActor* p_actor)
|
void LegoWorld::FUN_1001fc80(IslePathActor* p_actor)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|||||||
@ -17,7 +17,7 @@ class LegoWorld : public LegoEntity {
|
|||||||
__declspec(dllexport) virtual ~LegoWorld(); // vtable+0x0
|
__declspec(dllexport) virtual ~LegoWorld(); // vtable+0x0
|
||||||
|
|
||||||
virtual MxLong Notify(MxParam& p_param) override; // vtable+0x4
|
virtual MxLong Notify(MxParam& p_param) override; // vtable+0x4
|
||||||
virtual MxResult Tickle(); // vtable+0x8
|
virtual MxResult Tickle() override; // vtable+0x8
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x1001d690
|
// FUNCTION: LEGO1 0x1001d690
|
||||||
inline virtual const char* ClassName() const override // vtable+0x0c
|
inline virtual const char* ClassName() const override // vtable+0x0c
|
||||||
|
|||||||
@ -4,6 +4,8 @@
|
|||||||
#include "matrix.h"
|
#include "matrix.h"
|
||||||
#include "roi.h"
|
#include "roi.h"
|
||||||
|
|
||||||
|
// VTABLE: LEGO1 0x100dbc08
|
||||||
|
// SIZE 0xdc
|
||||||
class OrientableROI : public ROI {
|
class OrientableROI : public ROI {
|
||||||
public:
|
public:
|
||||||
// FUNCTION: LEGO1 0x100a4420
|
// FUNCTION: LEGO1 0x100a4420
|
||||||
@ -17,9 +19,10 @@ class OrientableROI : public ROI {
|
|||||||
IDENTMAT4(m_local2world.GetMatrix());
|
IDENTMAT4(m_local2world.GetMatrix());
|
||||||
}
|
}
|
||||||
|
|
||||||
virtual const Vector3& GetWorldVelocity() const; // vtable+0x8
|
virtual const Vector3& GetWorldVelocity() const override; // vtable+0x8
|
||||||
virtual const BoundingBox& GetWorldBoundingBox() const; // vtable+0xc
|
virtual const BoundingBox& GetWorldBoundingBox() const override; // vtable+0xc
|
||||||
virtual const BoundingSphere& GetWorldBoundingSphere() const; // vtable+0x10
|
virtual const BoundingSphere& GetWorldBoundingSphere() const override; // vtable+0x10
|
||||||
|
// FUNCTION: LEGO1 0x100a5db0
|
||||||
virtual void VTable0x14() { VTable0x1c(); } // vtable+0x14
|
virtual void VTable0x14() { VTable0x1c(); } // vtable+0x14
|
||||||
virtual void UpdateWorldBoundingVolumes() = 0; // vtable+0x18
|
virtual void UpdateWorldBoundingVolumes() = 0; // vtable+0x18
|
||||||
virtual void VTable0x1c(); // vtable+0x1c
|
virtual void VTable0x1c(); // vtable+0x1c
|
||||||
|
|||||||
@ -49,9 +49,9 @@ class LODObject {
|
|||||||
public:
|
public:
|
||||||
// LODObject();
|
// LODObject();
|
||||||
virtual ~LODObject() {}
|
virtual ~LODObject() {}
|
||||||
virtual float Cost(float pixels_covered) const = 0;
|
virtual float Cost(float pixels_covered) const = 0; // vtable+0x4
|
||||||
virtual float AveragePolyArea() const = 0;
|
virtual float AveragePolyArea() const = 0; // vtable+0x8
|
||||||
virtual int NVerts() const = 0;
|
virtual int NVerts() const = 0; // vtable+0xc
|
||||||
};
|
};
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -73,6 +73,8 @@ typedef vector<const ROI*> ROIList;
|
|||||||
*/
|
*/
|
||||||
typedef vector<int> IntList;
|
typedef vector<int> IntList;
|
||||||
|
|
||||||
|
// VTABLE: LEGO1 0x100dbc38
|
||||||
|
// SIZE 0xc
|
||||||
class ROI {
|
class ROI {
|
||||||
public:
|
public:
|
||||||
ROI()
|
ROI()
|
||||||
@ -86,10 +88,10 @@ class ROI {
|
|||||||
assert(!m_comp);
|
assert(!m_comp);
|
||||||
assert(!m_lods);
|
assert(!m_lods);
|
||||||
}
|
}
|
||||||
virtual float IntrinsicImportance() const = 0;
|
virtual float IntrinsicImportance() const = 0; // vtable+0x4
|
||||||
virtual const Vector3& GetWorldVelocity() const = 0;
|
virtual const Vector3& GetWorldVelocity() const = 0; // vtable+0x8
|
||||||
virtual const BoundingBox& GetWorldBoundingBox() const = 0;
|
virtual const BoundingBox& GetWorldBoundingBox() const = 0; // vtable+0xc
|
||||||
virtual const BoundingSphere& GetWorldBoundingSphere() const = 0;
|
virtual const BoundingSphere& GetWorldBoundingSphere() const = 0; // vtable+0x10
|
||||||
|
|
||||||
const LODListBase* GetLODs() const { return m_lods; }
|
const LODListBase* GetLODs() const { return m_lods; }
|
||||||
const LODObject* GetLOD(int i) const
|
const LODObject* GetLOD(int i) const
|
||||||
@ -101,7 +103,7 @@ class ROI {
|
|||||||
const CompoundObject* GetComp() const { return m_comp; }
|
const CompoundObject* GetComp() const { return m_comp; }
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
CompoundObject* m_comp;
|
CompoundObject* m_comp; // 0x4
|
||||||
LODListBase* m_lods;
|
LODListBase* m_lods; // 0x8
|
||||||
};
|
};
|
||||||
#endif // ROI_H
|
#endif // ROI_H
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user