From 9a4a911bdecd3287cc2e28dad93ce56c13a87ec4 Mon Sep 17 00:00:00 2001 From: belugas Date: Sat, 9 Jun 2007 02:05:51 +0000 Subject: (svn r10074) -Add: Addition of IndustryOverrideManager as well as the basic (and unfinished) support for callbacks for industries --- src/newgrf_commons.h | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) (limited to 'src/newgrf_commons.h') diff --git a/src/newgrf_commons.h b/src/newgrf_commons.h index a7c00e65c..f45594f14 100644 --- a/src/newgrf_commons.h +++ b/src/newgrf_commons.h @@ -35,7 +35,6 @@ protected: uint16 invalid_ID; ///< ID used to dected invalid entities; - virtual uint16 AddEntityID(byte grf_local_id, uint32 grfid, byte substitute_id); public: EntityIDMapping *mapping_ID; ///< mapping of ids from grf files. Public out of convenience @@ -46,6 +45,7 @@ public: void ResetMapping(); void Add(uint8 local_id, uint entity_type); + virtual uint16 AddEntityID(byte grf_local_id, uint32 grfid, byte substitute_id); uint16 GetSubstituteID(byte entity_id); uint16 GetID(uint8 grf_local_id, uint32 grfid); @@ -59,12 +59,25 @@ struct HouseSpec; class HouseOverrideManager : public OverrideManagerBase { public: - HouseOverrideManager(uint16 offset, uint16 maximum, uint16 invalid) : OverrideManagerBase(offset, maximum, invalid) {}; + HouseOverrideManager(uint16 offset, uint16 maximum, uint16 invalid) : + OverrideManagerBase(offset, maximum, invalid) {}; void SetEntitySpec(const HouseSpec *hs); }; +struct IndustrySpec; +class IndustryOverrideManager : public OverrideManagerBase +{ + public: + IndustryOverrideManager(uint16 offset, uint16 maximum, uint16 invalid) : + OverrideManagerBase(offset, maximum, invalid) {}; + + virtual uint16 AddEntityID(byte grf_local_id, uint32 grfid, byte substitute_id); + void SetEntitySpec(const IndustrySpec *inds); +}; + extern HouseOverrideManager _house_mngr; +extern IndustryOverrideManager _industry_mngr; uint32 GetTerrainType(TileIndex tile); TileIndex GetNearbyTile(byte parameter, TileIndex tile); -- cgit v1.2.3-54-g00ecf