public override void Update(GameTime pGameTime) { base.Update(pGameTime); if (YoutubeGame.Instance.InputManager[Input.Back].IsPressed) { quit = true; } Direction tinyMaleWalkingDirection = Direction.None; if (YoutubeGame.Instance.InputManager[Input.Up].IsHeld) { tinyMaleWalkingDirection = Direction.Up; tinyMaleSprite.SetPosition(tinyMaleSprite.Position.X, tinyMaleSprite.Position.Y - 100 * pGameTime.ElapsedGameTime.Milliseconds / 1000f); } if (YoutubeGame.Instance.InputManager[Input.Down].IsHeld) { tinyMaleWalkingDirection = Direction.Down; tinyMaleSprite.SetPosition(tinyMaleSprite.Position.X, tinyMaleSprite.Position.Y + 100 * pGameTime.ElapsedGameTime.Milliseconds / 1000f); } if (YoutubeGame.Instance.InputManager[Input.Left].IsHeld) { tinyMaleWalkingDirection = Direction.Left; tinyMaleSprite.SetPosition(tinyMaleSprite.Position.X - 100 * pGameTime.ElapsedGameTime.Milliseconds / 1000f, tinyMaleSprite.Position.Y); } if (YoutubeGame.Instance.InputManager[Input.Right].IsHeld) { tinyMaleWalkingDirection = Direction.Right; tinyMaleSprite.SetPosition(tinyMaleSprite.Position.X + 100 * pGameTime.ElapsedGameTime.Milliseconds / 1000f, tinyMaleSprite.Position.Y); } tinyMaleSprite.Update(pGameTime); if (tinyMaleWalkingDirection != lastTinyMaleWalkingDirection) { AnimationState?animationState = animationManager.GetState(tinyMaleAnimationId); if (animationState.HasValue) { animationManager.StopAnimation(tinyMaleAnimationId); } switch (tinyMaleWalkingDirection) { case Direction.Up: tinyMaleAnimationId = animationManager.PlayAnimation("WalkUp8Frame", tinyMaleSprite); break; case Direction.Down: tinyMaleAnimationId = animationManager.PlayAnimation("WalkDown8Frame", tinyMaleSprite); break; case Direction.Left: tinyMaleAnimationId = animationManager.PlayAnimation("WalkLeft8Frame", tinyMaleSprite); break; case Direction.Right: tinyMaleAnimationId = animationManager.PlayAnimation("WalkRight8Frame", tinyMaleSprite); break; } } lastTinyMaleWalkingDirection = tinyMaleWalkingDirection; }