public void Update(GameTime gameTime)
        {
            if (gameTime.TotalGameTime.Milliseconds % GameValues.HUDUpdateDelay == 0)
            {
                sprite.AdvanceFrame();
            }
            sprite.UpdateSpritePosition(Position);

            if (GameStateMachine.Instance.GameState.ToString() != "SuperMario.GameStates.TimeScoreAnimationState")
            {
                TimeLeft = TimerLife - timeCounter;
            }
        }
        public void Update(GameTime gameTime)
        {
            if (this.IsAlive)
            {
                expirationBuffer--;
                Physics.Move(this);
                sprite.AdvanceFrame();
                sprite.UpdateSpritePosition(this.Position);

                // Make the fireball die if it's far enough away from Mario.
                if (this.Position.X > Mario.Instance.Position.X + GameValues.FireBallLeftMaxVisiblePosition || this.Position.X < Mario.Instance.Position.X - GameValues.FireBallRightMaxVisiblePosition)
                {
                    this.IsAlive = false;
                }

                if (expirationBuffer <= 0)
                {
                    this.IsAlive     = false;
                    expirationBuffer = GameValues.FireBallExpirationBuffer;
                }
            }

            else
            {
                this.CollisionRectangle = GameValues.EmptyCollisionRectangle;
            }
        }
 public FloorTile(Vector2 position, Vector2 size, string color)
 {
     sprites  = new List <AnimatedSprite>();
     Position = position;
     for (int i = 0; i < size.X; i++)
     {
         for (int j = 0; j < size.Y; j++)
         {
             Vector2 tempPosition = new Vector2(position.X + (i * GameValues.LevelCellSize), position.Y + (j * GameValues.LevelCellSize));
             if (color == "Red")
             {
                 AnimatedSprite sprite = AnimatedSpriteFactory.Instance.BuildFloorTileSprite(tempPosition);
                 sprite.UpdateSpritePosition(tempPosition);
                 sprites.Add(sprite);
             }
             else
             {
                 AnimatedSprite sprite = AnimatedSpriteFactory.Instance.BuildFloorTileBlueSprite(Position);
                 sprite.UpdateSpritePosition(tempPosition);
                 sprites.Add(sprite);
             }
         }
     }
     CollisionRectangle = new Rectangle((int)position.X, (int)position.Y, GameValues.LevelCellSize * (int)size.X, GameValues.LevelCellSize * (int)size.Y);
 }
 public void Update(GameTime gameTime)
 {
     if (IsMoving)
     {
         Position = new Vector2(Position.X, Position.Y + YVelocity);
     }
     sprite.UpdateSpritePosition(Position);
 }
 public void Update(GameTime gameTime)
 {
     flagpole.UpdateSpritePosition(Position);
     CollisionRectangle = new Rectangle((int)Position.X, (int)Position.Y, flagpole.Texture.Width, flagpole.Texture.Height);
 }