(svn r11758) -Fix(ette): Populate 'void' cargo slots (unused slots in temperate and arctic) with default data as per pre-newcargo support. These slots are still disabled by default, but some NewGRFs (erroneously?) expect the default data.
authorpeter1138
Fri, 04 Jan 2008 17:25:53 +0000
changeset 8691 5e0b83e9cfb8
parent 8690 49dffe46a866
child 8692 5408c091b204
(svn r11758) -Fix(ette): Populate 'void' cargo slots (unused slots in temperate and arctic) with default data as per pre-newcargo support. These slots are still disabled by default, but some NewGRFs (erroneously?) expect the default data.
src/cargotype.cpp
src/table/cargo_const.h
--- a/src/cargotype.cpp	Fri Jan 04 15:39:08 2008 +0000
+++ b/src/cargotype.cpp	Fri Jan 04 17:25:53 2008 +0000
@@ -37,7 +37,7 @@
 		if (cl < lengthof(_default_cargo)) {
 			/* Copy the indexed cargo */
 			_cargo[i] = _default_cargo[cl];
-			SetBit(_cargo_mask, i);
+			if (_cargo[i].bitnum != INVALID_CARGO) SetBit(_cargo_mask, i);
 			continue;
 		}
 
--- a/src/table/cargo_const.h	Fri Jan 04 15:39:08 2008 +0000
+++ b/src/table/cargo_const.h	Fri Jan 04 17:25:53 2008 +0000
@@ -141,13 +141,23 @@
 		STR_002D_FIZZY_DRINKS,   STR_004D_FIZZY_DRINK,    STR_NOTHING,    STR_QUANTITY_FIZZY_DRINKS, STR_ABBREV_FIZZY_DRINKS,
 		SPR_CARGO_FIZZYDRINK,    CC_PIECE_GOODS ),
 
+	/* Void slot in temperate */
+	MK( 0xFF,    0,   1,  0, 5688,  0,  30, true,  TE_NONE,
+		STR_000E,                STR_002E,                STR_TONS,       STR_QUANTITY_NOTHING,      STR_ABBREV_NOTHING,
+		SPR_ASCII_SPACE,         CC_NOAVAILABLE ),
+
+	/* Void slot in arctic */
+	MK( 0xFF,    0, 184,  0, 5120,  9, 255, true,  TE_NONE,
+		STR_000E,                STR_002E,                STR_TONS,       STR_QUANTITY_NOTHING,      STR_ABBREV_NOTHING,
+		SPR_ASCII_SPACE,         CC_NOAVAILABLE ),
+
 };
 
 
 /* Table of which cargo types are available in each climate, by default */
 static const CargoLabel _default_climate_cargo[NUM_LANDSCAPE][12] = {
-	{ 'PASS', 'COAL', 'MAIL', 'OIL_', 'LVST', 'GOOD', 'GRAI', 'WOOD', 'IORE', 'STEL', 'VALU', 'VOID', },
-	{ 'PASS', 'COAL', 'MAIL', 'OIL_', 'LVST', 'GOOD', 'WHEA', 'WOOD', 'VOID', 'PAPR', 'GOLD', 'FOOD', },
+	{ 'PASS', 'COAL', 'MAIL', 'OIL_', 'LVST', 'GOOD', 'GRAI', 'WOOD', 'IORE', 'STEL', 'VALU',     33, },
+	{ 'PASS', 'COAL', 'MAIL', 'OIL_', 'LVST', 'GOOD', 'WHEA', 'WOOD',     34, 'PAPR', 'GOLD', 'FOOD', },
 	{ 'PASS', 'RUBR', 'MAIL',      4, 'FRUT', 'GOOD', 'MAIZ',     11, 'CORE', 'WATR', 'DIAM', 'FOOD', },
 	{ 'PASS', 'SUGR', 'MAIL', 'TOYS', 'BATT', 'SWET', 'TOFF', 'COLA', 'CTCD', 'BUBL', 'PLST', 'FZDR', },
 };