Changeset - r18645:805ca6b0bbba
[Not reviewed]
master
0 1 0
frosch - 12 years ago 2011-12-12 19:31:47
frosch@openttd.org
(svn r23503) -Fix (r23143): Desync debug wants to resolve vehicle variables of vehicles without NewGRF. So, let it.
1 file changed with 4 insertions and 2 deletions:
0 comments (0 inline, 0 general)
src/newgrf_engine.cpp
Show inline comments
 
@@ -540,10 +540,12 @@ static uint32 VehicleGetVariable(Vehicle
 
			/* The cargo translation is specific to the accessing GRF, and thus cannot be cached. */
 
			CargoID common_cargo_type = (v->grf_cache.consist_cargo_information >> 8) & 0xFF;
 

	
 
			/* Unlike everywhere else the cargo translation table is only used since grf version 8, not 7. */
 
			/* Unlike everywhere else the cargo translation table is only used since grf version 8, not 7.
 
			 * Note: The grffile == NULL case only happens if this function is called for default vehicles.
 
			 *       And this is only done by CheckCaches(). */
 
			const GRFFile *grffile = object->grffile;
 
			uint8 common_bitnum = (common_cargo_type == CT_INVALID) ? 0xFF :
 
				(grffile->grf_version < 8) ? CargoSpec::Get(common_cargo_type)->bitnum : grffile->cargo_map[common_cargo_type];
 
				(grffile == NULL || grffile->grf_version < 8) ? CargoSpec::Get(common_cargo_type)->bitnum : grffile->cargo_map[common_cargo_type];
 

	
 
			return (v->grf_cache.consist_cargo_information & 0xFFFF00FF) | common_bitnum << 8;
 
		}
0 comments (0 inline, 0 general)