2009-08-21 20:21:05 +00:00
/*
* This file is part of OpenTTD .
* OpenTTD is free software ; you can redistribute it and / or modify it under the terms of the GNU General Public License as published by the Free Software Foundation , version 2.
* OpenTTD is distributed in the hope that it will be useful , but WITHOUT ANY WARRANTY ; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE .
* See the GNU General Public License for more details . You should have received a copy of the GNU General Public License along with OpenTTD . If not , see < http : //www.gnu.org/licenses/>.
*/
2008-01-07 14:02:26 +00:00
/** @file industry_type.h Types related to the industry. */
# ifndef INDUSTRY_TYPE_H
# define INDUSTRY_TYPE_H
typedef uint16 IndustryID ;
typedef uint16 IndustryGfx ;
typedef uint8 IndustryType ;
struct Industry ;
struct IndustrySpec ;
struct IndustryTileSpec ;
2009-08-30 11:40:01 +00:00
static const IndustryID INVALID_INDUSTRY = 0xFFFF ;
2015-05-09 10:21:55 +00:00
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).
2013-10-12 16:32:16 +00:00
static const IndustryType NEW_INDUSTRYOFFSET = 37 ; ///< original number of industry types
2015-05-09 10:21:55 +00:00
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, ...
2010-05-13 09:44:44 +00:00
static const IndustryType INVALID_INDUSTRYTYPE = NUM_INDUSTRYTYPES ; ///< one above amount is considered invalid
2015-05-09 10:21:55 +00:00
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.
2013-10-12 16:32:59 +00:00
2010-05-13 09:44:44 +00:00
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
static const IndustryGfx NUM_INDUSTRYTILES = 512 ; ///< total number of industry tiles, new and old
static const IndustryGfx INVALID_INDUSTRYTILE = NUM_INDUSTRYTILES ; ///< one above amount is considered invalid
static const int INDUSTRY_COMPLETED = 3 ; ///< final stage of industry construction.
2009-08-30 11:40:01 +00:00
2018-07-26 17:29:54 +00:00
static const int INDUSTRY_NUM_INPUTS = 16 ; ///< Number of cargo types an industry can accept
static const int INDUSTRY_NUM_OUTPUTS = 16 ; ///< Number of cargo types an industry can produce
2014-08-13 19:31:45 +00:00
void CheckIndustries ( ) ;
2008-01-07 14:02:26 +00:00
# endif /* INDUSTRY_TYPE_H */