//-------------------------------------------------------------------------------------------------- // Name: ~CGameEffectsSystem // Desc: Destructor //-------------------------------------------------------------------------------------------------- GameSDKCGameEffectsSystem::~GameSDKCGameEffectsSystem() { #if DEBUG_GAME_FX_SYSTEM if(gEnv->pInput) { gEnv->pInput->RemoveEventListener(this); } #endif #ifdef SOFTCODE_ENABLED if(gEnv->pSoftCodeMgr) { gEnv->pSoftCodeMgr->RemoveListener(GAME_FX_LIBRARY_NAME,this); } SAFE_DELETE(m_gameRenderNodeSoftCodeListener); SAFE_DELETE(m_gameRenderElementSoftCodeListener); m_softCodeTypeLibs.clear(); m_gameRenderNodes.clear(); m_gameRenderElements.clear(); #endif // Remove as game rules listener if(g_pGame) { CGameRules* pGameRules = g_pGame->GetGameRules(); if(pGameRules) { pGameRules->RemoveGameRulesListener(this); } } }//-------------------------------------------------------------------------------------------------
//--------------------------------------- CMiscAnnouncer::~CMiscAnnouncer() { CryLog("CMiscAnnouncer::~CMiscAnnouncer()"); if(gEnv->pConsole) { gEnv->pConsole->UnregisterVariable("ma_enabled"); #if !defined(_RELEASE) gEnv->pConsole->UnregisterVariable("ma_debug"); #endif } CGameRules *pGameRules = g_pGame->GetGameRules(); if(pGameRules) { pGameRules->UnRegisterRoundsListener(this); pGameRules->RemoveGameRulesListener(this); } RemoveAllWeaponListeners(); g_pGame->GetIGameFramework()->GetIItemSystem()->UnregisterListener(this); }
~CFlowNode_MP() { CGameRules* pGameRules = g_pGame->GetGameRules(); if(pGameRules) pGameRules->RemoveGameRulesListener(this); }