summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/landscape.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/landscape.h b/src/landscape.h
index cc64b0cf1..d439f9171 100644
--- a/src/landscape.h
+++ b/src/landscape.h
@@ -41,6 +41,14 @@ void GetSlopeZOnEdge(Slope tileh, DiagDirection edge, int *z1, int *z2);
int GetSlopeZInCorner(Slope tileh, Corner corner);
Slope GetFoundationSlope(TileIndex tile, uint *z);
+/**
+ * Map 3D world or tile coordinate to equivalent 2D coordinate as used in the viewports and smallmap.
+ * @param x X world or tile coordinate (runs in SW direction in the 2D view).
+ * @param y Y world or tile coordinate (runs in SE direction in the 2D view).
+ * @param z Z world or tile coordinate (runs in N direction in the 2D view).
+ * @return Equivalent coordinate in the 2D view.
+ * @see RemapCoords2
+ */
static inline Point RemapCoords(int x, int y, int z)
{
Point pt;
@@ -49,6 +57,14 @@ static inline Point RemapCoords(int x, int y, int z)
return pt;
}
+/**
+ * Map 3D world or tile coordinate to equivalent 2D coordinate as used in the viewports and smallmap.
+ * Same as #RemapCoords, except the Z coordinate is read from the map.
+ * @param x X world or tile coordinate (runs in SW direction in the 2D view).
+ * @param y Y world or tile coordinate (runs in SE direction in the 2D view).
+ * @return Equivalent coordinate in the 2D view.
+ * @see RemapCoords
+ */
static inline Point RemapCoords2(int x, int y)
{
return RemapCoords(x, y, GetSlopeZ(x, y));