private void OnDestroy() { #if !UNITY_EDITOR try { #endif Instance = null; PlayCG.Instance.Reset(); UIManager.Instance.Destroy(); //ObjManager.Instance.RemoveAllObj(); ObjManager.Instance.Reset(); ComplexObjectPool.Destroy(); GuideManager.Instance.StopGuiding(); EventDispatcher.Instance.RemoveEventListener(DungeonCompleteEvent.EVENT_TYPE, OnDungeonComplete); #if !UNITY_EDITOR } catch (Exception ex) { Logger.Error(ex.ToString()); } #endif }
private void OnDestroy() { #if !UNITY_EDITOR try { #endif try { GuideManager.Instance.StopGuiding(); } catch (Exception e) { Logger.Error(e.Message); } try { PlayCG.Instance.Reset(); } catch (Exception e) { Logger.Error(e.Message); } try { if (null != HeadBoardManager.Instance) { HeadBoardManager.Instance.Cleanup(); } if (null != DamageBoardManager.Instance) { DamageBoardManager.Instance.Cleanup(); } if (null != GainItemTipManager.Instance) { GainItemTipManager.Instance.Cleanup(); } if (null != UIHintBoardManager.Instance) { UIHintBoardManager.Instance.Cleanup(); } ResetTimeScale(); } catch (Exception e) { Logger.Error(e.Message); } try { UIManager.Instance.ClearUI(); } catch (Exception e) { Logger.Error(e.Message); } try { ObjManager.Instance.Reset(); } catch (Exception e) { Logger.Error(e.Message); } try { ComplexObjectPool.Destroy(); } catch (Exception e) { Logger.Error(e.Message); } try { if (null != UIManager.Instance && null != UIManager.Instance.UICamera) { var rt = UIManager.Instance.UICamera.GetComponent <RenderTextureCreator>(); if (null != rt) { rt.enabled = false; } } } catch (Exception e) { Logger.Error(e.Message); } EventDispatcher.Instance.RemoveEventListener(DungeonCompleteEvent.EVENT_TYPE, OnDungeonComplete); Instance = null; HasCache = false; #if !UNITY_EDITOR } catch (Exception ex) { Logger.Error(ex.ToString()); } #endif }