summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorfrosch <frosch@openttd.org>2015-05-09 10:21:55 +0000
committerfrosch <frosch@openttd.org>2015-05-09 10:21:55 +0000
commitb9f7ca2dbd9fe6de6e735393602d69c456de6f3c (patch)
tree9013aea12fdf30b7779c313e0117fa6026653dde
parent3f55e5364e69c0ce4d0011371afbad4153fc073e (diff)
downloadopenttd-b9f7ca2dbd9fe6de6e735393602d69c456de6f3c.tar.xz
(svn r27279) -Feature: [NewGRF] Increase the maximum amount of industry types to 128 per NewGRF and 240 in total.
-rw-r--r--src/industry_type.h6
-rw-r--r--src/newgrf_industries.cpp4
2 files changed, 5 insertions, 5 deletions
diff --git a/src/industry_type.h b/src/industry_type.h
index 12525fbbf..6234f7b11 100644
--- a/src/industry_type.h
+++ b/src/industry_type.h
@@ -22,13 +22,13 @@ struct IndustryTileSpec;
static const IndustryID INVALID_INDUSTRY = 0xFFFF;
-static const IndustryType NUM_INDUSTRYTYPES_PER_GRF = 64; ///< maximum number of industry types per NewGRF
+static const IndustryType NUM_INDUSTRYTYPES_PER_GRF = 128; ///< maximum number of industry types per NewGRF; limited to 128 because bit 7 has a special meaning in some variables/callbacks (see MapNewGRFIndustryType).
static const IndustryType NEW_INDUSTRYOFFSET = 37; ///< original number of industry types
-static const IndustryType NUM_INDUSTRYTYPES = 64; ///< total number of industry types, new and old
+static const IndustryType NUM_INDUSTRYTYPES = 240; ///< total number of industry types, new and old; limited to 240 because we need some special ids like INVALID_INDUSTRYTYPE, IT_AI_UNKNOWN, IT_AI_TOWN, ...
static const IndustryType INVALID_INDUSTRYTYPE = NUM_INDUSTRYTYPES; ///< one above amount is considered invalid
-static const IndustryGfx NUM_INDUSTRYTILES_PER_GRF = 255; ///< Maximum number of industry tiles per NewGRF; limited to 255 to allow extending Action3 with an extended byte later on.
+static const IndustryGfx NUM_INDUSTRYTILES_PER_GRF = 255; ///< Maximum number of industry tiles per NewGRF; limited to 255 to allow extending Action3 with an extended byte later on.
static const IndustryGfx INDUSTRYTILE_NOANIM = 0xFF; ///< flag to mark industry tiles as having no animation
static const IndustryGfx NEW_INDUSTRYTILEOFFSET = 175; ///< original number of tiles
diff --git a/src/newgrf_industries.cpp b/src/newgrf_industries.cpp
index bafa393d3..ef8e9fa9b 100644
--- a/src/newgrf_industries.cpp
+++ b/src/newgrf_industries.cpp
@@ -41,9 +41,9 @@ IndustryTileOverrideManager _industile_mngr(NEW_INDUSTRYTILEOFFSET, NUM_INDUSTRY
IndustryType MapNewGRFIndustryType(IndustryType grf_type, uint32 grf_id)
{
if (grf_type == IT_INVALID) return IT_INVALID;
- if (!HasBit(grf_type, 7)) return GB(grf_type, 0, 6);
+ if (!HasBit(grf_type, 7)) return GB(grf_type, 0, 7);
- return _industry_mngr.GetID(GB(grf_type, 0, 6), grf_id);
+ return _industry_mngr.GetID(GB(grf_type, 0, 7), grf_id);
}
/**