From ad9cc339e9f8d812695d170ab7c8a1db8f4cfe71 Mon Sep 17 00:00:00 2001 From: Christian Semmler Date: Fri, 15 Dec 2023 17:29:32 -0500 Subject: [PATCH] Add missing override specifier, fix some types --- LEGO1/isle.cpp | 19 ++++++++++--------- LEGO1/isle.h | 12 ++++++------ LEGO1/legoentity.h | 1 + LEGO1/legoworld.cpp | 2 +- LEGO1/legoworld.h | 2 +- 5 files changed, 19 insertions(+), 17 deletions(-) diff --git a/LEGO1/isle.cpp b/LEGO1/isle.cpp index 3b544960..3c6c23b2 100644 --- a/LEGO1/isle.cpp +++ b/LEGO1/isle.cpp @@ -1,6 +1,7 @@ #include "isle.h" #include "act1state.h" +#include "islepathactor.h" #include "legocontrolmanager.h" #include "legogamestate.h" #include "legoinputmanager.h" @@ -43,7 +44,7 @@ Isle::~Isle() } if (GetCurrentVehicle() != NULL) { - VTable0x6c((MxCore*) GetCurrentVehicle()); + VTable0x6c(GetCurrentVehicle()); } NotificationManager()->Unregister(this); @@ -152,21 +153,21 @@ void Isle::VTable0x58(MxCore* p_object) } // FUNCTION: LEGO1 0x10033050 -void Isle::VTable0x6c(MxCore* p_object) +void Isle::VTable0x6c(IslePathActor* p_actor) { - LegoWorld::EndAction(p_object); + LegoWorld::EndAction(p_actor); - if (p_object->IsA("Helicopter")) { + if (p_actor->IsA("Helicopter")) { m_helicopter = NULL; } - else if (p_object->IsA("DuneBuggy")) { + else if (p_actor->IsA("DuneBuggy")) { m_dunebuggy = NULL; } - else if (p_object->IsA("Jetski")) { - m_jetski = 0; + else if (p_actor->IsA("Jetski")) { + m_jetski = NULL; } - else if (p_object->IsA("RaceCar")) { - m_racecar = 0; + else if (p_actor->IsA("RaceCar")) { + m_racecar = NULL; } } diff --git a/LEGO1/isle.h b/LEGO1/isle.h index 594f9d74..7b9f3987 100644 --- a/LEGO1/isle.h +++ b/LEGO1/isle.h @@ -42,14 +42,14 @@ public: } virtual MxResult Create(MxDSObject& p_dsObject) override; // vtable+0x18 virtual void Stop() override; // vtable+50 - virtual void VTable0x58(MxCore* p_object); // vtable+58 + virtual void VTable0x58(MxCore* p_object) override; // vtable+58 // FUNCTION: LEGO1 0x10030900 - virtual MxBool VTable0x5c() { return TRUE; } // vtable+5c + virtual MxBool VTable0x5c() override { return TRUE; } // vtable+5c // FUNCTION: LEGO1 0x10033170 - virtual void VTable0x60() {} // vtable+60 - virtual MxBool VTable0x64(); // vtable+64 - virtual void VTable0x68(MxBool p_add); // vtable+68 - virtual void VTable0x6c(MxCore* p_object); + virtual void VTable0x60() override {} // vtable+60 + virtual MxBool VTable0x64() override; // vtable+64 + virtual void VTable0x68(MxBool p_add) override; // vtable+68 + virtual void VTable0x6c(IslePathActor* p_actor); // vtable+6c inline void SetUnknown13c(MxU32 p_unk0x13c) { m_unk0x13c = p_unk0x13c; } diff --git a/LEGO1/legoentity.h b/LEGO1/legoentity.h index fe013beb..cdee29c3 100644 --- a/LEGO1/legoentity.h +++ b/LEGO1/legoentity.h @@ -47,6 +47,7 @@ public: virtual void VTable0x44(); // vtable+0x44 virtual void VTable0x48(); // vtable+0x48 virtual void VTable0x4c(); // vtable+0x4c + void FUN_10010c30(); protected: diff --git a/LEGO1/legoworld.cpp b/LEGO1/legoworld.cpp index 13d53a0f..6f14b43f 100644 --- a/LEGO1/legoworld.cpp +++ b/LEGO1/legoworld.cpp @@ -98,7 +98,7 @@ void LegoWorld::VTable0x58(MxCore* p_object) } // STUB: LEGO1 0x10020f10 -void LegoWorld::EndAction(MxCore* p_presenter) +void LegoWorld::EndAction(MxCore* p_object) { } diff --git a/LEGO1/legoworld.h b/LEGO1/legoworld.h index 9ca61b56..6752ca9a 100644 --- a/LEGO1/legoworld.h +++ b/LEGO1/legoworld.h @@ -44,7 +44,7 @@ public: inline LegoCameraController* GetCamera() { return m_camera; } MxResult SetAsCurrentWorld(MxDSObject& p_dsObject); - void EndAction(MxCore* p_presenter); + void EndAction(MxCore* p_object); void FUN_1001fc80(IslePathActor* p_actor); MxBool FUN_100727e0(MxU32, Vector3Data& p_loc, Vector3Data& p_dir, Vector3Data& p_up); MxBool FUN_10072980(MxU32, Vector3Data& p_loc, Vector3Data& p_dir, Vector3Data& p_up);