Jonathan G Rennison
7ce06e22b8
Split date types into calendar and economy dates
...
See: 735abfe1
2024-02-13 21:34:09 +00:00
Jonathan G Rennison
0ea57528c9
Rename DateTicksScaled to StateTicks
...
Rename various other related/derived types and variables
2024-02-07 18:36:47 +00:00
Jonathan G Rennison
5e29901d02
Tracerestrict: Allow nesting temporary slot states
...
Use a temporary state stack instead of passing the state directly
in TraceRestrictProgramInput
No longer exit early from ExtendTrainReservation to handle slots, this
fixes reservation failures when starting from a signal with a slot acquire
More thorough fix for 9e8a4314
2024-01-29 22:16:29 +00:00
Jonathan G Rennison
49eb40bc4f
Change various _network_dedicated tests to use IsHeadless
2024-01-24 23:31:35 +00:00
Jonathan G Rennison
461fe116f2
Tracerestrict: Pass vehicle ptr instead of index to Occupy/Vacate
...
And related functions, to avoid unnecessary vehicle pool lookup
2024-01-20 23:28:03 +00:00
Jonathan G Rennison
876bce431f
Tracerestrict: Add release slot on reserve slot op subtype
2024-01-20 23:06:13 +00:00
Jonathan G Rennison
d62ae41e03
Tracerestrict: Remove TRSCOF_ACQUIRE_TRY_ON_RESERVE, same as TRSCOF_ACQUIRE_TRY
2024-01-20 22:49:55 +00:00
Jonathan G Rennison
fc51491361
Tracerestrict: Use combined aux and cond op fields for TRIT_SLOT subtype
2024-01-20 22:43:53 +00:00
Jonathan G Rennison
24fc4e3e3f
Tracerestrict: Remove TRPISP_PBS_RES_END_RELEASE
2024-01-20 22:24:19 +00:00
Jonathan G Rennison
a21a69c957
Tracerestrict: Add a flag for whether slot conditionals are present
2024-01-20 20:31:56 +00:00
Jonathan G Rennison
d502b6469d
Tracerestrict: Add a slot acquire using temporary state mode
2024-01-20 20:31:25 +00:00
Jonathan G Rennison
ffbb30996a
Tracerestrict: Move slot temporary state to a separate struct
2024-01-20 20:28:11 +00:00
Jonathan G Rennison
c9422762c0
Tracerestrict: Add 0 enum value for TraceRestrictProgramActionsUsedFlags
2024-01-20 12:58:38 +00:00
Jonathan G Rennison
2fc631b15b
Rename OT_RELEASE_SLOT to OT_SLOT, use a subtype field
2024-01-11 19:01:25 +00:00
Jonathan G Rennison
97e6f3062e
Adding of _t to (u)int types, and WChar to char32_t
...
See: eaae0bb5e
2024-01-07 17:20:41 +00:00
Jonathan G Rennison
8256bb8359
Tracerestrict: Fix share/unshare actions setting always reserve through bit incorrectly
...
See: #620
2023-12-30 14:53:17 +00:00
Jonathan G Rennison
ffff696b4e
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/build_vehicle_gui.cpp
# src/cheat_gui.cpp
# src/console_cmds.cpp
# src/crashlog.cpp
# src/date_gui.cpp
# src/engine.cpp
# src/group_cmd.cpp
# src/landscape.cpp
# src/network/network_gui.cpp
# src/newgrf.cpp
# src/saveload/afterload.cpp
# src/script/api/script_date.cpp
# src/sl/oldloader_sl.cpp
# src/station_cmd.cpp
# src/station_cmd.h
# src/strings.cpp
# src/subsidy_gui.cpp
# src/survey.cpp
# src/timer/timer_game_calendar.cpp
# src/timer/timer_game_calendar.h
2023-12-29 14:46:53 +00:00
Jonathan G Rennison
03e0ec8276
Strong typedef: Use strong typedefs for date, date tick, minutes types
...
Add delta types
Adjust/add type conversion functions
Add various utility methods on types
Remove the various minute macros
Fix some minute conversion inconsistencies
2023-12-19 02:39:54 +00:00
Jonathan G Rennison
0620026d56
Tracerestrict: Add long reserve (unless stopping) mode
...
Requires realistic braking
2023-10-03 20:59:28 +01:00
Jonathan G Rennison
b299c4dce8
Tracerestrict: Add enum type for TRIT_LONG_RESERVE values
2023-10-03 18:11:41 +01:00
Jonathan G Rennison
a18f3274b4
Rename close window functions to match upstream
2023-09-15 21:17:25 +01:00
Jonathan G Rennison
ead18b2af2
Merge branch 'master' into jgrpp
...
# Conflicts:
# CMakeLists.txt
# src/3rdparty/md5/md5.h
# src/3rdparty/squirrel/squirrel/squtils.h
# src/animated_tile.cpp
# src/console_func.h
# src/core/CMakeLists.txt
# src/core/container_func.hpp
# src/core/smallstack_type.hpp
# src/crashlog.cpp
# src/crashlog.h
# src/debug.h
# src/economy.cpp
# src/gamelog.cpp
# src/industry_gui.cpp
# src/lang/catalan.txt
# src/misc_gui.cpp
# src/network/network_content.h
# src/newgrf.cpp
# src/newgrf.h
# src/newgrf_config.cpp
# src/newgrf_config.h
# src/newgrf_gui.cpp
# src/os/unix/font_unix.cpp
# src/os/windows/crashlog_win.cpp
# src/rail_cmd.cpp
# src/saveload/animated_tile_sl.cpp
# src/script/api/script_tilelist.cpp
# src/settings.cpp
# src/settingsgen/settingsgen.cpp
# src/sl/oldloader_sl.cpp
# src/station.cpp
# src/station_cmd.cpp
# src/stdafx.h
# src/strgen/strgen.cpp
# src/strgen/strgen_base.cpp
# src/table/settings/gui_settings.ini
# src/train_gui.cpp
# src/vehicle.cpp
# src/vehicle_base.h
# src/vehicle_cmd.cpp
# src/vehicle_gui_base.h
# src/viewport_sprite_sorter.h
2023-07-02 12:02:36 +01:00
Jonathan G Rennison
13183d3f13
Add command result flag for whether SetResultData was called
...
Use for tracerestrict validation result fail offset
2023-05-30 23:41:19 +01:00
Jonathan G Rennison
731f2fb46e
Tracerestrict: Add button to share program onto other signals
2023-05-16 21:10:54 +01:00
Jonathan G Rennison
65cc6623dd
Tracerestrict: Add button to duplicate instruction/block
2023-05-05 23:34:48 +01:00
Jonathan G Rennison
55f11129c8
Tracerestrict: Add status test for if train is stopping at order destination
...
Station/waypoint of current order
2023-04-11 22:01:51 +01:00
Jonathan G Rennison
f13f8cd740
Tracerestrict: Improve program validator
...
Check all instruction subtypes and valid enum values
Return failure instead of asserting for invalid instruction subtypes
Identify which instruction triggered validation failure
2023-03-09 03:01:20 +00:00
Jonathan G Rennison
119e24fe9d
Tracerestrict: Reset dual instruction value when changing instruction type
2023-03-08 20:25:42 +00:00
Jonathan G Rennison
70311c0843
Tracerestrict: Use btree_multimap for slot vehicle index
2023-03-07 00:31:14 +00:00
Jonathan G Rennison
07b7cc5652
Tracerestrict: Add condition whether reservation passes through tile
2023-02-06 19:54:14 +00:00
Jonathan G Rennison
3877bb31ef
Changing day length or date no longer changes time in minutes
...
Add offset variables for scaled date ticks.
Adjust offset when changing day length or date, such that scaled
date ticks remain the same.
Store _scaled_tick_counter and scaled date ticks offset in the savagame.
2022-12-16 19:15:46 +00:00
Jonathan G Rennison
38c2fa3b66
Add a change counter value special order type
2022-10-13 20:09:20 +01:00
Jonathan G Rennison
b3a8dd44e4
Fix crash when removing routing restriction with reserve through from tunnel/bridge
2022-09-22 18:12:24 +01:00
Jonathan G Rennison
7c4c75d181
Add tracerestrict conditional on direction of order target from signal
2022-09-07 22:53:03 +01:00
Jonathan G Rennison
12566f05ca
Add tracerestrict actions used flags for order conditionals present
2022-07-01 00:16:26 +01:00
Jonathan G Rennison
6a69a5495f
Add tracerestrict action to set combined normal/shunt signal mode
...
Add associated conditional to get reservation end tile
2022-06-28 01:16:57 +01:00
Jonathan G Rennison
bdd73a19a1
Add signal style flag for unconditional reserve through
...
Add map bits for unconditional reserve through
Adjust signal aspect/state handling
2022-06-19 04:15:27 +01:00
Jonathan G Rennison
4d04a757cc
Debug: Add new signals support to GRF debug window
2022-06-15 21:36:55 +01:00
Jonathan G Rennison
cf5eef515e
Signals: Add GRF restriction info bit for may reverse
2022-06-15 17:49:54 +01:00
Jonathan G Rennison
ba52fbeb91
Signals: Add variable for restriction info, add bit for reserve through
2022-06-12 09:00:31 +01:00
Jonathan G Rennison
28724d651d
Tracerestrict: Add button to highlight all signals using program
2022-06-11 23:29:37 +01:00
Jonathan G Rennison
b37209c3af
Tracerestrict: Programs maintain a list of signals referencing them
2022-06-11 22:15:19 +01:00
Jonathan G Rennison
c06acd3c47
Tracerestrict: Avoid double lookup when setting is restricted map bit
2022-06-11 22:12:43 +01:00
Jonathan G Rennison
ccfcc22c03
Tracerestrict: Return error instead of assert for unknown subcommands
2022-06-11 20:24:05 +01:00
Jonathan G Rennison
02dabad81e
Tracerestrict: Add flag for whether reserve through is always set
2022-06-11 16:40:32 +01:00
Jonathan G Rennison
c4ea3e0335
Fully simulate slot occupancy changes in PBS res end dry-run mode
2022-03-14 02:26:03 +00:00
Jonathan G Rennison
221120090e
Fix wrong prefix in trace restrict enum
...
TRSACF_REMOVE_SPEED_ADAPT_EXEMPT in
TraceRestrictSpeedAdaptationControlField
2022-03-07 00:40:22 +00:00
Jonathan G Rennison
92142e5684
Add routing restriction action to make exempt from speed adaptation
2022-03-06 22:39:53 +00:00
Jonathan G Rennison
e5a421b65a
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/economy.cpp
# src/linkgraph/refresh.cpp
# src/order_cmd.cpp
# src/saveload/vehicle_sl.cpp
# src/station.cpp
# src/station_base.h
# src/timetable_cmd.cpp
# src/timetable_gui.cpp
# src/vehicle.cpp
# src/vehicle_base.h
# src/vehicle_cmd.cpp
2022-03-04 18:17:44 +00:00
Jonathan G Rennison
904ff6757d
Add slot support to road vehicles, ships and aircraft
2022-01-19 00:10:49 +00:00