/// <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)); }
/// <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); }
/// <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)); }
/// <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; }