Jonathan G Rennison
904ff6757d
Add slot support to road vehicles, ships and aircraft
2 years ago
Jonathan G Rennison
b23d394f0b
Handle predictable conditional orders in timetable window
2 years ago
Jonathan G Rennison
b259d04339
Add tunnel/bridge entrance/exit values to entry direction conditional
3 years ago
Jonathan G Rennison
74bfe4e6d2
Allow placing routing restrictions on tunnel/bridge entrance/exit signals
...
No reserve through support
3 years ago
Jonathan G Rennison
dad007e16a
Fix spelling of TRPRF_SPEED_RESTRICTION_SET
3 years ago
Jonathan G Rennison
1e0bea5b8d
Replace FindFirstBit/FindFirstBit64 with a single template function
3 years ago
Jonathan G Rennison
53139c2405
Add current day/month to tracerestrict and conditional order conditionals
3 years ago
Jonathan G Rennison
b8d5113c5a
Tracerestrict: Add slot action mode, try to acquire (only on reserve)
3 years ago
Jonathan G Rennison
1002c6d9d2
Fix various compiler warnings
...
See: #267
3 years ago
Jonathan G Rennison
0579c8755c
Add tracerestrict action: No PBS signal back PF penalty
3 years ago
Jonathan G Rennison
112b235b71
Fix name prefix of TraceRestrictNewsControlField enum values
3 years ago
Jonathan G Rennison
2e28bc8e6a
Tracerestrict: Add engine class conditional
3 years ago
Jonathan G Rennison
923b2eb0a9
Fix tracerestrict train is loading status condition when predicting orders
3 years ago
Jonathan G Rennison
aff89b61f5
Add tracerestrict reserved tiles ahead conditional
3 years ago
Jonathan G Rennison
35d720b0ad
Add tracerestrict PBS end signal conditional
...
This is for realistic braking long reserve
3 years ago
Jonathan G Rennison
8a814bbfe3
Add release slot train order
3 years ago
Jonathan G Rennison
b7ddd486cf
Merge branch 'master' into jgrpp
...
# Conflicts:
# cmake/CompileFlags.cmake
# src/aircraft_cmd.cpp
# src/blitter/32bpp_anim.cpp
# src/cargopacket.cpp
# src/cheat_gui.cpp
# src/company_cmd.cpp
# src/company_gui.cpp
# src/core/pool_func.hpp
# src/date.cpp
# src/economy.cpp
# src/error_gui.cpp
# src/ground_vehicle.cpp
# src/ground_vehicle.hpp
# src/group_gui.cpp
# src/industry_cmd.cpp
# src/lang/dutch.txt
# src/lang/french.txt
# src/lang/german.txt
# src/linkgraph/linkgraph_gui.cpp
# src/linkgraph/mcf.cpp
# src/network/network_content.cpp
# src/network/network_server.cpp
# src/network/network_udp.cpp
# src/newgrf_engine.cpp
# src/newgrf_station.cpp
# src/order_cmd.cpp
# src/order_gui.cpp
# src/pathfinder/follow_track.hpp
# src/pathfinder/yapf/yapf_common.hpp
# src/saveload/saveload.cpp
# src/settings_gui.cpp
# src/station_cmd.cpp
# src/station_kdtree.h
# src/string_func.h
# src/table/settings.ini
# src/tgp.cpp
# src/timetable_cmd.cpp
# src/timetable_gui.cpp
# src/toolbar_gui.cpp
# src/town_cmd.cpp
# src/train_cmd.cpp
# src/train_gui.cpp
# src/tree_gui.cpp
# src/tunnelbridge_cmd.cpp
# src/vehicle.cpp
# src/vehicle_gui.cpp
# src/video/sdl2_v.cpp
# src/video/sdl_v.cpp
# src/video/win32_v.cpp
# src/viewport.cpp
# src/viewport_sprite_sorter_sse4.cpp
# src/window.cpp
3 years ago
Jonathan G Rennison
6c3e5642f8
Merge branch 'master' into jgrpp
...
# Conflicts:
# cmake/CompileFlags.cmake
# src/crashlog.cpp
# src/fileio.cpp
# src/fileio_func.h
# src/fios_gui.cpp
# src/ini_load.cpp
# src/ini_type.h
# src/lang/english.txt
# src/lang/german.txt
# src/lang/korean.txt
# src/network/network_client.cpp
# src/order_base.h
# src/order_cmd.cpp
# src/os/windows/win32.cpp
# src/road_cmd.cpp
# src/saveload/saveload.cpp
# src/saveload/saveload.h
# src/settings.cpp
# src/station_cmd.cpp
# src/stdafx.h
# src/table/settings.ini
# src/tree_cmd.cpp
# src/tree_gui.cpp
# src/vehicle_base.h
# src/video/cocoa/cocoa_v.mm
# src/video/cocoa/event.mm
# src/video/cocoa/wnd_quartz.mm
# src/viewport.cpp
# src/widgets/tree_widget.h
3 years ago
Jonathan G Rennison
270a748b64
Tracerestrict: Add time/date conditional
4 years ago
Jonathan G Rennison
72a7ae25e8
Tracerestrict: Fix program execution when skipping double non-conditional
4 years ago
Jonathan G Rennison
352b361e1b
Viewport: Replace viewport mark dirty if zoom level below with flags param
...
Fix missing flags for tracerestrict and effect vehicles
4 years ago
Jonathan G Rennison
abb7b69861
Add slot and counter support to programmable pre-signals
4 years ago
Jonathan G Rennison
9ee8091ecc
Add conditional order which tests counter value
4 years ago
Jonathan G Rennison
817bc44a3e
Initial implementation of tracerestrict counter mechanism
4 years ago
Jonathan G Rennison
d2594ece79
Add routing restrictions action to control news reports about stuck trains
4 years ago
Jonathan G Rennison
7960db35f2
Merge branch 'master' into jgrpp
...
# Conflicts:
# config.lib
# projects/openttd_vs140.vcxproj
# projects/openttd_vs140.vcxproj.filters
# projects/openttd_vs141.vcxproj
# projects/openttd_vs141.vcxproj.filters
# projects/openttd_vs142.vcxproj
# projects/openttd_vs142.vcxproj.filters
# src/aircraft_cmd.cpp
# src/base_station_base.h
# src/core/pool_type.hpp
# src/disaster_vehicle.cpp
# src/economy.cpp
# src/engine.cpp
# src/group.h
# src/group_cmd.cpp
# src/group_gui.cpp
# src/lang/english.txt
# src/lang/german.txt
# src/linkgraph/linkgraph_gui.cpp
# src/network/network_command.cpp
# src/network/network_server.cpp
# src/openttd.cpp
# src/order_cmd.cpp
# src/road_cmd.cpp
# src/saveload/afterload.cpp
# src/saveload/cargopacket_sl.cpp
# src/saveload/linkgraph_sl.cpp
# src/saveload/order_sl.cpp
# src/saveload/station_sl.cpp
# src/saveload/town_sl.cpp
# src/saveload/vehicle_sl.cpp
# src/screenshot.cpp
# src/screenshot.h
# src/settings_gui.cpp
# src/settings_type.h
# src/smallmap_gui.cpp
# src/station.cpp
# src/station_cmd.cpp
# src/table/settings.ini
# src/toolbar_gui.cpp
# src/town_cmd.cpp
# src/train.h
# src/train_cmd.cpp
# src/train_gui.cpp
# src/vehicle.cpp
# src/vehicle_base.h
# src/vehiclelist.cpp
# src/window_type.h
4 years ago
Jonathan G Rennison
aa8aae9a62
Initial implementation of tracerestrict speed restriction feature
5 years ago
Jonathan G Rennison
7332c0b673
Tracerestrict: Add load percentage conditional
5 years ago
Jonathan G Rennison
2105d21356
Merge branch 'tracerestrict' into jgrpp
5 years ago
Jonathan G Rennison
ccdc75e2bf
Tracerestrict: Fix non-deterministic use of _sorted_cargo_specs
5 years ago
Jonathan G Rennison
e1d98e1b37
Check trace restrict slot vehicle index and occupants in CheckCaches
5 years ago
Jonathan G Rennison
3fdd553a08
Handle trace restrict slots when deleting or merging company
5 years ago
Jonathan G Rennison
06463b8be0
Merge branch 'tracerestrict-sx' into jgrpp
5 years ago
Jonathan G Rennison
6b107d65d9
Merge branch 'tracerestrict' into tracerestrict-sx
5 years ago
Jonathan G Rennison
0d2277211c
Fix enum type mismatch in TestOrderCondition
5 years ago
Jonathan G Rennison
674732cd68
Merge: Codechange: Use null pointer literal instead of the NULL macro
5 years ago
Jonathan G Rennison
cd41683b9b
Add tracerestrict feature reverse behind signal
6 years ago
Jonathan G Rennison
83a063f51c
Add train is in slot conditional order
6 years ago
Jonathan G Rennison
3e50336079
Add trace restrict train status conditional
6 years ago
Jonathan G Rennison
f59535c0b7
Merge branch 'tracerestrict-sx' into jgrpp
...
# Conflicts:
# src/train_cmd.cpp
6 years ago
keldorkatarn
acdeaa715e
Tracerestrict slots: Fix a crash bug when selling a train that's in a tracerestrict slot. Again a use of an invalid iterator. We need to check FIRST if range.first and reange.second are equal. After erasing the range those iterators are invalid.
...
(cherry picked from commit 7aea2ced3ced5ec4201fbad9c206451aad057718)
6 years ago
Jonathan G Rennison
2586096ef6
Merge branch 'tracerestrict-sx' into jgrpp
...
# Conflicts:
# src/pbs.cpp
# src/saveload/extended_ver_sl.cpp
6 years ago
Jonathan G Rennison
e9f5d80440
Trace restrict slots: Add support for slot operations at PBS end signal
6 years ago
Jonathan G Rennison
1b4db7d86c
Trace restrict: Add wait at entrance PBS for reservation ending here
6 years ago
Jonathan G Rennison
751f379cdd
Trace restrict: Fix wrong position of safeguards header include
6 years ago
Jonathan G Rennison
de4d958808
Fix tracerestrict current order test on load through advance order
6 years ago
Jonathan G Rennison
97fd250d21
Remove conditional order refs when removing tracerestrict slot
...
See #40
6 years ago
keldorkatarn
78588d8ce5
First implementation of conditional order checking slot occupancy
...
(cherry picked from commit 524e3e56cb4a357ba60335f91dce1e00cb8d22f2)
Some code adjustments: serialisation/storage, formatting
See: #40
6 years ago
Jonathan G Rennison
02328680a1
Merge branch 'tracerestrict-sx' into jgrpp
6 years ago
keldorkatarn
2f3e4044b7
FIX: TraceRestrictSlots: Fix crash when removing vehicle from slot. Invalid iterator got used. (it was no longer valid after calling erase with it)
...
(cherry picked from commit 3571f1bc898b9ffd8b124040882caa5357085f42)
Fixes : #37
6 years ago
Jonathan G Rennison
64d9cdd6f0
Merge branch 'tracerestrict-sx' into jgrpp
7 years ago
Jonathan G Rennison
b004c1998f
Merge branch 'tracerestrict' into tracerestrict-sx
7 years ago
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
7 years ago
Jonathan G Rennison
c44141bad6
Add conditional to test slot occupancy state.
...
Bump tracerestrict version.
7 years ago
Jonathan G Rennison
c94b7a6240
Add safeguard includes to tracerestrict files.
7 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
7 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.
7 years ago
Jonathan G Rennison
927323dcb1
Add trace restrict slot membership conditional.
7 years ago
Jonathan G Rennison
6417fb16c3
Initial implementation of trace restrict slots
7 years ago
Jonathan G Rennison
5a2d482c28
Tracerestrict: Add wait at PBS signal action.
7 years ago
Jonathan G Rennison
8cf0f354d9
Merge branch 'tracerestrict-sx' into jgrpp
7 years ago
Jonathan G Rennison
13f8de58c3
Add instruction move up/down buttons to GUI.
...
Has block and individual instruction move modes, depending on ctrl.
7 years ago
Jonathan G Rennison
f10c32de53
Fix removal of double-length conditional instructions (PBS entry signal).
7 years ago
Jonathan G Rennison
f192865c27
Allow shallow-removing conditional blocks by use of ctrl+click.
7 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
91ba866852
Fix comment typo.
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
8 years ago
Jonathan G Rennison
213b0e7e3a
Tracerestrict: Add a group membership conditional.
8 years ago
Jonathan G Rennison
49988b37b8
Merge branches 'tracerestrict-sx' and 'template_train_replacement-sx' into jgrpp
8 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.
8 years ago
Jonathan G Rennison
8dc76b0044
Be more strict checking for space in program pool in mgmt actions.
8 years ago
Jonathan G Rennison
5d42d07988
Merge branch 'tracerestrict-sx' into jgrpp
8 years ago
Jonathan G Rennison
83369d5e71
Remove unused constant _tracerestrict_penalty_item_default_value.
8 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
8 years ago
patch-import
82cab7f31c
Tracerestrict: Import "Long Reserve" feature.
...
https://github.com/KeldorKatarn/OpenTTD_PatchPack
Minor code de-duplications.
8 years ago
Jonathan G Rennison
0c29f9f9a0
Merge branch 'tracerestrict-sx' into jgrpp
9 years ago
Jonathan G Rennison
d2e8d205b9
Tracerestrict: Fix copying an unrestricted signal making an empty program.
9 years ago
Jonathan G Rennison
c3948ef5e9
Merge branch 'tracerestrict-sx' into jgrpp
9 years ago
Jonathan G Rennison
20a015e9d3
Fix actions_used_flags not being set when cloning tracerestrict programs.
...
This resulted in newly copied or unshared programs not being evaluated.
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
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
73b69c5594
Validate type of all instructions, log validation failures at load.
...
The validator now checks that the type of conditional instructions
is known.
On a validation failure, the load code now outputs a corrupt savegame
message, with the validation error message and a program dump,
instead of using an assertion.
9 years ago
Jonathan G Rennison
d9acfc4599
Fix validation of dual item instructions.
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
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.
9 years ago
Jonathan G Rennison
64a6f5c0d4
Merge branch 'jgrpp' into save_ext_spp
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
614b3d8ab5
Trace restrict: Handle removing mapping from refcount 2 empty program.
...
Instead of leaving the other mapping pointing to an empty unshared
program, find and delete it.
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