File diff r19737:d7c69e3b4bd4 → r19738:837a139219f0
src/newgrf_engine.cpp
Show inline comments
 
@@ -925,12 +925,19 @@ static uint32 VehicleGetVariable(Vehicle
 
	uint set = (v->cargo.Count() * totalsets) / max((uint16)1, v->cargo_cap);
 
	set = min(set, totalsets - 1);
 

	
 
	return in_motion ? group->loaded[set] : group->loading[set];
 
}
 

	
 
/**
 
 * Scope resolver of a single vehicle.
 
 * @param ro Surrounding resolver.
 
 * @param engine_type Engine type
 
 * @param v %Vehicle being resolved.
 
 * @param info_view Indicates if the item is being drawn in an info window.
 
 */
 
VehicleScopeResolver::VehicleScopeResolver(ResolverObject *ro, EngineID engine_type, const Vehicle *v, bool info_view)
 
		: ScopeResolver(ro)
 
{
 
	this->v = v;
 
	this->self_type = engine_type;
 
	this->info_view = info_view;
 
@@ -944,12 +951,21 @@ VehicleScopeResolver::VehicleScopeResolv
 
static const GRFFile *GetEngineGrfFile(EngineID engine_type)
 
{
 
	const Engine *e = Engine::Get(engine_type);
 
	return (e != NULL) ? e->GetGRF() : NULL;
 
}
 

	
 
/**
 
 * Resolver of a vehicle (chain).
 
 * @param engine_type Engine type
 
 * @param v %Vehicle being resolved.
 
 * @param info_view Indicates if the item is being drawn in an info window.
 
 * @param callback Callback ID.
 
 * @param callback_param1 First parameter (var 10) of the callback.
 
 * @param callback_param2 Second parameter (var 18) of the callback.
 
 */
 
VehicleResolverObject::VehicleResolverObject(EngineID engine_type, const Vehicle *v, bool info_view,
 
		CallbackID callback, uint32 callback_param1, uint32 callback_param2)
 
	: ResolverObject(GetEngineGrfFile(engine_type), callback, callback_param1, callback_param2),
 
	self_scope(this, engine_type, v, info_view),
 
	parent_scope(this, engine_type, ((v != NULL) ? v->First() : v), info_view),
 
	relative_scope(this, engine_type, v, info_view),