Patric Stout
0c81579363
Fix #6377 : two tarballs with the same folder in them were considered as one ( #11855 )
2024-01-21 19:06:58 +01:00
SamuXarick
6588680ccc
Revert #6923 : start_date parameter is no longer in use
...
There was an issue with the start_date parameter for AIs. It did not let Random AIs to have their configure button clickable once the game has started, and this was due to the start_date not being pushed into the config.
But now that start_date is no longer in use since #10653 , this workaround can be safely removed.
2024-01-21 18:49:08 +01:00
Patric Stout
f35e257adc
Fix #9722 : create vital windows as soon as local_company is set ( #11858 )
...
Many places use local_company to detect whether world generation is
done, and blindly assume all vital windows exists when local_company
is set.
2024-01-21 17:36:33 +00:00
Peter Nelson
a9a0bfffc1
Change: Disable building rail infrastructure if train build limit is zero. ( #11847 )
...
This matches the behaviour of road, ship and aircraft infrastructure.
2024-01-21 16:51:23 +00:00
Peter Nelson
89474701bc
Codechange: Use templates to deduplicate goal widgets. ( #11852 )
2024-01-21 16:23:17 +00:00
Patric Stout
fa8294ebe7
Remove: rdtsc and TIC/TOC based on CPU ticks ( #11856 )
...
Use TIC/TOC based on std::chrono instead. This information is also
easier to compare with others, as although it depends on CPU, it
means a bit more if "yours takes 4ms and mine takes 10ms".
2024-01-21 15:38:15 +00:00
Patric Stout
fe035c306e
Codechange: prevent out-of-bound read (even if the result is never used) ( #11853 )
2024-01-21 14:25:00 +00:00
Peter Nelson
8797cc7ef2
Codechange: Replace GroupStatistics' num_engines with std::map. ( #11849 )
...
This removes manual memory management with calloc/free calls, and prevents potentially large arrays being allocated for each group.
2024-01-21 14:09:44 +00:00
Peter Nelson
c0ab436077
Codechange: Store Colours in Colours type. ( #11625 )
...
This reduces casts, some magic numbers, and introduces a bit of type-safety.
2024-01-21 13:23:04 +00:00
Peter Nelson
0841978304
Codechange: Use vector and iterators to store old/new vehicles during autoreplace. ( #11851 )
...
This avoids malloc/free of 3 arrays along index counting, and the data for each part is kept together.
2024-01-21 09:21:22 +00:00
Jonathan G Rennison
e9c1572f03
Disallow setting scheduled dispatch schedule duration to 0
2024-01-21 02:41:23 +00:00
Jonathan G Rennison
59b69aba62
Fix VideoDriver_Dedicated not marking the main thread as the game thread
2024-01-21 02:19:33 +00:00
Jonathan G Rennison
f247451c61
Fix division by zero when wrapping lateness_counter with 0 timetable duration
2024-01-21 02:07:32 +00:00
Jonathan G Rennison
74b5511dbc
Remove C++11 test from USE_SCOPE_INFO condition
2024-01-21 02:04:09 +00:00
Patric Stout
66a16d5ddf
Fix: [CI] wait for all targets to succeeded before uploading to any ( #11845 )
...
Otherwise it is possible Steam upload happens while CDN upload
does not, which is a bit awkward.
2024-01-20 23:51:50 +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
f03a941b50
Tracerestrict: Sort slots by name in vehicle window
2024-01-20 22:29:36 +00:00
Jonathan G Rennison
24fc4e3e3f
Tracerestrict: Remove TRPISP_PBS_RES_END_RELEASE
2024-01-20 22:24:19 +00:00
Jonathan G Rennison
7d1e350b94
Tracerestrict: Handle slot acquire on tunnel/bridge entrance reserve
...
When using realistic braking
Using the same context as PBS end acquire/release
2024-01-20 22:20:51 +00:00
Patric Stout
526a0db956
Fix: [CI] don't share Rust cache between legacy and generic linux ( #11848 )
...
The resulting binaries of generic can't run on legacy.
2024-01-20 22:05:56 +00:00
Rubidium
2d77f09a81
Codechange: use std::shared_ptr for vector of TCPConnecters
2024-01-20 23:03:44 +01:00
Patric Stout
71b8801b61
Fix bd85f61a
: [Linux] don't include sys/random.h on older glibc systems ( #11844 )
2024-01-20 20:43:06 +00:00
Jonathan G Rennison
9e8a43144a
Tracerestrict: Handle slot acquire and wait at PBS on intermediary reservation signals
...
Wait at PBS is applied as if on the starting signal
2024-01-20 20:42:13 +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
293b5c9435
Tracerestrict: Remove slot acquire on reservation flags
2024-01-20 20:23:55 +00:00
Tyler Trahan
fa479c4a7c
Cleanup: Describe modifier keys more consistently in tooltips ( #11716 )
2024-01-20 19:26:39 +00:00
Tyler Trahan
500870627d
Change: Rewrite a few main toolbar tooltips ( #11717 )
2024-01-20 13:49:34 -05:00
translators
4d79d86812
Update: Translations from eints
...
catalan: 18 changes by J0anJosep
2024-01-20 18:38:38 +00:00
Peter Nelson
d6ccfdbbd9
Fix #11827 : Make Layouter::GetCharPosition() aware of ligatures. ( #11831 )
...
When ligatures happen the precise individual character position is not known, so instead return the previous position (which is that of the ligature.)
2024-01-20 17:16:42 +00:00
Rubidium
086cbd0d72
Codechange: add constexpr to math functions where applicable
2024-01-20 17:30:36 +01:00
Rubidium
dfe70181f1
Codechange: add constexpr to bitmath functions where applicable
2024-01-20 17:30:36 +01:00
Rubidium
4c51534b6a
Remove: LeastCommonMultiple / GreatestCommonDivisor
...
Use std::lcm / std::gcd instead.
2024-01-20 16:45:21 +01:00
Rubidium
1403f24fa9
Codechange: replace LeastCommonMultiple with std::lcm
2024-01-20 16:45:21 +01:00
Jonathan G Rennison
5a731c04f3
Tracerestrict: Do not acquire slots a second time when front passes signal
...
If slot acquire was already handled during reservation
2024-01-20 15:41:24 +00:00
Jonathan G Rennison
5e2a8861f9
Tracerestrict: Avoid prematurely acquiring slots on tunnel/bridge exits
...
Due to checking the long reserve and wait at PBS/slots in a single pass
2024-01-20 15:14:53 +00:00
Jonathan G Rennison
ed59f6a8b9
Fix upgrading bridge type clearing custom signal style and routing restriction flags
2024-01-20 13:23:08 +00:00
Patric Stout
bd85f61a40
Change: use a stronger hash and actual random information to generate Uids
2024-01-20 14:23:03 +01:00
Patric Stout
37244bc8c5
Codechange: MacOS already has MIN/MAX macros defined
...
This is caused because we use PreCompile Headers, and one of them
includes a system headers which defines MIN/MAX.
2024-01-20 14:23:03 +01:00
Patric Stout
63a3d56b8a
Add: monocypher 4.0.2
...
Monocypher will take care of all our encryption needs; as most
OSes and vcpkg doesn't have it available, we vendor it.
2024-01-20 14:23:03 +01:00
Jonathan G Rennison
c9422762c0
Tracerestrict: Add 0 enum value for TraceRestrictProgramActionsUsedFlags
2024-01-20 12:58:38 +00:00
Jonathan G Rennison
fa1c4f2be5
Tracerestrict: Add bit allocation diagram for TraceRestrictItem
2024-01-19 21:09:25 +00:00
Jonathan G Rennison
1408b12249
Tracerestrict: Add get/set to use auxiliary and cond op as a single field
2024-01-19 21:09:08 +00:00
Jonathan G Rennison
2d56c4d2e3
Tracerestrict: Update comment for TraceRestrictItem enum
2024-01-19 20:43:56 +00:00
Rubidium
6b21368bc2
Codechange: replace FIND_FIRST_BIT/FindFirstBit2x64 with FindFirstBit
2024-01-19 21:10:39 +01:00
Rubidium
8faaedeff9
Codechange: replace hand written function to find first/last bit with C++ variant
2024-01-19 21:10:39 +01:00