Example #1
0
        protected override void Update(GameTime gameTime)
        {
            // update the manager
            manager.Update(gameTime);

            // every 2.5 seconds, play a beep sound
            if (TimeHelpers.ElapsedMilliSeconds(_lastBeepSoundTime, gameTime) > 2500)
            {
                _lastBeepSoundTime = gameTime.TotalGameTime;
                manager.AddTag(_soundsCategory, "beep", true, 500);
            }

            // every 6 seconds, play a blaster sound
            if (TimeHelpers.ElapsedMilliSeconds(_lastBlasterSoundTime, gameTime) > 6000)
            {
                _lastBlasterSoundTime = gameTime.TotalGameTime;
                manager.AddSoundTag(_soundsCategory, "blast", true, 500);
            }

            base.Update(gameTime);
        }
Example #2
0
        /// <summary>
        ///     Updates the given gameTime.
        /// </summary>
        ///
        /// <param name="gameTime"> The game time. </param>
        ///
        /// <seealso cref="Velentr.Sprite.Sprites.Base.VelentrSprite.Update(GameTime)"/>
        public override void Update(GameTime gameTime)
        {
            if (_currentFrameStartTime == TimeSpan.Zero)
            {
                _currentFrameStartTime = gameTime.TotalGameTime;
            }

            // if we've changed animations, set us to the new animation and reset the old one
            if (!_currentAnimation.Equals(CurrentAnimationName))
            {
                Animations[_currentAnimation].Reset();
                _currentFrameStartTime = gameTime.TotalGameTime;
                _currentAnimation      = CurrentAnimationName;
            }

            // update the new animation frame as required
            if (TimeHelpers.ElapsedMilliSeconds(_currentFrameStartTime, gameTime.TotalGameTime) > CurrentAnimation.CurrentFrame.DurationMilliseconds)
            {
                CurrentAnimation.IncrementFrameId();
                _currentFrameStartTime = gameTime.TotalGameTime;
            }
        }
Example #3
0
        protected override void Update(GameTime gameTime)
        {
            manager.Update(gameTime);

            var current = Keyboard.GetState();

            if (current.IsKeyDown(Keys.Left) && lastState.IsKeyUp(Keys.Left))
            {
                var id = ((int)currentState) - 1;
                if (id < 0)
                {
                    id = Enum.GetNames(typeof(DevStates)).Length - 1;
                }
                var last = currentState;
                currentState           = (DevStates)id;
                lastMovingSpriteUpdate = gameTime.TotalGameTime;
                ChangeState(currentState, last);
            }
            else if (current.IsKeyDown(Keys.Right) && lastState.IsKeyUp(Keys.Right))
            {
                var id = ((int)currentState) + 1;
                if (id >= Enum.GetNames(typeof(DevStates)).Length)
                {
                    id = 0;
                }
                var last = currentState;
                currentState           = (DevStates)id;
                lastMovingSpriteUpdate = gameTime.TotalGameTime;
                ChangeState(currentState, last);
            }
            else if (current.IsKeyDown(Keys.Up) && lastState.IsKeyUp(Keys.Up))
            {
                manager.AutoTextureAtlasBalancingEnabled = !manager.AutoTextureAtlasBalancingEnabled;
            }

            lastState = current;

            if (currentState == DevStates.AnimatedMovingSpriteTesting && TimeHelpers.ElapsedMilliSeconds(lastMovingSpriteUpdate, gameTime.TotalGameTime) > 1000)
            {
                var changes = GetRandomChanges();
                animatedSprite2.Position = changes.Item1;
                animatedSprite2.Rotation = changes.Item2;
                lastMovingSpriteUpdate   = gameTime.TotalGameTime;
            }

            if (currentState == DevStates.SimpleMovingSpriteTesting && TimeHelpers.ElapsedMilliSeconds(lastMovingSpriteUpdate, gameTime.TotalGameTime) > 1000)
            {
                var changes = GetRandomChanges();
                sprite2.Position       = changes.Item1;
                sprite2.Rotation       = changes.Item2;
                lastMovingSpriteUpdate = gameTime.TotalGameTime;
            }

            if (currentState == DevStates.CompositeMovingSpriteTesting && TimeHelpers.ElapsedMilliSeconds(lastMovingSpriteUpdate, gameTime.TotalGameTime) > 1000)
            {
                var changes = GetRandomChanges();
                compositeSprite2.Position = changes.Item1;
                compositeSprite2.Rotation = changes.Item2;
                lastMovingSpriteUpdate    = gameTime.TotalGameTime;
            }

            if (currentState == DevStates.CompositeMovingAnimatedSpriteTesting && TimeHelpers.ElapsedMilliSeconds(lastMovingSpriteUpdate, gameTime.TotalGameTime) > 1000)
            {
                var changes = GetRandomChanges();
                compositeAnimatedSprite2.Position = changes.Item1;
                compositeAnimatedSprite2.Rotation = changes.Item2;
                lastMovingSpriteUpdate            = gameTime.TotalGameTime;
            }


            base.Update(gameTime);
        }