Jonathan G Rennison
78b7223272
Make tracerestrict GUI mouse-wheel scrollable.
2016-11-26 16:26:24 +00:00
Jonathan G Rennison
3ea652c4b9
Merge branch 'tracerestrict-sx' into jgrpp
2016-07-18 00:48:12 +01:00
Jonathan G Rennison
8482fc6aef
Merge branch 'tracerestrict' into tracerestrict-sx
2016-07-18 00:48:05 +01:00
Jonathan G Rennison
3d6cbb76b4
Allow value of "PBS entry signal" conditional to be a rail depot.
2016-07-18 00:47:52 +01:00
Jonathan G Rennison
f0fee802a9
Merge branch 'tracerestrict-sx' into jgrpp
...
# Conflicts:
# src/lang/english.txt
# src/settings_gui.cpp
# src/settings_type.h
# src/table/settings.ini
# src/vehicle_gui.cpp
2016-07-05 22:34:50 +01:00
Jonathan G Rennison
ed33a62bcd
Merge branch 'tracerestrict' into tracerestrict-sx
2016-07-05 22:19:34 +01:00
Jonathan G Rennison
8ec1b2200e
Change tracerestrict weight ratio properties to use decimals, and the weight unit.
...
Add {POWER_WEIGHT_RATIO} and {FORCE_WEIGHT_RATIO} string codes.
2016-07-05 21:20:06 +01:00
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
2016-06-30 20:25:22 +01:00
Jonathan G Rennison
e4b932d53a
Merge branch 'tracerestrict' into tracerestrict-sx
2016-06-30 20:15:27 +01:00
Jonathan G Rennison
f942de699c
Add power/weight and max TE/weight ratio tracerestrict conditionals.
...
Minor refactorings.
2016-06-30 19:31:45 +01:00
Jonathan G Rennison
2c6f74a982
Move header definition for unit conversion functions to own header.
2016-06-30 18:28:42 +01:00
Jonathan G Rennison
b5531975da
Add train weight, power, and max TE tracerestrict conditionals.
...
Minor refactorings.
2016-06-29 22:08:05 +01:00
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
2016-04-05 20:12:09 +01:00
Jonathan G Rennison
9ed3dc2581
Merge branch 'tracerestrict' into tracerestrict-sx
2016-04-05 19:43:41 +01:00
Jonathan G Rennison
213b0e7e3a
Tracerestrict: Add a group membership conditional.
2016-04-05 18:40:16 +01:00
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
2016-01-20 22:19:15 +00:00
Jonathan G Rennison
4fdc495eea
Merge branch 'tracerestrict' into tracerestrict-sx
2016-01-20 22:02:20 +00:00
patch-import
82cab7f31c
Tracerestrict: Import "Long Reserve" feature.
...
https://github.com/KeldorKatarn/OpenTTD_PatchPack
Minor code de-duplications.
2016-01-20 21:49:53 +00:00
Jonathan G Rennison
0c29f9f9a0
Merge branch 'tracerestrict-sx' into jgrpp
2016-01-15 19:06:23 +00:00
Jonathan G Rennison
feeae4a200
Merge branch 'tracerestrict' into tracerestrict-sx
2016-01-15 19:06:12 +00:00
Jonathan G Rennison
b5b06351ac
Tracerestrict: Fix GUI issue with picker button raise/lower states.
...
When a picker button was selected, clicking on a different picker button
would cause both buttons to be raised, instead of just the previous.
2016-01-14 19:12:54 +00:00
Jonathan G Rennison
7673436d3a
Trace restrict: add train ownership conditional.
...
Infra sharing whitespace fix.
2015-12-15 20:30:20 +00:00
Jonathan G Rennison
ecbbc03794
Merge branch 'tracerestrict' into tracerestrict-sx
2015-12-15 18:37:55 +00:00
Jonathan G Rennison
9c5189b212
Handle double instructions correctly when deleting stations/depots/etc.
...
Fix some whitespace and comment typos.
2015-12-15 18:36:02 +00:00
Jonathan G Rennison
8f4c216b3f
Merge branch 'tracerestrict' into tracerestrict-sx
2015-09-02 21:03:14 +01:00
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.
2015-09-02 18:35:56 +01:00
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.
2015-09-02 02:12:02 +01:00
Jonathan G Rennison
06cc930e47
Improve insertion and removal of 'or if' conditionals.
...
Allow inserting an 'or if' immediately after 'if', 'else if', 'or if'.
Removing an 'or if' no longer removes the associated block.
2015-09-02 02:12:02 +01:00
Jonathan G Rennison
c4565f6bb0
Merge branch 'tracerestrict' into tracerestrict-sx
2015-08-04 19:14:57 +01:00
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.
2015-08-04 19:09:40 +01:00
Jonathan G Rennison
09f8ff420f
Merge branch 'tracerestrict' into tracerestrict-sx
...
Conflicts:
src/tracerestrict_gui.cpp
2015-08-03 20:40:42 +01:00
Jonathan G Rennison
a0520b8937
Initial implementation of PBS entry signal condition variable.
...
TODO: see how the efficiency of this can be improved.
2015-08-03 20:28:42 +01:00
Jonathan G Rennison
116bd41101
Initial support for multi-item instructions.
...
This involves various changes to instruction modification actions,
and the GUI code.
2015-08-03 20:03:42 +01:00
Jonathan G Rennison
804cfad053
Add override keywords for tracerestrict GUI code
2015-08-01 17:15:25 +01:00
Jonathan G Rennison
5474ee3e40
Add entry direction condition variable.
2015-07-28 01:36:52 +01:00
Jonathan G Rennison
3dd51e96b8
Bulk documentation update, and a few style fixes.
2015-07-28 01:36:52 +01:00
Jonathan G Rennison
75869cae41
Add train can carry cargo condition variable.
2015-07-28 01:36:52 +01:00
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.
2015-07-28 01:36:52 +01:00
Jonathan G Rennison
fedf618978
Add last visited station condition.
2015-07-28 01:36:52 +01:00
Jonathan G Rennison
2296fc85e6
Add next order condition variable.
2015-07-28 01:36:52 +01:00
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.
2015-07-28 01:36:52 +01:00
Jonathan G Rennison
0be3b053d5
Add maximum train speed condition variable.
2015-07-28 01:36:52 +01:00
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.
2015-07-28 01:36:52 +01:00
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.
2015-07-28 01:36:52 +01:00