* returns stationIndex of first station on success * STATION_INDEX_NULL on failure. */
| 2342 | * STATION_INDEX_NULL on failure. |
| 2343 | */ |
| 2344 | static StationIndexWithMessage RideModeCheckStationPresent(const Ride& ride) |
| 2345 | { |
| 2346 | auto stationIndex = RideGetFirstValidStationStart(ride); |
| 2347 | |
| 2348 | if (stationIndex.IsNull()) |
| 2349 | { |
| 2350 | const auto& rtd = ride.getRideTypeDescriptor(); |
| 2351 | if (!rtd.flags.has(RtdFlag::hasTrack)) |
| 2352 | return { StationIndex::GetNull(), STR_NOT_YET_CONSTRUCTED }; |
| 2353 | |
| 2354 | if (rtd.specialType == RtdSpecialType::maze) |
| 2355 | return { StationIndex::GetNull(), STR_NOT_YET_CONSTRUCTED }; |
| 2356 | |
| 2357 | return { StationIndex::GetNull(), STR_REQUIRES_A_STATION_PLATFORM }; |
| 2358 | } |
| 2359 | |
| 2360 | return { stationIndex }; |
| 2361 | } |
| 2362 | |
| 2363 | /** |
| 2364 | * |
no test coverage detected