(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 10263 e725d23bc34e
parent 10262 10f50eb9b717
child 10264 cf7e5534376a
(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) {