示例#1
0
            // 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();
            }
示例#2
0
        // \IGame

        // IDisposable
        void IDisposable.Dispose()
        {
            _players.Clear();

            _disposables.Dispose();
            _isActive.Dispose();
        }
示例#3
0
        // \IPlayerCharacter

        // IDisposable
        void IDisposable.Dispose()
        {
            NumLives.Dispose();
            Health.Dispose();
            Position.Dispose();
            IsActive.Dispose();
        }
示例#4
0
    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();
        }
示例#6
0
        // \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();
 }