Changeset - r19465:c2b6bb045744
[Not reviewed]
master
0 4 0
frosch - 12 years ago 2012-07-07 15:35:28
frosch@openttd.org
(svn r24382) -Fix: Call Vehicle::IsStoppedInDepot only for the first vehicle in a chain (i.e. primary vehicle or free wagon).
4 files changed with 6 insertions and 1 deletions:
0 comments (0 inline, 0 general)
src/autoreplace_cmd.cpp
Show inline comments
 
@@ -702,7 +702,7 @@ CommandCost CmdAutoreplaceVehicle(TileIn
 
		if (!was_stopped) cost.AddCost(CmdStartStopVehicle(v, true));
 
		if (cost.Failed()) return cost;
 

	
 
		assert(v->IsStoppedInDepot());
 
		assert(free_wagon || v->IsStoppedInDepot());
 

	
 
		/* We have to construct the new vehicle chain to test whether it is valid.
 
		 * Vehicle construction needs random bits, so we have to save the random seeds
src/roadveh_cmd.cpp
Show inline comments
 
@@ -356,6 +356,8 @@ CommandCost CmdTurnRoadVeh(TileIndex til
 
	RoadVehicle *v = RoadVehicle::GetIfValid(p1);
 
	if (v == NULL) return CMD_ERROR;
 

	
 
	if (!v->IsPrimaryVehicle()) return CMD_ERROR;
 

	
 
	CommandCost ret = CheckOwnership(v->owner);
 
	if (ret.Failed()) return ret;
 

	
src/train_cmd.cpp
Show inline comments
 
@@ -1934,6 +1934,8 @@ CommandCost CmdForceTrainProceed(TileInd
 
	Train *t = Train::GetIfValid(p1);
 
	if (t == NULL) return CMD_ERROR;
 

	
 
	if (!t->IsPrimaryVehicle()) return CMD_ERROR;
 

	
 
	CommandCost ret = CheckOwnership(t->owner);
 
	if (ret.Failed()) return ret;
 

	
src/vehicle_cmd.cpp
Show inline comments
 
@@ -991,6 +991,7 @@ CommandCost CmdSendVehicleToDepot(TileIn
 

	
 
	Vehicle *v = Vehicle::GetIfValid(GB(p1, 0, 20));
 
	if (v == NULL) return CMD_ERROR;
 
	if (!v->IsPrimaryVehicle()) return CMD_ERROR;
 

	
 
	return v->SendToDepot(flags, (DepotCommand)(p1 & DEPOT_COMMAND_MASK));
 
}
0 comments (0 inline, 0 general)