public override void Update(Microsoft.Xna.Framework.GameTime gameTime) { elapsed += (float)gameTime.ElapsedGameTime.TotalSeconds; if (elapsed > nextMovement && this.Movable) { Movement move = MovementBehavior.NextMovement(); if (move.Speed == MovementSpeed.Zero) { this.Face(move.Facing); } else { this.TryMove(move.Facing, move.Speed); } this.elapsed = 0; this.nextMovement = MovementBehavior.NextMovementTime(); //GameConsole.WriteLine("MOV" + movements++ + ", next time: " + nextMovement); } base.Update(gameTime); }