Exemple #1
0
        /// <summary>
        /// Add a new state to the manager. The screen is not activated or desactivated, you must manage it yourself
        /// </summary>
        /// <param name="state">Screen to add</param>
        public void Add(YnState state)
        {
            state.StateManager = this;

            if (_initialized)
            {
                state.Initialize();
            }

            if (_assetLoaded)
            {
                state.LoadContent();
            }

            _states.Add(state);
            _statesDictionary.Add(state.Name, _states.IndexOf(state));
        }
Exemple #2
0
        /// <summary>
        /// Replace a state by another state
        /// </summary>
        /// <param name="oldState">Old state in the collection</param>
        /// <param name="newState">New state</param>
        /// <returns>True if for success then false</returns>
        public bool Replace(YnState oldState, YnState newState)
        {
            int index = _states.IndexOf(oldState);

            if (index > -1)
            {
                newState.StateManager = this;
                _states[index]        = newState;

                if (_initialized && !newState.Initialized)
                {
                    newState.Initialize();
                }

                if (_assetLoaded && !newState.AssetLoaded)
                {
                    newState.LoadContent();
                }

                return(true);
            }

            return(false);
        }
Exemple #3
0
        /// <summary>
        /// Add a new state to the manager. The screen is not activated or desactivated, you must manage it yourself
        /// </summary>
        /// <param name="state">Screen to add</param>
        public void Add(YnState state)
        {
            state.StateManager = this;

            if (_initialized)
                state.Initialize();

            if (_assetLoaded)
                state.LoadContent();

            _states.Add(state);
            _statesDictionary.Add(state.Name, _states.IndexOf(state));
        }
Exemple #4
0
        /// <summary>
        /// Replace a state by another state
        /// </summary>
        /// <param name="oldState">Old state in the collection</param>
        /// <param name="newState">New state</param>
        /// <returns>True if for success then false</returns>
        public bool Replace(YnState oldState, YnState newState)
        {
            int index = _states.IndexOf(oldState);

            if (index > -1)
            {
                newState.StateManager = this;
                _states[index] = newState;

                if (_initialized && !newState.Initialized)
                    newState.Initialize();

                if (_assetLoaded && !newState.AssetLoaded)
                    newState.LoadContent();

                return true;
            }

            return false;
        }