summaryrefslogtreecommitdiff
path: root/engine.c
diff options
context:
space:
mode:
authorpeter1138 <peter1138@openttd.org>2005-11-06 13:42:26 +0000
committerpeter1138 <peter1138@openttd.org>2005-11-06 13:42:26 +0000
commit34c503cabf3da56abe3861927b45fc4238b91353 (patch)
tree84353e1ac91e579a3ea163316e9e1fe281200d11 /engine.c
parent1fecb61566b559cafd048e93cd42cec66bff559a (diff)
downloadopenttd-34c503cabf3da56abe3861927b45fc4238b91353.tar.xz
(svn r3148) -NewGRF, Feature: Add support for cargo refitting specification by cargo classes.
Diffstat (limited to 'engine.c')
-rw-r--r--engine.c22
1 files changed, 17 insertions, 5 deletions
diff --git a/engine.c b/engine.c
index 2018734c4..8b9e0b01d 100644
--- a/engine.c
+++ b/engine.c
@@ -58,10 +58,10 @@ const CargoID _local_cargo_id_ctype[NUM_GLOBAL_CID] = {
const uint32 _landscape_global_cargo_mask[NUM_LANDSCAPE] =
{ /* LT_NORMAL: temperate */
MC(GC_PASSENGERS)|MC(GC_COAL)|MC(GC_MAIL)|MC(GC_OIL)|MC(GC_LIVESTOCK)|MC(GC_GOODS)|MC(GC_GRAIN)|MC(GC_WOOD)|
- MC(GC_IRON_ORE)|MC(GC_STEEL)|MC(GC_VALUABLES)|MC(GC_FOOD)|MC(GC_UNDEFINED),
+ MC(GC_IRON_ORE)|MC(GC_STEEL)|MC(GC_VALUABLES),
/* LT_HILLY: arctic */
MC(GC_PASSENGERS)|MC(GC_COAL)|MC(GC_MAIL)|MC(GC_OIL)|MC(GC_LIVESTOCK)|MC(GC_GOODS)|
- MC(GC_GRAIN)|MC(GC_WOOD)|MC(GC_VALUABLES)|MC(GC_PAPER)|MC(GC_FOOD)|MC(GC_UNDEFINED),
+ MC(GC_GRAIN)|MC(GC_WOOD)|MC(GC_VALUABLES)|MC(GC_PAPER)|MC(GC_FOOD),
/* LT_DESERT: rainforest/desert */
MC(GC_PASSENGERS)|MC(GC_MAIL)|MC(GC_OIL)|MC(GC_GOODS)|MC(GC_GRAIN)|MC(GC_WOOD)|
MC(GC_VALUABLES)|MC(GC_FOOD)|MC(GC_FRUIT)|MC(GC_COPPER_ORE)|MC(GC_WATER)|MC(GC_RUBBER),
@@ -91,6 +91,21 @@ const uint32 _default_refitmasks[NUM_VEHICLE_TYPES] = {
/* Special/Disaster */
0,0
};
+
+/**
+ * Bitmask of classes for cargo types.
+ */
+const uint32 cargo_classes[16] = {
+ /* Passengers */ MC(GC_PASSENGERS),
+ /* Mail */ MC(GC_MAIL),
+ /* Express */ MC(GC_GOODS)|MC(GC_FOOD)|MC(GC_CANDY),
+ /* Armoured */ MC(GC_VALUABLES),
+ /* Bulk */ MC(GC_COAL)|MC(GC_GRAIN)|MC(GC_IRON_ORE)|MC(GC_COPPER_ORE)|MC(GC_FRUIT)|MC(GC_SUGAR)|MC(GC_TOFFEE)|MC(GC_COTTON_CANDY),
+ /* Piece */ MC(GC_LIVESTOCK)|MC(GC_WOOD)|MC(GC_STEEL)|MC(GC_PAPER)|MC(GC_TOYS)|MC(GC_BATTERIES)|MC(GC_BUBBLES)|MC(GC_FIZZY_DRINKS),
+ /* Liquids */ MC(GC_OIL)|MC(GC_WATER)|MC(GC_RUBBER)|MC(GC_COLA)|MC(GC_PLASTIC),
+ /* Chilled */ MC(GC_FOOD)|MC(GC_FRUIT),
+ /* Undefined */ 0, 0, 0, 0, 0, 0, 0, 0
+};
#undef MC
void ShowEnginePreviewWindow(EngineID engine);
@@ -232,9 +247,6 @@ void StartupEngines(void)
AdjustAvailAircraft();
}
-uint32 _engine_refit_masks[TOTAL_NUM_ENGINES];
-
-
// TODO: We don't support cargo-specific wagon overrides. Pretty exotic... ;-) --pasky
typedef struct WagonOverride {