Changeset - r5693:f3ffdda74c41
[Not reviewed]
master
0 1 0
rubidium - 17 years ago 2007-01-16 15:45:20
rubidium@openttd.org
(svn r8157) -Fix (r3136): moving cargo during auto replaces did not update the cached vehicle weight for trains properly. This caused (in network games) the server to have a different cached vehicle weight than newly joined clients would have, which causes desyncs.
1 file changed with 8 insertions and 0 deletions:
0 comments (0 inline, 0 general)
src/vehicle.cpp
Show inline comments
 
@@ -1901,6 +1901,14 @@ static void MoveVehicleCargo(Vehicle *de
 
		} while (source->cargo_count > 0 && (dest = dest->next) != NULL);
 
		dest = v;
 
	} while ((source = source->next) != NULL);
 

	
 
	/*
 
	 * The of the train will be incorrect at this moment. This is due
 
	 * to the fact that removing the old wagon updates the weight of
 
	 * the complete train, which is without the weight of cargo we just
 
	 * moved back into some (of the) new wagon(s).
 
	 */
 
	if (dest->type == VEH_Train) TrainConsistChanged(dest->first);
 
}
 

	
 
static bool VerifyAutoreplaceRefitForOrders(const Vehicle *v, const EngineID engine_type)
0 comments (0 inline, 0 general)