Tracerestrict: Handle slot acquire on tunnel/bridge entrance reserve

When using realistic braking
Using the same context as PBS end acquire/release
This commit is contained in:
Jonathan G Rennison
2024-01-20 22:20:51 +00:00
parent 9e8a43144a
commit 7d1e350b94
4 changed files with 26 additions and 20 deletions

View File

@@ -183,6 +183,14 @@ struct PBSWaitingPositionRestrictedSignalState {
Trackdir trackdir = INVALID_TRACKDIR;
bool defer_test_if_slot_conditional = false;
bool deferred_test = false;
inline void TraceRestrictExecuteResEndSlot(const Train *v)
{
if (this->prog != nullptr) this->TraceRestrictExecuteResEndSlotIntl(v);
}
private:
void TraceRestrictExecuteResEndSlotIntl(const Train *v);
};
bool IsWaitingPositionFree(const Train *v, TileIndex tile, Trackdir trackdir, bool forbid_90deg = false, PBSWaitingPositionRestrictedSignalState *restricted_signal_state = nullptr);