// IDisposable public void Dispose() { if (_isDisposed) { return; } _isDisposed = true; if (_loadedAtlases.Any()) { SpriteAtlasManager.atlasRequested -= OnAtlasRequest; _loadedAtlases.Clear(); } _audioManager.UnregisterClips(_clips); _clips.Clear(); BundleLoadersMap.Remove(BundleName); if (Complete.Value) { Bundle.Unload(true); Bundle = null; } _complete.Dispose(); }
// \IGame // IDisposable void IDisposable.Dispose() { _players.Clear(); _disposables.Dispose(); _isActive.Dispose(); }
// \IPlayerCharacter // IDisposable void IDisposable.Dispose() { NumLives.Dispose(); Health.Dispose(); Position.Dispose(); IsActive.Dispose(); }
public void SetUIShootProperty(BoolReactiveProperty prop) { #if !UNITY_EDITOR if (m_UIShoot != null) { m_UIShoot.Dispose(); } #endif m_UIShoot = prop; #if !UNITY_EDITOR m_UIShoot.Subscribe(ChangeShootState); #endif }
// \ITask // IDisposable public void Dispose() { if (_isDisposed) { return; } _isDisposed = true; _tasks.ForEach(task => (task as IDisposable)?.Dispose()); foreach (var pair in _completeHandlers) { (pair.Value as IDisposable)?.Dispose(); } Clear(); _complete.Dispose(); }
// \ITask // IDisposable public void Dispose() { if (_isDisposed) { return; } _isDisposed = true; foreach (var task in _queue) { (task as IDisposable)?.Dispose(); } (_currentGameTask as IDisposable)?.Dispose(); Clear(); _complete.Dispose(); }
private void OnDestroy() { // Disposeすることで、Awaiterごと破棄される(awaitが中断される) _isDeadReactiveProperty.Dispose(); }