diff --git a/CMakeLists.txt b/CMakeLists.txt index 69a2f5ff..0683720a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -321,8 +321,8 @@ function(add_lego_libraries NAME) LEGO1/lego/legoomni/src/paths/legoanimactor.cpp LEGO1/lego/legoomni/src/entity/legoworld.cpp LEGO1/lego/legoomni/src/build/legocarbuild.cpp - LEGO1/lego/legoomni/src/actors/ambulance.cpp LEGO1/lego/legoomni/src/common/legoplantmanager.cpp + LEGO1/lego/legoomni/src/actors/ambulance.cpp LEGO1/lego/legoomni/src/actors/bumpbouy.cpp LEGO1/modeldb/modeldb.cpp LEGO1/lego/legoomni/src/actors/pizza.cpp diff --git a/LEGO1/lego/legoomni/include/legocarbuild.h b/LEGO1/lego/legoomni/include/legocarbuild.h index 6be5f567..6add3be3 100644 --- a/LEGO1/lego/legoomni/include/legocarbuild.h +++ b/LEGO1/lego/legoomni/include/legocarbuild.h @@ -91,6 +91,10 @@ class LegoCarBuild : public LegoWorld { LegoCarBuild(); ~LegoCarBuild() override; + // FUNCTION: LEGO1 0x10022930 + // FUNCTION: BETA10 0x10070070 + MxBool VTable0x5c() override { return TRUE; } // vtable+0x5c + // FUNCTION: LEGO1 0x10022940 // FUNCTION: BETA10 0x10070090 const char* ClassName() const override // vtable+0x0c @@ -110,7 +114,6 @@ class LegoCarBuild : public LegoWorld { MxResult Create(MxDSAction& p_dsAction) override; // vtable+0x18 void ReadyWorld() override; // vtable+0x50 - MxBool VTable0x5c() override; // vtable+0x5c MxBool Escape() override; // vtable+0x64 void Enable(MxBool p_enable) override; // vtable+0x68 virtual void VTable0x6c(); // vtable+0x6c diff --git a/LEGO1/lego/legoomni/src/build/legocarbuild.cpp b/LEGO1/lego/legoomni/src/build/legocarbuild.cpp index 61f6fc15..c65064c1 100644 --- a/LEGO1/lego/legoomni/src/build/legocarbuild.cpp +++ b/LEGO1/lego/legoomni/src/build/legocarbuild.cpp @@ -130,13 +130,6 @@ LegoCarBuild::LegoCarBuild() NotificationManager()->Register(this); } -// FUNCTION: LEGO1 0x10022930 -// FUNCTION: BETA10 0x10070070 -MxBool LegoCarBuild::VTable0x5c() -{ - return TRUE; -} - // FUNCTION: LEGO1 0x10022a80 // FUNCTION: BETA10 0x1006aea3 LegoCarBuild::~LegoCarBuild() diff --git a/LEGO1/lego/legoomni/src/common/legobuildingmanager.cpp b/LEGO1/lego/legoomni/src/common/legobuildingmanager.cpp index 53544ef9..2d97b3ef 100644 --- a/LEGO1/lego/legoomni/src/common/legobuildingmanager.cpp +++ b/LEGO1/lego/legoomni/src/common/legobuildingmanager.cpp @@ -661,7 +661,6 @@ MxBool LegoBuildingManager::FUN_10030110(LegoBuildingInfo* p_data) } // FUNCTION: LEGO1 0x10030150 -// FUNCTION: BETA10 0x100644ff void LegoBuildingManager::ScheduleAnimation(LegoEntity* p_entity, MxLong p_length, MxBool p_haveSound, MxBool p_unk0x28) { m_world = CurrentWorld(); diff --git a/LEGO1/lego/legoomni/src/common/legoplantmanager.cpp b/LEGO1/lego/legoomni/src/common/legoplantmanager.cpp index 2e7b0491..c7a821ae 100644 --- a/LEGO1/lego/legoomni/src/common/legoplantmanager.cpp +++ b/LEGO1/lego/legoomni/src/common/legoplantmanager.cpp @@ -618,7 +618,11 @@ void LegoPlantManager::ScheduleAnimation(LegoEntity* p_entity, MxLong p_length) entry->m_entity = p_entity; entry->m_roi = p_entity->GetROI(); - entry->m_time = Timer()->GetTime() + p_length + 1000; + + MxLong time = Timer()->GetTime(); + time += p_length; + entry->m_time = time + 1000; + FUN_100271b0(p_entity, -1); }