Exemplo n.º 1
0
        public void MouseDown(MouseButton button)
        {
            if (button == MouseButton.Right && Time.GameTime.TotalGameTime.TotalSeconds > _lastBreak + 0.5f)
            {
                var mousePosition = MouseState.Bounds(_camera.GetMatrix());

                var mouseTileX = mousePosition.X / GameWorld.TileSize;
                var mouseTileY = mousePosition.Y / GameWorld.TileSize;
                if (mouseTileX < 0 || mouseTileY < 0 || mouseTileX > Entity.GameArea.AreaWidth - 1 ||
                    mouseTileY > Entity.GameArea.AreaHeight - 1)
                {
                    return;
                }

                var tile = Entity.GameArea.Tiles[mouseTileX, mouseTileY];

                if (!CloseEnoughToTile(tile))
                {
                    return;
                }
                if (!TileCanBeBroken(tile))
                {
                    return;
                }

                YetiGame.ContentManager.Load <SoundEffect>("dig").Play();

                tile.Break();
                _lastBreak = Time.GameTime.TotalGameTime.TotalSeconds;
            }
        }