protected void Start() { var startTimer = Stopwatch.StartNew(); PloppableAsset.InitialiseCache(); var list = new List <PloppableAsset>(500); AssetScanner.CollateAssets(list); if (list.Count == 0) { OnDestroy(); return; } list.TrimExcess(); assets = list; instance = this; HookEvents(true); SetAsphaltColor(currentColor); CacheDesaturationControl(); enabled = false; // no update loop required Debug.Log($"[PloppableAsphalt] Start() time: {startTimer.ElapsedMilliseconds}ms"); }
protected void OnDestroy() { HookEvents(false); instance = null; CancelInvoke(); desaturationTarget = null; assets = null; PloppableAsset.ClearCache(); }