Commit Graph

20733 Commits

Author SHA1 Message Date
translators
9610705f46 Update: Translations from eints
esperanto: 52 changes by legoscia
2023-05-21 18:40:42 +00:00
axet
60540f7df6 Change: Allow dedicated server to use threaded saves. (#10787)
Co-authored-by: Jonathan G Rennison <j.g.rennison@gmail.com>
2023-05-21 19:55:12 +02:00
Rubidium
2efd88d513 Cleanup: version of strgen/settingsgen was always $Revision$, so remove it 2023-05-21 19:39:09 +02:00
Rubidium
2dbd974d4c Codechange: prevent using (f)printf/(f)puts over fmt::print 2023-05-21 15:12:02 +02:00
Rubidium
411379f587 Codechange: replace puts with fmt::print 2023-05-21 15:12:02 +02:00
Rubidium
275ebf4509 Codechange: replace fprintf(<FILE*> with fmt::print(<FILE*> 2023-05-21 15:12:02 +02:00
Rubidium
c518293135 Codechange: replace printf with fmt::print 2023-05-21 15:12:02 +02:00
Tyler Trahan
d57046e7ec
Change: Use "Via-Destination-Source" as default station cargodist display (#10851) 2023-05-21 08:57:14 -04:00
Patric Stout
0850193a38
Fix: survey result on crash only worked on Linux (#10855)
Every OS-specific crashlog handler has their own MakeCrashLog
in some form. In result, only Linux was calling the generic one.
2023-05-21 12:57:32 +02:00
translators
98dffc3157 Update: Translations from eints
catalan: 12 changes by J0anJosep
esperanto: 678 changes by legoscia
2023-05-20 18:39:31 +00:00
Rubidium
3323402aaa Codechange: rename smallvec_type to container_func and use only when needed 2023-05-20 16:53:10 +02:00
Rubidium
80d8c01814 Codechange: replace std::vector + duplicate preventing include with std::set 2023-05-20 16:53:10 +02:00
Rubidium
07860e67e2 Codechange: use fmt::format_to to format the help message 2023-05-20 16:50:03 +02:00
Loïc Guilloux
8d2a0a7da4
Fix #10846: [Squirrel] Ensure sqvector size does not overflow (#10848) 2023-05-20 14:43:22 +00:00
PeterN
0cbbfd3eae
Codechange: Use display list instead of exclude list for file window. (#10845)
This simplifies retrieving the correct data for each row when data is
filtered. The background FileList is left intact so that savegame data
does not have to be rescanned when the filter is changed, and sorting
still remains the task of the background FileList.
2023-05-19 21:19:00 +00:00
translators
cdb184f53b Update: Translations from eints
catalan: 14 changes by J0anJosep
dutch: 14 changes by Afoklala
2023-05-19 18:39:30 +00:00
Peter Nelson
6b87fe6540 Codechange: Use std::array for GRF(File|Config) parameters.
This simplifies comparison, copying and assignment operations.
2023-05-19 16:53:56 +01:00
Peter Nelson
c23aae96a2 Codechange: Use std::array instead of C array for automatic deep-copies. 2023-05-19 16:53:56 +01:00
Rubidium
acec34a0fe Cleanup: remove MD5SumToString in lieu of FormatArrayAsHex 2023-05-19 11:24:44 +02:00
Rubidium
d9a04ba446 Codechange: make the MD5 hash/digest/checksum variables a std::array 2023-05-19 11:24:44 +02:00
Peter Nelson
7934418133 Codechange: Remove comment alignment from GRFConfig. 2023-05-18 20:48:37 +01:00
Peter Nelson
f14479d27d Codechange: Use std::optional for GRF Parameter list. 2023-05-18 20:48:37 +01:00
Peter Nelson
c51a7f629e Codechange: GRFParameterInfo no longer needs deep-copy constructor. 2023-05-18 20:48:37 +01:00
translators
fd26658558 Update: Translations from eints
russian: 2 changes by Ln-Wolf
2023-05-18 18:41:14 +00:00
Peter Nelson
91e140c722 Codechange: Use unique_ptr for fios company properties.
This is the data used to show company names in the saveload window.
2023-05-18 12:18:30 +01:00
Peter Nelson
bf8f24f9a8 Codechange: Use unique_ptr for text layout font mapping.
This must stay a pointer as the value passed to other structures.
2023-05-18 12:18:30 +01:00
Peter Nelson
c38df2d589 Codechange: Use std::map instead of custom SmallMap. 2023-05-18 12:18:30 +01:00
Peter Nelson
72018badff Codechange: Swap SocketList map key/value around.
This map is used store socket and address together, and, other than
checking that the address does not already have a socket, the data layout
does not seem particularly important.

However, as address is the key, technically it should not be modified,
and address may self-modify itself during comparisons.
2023-05-18 12:18:30 +01:00
Peter Nelson
f454ec8d63 Fix: Don't rely on static initialization to set up sprite font caches.
The order of static initialization is undefined, so this can cause initalization
before relevant caches are initializations.
2023-05-18 12:18:30 +01:00
translators
418888ac23 Update: Translations from eints
romanian: 11 changes by bnegrut
turkish: 14 changes by densxd
2023-05-17 18:40:23 +00:00
Peter Nelson
83f2ad500e Codechange: stdarg.h include not needed as cstdarg is included. 2023-05-17 10:14:41 +01:00
Peter Nelson
56085be9bd Codechange: Move includes for common STL headers to stdafx. 2023-05-17 10:14:41 +01:00
translators
a5cf362886 Update: Translations from eints
english (au): 14 changes by krysclarke
english (us): 14 changes by 2TallTyler
vietnamese: 14 changes by KhoiCanDev
korean: 19 changes by telk5093
italian: 14 changes by Rivarossi
russian: 14 changes by Ln-Wolf
finnish: 14 changes by hpiirai
danish: 22 changes by bscargo
portuguese: 14 changes by azulcosta
polish: 14 changes by pAter-exe
2023-05-16 18:41:59 +00:00
Rubidium
e9c03f0dad Cleanup: remnants of C-style strings in saveload 2023-05-16 18:32:52 +02:00
Rubidium
52a7c69974 Codechange: rework Gamelog changes from union to classes 2023-05-16 18:32:52 +02:00
translators
389b66bd16 Update: Translations from eints 2023-05-15 18:40:31 +00:00
PeterN
40f567d464
Fix #10811: Crash getting row from non-resizable widget. (#10833)
GetScrolled*FromWidget took line height from the widget's resize_y value,
however not all widgets are resizable, resulting in a division-by-zero.

Allow passing line height explicitly in cases where a widget is not
resizable.
2023-05-15 18:57:50 +01:00
PeterN
e4fd9d41d3
Codechange: Use std::any_of() (#10830)
When the result of std::find_if is compared only with end()
then '!= end()' is replaced with any_of().

Just... there's only one.
2023-05-14 23:18:52 +01:00
Patric Stout
199e41c762
Codechange: use default dtor instead of empty (#10826) 2023-05-14 23:31:03 +02:00
Patric Stout
7634553d22 Feature: opt-in survey when exiting a game
On first start-up, the game will ask if you want to participate
in our automated survey. You have to opt-in, and can easily opt-out
(via the Options) at any time.

When opt-in, whenever you exit a game, a JSON blob will be send
to the survey server hosted by OpenTTD. This JSON blob contains
information that gives a global picture of the game just played:
- What settings were used
- How many humans vs AIs
- How long the game has been played
- Basic information about the OS / CPU

All this information is kept very generic, so there is no
chance we send private information to our survey server.
Nothing in the JSON blob could identify you as a person; it
mostly tells about the game played. At any time you can see
what the JSON blob includes, by pressing the "Preview Survey
Results" button in-game.
2023-05-14 23:22:02 +02:00
Rubidium
62fda0f505 Codechange: remove manual allocation/free for SQ_instance 2023-05-14 22:54:10 +02:00
Rubidium
f9b5bc7ee6 Cleanup: the need for SQAutoFreePointers has gone 2023-05-14 22:54:10 +02:00
Rubidium
d9e93edc8b Codechange: replace 'const char *' script API parameters with std::string 2023-05-14 22:54:10 +02:00
Rubidium
b1b578f988 Cleanup: stredup-ing string variant for calling scripts 2023-05-14 22:54:10 +02:00
Rubidium
ab51175db2 Codechange: use std::string for script config 2023-05-14 22:54:10 +02:00
Rubidium
bbcb55ebc9 Codechange: use std::string as script API return type 2023-05-14 22:54:10 +02:00
Rubidium
b24a6bb8f3 Codechange: use std::string for script log calls 2023-05-14 22:54:10 +02:00
Rubidium
77177f7e8b Add: support for std::string parameters in the script API 2023-05-14 22:54:10 +02:00
Rubidium
98972a0748 Codechange: use C++ strings for constructing script file paths 2023-05-14 22:54:10 +02:00
Rubidium
20ff0bccd7 Codechange: use std::string to store script GUI's break string 2023-05-14 22:54:10 +02:00
Rubidium
48825e1a8e Codechange: rewrite script string-to-settings conversion to C++ 2023-05-14 22:54:10 +02:00
Rubidium
552d2f71a2 Codechange: use std::string for script library category 2023-05-14 22:54:10 +02:00
Rubidium
e035705239 Codechange: introduce and use std::string variant of sq_throwerror 2023-05-14 22:54:10 +02:00
Rubidium
3453c03a17 Codechange: use fmt::format to create dummy scripts 2023-05-14 22:54:10 +02:00
Rubidium
9f2fc860ad Codechange: use std::optional<std::string> for changing the script over char * 2023-05-14 22:54:10 +02:00
Rubidium
0fd9eb0faa Codechange: use std::string for script info/library finding 2023-05-14 22:54:10 +02:00
Rubidium
a30f7c83bd Codechange: use std::string for script names to load 2023-05-14 22:54:10 +02:00
Rubidium
9b0123ab66 Codechange: use std::string for script API versions 2023-05-14 22:54:10 +02:00
Rubidium
3d8d99ba11 Add: method to call script functions with std::string 2023-05-14 22:54:10 +02:00
Rubidium
4a6fdc8293 Fix: multiplication result converted to larger type
Technically unlikely to happen, though uint16 * uint16 get promoted to int and
then stored as uint64; similarly uint * uint16 remains uint and gets stored as
uint64. In both cases the value can get truncated before the change to uint64.
2023-05-14 22:09:58 +02:00
PeterN
4894da67da
Codechange: Pass bridge type instead of display row to BuildBridge. (#10828) 2023-05-14 19:12:26 +00:00
translators
a8daf91eea Update: Translations from eints
vietnamese: 4 changes by KhoiCanDev
hungarian: 74 changes by PstasDev
turkish: 4 changes by densxd
2023-05-14 18:40:47 +00:00
Patric Stout
8493719cf4
Fix: padding miscalculated for the network-relay and bootstrap-question GUI (#10827) 2023-05-14 15:32:45 +00:00
PeterN
9eb0cca93a
Fix #10823, Fix #10811: Order list has end marker row. (#10825) 2023-05-14 13:04:59 +01:00
PeterN
64930c343a
Codechange: Pass reference instead of pointer to GUI*Lists. (#10822)
Pointer-avoidance.
2023-05-14 09:17:44 +01:00
PeterN
23ce42ad91
Codechange: Use std::move for bridge list. (#10821)
This follows the pattern for dropdown lists, and avoids new/delete and pointers.
2023-05-14 08:22:09 +01:00
PeterN
385b25df63
Fix #10819, Fix #10811: GetVehicleFromDepotWndPt used widget- instead of window-relative positions. (#10820)
Pass window-relative positions instead, and adjust for relative positions where needed within the function itself. This simplifies calling code.
2023-05-13 22:18:36 +00:00
PeterN
07473bfd2e
Fix: Don't use a loop to test if classid is valid. (#10818)
Additionally the Object class test was broken.
2023-05-13 21:27:32 +00:00
Patric Stout
1fe7bbba8a
Codechange: rework NewGRFProfiler to use ticks instead of calendar-days (#10815)
We are planning to allow things like freezing the calendar, which
makes this variable a bit problemetic. So instead, suggest to the
user how many ticks there are in a calendar day, and let them figure
out how many ticks they want.

Additionally, use a TimeoutTimer for this, instead of an end-date
variable which is checked in an IntervalTimer.
2023-05-13 23:17:11 +02:00
Rubidium
a372c59483 Codechange: replace C-style (stredup) chat completion with std::string_view 2023-05-13 22:33:27 +02:00
translators
e1b653137f Update: Translations from eints
finnish: 4 changes by hpiirai
2023-05-13 18:41:08 +00:00
Peter Nelson
a92755de81 Codechange: Use iterator erase pattern. 2023-05-13 19:18:01 +01:00
Peter Nelson
4a64064c57 Codechange: Make NEW_STATION an actual item in join station list.
Add NEW_STATION to the nearby station list to indicate that a new
station should be built. This removes special-casing for a non-existant
list item and keeps the list count and scrollbar count the same.
2023-05-13 19:18:01 +01:00
Patric Stout
d54660184a
Fix: NewGRF Profile didn't stop if there were no events yet (#10816)
This meant you could have the following situation:
- You start a profile on a GRF with no events, for N days.
- The days pass, the profile should stop. It doesn't.
- The profile will never stop, even if the GRF start generating events.
- There is no real way to discover this, so .. byebye memory? :)
2023-05-13 18:23:23 +02:00
Peter Nelson
531d1ae8bc Codechange: Use GetScrolled(Row/Item)FromWidget in more places.
In many instances the clicked row position is 'manually' calculated
instead of using the GetScrolledRowFromWidget helper function, with
variations on checks. Replace with the two helpers where possible.
2023-05-12 21:45:32 +01:00
Peter Nelson
941dbadf9e Codechange: Add and use GetScrolledItemFromWidget to get a list item.
This function returns an iterator, either to the selected item or the
container's end.

This makes handling the result more robust as indices are not used.
2023-05-12 21:45:32 +01:00
Rubidium
86e5dfce3d Codechange: use std::string instead of strecat to build hotkey strings 2023-05-12 22:02:59 +02:00
Michael Lutz
72c7536325
Codechange: Use a dedicated variable for disaster vehicle action state. (#10798) 2023-05-12 21:41:36 +02:00
Peter Nelson
1a93618bd1 Fix: Road type is not available before its introduction date. 2023-05-12 21:03:13 +02:00
Peter Nelson
726d05b22b Fix: Don't list unavailable road types for game scripts. 2023-05-12 21:03:13 +02:00
Peter Nelson
5059e23ed5 Revert 8fa61533: "Fix 30ae072: when a road type is hidden, towns may not build them even when that flag is set"
This reverts commit 8fa61533f0.
2023-05-12 21:03:13 +02:00
Henry Wilson
3a03a12a9c Feature: Show the number of industries already built in the Fund New Industry window. 2023-05-12 20:48:11 +02:00
translators
a934a584a5 Update: Translations from eints
italian: 4 changes by Rivarossi
catalan: 4 changes by J0anJosep
dutch: 9 changes by Afoklala
2023-05-12 18:39:51 +00:00
PeterN
da7f431812
Cleanup: widget pos_x/y are already int. (#10809)
Remove old casts left over from when pos_x/y were unsigned.
2023-05-12 18:02:51 +01:00
PeterN
7e3646cf46
Codechange: Remove redundant char buffer. (#10808) 2023-05-11 21:36:11 +00:00
translators
ca31976da0 Update: Translations from eints
english (au): 4 changes by krysclarke
english (us): 4 changes by 2TallTyler
russian: 4 changes by Ln-Wolf
portuguese: 4 changes by azulcosta
polish: 8 changes by pAter-exe
2023-05-11 18:42:00 +00:00
PeterN
61516627ad
Add: NewGRF string code "9A 21" to display force from textstack. (#10782) 2023-05-11 08:06:46 +01:00
Peter Nelson
59811ec780 Codechange: Use find_if when finding things. 2023-05-11 07:58:55 +01:00
Peter Nelson
e6740046ee Codechange: Use range-for iteration. 2023-05-11 07:58:55 +01:00
Peter Nelson
cef3a2570d Codechange: Use standard iterator-erase-loop pattern. 2023-05-11 07:58:55 +01:00
Peter Nelson
a8c0d16371 Cleanup: Use std::advance instead of for-loop. 2023-05-11 07:58:55 +01:00
Peter Nelson
68782f951b Cleanup: Vector supports random access. 2023-05-11 07:58:55 +01:00
Rubidium
6d1586dd49 Codechange: use std::string instead of char* for original editor strings 2023-05-10 23:15:09 +02:00
translators
7e1123c731 Update: Translations from eints
portuguese (brazilian): 30 changes by ericandradex
2023-05-10 18:43:36 +00:00
Patric Stout
922d7aa773
Update: help out translators and do the COMMA -> DECIMAL for them (#10802) 2023-05-10 16:09:58 +02:00
Michael Lutz
7e906c7c59 Change: Preserve orders and related settings where possible when moving engines around in a train. 2023-05-10 00:35:02 +02:00
Michael Lutz
07449be876 Codechange: A vehicle that is not a front engine can't be removed from a vehicle group, so just remove a pointless function call. 2023-05-10 00:35:02 +02:00
Rubidium
1ae7eb1594 Codechange: use std::map over SmallMap and std::string of stredup(char*) 2023-05-09 23:14:48 +02:00
Rubidium
12085d088c Cleanup: remove obsolete string_compare_type 2023-05-09 23:14:48 +02:00
Rubidium
bc389a86c9 Codechange: use std::string as std::map key, instead of stredup string 2023-05-09 23:14:48 +02:00
Rubidium
72082aa7d3 Codechange: use std::string for getting a script's name 2023-05-09 23:14:48 +02:00
Rubidium
f1fb6c95fe Add: case insensitive string comparator 2023-05-09 23:14:48 +02:00
Rubidium
6e3d3c0e7c Codechange: introduce std::string variant of sq_pushstring 2023-05-09 23:14:48 +02:00
Peter Nelson
f5158c8b79 Feature: Add search filter and name text to build waypoint window. 2023-05-09 23:03:14 +02:00
Peter Nelson
dc50ff807c Change: Remove incorrect minimal size. 2023-05-09 23:03:14 +02:00
Peter Nelson
b54d7f15ac Change: Reduce size of waypoint matrix to 3 x 2. 2023-05-09 23:03:14 +02:00
Peter Nelson
0513a6ccb0 Change: Use separate names for default stations/roadstops. 2023-05-09 23:03:14 +02:00
Peter Nelson
93d49fa8b3 Fix: Make scrollwheel work on panel behind waypoint matrix. 2023-05-09 23:03:14 +02:00
Peter Nelson
bf9caa425b Change: Units-system can convert from N to kN, don't preconvert.
This allows force to passed as is and avoid premature rounding.

The AI function "GetMaxTractiveEffort" still needs to return kN to avoid breaking the API.
2023-05-09 23:02:51 +02:00
Peter Nelson
e2f583a34f Change: Standardise unit conversions and allow decimal places.
Previously the decimal_places member was mostly ignored except for
specific conversions. {DECIMAL} with 0 is the same as {COMMA} so there
is no downside to allowing any conversion to have decimals.
2023-05-09 23:02:51 +02:00
Peter Nelson
3c2f87ce1f Change: Perform unit convert with a double-precision constant.
Unit conversion is only performed for display purposes, this does not
affect lock-step mechanics.

This replaces the old multiply and shift algorithm which relies on
choosing a multipler and shift combination that gets close. Some of these
multiply/shift combinations were quite inaccurate. We can just
use (close-to) real-world numbers instead.
2023-05-09 23:02:51 +02:00
Patric Stout
febe394806
Codechange: replace C-style strings with C++-style strings in textfile (#10772) 2023-05-09 19:35:50 +00:00
translators
90529ea48b Update: Translations from eints
catalan: 30 changes by J0anJosep
french: 25 changes by glx22
polish: 5 changes by pAter-exe
2023-05-09 18:44:36 +00:00
PeterN
6998fbf71d
Fix: WWT_TEXT with SetTextStyle did not work. (#10797)
FontSize was passed to incorrect parameter of DrawString function.
2023-05-09 17:23:37 +00:00
Peter Nelson
d68c4bbd2f Change: Use iterator when drawing industry cargo window. 2023-05-09 17:39:12 +01:00
Peter Nelson
cccf4953f7 Fix: Incorrect padding on industry cargo window. 2023-05-09 17:39:12 +01:00
PeterN
882f06bf14
Fix: Support more than 256 stations/waypoints/roadstops per class. (#10793)
It was already possible to define more than 256 per class, but not possible
to use them as the index used in GUI and passed through commands was limited
to a byte.
2023-05-08 18:09:33 +00:00
Patric Stout
a05ae2497f Codechange: simplify how GetCharPosition() works 2023-05-08 19:21:42 +02:00
Patric Stout
60399e17bd Codechange: C++-ify the Layouter and related functions
They all now access a std::string_view, instead of a "const char *"
or std::string (in some cases).

Additionally, GetCharAtPosition and friends now return an index
instead of a "const char *", as it makes for a more clear interface.
2023-05-08 19:21:42 +02:00
Tyler Trahan
61d1b330d1
Change: Add padding to build vehicle text filter (#10792) 2023-05-08 17:21:29 +00:00
Patric Stout
aed36a609c
Fix: [ICU] crash when trying to break a non-breaking run (#10791)
Clusters from harfbuzz are indexed from the start of the buffer,
not from the start of the run analyzed. This confuses other parts
of the code that do assume they are from the start of the run.
2023-05-08 16:09:47 +00:00
PeterN
bc6a4b1d08
Fix: Set up default station/waypoint classes properly. (#10789) 2023-05-08 16:42:01 +01:00
J0anJosep
c4e6d80ecf Cleanup: Remove unnecessary hangar check. 2023-05-08 17:30:21 +02:00
Rubidium
68ff3fd062 Change: include fmt.h C++ headers in stdafx.h
This to prevent compilation issues between runs with and without precompiled
headers. Also remove the headers from the rest of the code base as they are
not needed there anymore, although they do relatively little harm.
2023-05-08 16:49:23 +02:00
Peter Nelson
878c5d8d85 Codechange: Use SetPosition() to clamp after changing count/capacity. 2023-05-07 20:25:44 +01:00
Peter Nelson
6202eae9d5 Codechange: Rely on Scrollbar::SetPosition to clamp.
Manually clamping scrollbar bounds before calling `SetPosition()` is doubling up work that the function already does.
2023-05-07 20:25:44 +01:00
Peter Nelson
d2034d9c38 Codechange: Scrollbar methods now accept size_t.
This clears up a lot of casts from size_t to int.
2023-05-07 20:25:44 +01:00
translators
923d1b0846 Update: Translations from eints
vietnamese: 5 changes by KhoiCanDev
2023-05-07 18:39:28 +00:00
kiwitreekor
3375f25b70
Fix: Var68 for station and roadstop was broken (#10784) 2023-05-07 19:04:34 +01:00
Tyler Trahan
98d809c33b
Codechange: Don't use macros for DAYS_TILL and friends (#10746) 2023-05-07 05:25:24 -04:00
PeterN
8bf62dac81
Codechange: Clean up build industry window. (#10779)
* Remove left-over code that treated an invalid list selection as 'fund
many', which is actually implemented as a separate button.
* Manual list management replaced with std::vector.
* Enabled state is only needed for the current selection.
* Selected index is not required only selected type.
2023-05-07 08:19:09 +01:00
PeterN
a836edd5a7
Codechange: Scrollbar::UpdatePosition() will tell if the position changed. (#10777)
So we don't need to check this manually.
2023-05-06 19:45:32 +00:00
Rubidium
fb856e16c1 Codechange: replace some min/clamp constructs to ClampTo 2023-05-06 21:26:13 +02:00
Rubidium
19ec4e8beb Codechange: replace ClampToI32/U16 with ClampTo<int32_t/uint16_t> 2023-05-06 21:26:13 +02:00
Rubidium
969a3dc0f3 Codechange: introduce generic ClampTo function to clamp to the range of a type 2023-05-06 21:26:13 +02:00
Rubidium
e33b2afd87 Codechange: pass (uint) money as Money for CmdGiveMoney 2023-05-06 21:26:13 +02:00
Rubidium
4a5a9f57c4 Fix: conversion to smaller type warnings 2023-05-06 21:26:13 +02:00
translators
97b77f0251 Update: Translations from eints
english (au): 5 changes by krysclarke
english (us): 5 changes by 2TallTyler
korean: 5 changes by telk5093
italian: 5 changes by Rivarossi
russian: 5 changes by Ln-Wolf
finnish: 5 changes by hpiirai
turkish: 5 changes by densxd
portuguese: 5 changes by azulcosta
2023-05-06 18:39:19 +00:00
Michael Lutz
b14c5aff1f
Fix: [Win32] Text line breaking did not properly handle punctuation characters. (#10775) 2023-05-06 16:15:40 +00:00
Tyler Trahan
0fc21b5686
Fix: Engine age is in months, not days (#10773) 2023-05-06 11:54:38 -04:00
Loïc Guilloux
31d1a323ef
Fix #10771, 3901ef9: GRFConfig.filename is now a std::string (#10774) 2023-05-06 14:58:47 +00:00
PeterN
b67cf7f94a
Change: Replace ScriptLog data array with std::deque. (#10770)
Due to cyclic header dependency this requires moving the data types used
by ScriptLog out of the ScriptLog class.
2023-05-06 14:54:58 +00:00
translators
5dd54e2708 Update: Translations from eints
japanese: 10 changes by fmang
vietnamese: 14 changes by KhoiCanDev
dutch: 14 changes by Afoklala
polish: 1 change by pAter-exe
2023-05-05 18:42:16 +00:00
PeterN
bda754ec83
Fix: Make all settingsgen 'warnings' fatal. (#10766)
Compilation should stop If settingsgen fails to complete properly.
2023-05-05 09:22:03 +01:00
Patric Stout
a7d3c79d79
Fix c6c3d0e6: restore string-based settings in network-private settings (#10765)
By accident the SDTC_SSTR got replaced with SDTC_VAR, which breaks
many of the settings in this file.
2023-05-05 07:08:57 +00:00
Rubidium
877349c13d Codechange: use std::string for text file name resolution 2023-05-05 08:54:29 +02:00
Peter Nelson
0b72297d57 Feature: Increase number of stations/roadstops per NewGRF. 2023-05-05 07:08:40 +01:00
Peter Nelson
bc7dfd7b46 Add: Station property 1C/1D to set name/classname.
These are an alternative to the original "generic" C4xx/C5xx method,
which can only assign strings to IDs up to 256.
2023-05-05 07:08:40 +01:00
Peter Nelson
d6f35a9fd6 Change: Add placeholders for unimplemented NewGRF station properties. 2023-05-05 07:08:40 +01:00
Peter Nelson
7a86615007 Feature: Remove limit of objects per NewGRF. 2023-05-05 07:08:40 +01:00
Peter Nelson
912eb68981 Change: Extend entity override manager and station spec lists to support 16 bit IDs. 2023-05-05 07:08:40 +01:00
Peter Nelson
e5c9a3e527 Change: Read Action 3 IDs as extended-bytes for all features.
This can be done because previous the value 0xFF (which indicates an
extended byte) was reserved for this purpose. Other features which may
not have mentioned reserving 0xFF do not allow this many IDs anyway.

This makes Action 3 consistent across all features. The allowable limits
for each feature do not change.
2023-05-05 07:08:40 +01:00
Peter Nelson
10baecd81f Change: Make Action 3 debug messages more consistent. 2023-05-05 07:08:40 +01:00
glx22
045a99dd23 Codechange: Remove STR_TINY_RIGHT_ARROW 2023-05-05 07:07:54 +01:00
glx22
222e37d319 Codechange: Remove TINY_BLACK_STATION 2023-05-05 07:07:54 +01:00
glx22
b2a36ff3cc Codechange: Remove STR_TINY_GROUP and STR_TINY_BLACK_VEHICLE 2023-05-05 07:07:54 +01:00
glx22
999057a4d8 Codechange: Remove STR_SHORT_DATE 2023-05-05 07:07:54 +01:00
glx22
49eb638563 Codechange: Remove STR_ORANGE_STRING1_WHITE and STR_ORANGE_STRING1_LTBLUE. 2023-05-05 07:07:54 +01:00
Peter Nelson
61407840c6 Codechange: Remove STR_BLACK_RAW_STRING. 2023-05-05 07:07:54 +01:00
Peter Nelson
0880616851 Codechange: Remove various STRING strings. 2023-05-05 07:07:54 +01:00
Peter Nelson
4767641c8c Codechange: Remove various INT strings. 2023-05-05 07:07:54 +01:00
Peter Nelson
d5fb9e7dc6 Codechange: Remove various DATE_LONG strings. 2023-05-05 07:07:54 +01:00
Peter Nelson
a2d7642195 Codechange: Remove STR_COMPANY_MONEY. 2023-05-05 07:07:54 +01:00
Peter Nelson
f1d0a26324 Codechange: Remove STR_TINY_BLACK_DECIMAL. 2023-05-05 07:07:54 +01:00
Peter Nelson
e18f688db5 Codechange: Remove various COMMA strings. 2023-05-05 07:07:54 +01:00
Peter Nelson
5e185d5328 Codechange: Draw tooltip text in black. 2023-05-05 07:07:54 +01:00
Rubidium
3901ef9760 Codechange: use std::string for the GRF filenames 2023-05-04 23:23:32 +02:00
Rubidium
f78aa1e720 Codechange: use std::unique_ptr to manager GRFErrors in GRFConfig 2023-05-04 23:23:32 +02:00
Rubidium
a312a6c1b2 Codechange: make md5sumToString std::string compatible 2023-05-04 23:23:32 +02:00
Rubidium
51c6b8c1e4 Codechange: use fmt::format_to for gamelog message creation over seprintf 2023-05-04 23:23:32 +02:00
Patric Stout
c6c3d0e6fa
Fix: no_http_content_downloads and use_relay_service as private settings (#10762)
Basically, we don't need to know those values when people send in
crash reports.
2023-05-04 22:46:02 +02:00
Jonathan G Rennison
8d501f2db1
Fix #10741: Rail platforms left partially reserved after train crash (#10751) 2023-05-04 21:45:13 +01:00
Peter Nelson
7ccdefa1c1 Change: Increase vehicle random data from 8 to 16 bits. 2023-05-04 21:42:28 +01:00
Peter Nelson
4a5e413a6c Cleanup: Remove unnecessary VehicleRandomBits()
Simple Random() assignment to byte does the same.
2023-05-04 21:42:28 +01:00
translators
ca497ce356 Update: Translations from eints
japanese: 29 changes by fmang
danish: 25 changes by bscargo
polish: 29 changes by pAter-exe
2023-05-04 18:41:18 +00:00
Tyler Trahan
6501f84b4a
Codechange: Move calendar date functions inside TimerGameCalendar (#10753) 2023-05-04 13:14:12 +00:00
translators
7669aac865 Update: Translations from eints
english (us): 14 changes by 2TallTyler
2023-05-03 18:40:51 +00:00
Patric Stout
018a26d9b6
Fix: crash in emscripten when saving games (#10758)
Don't allocate 128KB on stack, but rather on the heap.
2023-05-02 21:22:09 +00:00
Peter Nelson
39eff18754 Codechange: Use std::vector for gamelog GRFConfig comparisons. 2023-05-02 19:47:55 +01:00
Peter Nelson
00bf42353a Codechange: Place gamelog into its own class, along with internal data.
Data is now stored in vectors to avoid manual memory management and
passing lengths around.
2023-05-02 19:47:55 +01:00
translators
47a8d12f0e Update: Translations from eints
english (au): 14 changes by krysclarke
korean: 14 changes by telk5093
italian: 14 changes by Rivarossi
russian: 15 changes by Ln-Wolf
finnish: 14 changes by hpiirai
turkish: 14 changes by densxd
portuguese: 16 changes by azulcosta
2023-05-02 18:39:14 +00:00
Patric Stout
81d4fa6999 Feature: drop ICU-lx in favour of directly interfacing with harfbuzz
This means we have RTL support again with ICU 58+. It makes use of:
- ICU for bidi-itemization
- ICU for script-itemization
- OpenTTD for style-itemization
- harfbuzz for shaping
2023-05-01 22:17:56 +02:00
Patric Stout
9cb60768fe Codechange: split implementations of ParagraphLayouterFactory into their own file 2023-05-01 22:17:56 +02:00
translators
4cceaae8dc Update: Translations from eints 2023-05-01 18:39:20 +00:00
Tyler Trahan
aa8830f57a
Feature: Filter engine build menu by name and NewGRF extra text (#10519) 2023-05-01 17:02:16 +00:00
Michael Lutz
908be59699 Fix: [Win32] Wrong multi-line text layout due to incorrect whitespace handling. 2023-05-01 16:31:59 +02:00
Michael Lutz
715234502c Fix: Typo in variable name. 2023-05-01 16:31:59 +02:00
Rubidium
1f3b7e2efd Codechange: use std::string instead of stredup for saveload error messages 2023-05-01 16:23:24 +02:00
Rubidium
8665404fe0 Codechange: use std::string instead of stredup for missing glyph error messages 2023-05-01 16:23:24 +02:00
Rubidium
a931378c52 Codechange: use std::string instead of stredup/free for ScanProgressWindow 2023-05-01 16:23:24 +02:00
Rubidium
aac95eeaf5 Codechange: use std::string instead of stredup/free for stories 2023-05-01 16:23:24 +02:00
Rubidium
3342967ad9 Codechange: use std::string instead of stredup/free for goals 2023-05-01 16:23:24 +02:00
PeterN
cc44aa7438
Change: Split Game options into General, Graphics and Sound tabs. (#10674) 2023-05-01 12:58:22 +01:00
PeterN
003bab3c8a
Change: Size space for editbox clear button by interface scale. (#10749) 2023-04-30 23:11:00 +01:00
translators
cf3cb8d2a5 Update: Translations from eints
english (au): 4 changes by krysclarke
vietnamese: 4 changes by KhoiCanDev
korean: 4 changes by telk5093
russian: 1 change by Ln-Wolf
2023-04-30 18:40:41 +00:00
Peter Nelson
a816dd1d48 Change: Remove {TINY_FONT} from cargo abbreviation strings for other translations. 2023-04-30 11:47:53 +01:00
Peter Nelson
310b3a67ad Change: Remove {TINY_FONT} from cargo abbreviation strings for English. 2023-04-30 11:47:53 +01:00
Peter Nelson
0acc57583b Fix: Force cargo abbreviation to small font in station list. 2023-04-30 11:47:53 +01:00
Peter Nelson
6be6703498 Fix: Linkgraph legend assumes strings are small.
Ensure all linkgraph legend strings are drawn with FS_SMALL forced, so
that it does not rely on NewGRF authors.
2023-04-30 11:47:53 +01:00
Peter Nelson
35ba49bfb4 Change: Rename text colour NWidgetPart to SetTextStyle and add font size.
This allows to set both text colour and size for any widget with default
drawing.
2023-04-30 11:47:53 +01:00