frosch
9344b50435
Codechange: Remove TKM from settings texts.
8 months ago
frosch
9e9a8ca7f6
Codechange: Add callbacks to IntSettingDesc to support dynamic strings for title, help and values.
8 months ago
frosch
022b9e92d2
Codechange: Move settings string formatting into IntSettingDesc members.
8 months ago
frosch
a9d1078434
Codechange: Remove TKM from town action tooltips.
8 months ago
frosch
abfeeea849
Codechange: Compose engine preview text from multiple strings.
8 months ago
frosch
68c64d2511
Codechange: Remove TKM string codes by duplicating strings.
8 months ago
frosch
bd3d687bf9
Codechange: Merge all BaseGraphWindow widget enums into one.
...
Previously it relied on some enum entries using the same integer value.
8 months ago
frosch
69f47caf3f
Codechange: Remove TKM from vehicle list sorting dropdowns.
8 months ago
frosch
9741510396
Fix: Wallclock setting should not affect percent-based service interval increments.
8 months ago
Tyler Trahan
86981c0983
Fix: Extra refit button when train/RV is in a depot ( #11904 )
8 months ago
Patric Stout
05b253b33b
Fix ea8c1d85: improve smoothness of smooth-scrolling for 60+Hz screens ( #11884 )
8 months ago
SamuXarick
0c4e509b60
Fix #10439 : [GS] Validate story page button colour, flags, cursor and vehicle type ( #11892 )
...
Adds GSStoryPage::IsValidStoryPageButtonColour, GSStoryPage::IsValidStoryPageButtonFlags and GSStoryPage::IsValidStoryPageButtonCursor to the API.
Add missing enforced preconditions to validate parameters passed to MakePushButtonReference, MakeTileButtonReference and MakeVehicleButtonReference.
8 months ago
SamuXarick
76f0f9e386
Fix #10438 : [GS] Validate story page element type for ScriptStoryPage::NewElement ( #11888 )
...
Fixes a crash that happens if an invalid StoryPageElementType is passed to ScriptStoryPage::NewElement.
Adds an enforced precondition that tests the validity of StoryPageElementType.
Adds GSStoryPage::IsValidStoryPageElementType to the API.
8 months ago
Peter Nelson
6d276698b6
Fix: Memory leak in ICUParagraphLayout::NextLine() ( #11895 )
...
This function calls icu::BreakIterator::createLineInstance() but does not clean up after it.
Instead use a static instance that is cloned (for thread-safety) and deleted as necessary.
8 months ago
Jonathan G Rennison
1df7b21ee3
Fix #11889 : ConstructWindow not called from SurveyResultTextfileWindow constructor ( #11903 )
8 months ago
Peter Nelson
d3c673e20b
Fix #11894 : Defer window OnResize event to avoid processing multiple times per input tick. ( #11900 )
8 months ago
Patric Stout
8c5ad1ade7
Fix fd9e72a7: actually use the parameter value instead of the current date ( #11898 )
8 months ago
Peter Nelson
fef0bfcfd3
Fix: TextfileWindow called virtual methods before constructor completed. ( #11889 )
...
SetStringParameters() was called during widget tree init in the constructor.
Calls within a constructor cannot call the derived classes methods. This would result in invalid data being passed to the string system, which could then crash.
8 months ago
Kuhnovic
8a4a99b7e8
Fix #5713 : FindClosestShipDepot only considers depots that are actually reachable ( #11768 )
8 months ago
Patric Stout
89520f5665
Add: show in multiplayer the amount of hours a game has been unpaused ( #11886 )
8 months ago
Patric Stout
2bbc95cac3
Fix: update server as offline when unexpected disconnect during refresh ( #11891 )
8 months ago
Richard Wheeler
8770ef6bd9
Change: Make street lights transparent with houses ( #11828 )
8 months ago
Rubidium
7916e97c62
Update: opengl; glext header to 20231129, wglext header to 20231018
8 months ago
Rubidium
a23cd4aef7
Update: nlohmann/json to 3.11.3
8 months ago
Rubidium
79b684b8ac
Update: fmt to 10.2.0
8 months ago
Patric Stout
80ebcc72fb
Change: rebrand Cheats as Sandbox Options ( #11874 )
8 months ago
Tyler Trahan
28716548d2
Feature: Setting to automatically restart server based on hours played ( #11142 )
8 months ago
Loïc Guilloux
09b66751cf
Fix b38d3c2208: missing water regions invalidation when building locks ( #11879 )
8 months ago
Patric Stout
36579dd18b
Change: set smooth-scrolling on by default ( #11860 )
8 months ago
Patric Stout
ea8c1d8597
Change: make for smooth-scrolling based on actual time
...
This means if rendering takes a bit longer, scrolling goes a bit
quicker, making travel time always about the same time for the
same distance.
8 months ago
Jonathan G Rennison
cbb24b5d71
Codechange: Split bit numbers from values in RailTypeFlags, RoadTypeFlags enums ( #11877 )
8 months ago
Tyler Trahan
21581b6ab3
Feature: Setting for minutes per calendar year ( #11428 )
8 months ago
translators
be8ed26db6
Update: Translations from eints
...
norwegian (nynorsk): 5 changes by translators
slovenian: 5 changes by translators
faroese: 5 changes by translators
hebrew: 5 changes by translators
afrikaans: 5 changes by translators
urdu: 5 changes by translators
persian: 5 changes by translators
bulgarian: 5 changes by translators
belarusian: 5 changes by translators
basque: 5 changes by translators
russian: 23 changes by Ln-Wolf
finnish: 1 change by hpiirai
malay: 5 changes by translators
scottish gaelic: 5 changes by translators
croatian: 5 changes by translators
latin: 5 changes by translators
french: 49 changes by glx22, 8 changes by ottdfevr
portuguese (brazilian): 80 changes by pasantoro
icelandic: 5 changes by translators
8 months ago
Tyler Trahan
fd9e72a7e7
Feature: Use real-time "wallclock" timekeeping units ( #11341 )
8 months ago
Tyler Trahan
bbdbf9a589
Add: AI/GS Time Mode to choose between economy (default) and calendar time ( #11603 )
8 months ago
Patric Stout
a1487ce620
Add: list_[scenario|heightmap] and load_[scenario|height] console commands ( #11867 )
8 months ago
Tyler Trahan
76499b96fb
Fix fa479c4: Typo in vehicle list tooltip ( #11871 )
8 months ago
Patric Stout
090616b4c9
Add: allow loading heightmaps from command-line ( #11870 )
...
If you want to load a file from tar, you have to give the file
inside the tar in order for it to work:
<tar-file>/<dir-in-tar>/<file>.png
8 months ago
Kuhnovic
bf3fd6526b
Fix: use correct size parameter type in TileArea constructors ( #11869 )
8 months ago
Patric Stout
11d4f1b2bd
Fix d3b2a576: LOAD_HEIGHTMAP / LOAD_SCENARIO are Scenario Editor modes ( #11868 )
8 months ago
Patric Stout
d3b2a576de
Feature: Plugin framework for Social Integration with Steam, Discord, GOG, etc ( #11628 )
8 months ago
Patric Stout
75f21065c9
Codechange: refactor DecodeHexText to a generic purpose ConvertHexToBytes ( #11866 )
...
DecodeHexText() does more than just decoding hex. ConvertHexToBytes()
now only does pure hex decoding. This required a bit of refactoring
for the code using DecodeHexText().
8 months ago
translators
786cc85e86
Update: Translations from eints
...
english (au): 155 changes by krysclarke
norwegian (bokmal): 9 changes by v0nNemizez
english (us): 155 changes by 2TallTyler
chinese (simplified): 9 changes by WenSimEHRP
russian: 41 changes by Ln-Wolf
finnish: 1 change by hpiirai
8 months ago
Tyler Trahan
735abfe111
Codechange: Split dates and timers into Economy and Calendar time ( #10700 )
8 months ago
EmperorJake
419f48dfb3
Change: set amount of smoke/sparks to "realistic" by default ( #11624 )
8 months ago
Kuhnovic
b38d3c2208
Change: simplified water region evaluation, removed savegame data ( #11750 )
8 months ago
Patric Stout
1985e7415b
Fix: smooth-scrolling large distances didn't got smoothly in one direction ( #11861 )
8 months ago
Peter Nelson
c7d5cedc7b
Codechange: Replace C-style TICC/TOCC macros with C++ RAII implementation. ( #11857 )
...
Usage is more robust, and will always include timing when the TicToc object goes out of scope.
8 months ago
Peter Nelson
691c628b07
Codechange: Use named initialization for unscaled WidgetDimensions. ( #11859 )
...
Remove now-unused WD_* enums.
8 months ago
Patric Stout
0c81579363
Fix #6377 : two tarballs with the same folder in them were considered as one ( #11855 )
8 months ago
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.
8 months ago
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.
8 months ago
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.
8 months ago
Peter Nelson
89474701bc
Codechange: Use templates to deduplicate goal widgets. ( #11852 )
8 months ago
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".
8 months ago
Patric Stout
fe035c306e
Codechange: prevent out-of-bound read (even if the result is never used) ( #11853 )
8 months ago
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.
8 months ago
Peter Nelson
c0ab436077
Codechange: Store Colours in Colours type. ( #11625 )
...
This reduces casts, some magic numbers, and introduces a bit of type-safety.
8 months ago
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.
8 months ago
Rubidium
2d77f09a81
Codechange: use std::shared_ptr for vector of TCPConnecters
8 months ago
Patric Stout
71b8801b61
Fix bd85f61a: [Linux] don't include sys/random.h on older glibc systems ( #11844 )
8 months ago
Tyler Trahan
fa479c4a7c
Cleanup: Describe modifier keys more consistently in tooltips ( #11716 )
8 months ago
Tyler Trahan
500870627d
Change: Rewrite a few main toolbar tooltips ( #11717 )
8 months ago
translators
4d79d86812
Update: Translations from eints
...
catalan: 18 changes by J0anJosep
8 months ago
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.)
8 months ago
Rubidium
086cbd0d72
Codechange: add constexpr to math functions where applicable
8 months ago
Rubidium
dfe70181f1
Codechange: add constexpr to bitmath functions where applicable
8 months ago
Rubidium
4c51534b6a
Remove: LeastCommonMultiple / GreatestCommonDivisor
...
Use std::lcm / std::gcd instead.
8 months ago
Rubidium
1403f24fa9
Codechange: replace LeastCommonMultiple with std::lcm
8 months ago
Patric Stout
bd85f61a40
Change: use a stronger hash and actual random information to generate Uids
8 months ago
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.
8 months ago
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.
8 months ago
Rubidium
6b21368bc2
Codechange: replace FIND_FIRST_BIT/FindFirstBit2x64 with FindFirstBit
8 months ago
Rubidium
8faaedeff9
Codechange: replace hand written function to find first/last bit with C++ variant
8 months ago
Peter Nelson
903119115b
Fix 9602de4: FinaliseCargoArray did nothing. ( #11839 )
...
`CargoSpec::Iterate()` deliberately skips invalid cargo types, but `FinaliseCargoCarry()` is only interested in them.
8 months ago
translators
db7697bcdf
Update: Translations from eints
...
chinese (simplified): 22 changes by WenSimEHRP
romanian: 37 changes by bnegrut
8 months ago
Peter Nelson
9cf47af490
Change: Invalidate music volume when restarting music playback on Windows. ( #11836 )
8 months ago
Peter Nelson
6a2c37b4ed
Fix 09f585b: Crash if font name ends with comma or comma and whitespace on Linux. ( #11838 )
8 months ago
Rubidium
1c694e433d
Codechange: use std::popcount instead of hand written loop
8 months ago
Peter Nelson
ae575a7a5b
Codechange: Store text run positions in vector of points.
...
This simplifies the interlaced vector of x/y positions.
8 months ago
Peter Nelson
f7cc88f370
Codechange: Return vector references instead of pointer to first item.
8 months ago
Rubidium
2f8de227dc
Remove: unused OTTD_ALIGNMENT define and ReadLE16(Un)aligned
8 months ago
Rubidium
ee00c7b159
Codechange: use TO_LE16 directly when reading language file offsets
8 months ago
translators
32b99bf77c
Update: Translations from eints
...
portuguese: 4 changes by azulcosta
8 months ago
Loïc Guilloux
bf4b669628
Fix: [Script] Improve ScriptText validation ( #11721 )
...
The validation is now done in two steps:
- First we get the list of parameters in the same order they used to be in encoded string
- Then we validate the parameter types like FormatString would use them while encoding the string
8 months ago
Peter Nelson
28ef5146ba
Fix #11646 : Non-thread safe shared buffer returned from GetLogPrefix().
...
Return string from GetLogPrefix instead of shared string's buffer.
8 months ago
Patric Stout
2b599c9d00
Fix: [HarfBuzz] make HarfBuzz use the same glyphs as we render
8 months ago
Patric Stout
a24c2bf10a
Codechange: [HarfBuzz] hb-ft will set the scaling on its own
8 months ago
Peter Nelson
7faa3848de
Change: Mark whole screen dirty when toggling font AA. ( #11825 )
8 months ago
Rubidium
4cc97e04e6
Fix #11801 , 51f1e93: CalcClosestTownFromTile needs the kd-tree to be valid
8 months ago
Peter Nelson
0be26f5856
Change: Remove extra padding from query text. ( #11823 )
...
This window uses 'modalpopup' padding so does not need extra padding on its text.
8 months ago
Rubidium
47c0184a0b
Codechange: replace ROR/ROL with std::rotr/rotl
8 months ago
frosch
f457be5a27
Fix #11819 , aa5ba5b: Out-of-bounds access in linkgraph GUI. ( #11821 )
8 months ago
Rubidium
2d77cf9c80
Codechange: replace StrStartsWith/StrEndsWith with starts_with and ends_with
8 months ago
translators
384b804f9c
Update: Translations from eints
...
english (au): 1 change by krysclarke
chinese (simplified): 21 changes by WenSimEHRP
danish: 4 changes by bscargo
french: 2 changes by ottdfevr
portuguese (brazilian): 5 changes by pasantoro
polish: 5 changes by pAter-exe
8 months ago
Peter Nelson
341bdabc70
Fix #11815 , bb491127: Missing brackets prevented vehicles turning properly. ( #11816 )
9 months ago
Jonathan G Rennison
fd0528a9b4
Fix: Excessive switching of horizontal scale for FPS graph 60 Hz categories
9 months ago
Jonathan G Rennison
17d47ba06f
Fix 661bdae2: cargo_payment not cleared when aircraft loading cancelled
9 months ago
Patric Stout
fd073a2810
Remove: replace custom span with std::span
9 months ago
Patric Stout
bb49112784
Codechange: switch our codebase to C++20
9 months ago