From b9f7ca2dbd9fe6de6e735393602d69c456de6f3c Mon Sep 17 00:00:00 2001 From: frosch Date: Sat, 9 May 2015 10:21:55 +0000 Subject: (svn r27279) -Feature: [NewGRF] Increase the maximum amount of industry types to 128 per NewGRF and 240 in total. --- src/industry_type.h | 6 +++--- src/newgrf_industries.cpp | 4 ++-- 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); } /** -- cgit v1.2.3-70-g09d2