MCPcopy Create free account
hub / github.com/OpenTTD/OpenTTD / DrawTile_Water

Function DrawTile_Water

src/water_cmd.cpp:950–977  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

948}
949
950static void DrawTile_Water(TileInfo *ti)
951{
952 switch (GetWaterTileType(ti->tile)) {
953 case WaterTileType::Clear:
954 DrawWaterClassGround(ti);
955 /* A plain water tile can be traversed in any direction, so setting blocked pillars here would mean all bridges
956 * with edges would have no pillars above water. Instead prefer current behaviour of ships passing through. */
957 DrawBridgeMiddle(ti, {});
958 break;
959
960 case WaterTileType::Coast: {
961 DrawShoreTile(ti->tileh);
962 DrawBridgeMiddle(ti, {});
963 break;
964 }
965
966 case WaterTileType::Lock:
967 DrawWaterLock(ti);
968 DrawBridgeMiddle(ti, DiagDirToAxis(GetLockDirection(ti->tile)) == AXIS_X
969 ? BridgePillarFlags{BridgePillarFlag::EdgeNE, BridgePillarFlag::EdgeSW}
970 : BridgePillarFlags{BridgePillarFlag::EdgeNW, BridgePillarFlag::EdgeSE});
971 break;
972
973 case WaterTileType::Depot:
974 DrawWaterDepot(ti);
975 break;
976 }
977}
978
979void DrawShipDepotSprite(int x, int y, Axis axis, DepotPart part)
980{

Callers

nothing calls this directly

Calls 8

GetWaterTileTypeFunction · 0.85
DrawWaterClassGroundFunction · 0.85
DrawBridgeMiddleFunction · 0.85
DrawShoreTileFunction · 0.85
DrawWaterLockFunction · 0.85
DiagDirToAxisFunction · 0.85
GetLockDirectionFunction · 0.85
DrawWaterDepotFunction · 0.85

Tested by

no test coverage detected