From 80b383b68f8b503020d7a527f2a974a31ff0564f Mon Sep 17 00:00:00 2001 From: Luke Street Date: Fri, 3 Apr 2020 03:46:21 -0400 Subject: [PATCH] CPhazonHealingNodule: Add DEFINE_PATTERNED --- Runtime/MP1/World/CPhazonHealingNodule.hpp | 2 ++ Runtime/World/ScriptLoader.cpp | 10 +++++++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/Runtime/MP1/World/CPhazonHealingNodule.hpp b/Runtime/MP1/World/CPhazonHealingNodule.hpp index c2a9450a3..87bd89b60 100644 --- a/Runtime/MP1/World/CPhazonHealingNodule.hpp +++ b/Runtime/MP1/World/CPhazonHealingNodule.hpp @@ -17,6 +17,8 @@ private: // u32 x59c_; public: + DEFINE_PATTERNED(PhazonHealingNodule); + CPhazonHealingNodule(TUniqueId uid, std::string_view name, const CEntityInfo& info, const zeus::CTransform& xf, CModelData&& mData, const CActorParameters& actParams, const CPatternedInfo& pInfo, CAssetId particleDescId, std::string actorLctr); diff --git a/Runtime/World/ScriptLoader.cpp b/Runtime/World/ScriptLoader.cpp index 09cc33cf2..ffeea0634 100644 --- a/Runtime/World/ScriptLoader.cpp +++ b/Runtime/World/ScriptLoader.cpp @@ -3668,7 +3668,15 @@ CEntity* ScriptLoader::LoadOmegaPirate(CStateManager& mgr, CInputStream& in, int } CEntity* ScriptLoader::LoadPhazonPool(CStateManager& mgr, CInputStream& in, int propCount, const CEntityInfo& info) { - return nullptr; + if (!EnsurePropertyCount(propCount, 9, "PhazonHealingNodule")) { + return nullptr; + } + + SScaledActorHead actHead = LoadScaledActorHead(in, mgr); + auto pair = CPatternedInfo::HasCorrectParameterCount(in); + if (!pair.first) { + return nullptr; + } } CEntity* ScriptLoader::LoadPhazonHealingNodule(CStateManager& mgr, CInputStream& in, int propCount,