Changeset - r16852:f77ee2ad2337
[Not reviewed]
master
0 1 0
frosch - 13 years ago 2010-12-22 14:38:24
frosch@openttd.org
(svn r21596) -Codechange: Rename a misleading-named variable.
1 file changed with 6 insertions and 6 deletions:
0 comments (0 inline, 0 general)
src/vehicle.cpp
Show inline comments
 
@@ -1886,46 +1886,46 @@ CommandCost Vehicle::SendToDepot(DoComma
 
	}
 

	
 
	return CommandCost();
 

	
 
}
 

	
 
void Vehicle::UpdateVisualEffect(bool allow_power_change)
 
{
 
	bool powered_before = HasBit(this->vcache.cached_vis_effect, VE_DISABLE_WAGON_POWER);
 
	this->vcache.cached_vis_effect = 0;
 

	
 
	const Engine *e = Engine::Get(this->engine_type);
 
	byte default_effect = VE_DEFAULT;
 
	byte visual_effect = VE_DEFAULT;
 
	switch (this->type) {
 
		case VEH_TRAIN:    default_effect = e->u.rail.visual_effect; break;
 
		case VEH_ROAD:     default_effect = e->u.road.visual_effect; break;
 
		case VEH_SHIP:     default_effect = e->u.ship.visual_effect; break;
 
		case VEH_TRAIN: visual_effect = e->u.rail.visual_effect; break;
 
		case VEH_ROAD:  visual_effect = e->u.road.visual_effect; break;
 
		case VEH_SHIP:  visual_effect = e->u.ship.visual_effect; break;
 
		default: break;
 
	}
 
	if (default_effect == VE_DEFAULT) {
 
	if (visual_effect == VE_DEFAULT) {
 
		if (this->type == VEH_TRAIN && !(Train::From(this)->IsWagon() || Train::From(this)->IsArticulatedPart())) {
 
			if (e->u.rail.engclass == 0) {
 
				/* Steam is offset by -4 units */
 
				SB(this->vcache.cached_vis_effect, VE_OFFSET_START, VE_OFFSET_COUNT, VE_OFFSET_CENTRE - 4);
 
			} else {
 
				/* Diesel fumes and sparks come from the centre */
 
				SB(this->vcache.cached_vis_effect, VE_OFFSET_START, VE_OFFSET_COUNT, VE_OFFSET_CENTRE);
 
			}
 
		} else {
 
			/* Non-train engines do not have a visual effect by default. */
 
			SetBit(this->vcache.cached_vis_effect, VE_DISABLE_EFFECT);
 
		}
 
	} else {
 
		this->vcache.cached_vis_effect = default_effect;
 
		this->vcache.cached_vis_effect = visual_effect;
 
	}
 

	
 
	/* Check powered wagon / visual effect callback */
 
	if (HasBit(e->info.callback_mask, CBM_VEHICLE_VISUAL_EFFECT)) {
 
		uint16 callback = GetVehicleCallback(CBID_VEHICLE_VISUAL_EFFECT, 0, 0, this->engine_type, this);
 

	
 
		if (callback != CALLBACK_FAILED) this->vcache.cached_vis_effect = GB(callback, 0, 8);
 
	}
 

	
 
	if (!allow_power_change && powered_before != HasBit(this->vcache.cached_vis_effect, VE_DISABLE_WAGON_POWER)) {
 
		ToggleBit(this->vcache.cached_vis_effect, VE_DISABLE_WAGON_POWER);
 
		ShowNewGrfVehicleError(this->engine_type, STR_NEWGRF_BROKEN, STR_NEWGRF_BROKEN_POWERED_WAGON, GBUG_VEH_POWERED_WAGON, false);
0 comments (0 inline, 0 general)