summaryrefslogtreecommitdiff
path: root/src/newgrf.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/newgrf.h')
-rw-r--r--src/newgrf.h23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/newgrf.h b/src/newgrf.h
index faf489b74..92f8994a5 100644
--- a/src/newgrf.h
+++ b/src/newgrf.h
@@ -16,6 +16,27 @@
#include "rail_type.h"
#include "fileio_type.h"
+/**
+ * List of different canal 'features'.
+ * Each feature gets an entry in the canal spritegroup table
+ */
+enum CanalFeature {
+ CF_WATERSLOPE,
+ CF_LOCKS,
+ CF_DIKES,
+ CF_ICON,
+ CF_DOCKS,
+ CF_RIVER_SLOPE,
+ CF_RIVER_EDGE,
+ CF_END,
+};
+
+/** Canal properties local to the NewGRF */
+struct CanalProperties {
+ uint8 callback_mask; ///< Bitmask of canal callbacks that have to be called.
+ uint8 flags; ///< Flags controlling display.
+};
+
enum GrfLoadingStage {
GLS_FILESCAN,
GLS_SAFETYSCAN,
@@ -104,6 +125,8 @@ struct GRFFile {
RailTypeLabel *railtype_list;
RailType railtype_map[RAILTYPE_END];
+ CanalProperties canal_local_properties[CF_END]; ///< Canal properties as set by this NewGRF
+
struct LanguageMap *language_map; ///< Mappings related to the languages.
int traininfo_vehicle_pitch; ///< Vertical offset for draing train images in depot GUI and vehicle details