(svn r12795) -Fix [FS#1938]: vehicles could break down during loading and keep loading. The intention of the break down code is not to break down when having zero speed, therefor break downs now do not happen when loading.
authorrubidium
Sat, 19 Apr 2008 21:23:42 +0000
changeset 9000 0eee16b3074d
parent 8999 43af94f84514
child 9001 1827d939372d
(svn r12795) -Fix [FS#1938]: vehicles could break down during loading and keep loading. The intention of the break down code is not to break down when having zero speed, therefor break downs now do not happen when loading.
src/aircraft_cmd.cpp
src/roadveh_cmd.cpp
src/ship_cmd.cpp
src/train_cmd.cpp
--- a/src/aircraft_cmd.cpp	Sat Apr 19 19:01:57 2008 +0000
+++ b/src/aircraft_cmd.cpp	Sat Apr 19 21:23:42 2008 +0000
@@ -2086,7 +2086,7 @@
 		if (v->breakdown_ctr <= 2) {
 			HandleBrokenAircraft(v);
 		} else {
-			v->breakdown_ctr--;
+			if (!v->current_order.IsType(OT_LOADING)) v->breakdown_ctr--;
 		}
 	}
 
--- a/src/roadveh_cmd.cpp	Sat Apr 19 19:01:57 2008 +0000
+++ b/src/roadveh_cmd.cpp	Sat Apr 19 21:23:42 2008 +0000
@@ -1844,7 +1844,7 @@
 			HandleBrokenRoadVeh(v);
 			return;
 		}
-		v->breakdown_ctr--;
+		if (!v->current_order.IsType(OT_LOADING)) v->breakdown_ctr--;
 	}
 
 	if (v->vehstatus & VS_STOPPED) return;
--- a/src/ship_cmd.cpp	Sat Apr 19 19:01:57 2008 +0000
+++ b/src/ship_cmd.cpp	Sat Apr 19 21:23:42 2008 +0000
@@ -594,7 +594,7 @@
 			HandleBrokenShip(v);
 			return;
 		}
-		v->breakdown_ctr--;
+		if (!v->current_order.IsType(OT_LOADING)) v->breakdown_ctr--;
 	}
 
 	if (v->vehstatus & VS_STOPPED) return;
--- a/src/train_cmd.cpp	Sat Apr 19 19:01:57 2008 +0000
+++ b/src/train_cmd.cpp	Sat Apr 19 21:23:42 2008 +0000
@@ -3421,7 +3421,7 @@
 			HandleBrokenTrain(v);
 			return;
 		}
-		v->breakdown_ctr--;
+		if (!v->current_order.IsType(OT_LOADING)) v->breakdown_ctr--;
 	}
 
 	if (HasBit(v->u.rail.flags, VRF_REVERSING) && v->cur_speed == 0) {