Jonathan G Rennison
7986367c1f
Tracerestrict: Add program append management action.
7 years ago
Jonathan G Rennison
bfb8f6f32e
Merge branch 'tracerestrict-sx' into jgrpp
...
# Conflicts:
# src/saveload/extended_ver_sl.cpp
# src/tracerestrict.h
# src/tracerestrict_gui.cpp
8 years ago
Jonathan G Rennison
c44141bad6
Add conditional to test slot occupancy state.
...
Bump tracerestrict version.
8 years ago
Jonathan G Rennison
b8328ad21f
Merge branch 'tracerestrict-sx' into jgrpp
...
# Conflicts:
# src/command.cpp
# src/group_gui.cpp
# src/lang/english.txt
# src/saveload/extended_ver_sl.cpp
# src/settings_gui.cpp
# src/tracerestrict.cpp
# src/tracerestrict.h
# src/tracerestrict_gui.cpp
# src/vehicle_gui.cpp
# src/vehicle_gui_base.h
# src/vehiclelist.cpp
# src/window_type.h
8 years ago
Jonathan G Rennison
0772236986
Add a release slot at front of train slot action.
...
Distinguish from release slot at back.
Fix slot release and acquire at front when passing PBS from back.
8 years ago
Jonathan G Rennison
927323dcb1
Add trace restrict slot membership conditional.
8 years ago
Jonathan G Rennison
6417fb16c3
Initial implementation of trace restrict slots
8 years ago
Jonathan G Rennison
5a2d482c28
Tracerestrict: Add wait at PBS signal action.
8 years ago
Jonathan G Rennison
8cf0f354d9
Merge branch 'tracerestrict-sx' into jgrpp
8 years ago
Jonathan G Rennison
13f8de58c3
Add instruction move up/down buttons to GUI.
...
Has block and individual instruction move modes, depending on ctrl.
8 years ago
Jonathan G Rennison
f192865c27
Allow shallow-removing conditional blocks by use of ctrl+click.
8 years ago
Jonathan G Rennison
9d5f34fea6
Replace various uses of std::set/map with btree containers.
8 years ago
Jonathan G Rennison
80e3af6bf5
Merge branch 'tracerestrict-sx' into jgrpp
...
# Conflicts:
# src/lang/english.txt
# src/saveload/extended_ver_sl.cpp
# src/tracerestrict.cpp
# src/tracerestrict.h
# src/tracerestrict_gui.cpp
8 years ago
Jonathan G Rennison
f942de699c
Add power/weight and max TE/weight ratio tracerestrict conditionals.
...
Minor refactorings.
8 years ago
Jonathan G Rennison
b5531975da
Add train weight, power, and max TE tracerestrict conditionals.
...
Minor refactorings.
8 years ago
Jonathan G Rennison
0d26da998b
Merge branch 'tracerestrict-sx' into jgrpp
...
# Conflicts:
# src/group_cmd.cpp
# src/group_gui.cpp
# src/lang/english.txt
# src/saveload/extended_ver_sl.cpp
# src/tracerestrict.cpp
# src/tracerestrict.h
# src/tracerestrict_gui.cpp
9 years ago
Jonathan G Rennison
213b0e7e3a
Tracerestrict: Add a group membership conditional.
9 years ago
Jonathan G Rennison
49988b37b8
Merge branches 'tracerestrict-sx' and 'template_train_replacement-sx' into jgrpp
9 years ago
Jonathan G Rennison
4d94470d08
Update all tracerestrict windows when a restricted signal is removed.
...
This fixes share counts in any open windows sharing the same program
not being updated.
9 years ago
Jonathan G Rennison
73e8c32a5d
Merge branch 'tracerestrict-sx' into jgrpp
...
Conflicts:
src/saveload/extended_ver_sl.cpp
src/tracerestrict.h
src/tracerestrict_gui.cpp
src/train_cmd.cpp
9 years ago
patch-import
82cab7f31c
Tracerestrict: Import "Long Reserve" feature.
...
https://github.com/KeldorKatarn/OpenTTD_PatchPack
Minor code de-duplications.
9 years ago
Jonathan G Rennison
7673436d3a
Trace restrict: add train ownership conditional.
...
Infra sharing whitespace fix.
9 years ago
Jonathan G Rennison
95c532b134
Merge branch 'tracerestrict-sx' into jgrpp
9 years ago
Jonathan G Rennison
ebf250d813
Reserve instruction 24 for train owner test.
9 years ago
Jonathan G Rennison
9c5189b212
Handle double instructions correctly when deleting stations/depots/etc.
...
Fix some whitespace and comment typos.
9 years ago
Jonathan G Rennison
3dec3242cc
Merge branch 'tracerestrict-sx' into jgrpp
...
Conflicts:
src/saveload/extended_ver_sl.cpp
9 years ago
Jonathan G Rennison
e2435c7169
Only run trace restrict programs if they contain relevant actions.
...
Only run in pathfinder case if deny or penalty are present.
Only run in is safe waiting tile case is reserve through is present.
Presence is determined at program validation time and cached in the
program structure.
Validator now checks for unknown non-conditional instructions.
9 years ago
Jonathan G Rennison
06a1d7c5c9
Add reserve through action to trace restrict programs.
...
This only changes the behaviour of PBS reservations which
would otherwise terminate at a PBS signal.
If the signal restriction sets the reserve through state,
the reservation continues through the signal, and the signal
is set to green.
9 years ago
Jonathan G Rennison
96ccd9333a
Clear PAX stations/signals and traffic lights on load.
...
This clears the tracerestrict bit if there are no mappings on a tile.
9 years ago
Jonathan G Rennison
76707fb72a
Change pf penalty restriction value button to preset values and a custom option.
...
Preset values are 'small', 'medium' and 'large'.
Change default to 'small' preset.
9 years ago
Jonathan G Rennison
a0520b8937
Initial implementation of PBS entry signal condition variable.
...
TODO: see how the efficiency of this can be improved.
9 years ago
Jonathan G Rennison
116bd41101
Initial support for multi-item instructions.
...
This involves various changes to instruction modification actions,
and the GUI code.
9 years ago
Jonathan G Rennison
5474ee3e40
Add entry direction condition variable.
9 years ago
Jonathan G Rennison
3dd51e96b8
Bulk documentation update, and a few style fixes.
9 years ago
Jonathan G Rennison
75869cae41
Add train can carry cargo condition variable.
9 years ago
Jonathan G Rennison
3a7a81e02f
Add GUI support for else if, or if and else blocks.
...
Add another drop-down to change between these.
Opening if blocks cannot be converted to/from these.
9 years ago
Jonathan G Rennison
fedf618978
Add last visited station condition.
9 years ago
Jonathan G Rennison
2296fc85e6
Add next order condition variable.
9 years ago
Jonathan G Rennison
ffed0c194a
Add current order (station, waypoint or depot) condition variable.
...
Adjust item bit allocations:
* Increase cond flags from 2 bits to 3 bits, for future expansion.
* Use 2 bits remaining in adjacent gap for an auxiliary type field.
This is used for the type (station, waypoint, etc.) of order tests.
Perform a linear scan of the program pool when deleting a station,
waypoint or depot.
9 years ago
Jonathan G Rennison
0be3b053d5
Add maximum train speed condition variable.
9 years ago
Jonathan G Rennison
627288277e
Implement reset, copy, share and unshare of trace restrict programs.
...
Add documentation on data storage model, wrt lookup, mapping and sharing.
9 years ago
Jonathan G Rennison
5f1b148cf9
Initial minimal working tracerestrict implementation.
...
This is a port of the tracerestrict/routing restrictions feature
from TTDPatch.
At present this implements if tests (train length only),
and pathfinder deny and penalty actions.
This requires the use of YAPF. Note that restrictions are only evaluated
within the YAPF lookahead distance.
9 years ago