/// <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)); }