protected virtual void OnDestroy() { OnDisable(); if (_activeTrail != null) { _activeTrail.Dispose(); _activeTrail = null; } if (_fadingTrails != null) { { var __list3 = _fadingTrails; var __listCount3 = __list3.Count; for (int __i3 = 0; __i3 < __listCount3; ++__i3) { var fadingTrail = (PCTrail)__list3[__i3]; { if (fadingTrail != null) { fadingTrail.Dispose(); } } } } _fadingTrails.Clear(); } }
protected virtual void OnDestroy() { GlobalTrailRendererCount--; if (GlobalTrailRendererCount == 0) { if (_toClean != null && _toClean.Count > 0) { foreach (Mesh mesh in _toClean) { if (Application.isEditor) { DestroyImmediate(mesh, true); } else { Destroy(mesh); } } } _toClean = null; _matToTrailList.Clear(); _matToTrailList = null; } if (_activeTrail != null) { _activeTrail.Dispose(); _activeTrail = null; } if (_fadingTrails != null) { foreach (PCTrail fadingTrail in _fadingTrails) { if (fadingTrail != null) { fadingTrail.Dispose(); } } _fadingTrails.Clear(); } }
protected virtual void OnDestroy() { TrailRenderer_Base.GlobalTrailRendererCount--; if (TrailRenderer_Base.GlobalTrailRendererCount == 0) { if (TrailRenderer_Base._toClean != null && TrailRenderer_Base._toClean.Count > 0) { for (int i = 0; i < TrailRenderer_Base._toClean.Count; i++) { Mesh mesh = TrailRenderer_Base._toClean[i]; if (mesh != null) { if (Application.isEditor) { Object.DestroyImmediate(mesh, true); } else { Object.Destroy(mesh); } } } } TrailRenderer_Base._toClean = null; TrailRenderer_Base._matToTrailList.Clear(); TrailRenderer_Base._matToTrailList = null; } if (this._activeTrail != null) { this._activeTrail.Dispose(); this._activeTrail = null; } if (this._fadingTrails != null) { for (int j = 0; j < this._fadingTrails.Count; j++) { PCTrail pCTrail = this._fadingTrails[j]; if (pCTrail != null) { pCTrail.Dispose(); } } this._fadingTrails.Clear(); } }
protected virtual void OnDestroy() { GlobalTrailRendererCount--; if (GlobalTrailRendererCount == 0) { if ((_toClean != null) && (_toClean.Count > 0)) { for (int i = 0; i < _toClean.Count; i++) { Mesh mesh = _toClean[i]; if (mesh != null) { if (Application.isEditor) { UnityEngine.Object.DestroyImmediate(mesh, true); } else { UnityEngine.Object.Destroy(mesh); } } } } _toClean = null; _matToTrailList.Clear(); _matToTrailList = null; } if (this._activeTrail != null) { this._activeTrail.Dispose(); this._activeTrail = null; } if (this._fadingTrails != null) { for (int j = 0; j < this._fadingTrails.Count; j++) { PCTrail trail = this._fadingTrails[j]; if (trail != null) { trail.Dispose(); } } this._fadingTrails.Clear(); } }
public void ClearSystem(bool emitState) { if (this._fadingTrails != null) { for (int i = 0; i < this._fadingTrails.Count; i++) { PCTrail pCTrail = this._fadingTrails[i]; if (pCTrail != null && pCTrail != this._activeTrail) { pCTrail.Dispose(); } } this._fadingTrails.Clear(); } this.Emit = emitState; this._emit = !emitState; this.CheckEmitChange(); }