summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/newgrf.h2
-rw-r--r--src/station_cmd.cpp7
2 files changed, 8 insertions, 1 deletions
diff --git a/src/newgrf.h b/src/newgrf.h
index 92f8994a5..c19b41132 100644
--- a/src/newgrf.h
+++ b/src/newgrf.h
@@ -28,6 +28,8 @@ enum CanalFeature {
CF_DOCKS,
CF_RIVER_SLOPE,
CF_RIVER_EDGE,
+ CF_RIVER_GUI,
+ CF_BUOY,
CF_END,
};
diff --git a/src/station_cmd.cpp b/src/station_cmd.cpp
index 5f140365b..18afebe7d 100644
--- a/src/station_cmd.cpp
+++ b/src/station_cmd.cpp
@@ -23,6 +23,7 @@
#include "newgrf_cargo.h"
#include "newgrf_debug.h"
#include "newgrf_station.h"
+#include "newgrf_canal.h" /* For the buoy */
#include "pathfinder/yapf/yapf_cache.h"
#include "road_internal.h" /* For drawing catenary/checking road removal */
#include "autoslope.h"
@@ -2669,7 +2670,11 @@ draw_default_foundation:
}
}
- if (IsBuoy(ti->tile) || IsDock(ti->tile) || (IsOilRig(ti->tile) && IsTileOnWater(ti->tile))) {
+ if (IsBuoy(ti->tile)) {
+ DrawWaterClassGround(ti);
+ SpriteID sprite = GetCanalSprite(CF_BUOY, ti->tile);
+ if (sprite != 0) total_offset = sprite - SPR_IMG_BUOY;
+ } else if (IsDock(ti->tile) || (IsOilRig(ti->tile) && IsTileOnWater(ti->tile))) {
if (ti->tileh == SLOPE_FLAT) {
DrawWaterClassGround(ti);
} else {