Peter Nelson
f146680121
Codechange: Use vector for industry random sounds. ( #12606 )
...
Use a vector to store the list of random sounds played for an industry.
The removes manual memory allocation, flags to control memory management, a separate count member, and a try/catch block.
2024-05-01 19:55:00 +00:00
Peter Nelson
7147fe9e7a
Codechange: Use range-for when loading NewGRF deterministic sprite groups. ( #12605 )
2024-05-01 18:59:46 +00:00
Peter Nelson
532ce1a907
Codechange: Use Recv/Send_bytes for md5sum. ( #12602 )
...
Use existing functions to handle serialisation of arrays instead of indexed for-loop.
2024-05-01 18:55:54 +01:00
Peter Nelson
1424a184d8
Codechange: Use vector/span when loading wagon overrides. ( #12604 )
...
Replaces manual memory allocation and passing pointer with size.
2024-05-01 18:23:27 +01:00
translators
96d82b4363
Update: Translations from eints
...
chinese (simplified): 1 change by WenSimEHRP
greek: 52 changes by KyriakosMich
german: 3 changes by Wuzzy2
basque: 36 changes by Porrumentzio
danish: 3 changes by bscargo
2024-05-01 04:41:08 +00:00
translators
4df44fea38
Update: Translations from eints
...
swedish: 3 changes by joeax910
galician: 63 changes by pvillaverde
2024-04-30 04:40:35 +00:00
Peter Nelson
cc6e4768a9
Fix: Out-of-order window set up due to deferred window resize. ( #12592 )
...
Deferred window resize was being applied to the initial window resize event, resulting in some window state (e.g. scroll bar capacity) not being initialised when expected.
2024-04-29 17:05:35 +01:00
translators
b852a3f408
Update: Translations from eints
...
english (us): 3 changes by 2TallTyler
korean: 3 changes by telk5093
hungarian: 2 changes by meskobalazs
2024-04-29 04:40:19 +00:00
rubidium42
fd4cf699e5
Codefix 37a03b5
: the return value of maxdim should always be assigned ( #12590 )
2024-04-28 17:42:58 +00:00
Rubidium
98d37338df
Codechange: use ranged for loop instead of one with lengthof
2024-04-28 19:42:44 +02:00
Rubidium
24b6ec80a9
Codechange: use ranged for loop and vector to determine the disaster to deploy
2024-04-28 19:42:44 +02:00
Rubidium
87dbd4a833
Codechange: use ranged for loop to determine widest title
2024-04-28 19:42:44 +02:00
Rubidium
d183d8e587
Codechange: remove INVALID_STRING_ID now drop down uses spans
2024-04-28 18:47:31 +02:00
Rubidium
37a03b513f
Codechange: refactor string list dimension finding into a separate function
2024-04-28 18:47:31 +02:00
Rubidium
546a996d95
Codechange: pass options to ShowDropDownMenu using a span
2024-04-28 18:47:31 +02:00
Rubidium
ad50c4f298
Codechange: inline sorter name definitions and use proper static accessor instead of (implying) this->
2024-04-28 18:47:31 +02:00
Peter Nelson
ef55cc7979
Codechange: Remove support for links in tar files. ( #12571 )
...
This was a feature to support the original 32bpp sprite system and is no longer relevant.
2024-04-28 15:18:24 +01:00
Loïc Guilloux
99b74c1064
Fix #12584 : Improved error handling during tar scan ( #12586 )
2024-04-28 16:08:32 +02:00
Rubidium
826deaee57
Codechange: refactor CalcHeightdiff to remove some magic numbers
2024-04-28 16:05:21 +02:00
Rubidium
97a34bf06e
Codechange: use C++ containers for the colour schemes
2024-04-28 16:04:54 +02:00
translators
ee9895a970
Update: Translations from eints
...
norwegian (bokmal): 3 changes by eriksorngard
french: 3 changes by ottdfevr
portuguese: 3 changes by azulcosta
2024-04-28 04:41:11 +00:00
Peter Nelson
440a633fcc
Codechange: Remove shrink_to_fit for more lists.
...
A comment about "will actually do nothing" is out of date as that is not the case with std::vector.
These lists are always short lived (either within a command handler or in a window) so don't shrink_to_fit.
2024-04-27 19:25:34 +01:00
Peter Nelson
33aedc43a5
Codechange: Shrink GUIList vectors less often, reserve before use.
...
After sorting and filter lists for GUI, we often shirnk them to reduce size. However this has very little benefit:
1) The memory has already been allocated, so it doesn't prevent that memory being required.
2) It causes a new allocation and copy when the vector is shrunk, actually using more memory.
3) The list is in window state, so the lifetime is only while the window is open.
4) When a filter is clearer, the original size will be needed again, which will cause another allocation.
In fact it is beneficial to reserve to the known maximum in most cases, so do that instead.
2024-04-27 19:25:34 +01:00
translators
8308998388
Update: Translations from eints
...
english (au): 3 changes by krysclarke
russian: 3 changes by Ln-Wolf
finnish: 6 changes by hpiirai
dutch: 6 changes by Afoklala
portuguese (brazilian): 4 changes by pasantoro
polish: 3 changes by pAter-exe
2024-04-27 04:40:44 +00:00
Peter Nelson
bf8de188ec
Codechange: Use member initialization of GRFFilePropsBase. ( #12581 )
...
Don't blame compilers for our sloppy initialisation.
Removes memset, and lengthof.
2024-04-26 22:58:54 +01:00
Peter Nelson
72c55128d2
Codechange: Remove write-only spec_id from RoadStopSpec. ( #12582 )
...
Comment is incorrect about its value too.
2024-04-26 21:56:30 +01:00
Peter Nelson
a6d401debf
Fix: Properly test for presence of waypoint in NewGRF resolver. ( #12579 )
...
Test whether the BaseStation itself a Station or Waypoint, instead of by the station class ID assigned to it.
2024-04-26 17:47:53 +01:00
translators
a60a81f34e
Update: Translations from eints
...
swedish: 7 changes by joeax910
vietnamese: 15 changes by anmatngu
greek: 31 changes by gh658804, 2 changes by KyriakosMich
hungarian: 2 changes by egri-nagy
portuguese (brazilian): 2 changes by pasantoro
2024-04-26 04:41:25 +00:00
Rubidium
0fdabca605
Codechange: use std::span instead of custom span in TGP
2024-04-26 06:15:29 +02:00
Peter Nelson
f44d8fa2e4
Codechange: Remove CDECL from filter functions. ( #12578 )
...
These functions are not passed to qsort()...
2024-04-25 22:13:23 +01:00
Peter Nelson
0075a95278
Codefix: Make three _filter_funcs definitions distinct. ( #12573 )
...
Rename the GUIList function lists defined as the same symbol.
2024-04-25 21:01:15 +01:00
Peter Nelson
5bc9854be2
Codechange: Make sort list function lists safer. ( #12574 )
...
GUIList has a pointer only to the start of each sort/filter func list, which has the potential for UB as it is unable to validate that the selected sort or filter type is in range.
Use a std::span instead and check if the selected type is in range before using it.
2024-04-25 21:00:49 +01:00
Jonathan G Rennison
9b747a173d
Fix #12509 : Maintain timer sort invariants when changing period
2024-04-25 20:08:24 +02:00
Jonathan G Rennison
11ec156b64
Codechange: Add a priority field to TimerGameTick::TPeriod
...
Use this as the primary sort key for TimerGameTick::TPeriod,
to avoid container sort order changes on timer period saveload.
See: #12509
2024-04-25 20:08:24 +02:00
André Cheng
57f5d27427
Doc: Fix documentation of GetDefaultValueCallback
2024-04-25 20:07:54 +02:00
André Cheng
ceb0053dd9
Codechange: Correct return type of GetDefaultValueCallback
2024-04-25 20:07:54 +02:00
André Cheng
339b0ea0ff
Change: Show correct default value and unit for vehicle service interval setting
2024-04-25 20:07:54 +02:00
André Cheng
fd80a1ec66
Fix #11345 : Use correct default button value for vehicle service interval setting
2024-04-25 20:07:54 +02:00
André Cheng
a4071b78d7
Codechange: Add callback to IntSettingDesc to support more default values
2024-04-25 20:07:54 +02:00
translators
e8d25d68b9
Update: Translations from eints
...
russian: 2 changes by George-VB
2024-04-25 04:42:18 +00:00
Peter Nelson
e8249e9075
Codechange: Pass buffers for TarFile's ExtractString as span. ( #12567 )
...
ExtractString does not need to find a string terminator as StrMakeValid already does this, so simply pass the full bounds of the buffer.
Removes lengthof, array indices, and needs only the buffer as a parameter.
2024-04-24 21:34:21 +01:00
Peter Nelson
5159aa81d4
Codechange: Use iterators when enabling industries. ( #12569 )
...
Removes lengthof and array indices.
2024-04-24 21:33:49 +01:00
Peter Nelson
26bb87ebf1
Codechange: Replace SaveLoad var length arrays with switch block and sizeof. ( #12570 )
...
SlCalcConvMemLen(), SlCalcConfFileLen() and CalcOldVarLen() follow a pattern of looking up part of a value in an array.
These function returns the size of bytes of a variable type, but is not very clear. Replace with a switch block instead.
Removes lengthof, array indices, and magic numbers.
2024-04-24 21:33:29 +01:00
Peter Nelson
1dc94d0670
Codechange: Construct string_view with first+last. ( #12568 )
...
Avoids needing to calculate size when we already have last.
2024-04-24 21:29:33 +01:00
Peter Nelson
6a3f50aa72
Codechange: Replace separate EffectVehicle arrays. ( #12565 )
...
Combine 3 separate arrays into a single struct. This keeps related data together, and avoids needing to check that each array is same length.
Use of constexpr construct ensures data in the array is not default-initialised.
Removes lengthof.
2024-04-24 21:29:12 +01:00
Peter Nelson
e20f48799e
Codechange: Make StringToContentType() clearer. ( #12566 )
...
Decouples string to ContentType mapping from position within enum.
Slightly less efficient, but removes lengthof, array indices, and casting.
2024-04-24 21:26:31 +01:00
Peter Nelson
5e689ce25e
Codechange: Store cursor sprites in vector. ( #12564 )
...
Combine two separate fixed length arrays to allow simpler iteration.
No need to check that arrays are all the same length.
No need to separately store the number of sprites to draw.
Removes the upper limit of the number of sprites that can be drawn.
Removes lengthof and array indices.
2024-04-24 21:26:07 +01:00
translators
9121770582
Update: Translations from eints
...
korean: 3 changes by telk5093
catalan: 3 changes by J0anJosep
french: 7 changes by ottdfevr
polish: 7 changes by pAter-exe
2024-04-24 04:40:54 +00:00
Peter Nelson
ac6a945e26
Revert 2408a68910
: Remove work around for an MSVC bug from 17 years ago. ( #12557 )
2024-04-23 17:05:08 +01:00
Koen Bussemaker
bef11941c6
Change: Allow rail and road depot overbuilding in current orientation in order to connect to rail or road
2024-04-23 13:11:31 +02:00
translators
95de90dd4e
Update: Translations from eints
...
norwegian (bokmal): 7 changes by eriksorngard
danish: 7 changes by bscargo
portuguese (brazilian): 4 changes by pasantoro
2024-04-23 04:40:32 +00:00
Peter Nelson
3814adaba8
Codechange: Simplify GetScrolledItemFromWidget() ( #12556 )
...
Return `auto`, which allows working with const containers, and use std::next instead of std::advance.
2024-04-22 19:00:14 +00:00
translators
c82a2575d7
Update: Translations from eints
...
english (au): 3 changes by krysclarke
english (us): 3 changes by 2TallTyler
greek: 3 changes by gh658804
russian: 3 changes by Ln-Wolf
finnish: 5 changes by hpiirai
turkish: 7 changes by BeratSJ
portuguese: 3 changes by azulcosta
portuguese (brazilian): 3 changes by pasantoro
2024-04-22 04:40:33 +00:00
Rubidium
ded4d63db2
Codechange: simplify access to the current screenshot format
2024-04-21 21:07:05 +02:00
Peter Nelson
d465257dd0
Fix 952d111
: Houses and industry tiles could accept incorrect cargo. ( #12547 )
...
Default cargo label was not cleared (set to CT_INVALID) when using older 3-slot acceptance properties for house and industry tiles.
Missed in #12053 and #12062 .
2024-04-21 19:46:05 +01:00
Peter Nelson
3b01d31280
Fix 8746be8
: Reinstate current order test when removing road stop. ( #12552 )
...
#12144 replaced pool iteration with FindVehiclesWithOrder, however the test for current_order being OT_GOTO_STATION was erroneously removed.
2024-04-21 19:41:25 +01:00
translators
c073165e34
Update: Translations from eints
...
greek: 5 changes by gh658804
finnish: 2 changes by hpiirai
catalan: 4 changes by J0anJosep
2024-04-21 04:42:00 +00:00
Rubidium
aa895535e6
Fix 5008706
: improved scenario editor tooltips in map generation stages are out of place
2024-04-20 21:56:27 +02:00
Peter Nelson
959ced71bb
Codechange: Add constants for original input/output cargo counts. ( #12548 )
...
This replaces some magic 3s and 2s.
2024-04-20 20:50:48 +01:00
Peter Nelson
b4e00fa738
Codechange: Replace C-casts in pool functions. ( #12541 )
2024-04-20 16:50:13 +01:00
Loïc Guilloux
c5ef47ee09
Codechange: [Script] Use std::unique_ptr for Company::ai_instance ( #12544 )
2024-04-20 16:58:46 +02:00
Rubidium
1dfd0c19f4
Fix: allow only 255 league tables, as 255 is the invalid id sentinel
2024-04-20 16:53:04 +02:00
Rubidium
c377c4740d
Codechange: replace cpp_lengthof with safe alternatives
2024-04-20 13:36:19 +02:00
Peter Nelson
a1a01e21cf
Change: Use std::make_unique instead of passing new() ( #12539 )
2024-04-20 11:20:49 +01:00
Rubidium
fc7f184dbd
Codechange: move knowledge about 'packed' orders to the saveload code
2024-04-20 11:58:07 +02:00
Rubidium
1691b41b54
Codechange: use C++ containers for parsing the settings int lists
2024-04-20 11:57:45 +02:00
Rubidium
434c49a1f8
Codechange: remove now unused endof macro
2024-04-20 11:30:46 +02:00
Rubidium
8fe5fdf122
Codechange: use std::none_of to express clearer what the code does
2024-04-20 11:30:46 +02:00
Rubidium
8986fb0385
Codechange: replace C-style array-pointer methods with the appropriate C++ methods
2024-04-20 11:30:46 +02:00
Peter Nelson
2114888485
Change: De-template BaseSetTextfileWindow. ( #12536 )
...
The BaseSet type is not needed after the window is constructed, only the filename and name are required, which can be passed as parameters from `ShowBaseSetTextfileWindow()` instead.
This avoids compiling three instances of `BaseSetTextfileWindow`.
2024-04-20 10:30:29 +01:00
Rubidium
e441033d68
Codechange: use std::array instead of C-style array for produced/accepts cargo
2024-04-20 11:29:55 +02:00
Peter Nelson
40fa45a76a
Codechange: Emplace std::pair into vectors.
...
This creates the pair in the vector, instead of creating it then copying it in.
2024-04-20 10:25:20 +01:00
Peter Nelson
ed2db80990
Codechange: Use map.emplace() instead of map.insert(std::pair).
...
This avoids a copy of the pair into the map.
2024-04-20 10:25:20 +01:00
Peter Nelson
57d7359b1a
Codechange: Remove old group liveries savegame conversion. ( #12537 )
...
Conversion to set default group livery is in the wrong place (not in `AfterLoadGame()`), however it is not necessary any more as `AfterLoadGame()` always calls the function `UpdateCompanyLiveries()` which will do the same thing.
2024-04-20 10:25:04 +01:00
Peter Nelson
699c7e4c9d
Fix 3de8853e29
: Industries accept/produce no cargo for pre-SLV_78 saves. ( #12508 )
...
Industry accepted/produced was trimmed too early for original and pre-SLV_78 saves, as cargo type was not stored per slot so all slots look invalid to the trim function.
2024-04-20 10:24:35 +01:00
Peter Nelson
1c31e4b68c
Change: Disallow using Action A to load sprites above the baseset unless reserved. ( #12435 )
...
Using Action A above the baseset is error prone as the sprites are not fixed and can be moved around.
Any NewGRF doing so is likely to break in the future, so force it to break instead.
2024-04-20 10:23:36 +01:00
Peter Nelson
e028c15555
Codechange: Use std::accumulate to get infrastructure total rail/road pieces. ( #12442 )
2024-04-20 10:22:19 +01:00
translators
08140fdca3
Update: Translations from eints
...
dutch: 4 changes by Afoklala
2024-04-20 04:41:21 +00:00
Peter Nelson
6cbb8d02cf
Change: Use aspect ratio for shared order list button.
2024-04-19 22:11:16 +01:00
Peter Nelson
5df5e3f45c
Change: Use aspect ratio for file home button.
2024-04-19 22:11:16 +01:00
Peter Nelson
2a833a8968
Change: Use aspect ratio for rail station platforms/tracks buttons.
2024-04-19 22:11:16 +01:00
Peter Nelson
7e049aa2b1
Change: Use aspect ratio for common left/right buttons.
2024-04-19 22:11:16 +01:00
Peter Nelson
16eb17418b
Change: Use aspect ratios for some common widgets.
2024-04-19 22:11:16 +01:00
Peter Nelson
61c6ebaacc
Change: Automatically set aspect ratio of common window decorations.
2024-04-19 22:11:16 +01:00
Peter Nelson
d43ff8dc49
Change: Ability to set aspect ratio of a widget.
...
This allows setting the shape of a widget without dealing with absolute pixel sizes.
2024-04-19 22:11:16 +01:00
Peter Nelson
f267b37a33
Codechange: Use std::initializer_list/array in framerate window. ( #12441 )
2024-04-19 22:07:56 +01:00
Peter Nelson
a28ab8cac2
Codechange: Replace C-style casts to size_t with static_cast. ( #12455 )
...
* Codechange: Replace C-style casts to size_t with static_cast.
This touches only simple value-type casts.
* Codechange: Replace static_cast<size_t>(-1) with SIZE_MAX
Co-authored-by: Rubidium <rubidium@openttd.org>
2024-04-19 20:34:36 +01:00
Peter Nelson
6ee31a2a22
Codechange: Use string_view in IniItem/IniGroup/IniFile. ( #12535 )
...
This avoids making extra copies of strings.
2024-04-19 13:54:22 +01:00
Peter Nelson
3b80a8255f
Fix #12433 : Width of unit number display was too narrow. ( #12534 )
...
Digit width was counted, but ignored the thousands separator.
2024-04-19 08:19:31 +01:00
translators
7848e80f71
Update: Translations from eints
...
english (us): 4 changes by 2TallTyler
korean: 11 changes by telk5093
2024-04-19 04:40:34 +00:00
dP
0d1fc47edb
Cleanup: Remove redundant break statement ( #12527 )
2024-04-18 20:54:20 -04:00
Peter Nelson
774f811217
Codechange: Use std::optional for town parent scope resolver. ( #12530 )
...
When resolving NewGRF, the parent town_scope is lazily initialised as it does not always need to be used.
Replace the manually managed pointer with std::optional to simplify. Using std::optional avoids extra memory allocation.
2024-04-18 22:14:16 +01:00
Peter Nelson
3b75d8bbf8
Fix: Use modern comparisons instead of memcmp in cache check.
...
This uses C++20 default operator<=> to provide comparisons of some objects.
This works properly with caches that containers.
2024-04-18 22:13:55 +01:00
Peter Nelson
21d11ee361
Codechange: Move cache check function to own file.
2024-04-18 22:13:55 +01:00
Peter Nelson
db56499c01
Codechange: Use std::array for company infrastructure arrays.
2024-04-18 22:13:55 +01:00
Peter Nelson
fe7bd3a266
Codechange: Use std::array for cached town zone radius.
2024-04-18 22:13:55 +01:00
Peter Nelson
d57bf84196
Codechange: Remove some unnecessary c_str() when passing std::strings. ( #12532 )
...
Functions have been updated from `char *` to `std::string` since without removing `c_str()`.
2024-04-18 22:13:13 +01:00
Peter Nelson
45886e50b2
Codechange: Unify where rail station tile flags are set. ( #12531 )
...
This avoids repeating the logic in three places.
2024-04-18 18:54:10 +01:00
Peter Nelson
4170c9923a
Fix: Inconsistent space between console history and current line. ( #12528 )
2024-04-18 17:45:41 +01:00
Tyler Trahan
78b83190cc
Fix: Mark vehicle status bars dirty when a vehicle leaves unbunching depot ( #12516 )
2024-04-18 12:45:00 -04:00
Patric Stout
715f8c0218
Codefix: cast to "CommandCallback *" in a way cast-function-type-mismatch doesn't mind ( #12529 )
2024-04-18 16:41:36 +00:00
translators
c355e98c58
Update: Translations from eints
...
english (au): 4 changes by krysclarke
russian: 4 changes by Ln-Wolf
finnish: 7 changes by hpiirai
portuguese: 4 changes by azulcosta
portuguese (brazilian): 5 changes by pasantoro
polish: 4 changes by pAter-exe
2024-04-18 04:40:27 +00:00
Peter Nelson
63ce81570c
Remove: Custom opendir implementation for Windows no longer needed.
...
std::filesystem::directory_iterator is now used instead.
2024-04-18 01:41:14 +01:00
Peter Nelson
42523379d9
Codechange: Use directory_iterator in ScanPath.
...
Replaces use of custom ttd_opendir.
2024-04-18 01:41:14 +01:00
Peter Nelson
d7c547d0db
Codechange: Use directory_iterator to list directories in file list windows.
...
This replaces use of custom ttd_opendir. Files are listed separately using ScanPath as that handles downloaded content.
2024-04-18 01:41:14 +01:00
Peter Nelson
5a523cf212
Codechange: Simplify FioCreateDirectory.
...
`std::filesystem` provides `create_directories()` as a cross-platform way to create a directory tree.
2024-04-18 01:41:14 +01:00
Peter Nelson
6458980413
Change: Draw group hierarchy tree lines. ( #12522 )
2024-04-17 21:55:19 +01:00
Jonathan G Rennison
83d99ec11d
Fix #12506 : Update station/industry nearby lists in BuildOilRig ( #12511 )
2024-04-17 22:38:11 +02:00
Patric Stout
f7bd080015
Codechange: improve desync documentation ( #12521 )
2024-04-17 20:36:08 +00:00
Patric Stout
07b162ffc4
Codechange: skip all commands of the past during desync replay ( #12520 )
2024-04-17 20:05:45 +00:00
Patric Stout
a0636d8200
Codechange: use infinite-fast-forward when rerunning command-log ( #12519 )
2024-04-17 20:01:58 +00:00
Patric Stout
a09749f6a6
Codefix: don't send desync=0 log messages to commands.log ( #12517 )
...
They are only used during replay, and you want to see those in
the console; not in the log.
2024-04-17 19:51:36 +00:00
Patric Stout
1005c86c62
Codechange: record cache warnings with a "warning" prefix ( #12518 )
2024-04-17 19:49:55 +00:00
Tyler Trahan
a02da5476e
Fix: Don't show train waiting for unbunching as waiting for free path ( #12515 )
2024-04-17 15:04:16 -04:00
Tyler Trahan
5878d09ef2
Fix: Smooth outliers in unbunching round trip calculations ( #12513 )
2024-04-17 15:03:53 -04:00
Tyler Trahan
824687d1f0
Codefix: Don't mix signed and unsigned ints in unbunching calculations ( #12514 )
2024-04-17 14:42:49 -04:00
Jonathan G Rennison
0b9029b69c
Fix: Station/industry nearby list checks in CheckCaches
2024-04-17 20:33:49 +02:00
Peter Nelson
ef8eb66a2b
Fix c38df2d58
: Use VehicleID instead of pointer in map of vehicles to replace. ( #12512 )
...
This affects the sort order, VehicleID is deterministic, Vehicle * is not.
2024-04-17 18:54:50 +01:00
Paco Esteban
b477a8458c
Codechange: Use arc4random_buf on random_func.cpp for OpenBSD
2024-04-17 19:29:26 +02:00
translators
018326321c
Update: Translations from eints
...
english (us): 5 changes by 2TallTyler
latvian: 1 change by lexuslatvia
2024-04-17 04:40:56 +00:00
Koen Bussemaker
257d312a58
Fix #12228 , Fix #12231 : CheckShipReverse only restricts path when it has to
2024-04-16 20:21:18 +02:00
Rubidium
b2218e75d4
Codefix: missing space between close parenthesis and open curly brace
2024-04-16 19:28:09 +02:00
Peter Nelson
48eb9b8bc9
Add: Check that towns can build roads before generating map. ( #12503 )
2024-04-16 15:25:07 +00:00
translators
8e2ccddd77
Update: Translations from eints
...
portuguese (brazilian): 2 changes by pasantoro
2024-04-16 04:40:57 +00:00
Peter Nelson
3ad143c43a
Codechange: Use x = y
instead of x{y}
for value-type member initialisation. ( #12501 )
...
This is easier to read and less likely to look like an array definition.
2024-04-15 23:07:36 +01:00
ladysadie
727392e0b3
Codechange: Remove per font AA settings. ( #12413 )
...
OpenTTD will use the global AA font setting for all fonts from now on.
2024-04-15 21:44:33 +02:00
Peter Nelson
a1b03ee69e
Codechange: Replace platform-specific calls with std::filesystem::last_write_time. ( #12487 )
2024-04-15 18:10:19 +00:00
dP
f5a50a874f
Codechange: Update doxygen comment to reflect removed parameter ( #12499 )
2024-04-15 12:40:50 +02:00
translators
cd108fd9e4
Update: Translations from eints
...
greek: 10 changes by gh658804
2024-04-15 04:44:34 +00:00
Peter Nelson
839f486074
Codechange: Use directory_iterator to find language files. ( #12495 )
...
This avoids using custom ttd_opendir, along with C-style string comparisons against file names.
2024-04-14 23:57:26 +01:00
Peter Nelson
4eaeccdaeb
Codechange: Introduce FioRemove() to remove files. ( #12491 )
...
New function FioRemove() handles OTTD2FS conversion, and uses std::filesystem::remove instead of unlink, all in one location.
2024-04-14 23:43:50 +01:00
translators
29e932e087
Update: Translations from eints
...
ukrainian: 13 changes by imlystyi
lithuanian: 19 changes by dziugas1959
french: 7 changes by ottdfevr
portuguese (brazilian): 14 changes by pasantoro
2024-04-14 05:02:47 +00:00
translators
090c3b3abf
Update: Translations from eints
...
danish: 5 changes by bscargo
dutch: 5 changes by Afoklala
portuguese (brazilian): 7 changes by pasantoro
2024-04-13 04:40:27 +00:00
Peter Nelson
e83e2df023
Fix: Build industry window did not take width of count into account. ( #12476 )
2024-04-12 23:07:31 +01:00
Peter Nelson
12125bad82
Fix 3de8853e
: Industry cargo types callback no longer functioned due to container change. ( #12489 )
...
Use defined INDUSTRY_NUM_INPUTS/INDUSTRY_NUM_OUTPUTS values instead of container size, which is now empty at this point.
2024-04-12 23:07:07 +01:00
Peter Nelson
c1520cf682
Fix 25aeb1c
: Driver parameter documentation was not updated. ( #12486 )
2024-04-12 17:01:40 +00:00
Peter Nelson
ca73f03334
Codechange: Use std::filesystem::remove/rename in settingsgen. ( #12483 )
2024-04-12 14:32:35 +01:00
Peter Nelson
44b8210037
Codechange: settingsgen's CopyFile actually appends. ( #12485 )
2024-04-12 13:01:16 +01:00
Peter Nelson
003906becb
Codechange: std::filesystem::rename does not need remove first. ( #12484 )
2024-04-12 12:51:42 +01:00
translators
bb9b8b90c7
Update: Translations from eints
...
swedish: 6 changes by sereneavatar
portuguese (brazilian): 11 changes by pasantoro
2024-04-12 04:41:30 +00:00
Peter Nelson
9915c1f032
Fix #12477 : Use std::filesystem::rename instead of Windows Shell API call. ( #12478 )
2024-04-11 21:35:40 +01:00
Rubidium
eda10abc8c
Codechange: pass command line arguments as std::span to openttd_main
2024-04-11 21:57:53 +02:00
Peter Nelson
3316b27496
Fix: Signature validation did not close its file. ( #12479 )
2024-04-11 13:37:29 +00:00
Rubidium
afd7878de0
Codechange: internally use a span of arguments for GetOptData
2024-04-11 12:00:36 +02:00
Rubidium
5592b4409b
Codechange: use ranged for loop and separate function instead of goto
2024-04-11 12:00:36 +02:00
Rubidium
e8a56db21d
Codechange: use designated initializers for OptionData and pass as span
2024-04-11 12:00:36 +02:00
Rubidium
4f2412a272
Codechange: range based for loops instead of C-style for loops
2024-04-11 07:05:04 +02:00
Rubidium
2587a21400
Codechange: use zero-initialization instead of C-style loop
2024-04-11 07:05:04 +02:00
Rubidium
ff27b9e76a
Codechange: use std::any_of instead of custom loop
2024-04-11 07:05:04 +02:00
translators
6cade18053
Update: Translations from eints
...
portuguese (brazilian): 1 change by pasantoro
polish: 1 change by pAter-exe
2024-04-11 04:41:57 +00:00
rubidium42
442daf58da
Codechange: replace lengthof with std::size in Windows specific code
2024-04-10 23:17:13 +02:00
Peter Nelson
6bc4a62c27
Codechange: Pass std::string_view from blitters instead of char *.
2024-04-10 22:02:04 +01:00
Peter Nelson
332cbca36e
Codechange: Pass std::string_view from drivers instead of char *.
2024-04-10 22:02:04 +01:00
Peter Nelson
a42aa1a086
Codechange: Remove cargo_suffix C-array from GetIndustryString. ( #12472 )
...
The information is pushed onto a vector, so string ownership can be moved there instead of using a pointer into to the CargoSuffix array.
2024-04-10 21:32:21 +01:00
Peter Nelson
144bcbbaf1
Fix: Use clear() to clear std::string. ( #12471 )
2024-04-10 17:27:30 +00:00
Rubidium
21b640b5ff
Codechange: simplify president name generation
2024-04-10 18:57:53 +02:00
translators
f0f97c698b
Update: Translations from eints
...
norwegian (bokmal): 11 changes by eriksorngard
russian: 5 changes by Ln-Wolf
spanish: 5 changes by MontyMontana
portuguese (brazilian): 7 changes by pasantoro
2024-04-10 04:40:30 +00:00
Peter Nelson
1773c5b810
Change: Increase object/station/roadstop class limit. ( #12094 )
...
The class limit is arbitrary and not stored in game state.
This change prevents all entities in classes after the 255th class from being dumped into the first class.
2024-04-09 23:16:20 +01:00
Rubidium
df8eeb1b10
Codechange: use C++ algorithms to determine the SaveLoadFormat
2024-04-09 23:36:39 +02:00
Peter Nelson
77f27e0804
Change: Expose NewGRF classes and specs as spans and simplify iteration.
...
This replaces some index-based loops with range loops.
2024-04-09 21:46:59 +01:00
Peter Nelson
052f421327
Change: Use vector/iterators/algorithms instead of C-array/loops for NewGRF classes.
2024-04-09 21:46:59 +01:00
Peter Nelson
34758d0921
Change: Allow string mapping by function instead of pointer.
...
This allows mapping of strings to objects that may be moved between loading stages.
2024-04-09 21:46:59 +01:00
Peter Nelson
90ca3515da
Fix #12459 , f6a88e4
: Crashes when deleting news messages. ( #12460 )
...
The updated logic in f6a88e4
for deleting news messages did things in the wrong order.
2024-04-09 21:46:29 +01:00
Peter Nelson
2976a46d06
Fix 54be756
: Terminating NUL byte was not skipped in ReadString(). ( #12462 )
2024-04-09 15:15:09 +01:00
Rubidium
883d3e7a9f
Codechange: use std::span instead of pointer + length
2024-04-09 10:11:50 +02:00
Peter Nelson
54be756aae
Codechange: Pass NewGRF strings as std::string_view instead of char *. ( #12461 )
2024-04-09 08:40:27 +01:00
Peter Nelson
dc7c2bb30d
Fix: Draw continuation lines for engine variant hierarchy tree. ( #12434 )
2024-04-09 08:35:12 +01:00
Peter Nelson
de4e00c93f
Codechange: Pass by reference to UpdateWidgetSize. ( #12457 )
...
These parameters are always provided and not optional.
2024-04-09 08:34:45 +01:00
translators
b5ad28022d
Update: Translations from eints
...
english (au): 5 changes by krysclarke
chinese (simplified): 1 change by WenSimEHRP
catalan: 7 changes by J0anJosep
portuguese (brazilian): 27 changes by pasantoro
2024-04-09 04:40:33 +00:00
Peter Nelson
1b127628cb
Codechange: Use dynamic_cast with FindWindowById. ( #12458 )
...
Missed from 74e09ab
.
2024-04-08 22:32:57 +01:00
Peter Nelson
7e28605830
Fix: Use reinterpret_cast instead of C-style cast to align pointers.
2024-04-08 18:21:42 +01:00
Peter Nelson
4daf95b878
Fix: Use static_cast instead of C-cast to avoid hidden errors.
2024-04-08 18:21:42 +01:00
Peter Nelson
cdfffb551c
Fix: sym->sym accidentally changed to sym prevented keys working with SDL.
2024-04-08 18:21:42 +01:00
Peter Nelson
74e09abf76
Codechange: Use dynamic_cast instead of C-cast after FindWindowById. ( #12448 )
...
dynamic_cast was used in most places, but not all.
2024-04-08 13:26:19 +01:00
Rubidium
4e6d4fcf32
Codechange: replace for loops with endof with range-based for loops
2024-04-08 07:00:55 +02:00
translators
095bdf32fe
Update: Translations from eints
...
greek: 5 changes by gh658804
finnish: 7 changes by hpiirai
ukrainian: 56 changes by Quantom2, 14 changes by imlystyi
latvian: 14 changes by lexuslatvia
portuguese: 14 changes by azulcosta
portuguese (brazilian): 10 changes by pasantoro
polish: 5 changes by pAter-exe
2024-04-08 04:41:24 +00:00
Rubidium
62f5c595f3
Codechange: use range-based for loops and let count be correct count
2024-04-07 23:08:33 +02:00
rubidium42
4718971ccc
Codechange: use std::size instead of lengthof for town names
2024-04-07 23:08:07 +02:00
Peter Nelson
995fca58a2
Codechange: Use begin/end instead of endof for some industry arrays. ( #12447 )
2024-04-07 22:01:46 +01:00
Rubidium
d7fa614a9d
Codechange: use range-based for loop for debug levels and fix global variable naming
2024-04-07 22:17:57 +02:00
Rubidium
1fcf1a136d
Codechange: use single function returning std::span over two functions that return size and begin
2024-04-07 22:02:16 +02:00
translators
0f6bf90731
Update: Translations from eints
2024-04-07 04:41:19 +00:00
Peter Nelson
eb094a953c
Codefix: Social Plugins widget parts were not constexpr. ( #12443 )
...
Widget lists were made constexpr except these.
2024-04-06 22:32:26 +00:00
Peter Nelson
34ba969c74
Change: Display more useful information in sprite aligner than sprite ID. ( #12439 )
...
Sprite IDs are not useful information given they change don't refer to anything outside the loaded game.
Instead, include the filename and nfo line at minimum, and include action A or action 5 sprite replacement information if applicable.
2024-04-06 21:16:02 +01:00
Peter Nelson
fbdf26800b
Codechange: Use std::initializer_list and range-for for credits window. ( #12431 )
...
Replaces C-style array, indexed looping, and char * strings.
2024-04-06 19:30:23 +01:00
Peter Nelson
a4c2f0778a
Codechange: Use range-for to iterate keycode-to-name lookups. ( #12429 )
...
Replaces C-style looping.
2024-04-06 19:30:01 +01:00
Peter Nelson
b905209421
Fix: Viewport signs assume small font is smaller than normal font. ( #12422 )
...
If the small font is set to a larger size than the normal font for some reason, viewport signs would be drawn incorrect as the area marked dirty only considered the normal size font.
2024-04-06 19:29:41 +01:00
Peter Nelson
830c9e2de8
Codechange: Simplify iteration of framerate performance elements.
2024-04-06 19:28:51 +01:00
Rubidium
97bea563d7
Codechange: let lengthof fail when anything that isn't a C-style array is passed
2024-04-06 07:21:31 +02:00
Rubidium
c544a2be0a
Fix: do not use lengthof() for non C-style arrays
2024-04-06 07:21:31 +02:00
translators
eaafc57de6
Update: Translations from eints
...
swedish: 6 changes by joeax910
norwegian (bokmal): 2 changes by eriksorngard
chinese (simplified): 2 changes by WenSimEHRP
dutch: 2 changes by Afoklala
2024-04-06 04:41:24 +00:00
Peter Nelson
8e881471c1
Codechange: Pass replacement blitter name as string_view instead char *.
2024-04-05 23:23:33 +01:00
Peter Nelson
6771dbe62b
Codechange: Use range-for to find replacement blitter.
2024-04-05 23:23:33 +01:00
Peter Nelson
a866166673
Codechange: Use initializer_list and range-for for OpenTTD title. ( #12430 )
...
Replaces C-style array and looping.
2024-04-05 21:52:50 +01:00
Peter Nelson
2cc700d606
Codechange: Replace colour_dropdown array with StringID arithmetic. ( #12426 )
...
This assumes that the string colours are in order, but that is already assumed elsewhere.
Removes old C-style array access.
2024-04-05 21:51:36 +01:00
Peter Nelson
83da886093
Fix: Aircraft crash counter was too low to reach ground. ( #12425 )
...
Aircraft can float above the ground when crashed as the counter limit to reach the ground is too low.
Instead reset the counter until the aircraft reaches the ground, then continue the timer.
2024-04-05 19:16:22 +01:00
Peter Nelson
e8c78df39e
Fix #12233 : Mini order list overlaps vehicle group name. ( #12423 )
...
Move mini order list down one line to make room.
2024-04-05 08:18:12 +01:00
Peter Nelson
d11622b9a0
Fix #12114 : Viewport coords of crashed aircraft not updated when falling. ( #12424 )
...
This results in the aircraft glitching as the wrong viewport area is drawn.
2024-04-05 08:17:42 +01:00
translators
df3e5ade11
Update: Translations from eints
...
korean: 2 changes by telk5093
portuguese (brazilian): 1 change by pasantoro
2024-04-05 04:43:25 +00:00
Peter Nelson
7572cfd103
Codechange: Redefine ZOOM_LVL so that ZOOM_LVL_NORMAL is 1x zoom.
...
This matches expectations of what normal zoom means.
2024-04-04 22:27:03 +01:00
Peter Nelson
9854553e10
Codechange: ZOOM_LVL_SHIFT/BASE are not actually ZOOM_LVLs.
...
Rename to ZOOM_BASE_SHIFT and ZOOM_BASE respectively, and derive from ZOOM_LVL instead of numeric value.
2024-04-04 22:27:03 +01:00
Peter Nelson
3c94e81665
Codechange: Use ZOOM_LVL_MIN to refer to first zoom level.
...
Many uses of ZOOM_LVL_NORMAL actually just want the first zoom level slot, so use ZOOM_LVL_MIN to make this clearer.
2024-04-04 22:27:03 +01:00
Peter Nelson
7c322ebcf1
Codechange: Define a ZOOM_LVL for minimum text effect visibility.
2024-04-04 22:27:03 +01:00
Peter Nelson
197fb00d31
Fix #12395 : Ensure president name widget is tall enough. ( #12419 )
2024-04-04 17:56:16 +01:00
Peter Nelson
338def1b06
Fix: Segfault when using -q without providing a . character. ( #12418 )
...
Use std::filesystem::path to find extension instead of strrchr.
2024-04-04 14:39:15 +01:00
Peter Nelson
f6a88e40a4
Codechange: Use std::list for News Items. ( #12338 )
2024-04-04 07:53:14 +01:00
translators
08cf106fc6
Update: Translations from eints
...
english (us): 2 changes by 2TallTyler
finnish: 2 changes by hpiirai
ukrainian: 2 changes by Quantom2
danish: 2 changes by beruic
portuguese (brazilian): 22 changes by pasantoro
2024-04-04 04:41:30 +00:00
Loïc Guilloux
243c6bead3
Fix #12415 , 9c49a61
, df400ef
: Aircraft::tile is valid only for front vehicle ( #12416 )
2024-04-03 23:16:36 +02:00
translators
931aa39018
Update: Translations from eints
...
english (au): 2 changes by krysclarke
swedish: 2 changes by joeax910
greek: 2 changes by gh658804
russian: 3 changes by its5Q
catalan: 2 changes by J0anJosep
spanish: 2 changes by MontyMontana
portuguese: 2 changes by azulcosta
portuguese (brazilian): 27 changes by pasantoro
polish: 2 changes by pAter-exe
2024-04-03 04:40:31 +00:00
Peter Nelson
9750826590
Fix a29766d
: Wrong scrolling dropdown list position with RTL. ( #12412 )
2024-04-02 13:29:15 +01:00
translators
72b5c6a591
Update: Translations from eints
...
vietnamese: 1 change by KhoiCanDev
greek: 83 changes by gh658804
german: 3 changes by Wuzzy2
ukrainian: 54 changes by Quantom2
spanish: 4 changes by MontyMontana
portuguese (brazilian): 2 changes by pasantoro
2024-04-02 04:41:36 +00:00
Peter Nelson
2047c27445
Codechange: Move drop down list item definitions to separate header.
...
This reduces the scope of the definitions which are no longer needed to create the common lists.
2024-04-01 22:33:16 +01:00
Peter Nelson
56cac21086
Codechange: Use functions to create common drop down list items.
2024-04-01 22:33:16 +01:00
Loïc Guilloux
11aa3694fa
Fix: [Win32] Force font mapper to only use TrueType fonts ( #12406 )
2024-04-01 22:59:13 +02:00
Peter Nelson
3de8853e29
Codechange: Store accepted and produced cargo in vector instead of array.
...
Most industries do not use the full 16 slots, so this can save a little memory and iteration time.
2024-04-01 21:35:20 +01:00
Peter Nelson
00e0021e3a
Codechange: Don't assume accepted/produced slot exists.
2024-04-01 21:35:20 +01:00
Peter Nelson
295508fc53
Codechange: Avoid lengthof() on std::array.
2024-04-01 21:35:20 +01:00
Peter Nelson
f79ec7955a
Codechange: Explicitly reset old industry data before loading games.
2024-04-01 21:35:20 +01:00
Peter Nelson
bd2a92331b
Codechange: Use inline and std::array for old industry structures.
...
This avoids separate declaration/definition, and less C-style arrays.
2024-04-01 21:35:20 +01:00
Peter Nelson
f6b38e8e06
Codechange: Remove optional MakeCargo() parameters that are never changed.
...
Default values are always used, so don't need to be parameters.
2024-04-01 18:46:29 +01:00
Peter Nelson
e4fc8ef595
Codechange: Use std::span for industry cargo window instead of pointer + length.
2024-04-01 18:46:29 +01:00
merni-ns
6f36f3d714
Fix #11055 : Make saveload failure error messages consistent with others ( #12247 )
...
The save/load error messages were combined using string parameters, rather than using the built-in functionality of error dialogs.
2024-04-01 17:57:03 +01:00
merni-ns
92a171c3e0
Doc: Improve the output and documentation of the font command. ( #12392 )
...
Now that the default font =/= sprite font, there is a different way to invoke the sprite font, and default size applies to default (not sprite).
Also, interface scaling now affects the font size.
2024-04-01 17:55:44 +01:00
Peter Nelson
d68e5159e1
Feature: Allow base sounds set to be changed mid-game. ( #12399 )
2024-04-01 17:54:42 +01:00
translators
3d2a8fb60c
Update: Translations from eints
...
welsh: 5 changes by Ansbaradigeidfran
ukrainian: 11 changes by StepanIvasyn
catalan: 1 change by J0anJosep
portuguese (brazilian): 69 changes by pasantoro
2024-04-01 04:40:15 +00:00
Peter Nelson
d683ec0183
Codechange: Move dropdown and slider out of widgets directory. ( #12403 )
...
Also shuffle headers to place widget includes near end.
This leaves the widgets directory solely for defining Widget IDs.
2024-03-31 19:37:16 +01:00
Rubidium
d5e28a904d
Fix fb9d4af
: use different nonces for key exchange and stream encryption
2024-03-31 15:14:16 +02:00
translators
9954187680
Update: Translations from eints
...
greek: 172 changes by gh658804
ukrainian: 18 changes by StepanIvasyn
portuguese (brazilian): 9 changes by pasantoro
2024-03-31 04:41:01 +00:00
Patric Stout
77f02faf15
Codefix 977aba73be
: also update comment about removal of is_random ( #12400 )
2024-03-30 13:29:51 +01:00
translators
340c2802da
Update: Translations from eints
...
ukrainian: 14 changes by StepanIvasyn
dutch: 3 changes by Afoklala
portuguese (brazilian): 34 changes by pasantoro
2024-03-30 04:40:28 +00:00
Patric Stout
c0308acb03
Fix: "-q" displays NewGRF IDs in the wrong byte-order ( #12397 )
2024-03-29 23:26:24 +01:00
Peter Nelson
8d312b305b
Codechange: Replace currency macros with functions. ( #12396 )
2024-03-29 14:49:48 +00:00
translators
e21c12afeb
Update: Translations from eints
...
finnish: 39 changes by hpiirai
ukrainian: 23 changes by StepanIvasyn
danish: 1 change by bscargo
french: 1 change by Lishouuu
portuguese: 1 change by azulcosta
portuguese (brazilian): 100 changes by pasantoro
2024-03-29 04:41:18 +00:00
Peter Nelson
e16b982b6a
Codechange: Use iteration when dealing with all HouseSpecs.
2024-03-28 23:23:00 +01:00
Peter Nelson
3e83dcedfd
Codechange: Allocate houses dynamically instead of from a fixed array.
...
This uses vectors for HouseSpecs and global/town building counts.
2024-03-28 23:23:00 +01:00
Peter Nelson
8746be8bf2
Codechange: Use FindVehiclesWithOrder when removing a road stop. ( #12144 )
2024-03-28 23:22:37 +01:00
frosch
907cb4fc53
Fix: [Script] ScriptSubsidy::GetExpireDate should return an economy-date ( #12372 )
2024-03-28 23:21:20 +01:00
Michael Lutz
8fb7d74dfe
Fix eabb9db
: Drag building of road stops should not allow mixing z levels.
2024-03-28 22:28:48 +01:00
Michael Lutz
69acc132ca
Fix #12387 , eabb9db
: [NewGRF] Wrong tile offset passed to rail station CB 149 (slope check)
2024-03-28 22:28:48 +01:00
translators
ca53e134be
Update: Translations from eints
...
swedish: 14 changes by sereneavatar
finnish: 2 changes by hpiirai
ukrainian: 18 changes by StepanIvasyn
latvian: 4 changes by lexuslatvia
portuguese (brazilian): 13 changes by pasantoro
2024-03-28 04:40:56 +00:00
Jonathan G Rennison
433484cda3
Fix #12388 : Vehicle::CopyVehicleConfigAndStatistics not releasing unit number ( #12389 )
2024-03-27 21:20:27 +01:00
translators
b8b01818ca
Update: Translations from eints
...
english (au): 1 change by krysclarke
norwegian (bokmal): 1 change by eriksorngard
spanish (mexican): 32 changes by rgonzalez-py
english (us): 3 changes by 2TallTyler
russian: 3 changes by Ln-Wolf
ukrainian: 18 changes by StepanIvasyn
lithuanian: 6 changes by dziugas1959
portuguese (brazilian): 11 changes by pasantoro
2024-03-27 04:43:49 +00:00
translators
575336ef43
Update: Translations from eints
...
swedish: 20 changes by joeax910
greek: 182 changes by gh658804
ukrainian: 11 changes by StepanIvasyn
slovak: 45 changes by puco
lithuanian: 14 changes by dziugas1959
portuguese (brazilian): 11 changes by pasantoro
2024-03-26 04:40:35 +00:00
Rubidium
8e12bd35ae
Fix: server shutdown and newgame packets should be stable
...
The server sends shutdown and newgame (reboot) packets to any connected client.
This can be useful, so you can tell clients that are trying to join that the
server is restarting. However, that means that packets can be sent before a
version check has been done.
So, these packets should be in the stable packet range instead of the one that
is unstable and guarded by a version check.
2024-03-25 22:50:05 +01:00
Peter Nelson
4751179dc5
Codefix: Remove unused class member and extraneous spaces. ( #12378 )
2024-03-25 21:35:31 +00:00
Rubidium
9aa6669266
Fix: inconsistent check for client authorized status
2024-03-25 22:32:23 +01:00
Rubidium
84bbe235e4
Fix: do not send chat to clients that have not authorized yet
2024-03-25 22:32:23 +01:00
Tyler Trahan
f71ada4f30
Fix #12268 : Capitalize "Wait to unbunch" order string ( #12375 )
2024-03-25 13:46:03 -04:00
SamuXarick
f845b4bbc3
Fix: Changing NPF max search nodes while in-game had no effect ( #12194 )
2024-03-25 17:28:16 +01:00
translators
40a75e0b8d
Update: Translations from eints
...
swedish: 19 changes by joeax910
norwegian (bokmal): 2 changes by eriksorngard
ukrainian: 6 changes by StepanIvasyn
french: 3 changes by ottdfevr
portuguese (brazilian): 23 changes by pasantoro
polish: 1 change by pAter-exe
2024-03-25 04:40:35 +00:00