| 1224 | } |
| 1225 | |
| 1226 | static void ChooseRandomTrainToBreakdownSafe(Ride& ride) |
| 1227 | { |
| 1228 | // Prevent integer division by zero in case of hacked ride. |
| 1229 | if (ride.numTrains == 0) |
| 1230 | return; |
| 1231 | |
| 1232 | ride.brokenTrain = ScenarioRand() % ride.numTrains; |
| 1233 | |
| 1234 | // Prevent crash caused by accessing SPRITE_INDEX_NULL on hacked rides. |
| 1235 | // This should probably be cleaned up on import instead. |
| 1236 | while (ride.vehicles[ride.brokenTrain].IsNull() && ride.brokenTrain != 0) |
| 1237 | { |
| 1238 | --ride.brokenTrain; |
| 1239 | } |
| 1240 | } |
| 1241 | |
| 1242 | /** |
| 1243 | * |
no test coverage detected