protected void SetNextScene() { bool runningIsTransition = m_pRunningScene != null && m_pRunningScene.IsTransition;// is CCTransitionScene; // If it is not a transition, call onExit/cleanup if (!m_pNextScene.IsTransition) { if (m_pRunningScene != null) { m_pRunningScene.OnExitTransitionDidStart(); m_pRunningScene.OnExit(); // issue #709. the root node (scene) should receive the cleanup message too // otherwise it might be leaked. if (m_bSendCleanupToScene) { m_pRunningScene.Cleanup(); GC.Collect(); } } } m_pRunningScene = m_pNextScene; m_pNextScene = null; if (!runningIsTransition && m_pRunningScene != null) { m_pRunningScene.OnEnter(); m_pRunningScene.OnEnterTransitionDidFinish(); } }
public override void OnEnter() { base.OnEnter(); // outScene_ should not receive the onExit callback // only the onExitTransitionDidStart m_pOutScene.OnExitTransitionDidStart(); m_pInScene.OnEnter(); }
public void ResumeFromBackground() { Resume(); if (m_pRunningScene != null) { bool runningIsTransition = m_pRunningScene is CCTransitionScene; if (!runningIsTransition) { m_pRunningScene.OnEnter(); m_pRunningScene.OnEnterTransitionDidFinish(); } } }
public override void OnEnter() { base.OnEnter(); // disable events while transitions CCDirector.SharedDirector.TouchDispatcher.IsDispatchEvents = false; // outScene should not receive the onEnter callback // only the onExitTransitionDidStart m_pOutScene.OnExitTransitionDidStart(); m_pInScene.OnEnter(); }
protected void SetNextScene() { bool runningIsTransition = m_pRunningScene != null && m_pRunningScene.IsTransition;// is CCTransitionScene; // If it is not a transition, call onExit/cleanup if (!m_pNextScene.IsTransition) { if (m_pRunningScene != null) { m_pRunningScene.OnExitTransitionDidStart(); m_pRunningScene.OnExit(); // issue #709. the root node (scene) should receive the cleanup message too // otherwise it might be leaked. if (m_bSendCleanupToScene) { m_pRunningScene.Cleanup(); GC.Collect(); } } } m_pRunningScene = m_pNextScene; m_pNextScene = null; if (!runningIsTransition && m_pRunningScene != null) { m_pRunningScene.OnEnter(); m_pRunningScene.OnEnterTransitionDidFinish(); } }