public StatusUpdateBar(int offsetY) : base("General/updateBarBG", new Vector2(GameClass.CurrentGameCamera.Position.Y - 75, GameClass.CurrentGameCamera.Position.Y + offsetY), Vector2.Zero) { appearanceTimer = 0.0f; state = StatusUpdateBarState.IdleHidden; offsetX = -75; this.offsetY = offsetY; }
public override void Update(GameTime gameTime) { switch (state) { case StatusUpdateBarState.Appearing: if (!(offsetX < 75)) { offsetX = 75; state = StatusUpdateBarState.IdleShowing; } else { offsetX += appearanceSpeed; } break; case StatusUpdateBarState.Disappearing: if (!(offsetX > -75)) { offsetX = -75; state = StatusUpdateBarState.IdleHidden; } else { offsetX -= appearanceSpeed; } break; case StatusUpdateBarState.IdleShowing: if (appearanceTimer > appearanceDuration) { appearanceTimer = 0.0f; state = StatusUpdateBarState.Disappearing; } else { appearanceTimer += GameClass.Elapsed; } break; } position = new Vector2(GameClass.CurrentGameCamera.Position.X + offsetX, GameClass.CurrentGameCamera.Position.Y + offsetY); base.Update(gameTime); }
public void Show(string message) { updateMessage = message; GameClass.SoundManager.PlaySoundEffect("Audio/menuPopUp"); state = StatusUpdateBarState.Appearing; }