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;
            }
        }
Exemplo n.º 2
0
        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;
            }
        }