mirror of
https://github.com/isledecomp/isle.git
synced 2025-10-23 00:14:22 +00:00
Implement the rest of the SkateBoard class (#873)
* Implement SkateBoard::~SkateBoard() * Implement SkateBoard::VTable0xd4 * Implement SkateBoard::Create() - one typecast is still not clear * Add SkateBoard::VTable0xe4() * apply clang-format * Apply clang-format to legocontrolmanager.h * Address review comments * 57 percent match * 63 percent * 82 percent match * previous 86 was bugged, unfortunately * 85 percent on FUN_10010270 * 92 percent FUN_10010270 * 69 percent VTable0xcc * 73 percent VTable0xcc * more progress, not quite there yet * minor 10010510 improvement * 100 % on FUN_10010510 * slowly making progress on SkateBoard::VTable0xcc (broken decomp) * getting closer, now only wrong registers * 89 percent VTable0xcc * 92 percent * 95 % VTable0xcc * Changes, see comment --------- Co-authored-by: jonschz <jonschz@users.noreply.github.com> Co-authored-by: Christian Semmler <mail@csemmler.com>
This commit is contained in:
@@ -81,16 +81,17 @@ public:
|
||||
|
||||
inline MxU32 GetUnknown18() { return m_unk0x018; }
|
||||
inline ElevatorFloor GetElevatorFloor() { return (ElevatorFloor) m_elevFloor; }
|
||||
inline MxS16 GetUnknown21() { return m_unk0x021; }
|
||||
inline MxU8 GetUnknown21() { return m_unk0x021; }
|
||||
|
||||
inline void SetUnknown18(MxU32 p_unk0x18) { m_unk0x018 = p_unk0x18; }
|
||||
inline void SetElevatorFloor(ElevatorFloor p_elevFloor) { m_elevFloor = p_elevFloor; }
|
||||
inline void SetUnknown21(MxS16 p_unk0x21) { m_unk0x021 = p_unk0x21; }
|
||||
inline void SetUnknown21(MxU8 p_unk0x21) { m_unk0x021 = p_unk0x21; }
|
||||
|
||||
// SYNTHETIC: LEGO1 0x10033960
|
||||
// Act1State::`scalar deleting destructor'
|
||||
|
||||
friend class Isle;
|
||||
friend class SkateBoard;
|
||||
|
||||
protected:
|
||||
MxS32* m_unk0x008; // 0x008 FIXME: count for m_unk0x008
|
||||
@@ -105,7 +106,7 @@ protected:
|
||||
MxBool m_unk0x01f; // 0x01f
|
||||
MxBool m_planeActive; // 0x020
|
||||
undefined m_unk0x021; // 0x021
|
||||
undefined m_unk0x022; // 0x022
|
||||
MxBool m_unk0x022; // 0x022
|
||||
undefined m_unk0x023; // 0x023
|
||||
NamedPlane m_unk0x024; // 0x024
|
||||
NamedPlane m_unk0x070; // 0x070
|
||||
|
@@ -81,7 +81,7 @@ public:
|
||||
IsleScript::Script p_objectId,
|
||||
MxMatrix* p_matrix,
|
||||
MxBool p_param3,
|
||||
undefined p_param4,
|
||||
MxBool p_param4,
|
||||
LegoROI* p_roi,
|
||||
MxBool p_param6,
|
||||
MxBool p_param7,
|
||||
@@ -96,8 +96,8 @@ public:
|
||||
void FUN_100629b0(MxU32, MxBool);
|
||||
void FUN_10063270(LegoROIList*, LegoAnimPresenter*);
|
||||
void FUN_10063780(LegoROIList* p_list);
|
||||
void FUN_10064670(MxBool);
|
||||
void FUN_10064740(MxBool);
|
||||
void FUN_10064670(Vector3*);
|
||||
void FUN_10064740(Vector3*);
|
||||
|
||||
static void configureLegoAnimationManager(MxS32 p_legoAnimationManagerConfig);
|
||||
|
||||
|
@@ -4,6 +4,8 @@
|
||||
#include "decomp.h"
|
||||
#include "islepathactor.h"
|
||||
|
||||
class Act1State;
|
||||
|
||||
// VTABLE: LEGO1 0x100d55f0
|
||||
// SIZE 0x168
|
||||
class SkateBoard : public IslePathActor {
|
||||
@@ -36,8 +38,10 @@ public:
|
||||
// SkateBoard::`scalar deleting destructor'
|
||||
|
||||
private:
|
||||
undefined m_unk0x160; // 0x160
|
||||
undefined* m_unk0x164; // 0x164
|
||||
void FUN_10010270(MxBool p_enable);
|
||||
|
||||
MxBool m_unk0x160; // 0x160
|
||||
Act1State* m_act1state; // 0x164
|
||||
};
|
||||
|
||||
#endif // SKATEBOARD_H
|
||||
|
Reference in New Issue
Block a user