diff --git a/Client/mods/deathmatch/logic/CClientBuilding.cpp b/Client/mods/deathmatch/logic/CClientBuilding.cpp index 354ecff8db..a8eca056ec 100644 --- a/Client/mods/deathmatch/logic/CClientBuilding.cpp +++ b/Client/mods/deathmatch/logic/CClientBuilding.cpp @@ -191,3 +191,8 @@ bool CClientBuilding::SetLowLodBuilding(CClientBuilding* pLod) } return true; } + +float CClientBuilding::GetDistanceFromCentreOfMassToBaseOfModel() +{ + return m_pBuilding ? m_pBuilding->GetDistanceFromCentreOfMassToBaseOfModel() : 0.0f; +} diff --git a/Client/mods/deathmatch/logic/CClientBuilding.h b/Client/mods/deathmatch/logic/CClientBuilding.h index aa33cd5034..aadef38f7e 100644 --- a/Client/mods/deathmatch/logic/CClientBuilding.h +++ b/Client/mods/deathmatch/logic/CClientBuilding.h @@ -55,6 +55,7 @@ class CClientBuilding : public CClientEntity bool SetLowLodBuilding(CClientBuilding* pLod = nullptr); bool IsLod() const noexcept { return m_pHighBuilding != nullptr; }; + float GetDistanceFromCentreOfMassToBaseOfModel(); private: CClientBuilding* GetHighLodBuilding() const { return m_pHighBuilding; }; diff --git a/Client/mods/deathmatch/logic/CStaticFunctionDefinitions.cpp b/Client/mods/deathmatch/logic/CStaticFunctionDefinitions.cpp index 59216442a6..98afc6a0a9 100644 --- a/Client/mods/deathmatch/logic/CStaticFunctionDefinitions.cpp +++ b/Client/mods/deathmatch/logic/CStaticFunctionDefinitions.cpp @@ -675,6 +675,11 @@ bool CStaticFunctionDefinitions::GetElementDistanceFromCentreOfMassToBaseOfModel fDistance = static_cast(Entity).GetDistanceFromCentreOfMassToBaseOfModel(); return true; } + case CCLIENTBUILDING: + { + fDistance = static_cast(Entity).GetDistanceFromCentreOfMassToBaseOfModel(); + return true; + } } return false;