#include "core/geometry_type.hpp"
#include "tile_cmd.h"
#include "slope_type.h"
#include "direction_type.h"
Go to the source code of this file.
Data Structures | |
| struct | SnowLine |
| Structure describing the height of the snow line each day of the year. More... | |
Enumerations | |
| enum | { SNOW_LINE_MONTHS = 12, SNOW_LINE_DAYS = 32 } |
Functions | |
| bool | IsSnowLineSet (void) |
| Has a snow line table already been loaded. | |
| void | SetSnowLine (byte table[SNOW_LINE_MONTHS][SNOW_LINE_DAYS]) |
| Set a variable snow line, as loaded from a newgrf file. | |
| byte | GetSnowLine (void) |
| Get the current snow line, either variable or static. | |
| byte | HighestSnowLine (void) |
| Get the highest possible snow line height, either variable or static. | |
| byte | LowestSnowLine (void) |
| Get the lowest possible snow line height, either variable or static. | |
| void | ClearSnowLine (void) |
| Clear the variable snow line table and free the memory. | |
| uint | GetPartialZ (int x, int y, Slope corners) |
| Determines height at given coordinate of a slope. | |
| uint | GetSlopeZ (int x, int y) |
| void | GetSlopeZOnEdge (Slope tileh, DiagDirection edge, int *z1, int *z2) |
| Determine the Z height of the corners of a specific tile edge. | |
| int | GetSlopeZInCorner (Slope tileh, Corner corner) |
| Determine the Z height of a corner relative to TileZ. | |
| Slope | GetFoundationSlope (TileIndex tile, uint *z) |
| Get slope of a tile on top of a (possible) foundation If a tile does not have a foundation, the function returns the same as GetTileSlope. | |
| static Point | RemapCoords (int x, int y, int z) |
| static Point | RemapCoords2 (int x, int y) |
| uint | ApplyFoundationToSlope (Foundation f, Slope *s) |
| Applies a foundation to a slope. | |
| void | DrawFoundation (TileInfo *ti, Foundation f) |
| Draw foundation f at tile ti. | |
| void | DoClearSquare (TileIndex tile) |
| void | RunTileLoop () |
| void | InitializeLandscape () |
| void | GenerateLandscape (byte mode) |
Definition in file landscape.h.
| anonymous enum |
| SNOW_LINE_MONTHS | Number of months in the snow line table. |
| SNOW_LINE_DAYS | Number of days in each month in the snow line table. |
Definition at line 13 of file landscape.h.
| uint ApplyFoundationToSlope | ( | Foundation | f, | |
| Slope * | s | |||
| ) |
Applies a foundation to a slope.
| f | The Foundation. | |
| s | The Slope to modify. |
Definition at line 81 of file landscape.cpp.
References FOUNDATION_INCLINED_X, FOUNDATION_INCLINED_Y, FOUNDATION_STEEP_BOTH, FOUNDATION_STEEP_LOWER, GetHalftileFoundationCorner(), GetHighestSlopeCorner(), GetRailFoundationCorner(), HalftileSlope(), IsFoundation(), IsLeveledFoundation(), IsNonContinuousFoundation(), IsSpecialRailFoundation(), IsSteepSlope(), OppositeCorner(), SLOPE_FLAT, SLOPE_NE, SLOPE_NW, SLOPE_SE, SLOPE_SW, SlopeWithOneCornerRaised(), SlopeWithThreeCornersRaised(), and TILE_HEIGHT.
Referenced by CheckBridgeSlopeNorth(), CheckBridgeSlopeSouth(), DrawCatenaryRailway(), DrawFoundation(), FloodHalftile(), GetBridgeHeight(), GetFoundationSlope(), HasBridgeFlatRamp(), and TestAutoslopeOnRailTile().
| void DrawFoundation | ( | TileInfo * | ti, | |
| Foundation | f | |||
| ) |
Draw foundation f at tile ti.
Updates ti.
| ti | Tile to draw foundation on | |
| f | Foundation to draw |
Definition at line 372 of file landscape.cpp.
References AddSortableSpriteToDraw(), ApplyFoundationToSlope(), FOUNDATION_INCLINED_X, FOUNDATION_INCLINED_Y, FOUNDATION_STEEP_BOTH, FOUNDATION_STEEP_LOWER, GetFoundationSlope(), GetHalftileFoundationCorner(), GetHighestSlopeCorner(), GetRailFoundationCorner(), IsFoundation(), IsInclinedFoundation(), IsLeveledFoundation(), IsNonContinuousFoundation(), IsSpecialRailFoundation(), IsSteepSlope(), OffsetGroundSprite(), SLOPE_EW, SLOPE_NE, SLOPE_NS, SLOPE_STEEP, SLOPE_SW, SlopeWithOneCornerRaised(), SlopeWithThreeCornersRaised(), TileInfo::tile, TILE_HEIGHT, TileInfo::tileh, TileInfo::x, TileInfo::y, and TileInfo::z.
Referenced by DrawRoadBits(), DrawTile_Road(), DrawTile_Town(), DrawTile_TunnelBridge(), and DrawTrackBits().
Get slope of a tile on top of a (possible) foundation If a tile does not have a foundation, the function returns the same as GetTileSlope.
| tile | The tile of interest. | |
| z | returns the z of the foundation slope. (Can be NULL, if not needed) |
Definition at line 324 of file landscape.cpp.
References ApplyFoundationToSlope(), TileTypeProcs::get_foundation_proc, GetTileSlope(), and GetTileType().
Referenced by DrawFoundation(), IsPossibleCrossing(), IsRoadAllowedHere(), and TileLoop_Water().
| uint GetPartialZ | ( | int | x, | |
| int | y, | |||
| Slope | corners | |||
| ) |
Determines height at given coordinate of a slope.
| x | x coordinate | |
| y | y coordinate | |
| corners | slope to examine |
Definition at line 134 of file landscape.cpp.
References GetHalftileSlopeCorner(), GetSlopeMaxZ(), IsHalftileSlope(), RemoveHalftileSlope(), SLOPE_E, SLOPE_ELEVATED, SLOPE_ENW, SLOPE_EW, SLOPE_N, SLOPE_NE, SLOPE_NS, SLOPE_NW, SLOPE_NWS, SLOPE_S, SLOPE_SE, SLOPE_SEN, SLOPE_STEEP_E, SLOPE_STEEP_N, SLOPE_STEEP_S, SLOPE_STEEP_W, SLOPE_SW, SLOPE_W, and SLOPE_WSE.
Determine the Z height of a corner relative to TileZ.
| tileh | The slope. | |
| corner | The corner. |
Definition at line 277 of file landscape.cpp.
References IsHalftileSlope(), SlopeWithOneCornerRaised(), SteepSlope(), and TILE_HEIGHT.
Referenced by DrawTrackFence_NS_1(), DrawTrackFence_NS_2(), DrawTrackFence_WE_1(), DrawTrackFence_WE_2(), AITile::GetCornerHeight(), and TestAutoslopeOnRailTile().
| void GetSlopeZOnEdge | ( | Slope | tileh, | |
| DiagDirection | edge, | |||
| int * | z1, | |||
| int * | z2 | |||
| ) |
Determine the Z height of the corners of a specific tile edge.
| tileh | The slope of the tile. | |
| edge | The edge of interest. | |
| z1 | Gets incremented by the height of the first corner of the edge. (near corner wrt. the camera) | |
| z2 | Gets incremented by the height of the second corner of the edge. (far corner wrt. the camera) |
Definition at line 295 of file landscape.cpp.
References GetHalftileSlopeCorner(), IsHalftileSlope(), RemoveHalftileSlope(), SLOPE_E, SLOPE_N, SLOPE_S, SLOPE_STEEP_E, SLOPE_STEEP_N, SLOPE_STEEP_S, SLOPE_STEEP_W, SLOPE_W, SlopeWithOneCornerRaised(), and TILE_HEIGHT.
Referenced by DrawBridgePillars().
1.5.6