From 8ad3a6f8fdf6d0a67e060121463aae10a6f0c3a5 Mon Sep 17 00:00:00 2001 From: belugas Date: Fri, 27 Jul 2007 02:41:29 +0000 Subject: (svn r10700) -Codechange: Enable to jump (by default) to the overriding industry tile spec of the one been queried. Only on certain very specific circumstances do we need the original spec --- src/industry_cmd.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'src/industry_cmd.cpp') diff --git a/src/industry_cmd.cpp b/src/industry_cmd.cpp index bbdab2415..25228fe95 100644 --- a/src/industry_cmd.cpp +++ b/src/industry_cmd.cpp @@ -124,13 +124,19 @@ const IndustrySpec *GetIndustrySpec(IndustryType thistype) * This will ensure at once : proper access and * not allowing modifications of it. * @param gfx of industrytile (which is the index in _industry_tile_specs) + * @param full_check (default to true) verify if an override is available. + * If so, use it instead of the gfx provided. * @pre gfx < INVALID_INDUSTRYTILE * @return a pointer to the corresponding industrytile spec **/ -const IndustryTileSpec *GetIndustryTileSpec(IndustryGfx gfx) +const IndustryTileSpec *GetIndustryTileSpec(IndustryGfx gfx, bool full_check) { assert(gfx < INVALID_INDUSTRYTILE); - return &_industry_tile_specs[gfx]; + const IndustryTileSpec *its = &_industry_tile_specs[gfx]; + if (full_check && its->grf_prop.override != INVALID_INDUSTRYTILE) { + its = &_industry_tile_specs[its->grf_prop.override]; + } + return its; } void DestroyIndustry(Industry *i) -- cgit v1.2.3-54-g00ecf