public void off_on_update() { var transition = new ScreenTransition() { State = TransitionState.TransitionOff }; Assert.IsTrue(transition.Update(new GameTime(), true)); }
public void CorrectReturnValue_TransitionOff() { var transition = new ScreenTransition(); transition.OnTime = 0f; transition.OffTime = 0f; Assert.IsFalse(transition.Update(new GameTime(), false)); }
public void CorrectReturnValue_QuarterTransitionOn() { var transition = new ScreenTransition(); transition.OnTime = 1f; transition.OnTime = 1f; Assert.IsTrue(transition.Update(new GameTime(), true)); }
public void TransitionOn() { var transition = new ScreenTransition(); transition.OnTime = 1f; transition.OffTime = 0f; transition.Update(new GameTime(), true); Assert.AreEqual(1f, transition.TransitionPosition); }
public void Alpha_TransitionOff() { var transition = new ScreenTransition(); transition.OnTime = 0f; transition.OffTime = 0f; transition.Update(new GameTime(), false); Assert.AreEqual(0f, transition.Alpha); }
public void QuarterTransitionOn() { var transition = new ScreenTransition(); transition.OnTime = 1f; transition.OnTime = 1f; transition.Update(new GameTime(new TimeSpan(0, 0, 0, 0, 250), new TimeSpan(0, 0, 0, 0, 250)), true); Assert.AreEqual(.75f, transition.TransitionPosition); }
public void Alpha_NoneTransitionOn() { var transition = new ScreenTransition(); transition.OnTime = 1f; transition.OffTime = 1f; transition.Update(new GameTime(), true); Assert.AreEqual(0f, transition.Alpha); }
public void CorrectReturnValue_QuarterTransitionOff() { var transition = new ScreenTransition() { State = TransitionState.Active }; transition.OnTime = 1f; transition.OffTime = 1f; Assert.IsTrue(transition.Update(new GameTime(), false)); }
public void Alpha_HalfTransitionOn() { var transition = new ScreenTransition(); transition.OnTime = 1f; transition.OnTime = 1f; transition.Update(new GameTime(new TimeSpan(0, 0, 0, 0, 500), new TimeSpan(0, 0, 0, 0, 500)), true); var target = new Color(255, 255, 255, 127); Assert.AreEqual(target, transition.AlphaColor(Color.White)); }
public void AlphaColor_NoneTransitionOn() { var transition = new ScreenTransition(); transition.OnTime = 1f; transition.OffTime = 1f; transition.Update(new GameTime(), true); var target = new Color(255, 255, 255, 0); Assert.AreEqual(target, transition.AlphaColor(Color.White)); }
public void HalfAlphaColor_TransitionOn() { var transition = new ScreenTransition(); transition.OnTime = 1f; transition.OffTime = 0f; transition.Update(new GameTime(), true); var color = new Color(255, 255, 255, 127); var target = new Color(255, 255, 255, 0); Assert.AreEqual(target, transition.AlphaColor(color)); }
public void Alpha_NoneTransitionOff() { var transition = new ScreenTransition() { State = TransitionState.Active }; transition.OnTime = 1f; transition.OffTime = 1f; transition.Update(new GameTime(), false); Assert.AreEqual(1f, transition.Alpha); }
public void QuarterTransitionOff() { var transition = new ScreenTransition() { State = TransitionState.Active }; transition.OnTime = 1f; transition.OffTime = 1f; transition.Update(new GameTime(new TimeSpan(0, 0, 0, 0, 250), new TimeSpan(0, 0, 0, 0, 250)), false); Assert.AreEqual(.25f, transition.TransitionPosition); }
public void StateEvent() { var transition = new ScreenTransition() { State = TransitionState.Hidden }; bool stateChanged = false; transition.OnStateChange += (obj, e) => { stateChanged = true; }; transition.Update(new GameTime(), true); Assert.IsTrue(stateChanged); }
public void AlphaColor_NoneTransitionOff() { var transition = new ScreenTransition() { State = TransitionState.Active }; transition.OnTime = 1f; transition.OffTime = 1f; transition.Update(new GameTime(), false); var target = new Color(255, 255, 255, 255); Assert.AreEqual(target, transition.AlphaColor(Color.White)); }
public static void UpdateScenes() { if (NextScreen != null) { ScreenTransition.Begin(() => { Pool.Reset(); CurrentScreen = NextScreen; NextScreen = null; CurrentScreen.Open(); }); } ScreenTransition.Update(); CurrentScreen.Update(); }
public void AlphaColor_HalfTransitionOff() { var transition = new ScreenTransition() { State = TransitionState.Active }; transition.OnTime = 1f; transition.OffTime = 1f; transition.Update(new GameTime(new TimeSpan(0, 0, 0, 0, 500), new TimeSpan(0, 0, 0, 0, 500)), false); var color = new Color(255, 255, 255, 255); var target = new Color(255, 255, 255, 127); Assert.AreEqual(target, transition.AlphaColor(color)); }
/// <summary> /// Update the ScreenManager state. /// </summary> /// <param name="gameTime">The game time TimeSpan</param> public void Update(GameTime gameTime) { if (currentScreen != null) { currentScreen.Update(gameTime); } if (transition != null) { transition.Update(gameTime); if (transition.IsActive && transition.DoChange) { SetScreen(transition.NextScreen); } else if (!transition.IsActive) { IsTransitioning = false; transition = null; } } }
/// <summary> /// Updates the current screen. /// </summary> public bool Update(GameTime gameTime) { if (_executingScreenTransition) { _currentTransition.Update(gameTime); if (_currentTransition.IsFinished) { _executingScreenTransition = false; } } else { if (_activeOverlays.Any()) { _activeOverlays.Last().OnUpdate(gameTime); } else { CurrentScreen?.OnUpdate(gameTime); } } return(!_quitGame); }