Ejemplo n.º 1
0
        /// <summary>
        /// Get a tile GameNode from screen coordinates.
        /// </summary>
        /// <param name="screenCoords">Screen coordinates.</param>
        /// <returns>Tile GameNode at the specified screen coordinates.</returns>
        public GameTile tileAtScreenCoords(Point screenCoords)
        {
            // TODO: needs to be able to grab elevated tiles

            // Generate coordinate vector so we can transform
            Vector2 vecScreenCoords = new Vector2(
                screenCoords.X,
                screenCoords.Y);

            // Transform into isometric coordinates
            vecScreenCoords = _camera.screenToIsometric(vecScreenCoords);

            // Coordinates as Vector3 so we can grab the index
            Vector3 isoCoords = new Vector3(
                vecScreenCoords.X,
                0.0f,
                vecScreenCoords.Y);

            return(tileAtIsoCoords(isoCoords));
        }