From 5574eccebd16ae38a2a21ed202d1f9d1ba8f67a4 Mon Sep 17 00:00:00 2001 From: Piotr Dziwinski Date: Wed, 26 Dec 2012 20:58:02 +0100 Subject: Engine optimization - rewritten model management - new class CModelManager - rewritten engine object structure in CEngine - created shared model data instead of separate objects per each model instance - minor refactoring --- src/script/script.cpp | 26 +++++++++++++++++++------- 1 file changed, 19 insertions(+), 7 deletions(-) (limited to 'src/script') diff --git a/src/script/script.cpp b/src/script/script.cpp index 8471df5..a6b39b9 100644 --- a/src/script/script.cpp +++ b/src/script/script.cpp @@ -2669,9 +2669,9 @@ CScript::CScript(CInstanceManager* iMan, CObject* object, CTaskManager** seconda m_main = static_cast(m_iMan->SearchInstance(CLASS_MAIN)); m_terrain = static_cast(m_iMan->SearchInstance(CLASS_TERRAIN)); m_water = static_cast(m_iMan->SearchInstance(CLASS_WATER)); - m_botProg = 0; + m_botProg = nullptr; m_object = object; - m_primaryTask = 0; + m_primaryTask = nullptr; m_secondaryTask = secondaryTask; m_interface = static_cast(m_iMan->SearchInstance(CLASS_INTERFACE)); @@ -2680,7 +2680,7 @@ CScript::CScript(CInstanceManager* iMan, CObject* object, CTaskManager** seconda m_ipf = CBOT_IPF; m_errMode = ERM_STOP; m_len = 0; - m_script = 0; + m_script = nullptr; m_bRun = false; m_bStepMode = false; m_bCompile = false; @@ -2752,10 +2752,22 @@ void CScript::InitFonctions() CScript::~CScript() { - delete m_botProg; - delete m_primaryTask; - delete m_script; - m_script = 0; + if (m_botProg != nullptr) + { + delete m_botProg; + m_botProg = nullptr; + } + if (m_primaryTask != nullptr) + { + delete m_primaryTask; + m_primaryTask = nullptr; + } + if (m_script != nullptr) + { + delete m_script; + m_script = nullptr; + } + m_len = 0; m_iMan->DeleteInstance(CLASS_SCRIPT, this); -- cgit v1.2.3-1-g7c22