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.
5 months ago
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.
5 months ago
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
5 months ago
Peter Nelson
ac6a945e26
Revert 2408a68910: Remove work around for an MSVC bug from 17 years ago. ( #12557 )
6 months ago
Koen Bussemaker
bef11941c6
Change: Allow rail and road depot overbuilding in current orientation in order to connect to rail or road
6 months ago
translators
95de90dd4e
Update: Translations from eints
...
norwegian (bokmal): 7 changes by eriksorngard
danish: 7 changes by bscargo
portuguese (brazilian): 4 changes by pasantoro
6 months ago
Peter Nelson
3814adaba8
Codechange: Simplify GetScrolledItemFromWidget() ( #12556 )
...
Return `auto`, which allows working with const containers, and use std::next instead of std::advance.
6 months ago
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
6 months ago
Rubidium
ded4d63db2
Codechange: simplify access to the current screenshot format
6 months ago
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 .
6 months ago
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.
6 months ago
translators
c073165e34
Update: Translations from eints
...
greek: 5 changes by gh658804
finnish: 2 changes by hpiirai
catalan: 4 changes by J0anJosep
6 months ago
Rubidium
aa895535e6
Fix 5008706: improved scenario editor tooltips in map generation stages are out of place
6 months ago
Peter Nelson
959ced71bb
Codechange: Add constants for original input/output cargo counts. ( #12548 )
...
This replaces some magic 3s and 2s.
6 months ago
Peter Nelson
b4e00fa738
Codechange: Replace C-casts in pool functions. ( #12541 )
6 months ago
Loïc Guilloux
c5ef47ee09
Codechange: [Script] Use std::unique_ptr for Company::ai_instance ( #12544 )
6 months ago
Rubidium
1dfd0c19f4
Fix: allow only 255 league tables, as 255 is the invalid id sentinel
6 months ago
Rubidium
c377c4740d
Codechange: replace cpp_lengthof with safe alternatives
6 months ago
Peter Nelson
a1a01e21cf
Change: Use std::make_unique instead of passing new() ( #12539 )
6 months ago
Rubidium
fc7f184dbd
Codechange: move knowledge about 'packed' orders to the saveload code
6 months ago
Rubidium
1691b41b54
Codechange: use C++ containers for parsing the settings int lists
6 months ago
Rubidium
434c49a1f8
Codechange: remove now unused endof macro
6 months ago
Rubidium
8fe5fdf122
Codechange: use std::none_of to express clearer what the code does
6 months ago
Rubidium
8986fb0385
Codechange: replace C-style array-pointer methods with the appropriate C++ methods
6 months ago
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`.
6 months ago
Rubidium
e441033d68
Codechange: use std::array instead of C-style array for produced/accepts cargo
6 months ago
Peter Nelson
40fa45a76a
Codechange: Emplace std::pair into vectors.
...
This creates the pair in the vector, instead of creating it then copying it in.
6 months ago
Peter Nelson
ed2db80990
Codechange: Use map.emplace() instead of map.insert(std::pair).
...
This avoids a copy of the pair into the map.
6 months ago
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.
6 months ago
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.
6 months ago
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.
6 months ago
Peter Nelson
e028c15555
Codechange: Use std::accumulate to get infrastructure total rail/road pieces. ( #12442 )
6 months ago
translators
08140fdca3
Update: Translations from eints
...
dutch: 4 changes by Afoklala
6 months ago
Peter Nelson
6cbb8d02cf
Change: Use aspect ratio for shared order list button.
6 months ago
Peter Nelson
5df5e3f45c
Change: Use aspect ratio for file home button.
6 months ago
Peter Nelson
2a833a8968
Change: Use aspect ratio for rail station platforms/tracks buttons.
6 months ago
Peter Nelson
7e049aa2b1
Change: Use aspect ratio for common left/right buttons.
6 months ago
Peter Nelson
16eb17418b
Change: Use aspect ratios for some common widgets.
6 months ago
Peter Nelson
61c6ebaacc
Change: Automatically set aspect ratio of common window decorations.
6 months ago
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.
6 months ago
Peter Nelson
f267b37a33
Codechange: Use std::initializer_list/array in framerate window. ( #12441 )
6 months ago
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>
6 months ago
Peter Nelson
6ee31a2a22
Codechange: Use string_view in IniItem/IniGroup/IniFile. ( #12535 )
...
This avoids making extra copies of strings.
6 months ago
Peter Nelson
3b80a8255f
Fix #12433 : Width of unit number display was too narrow. ( #12534 )
...
Digit width was counted, but ignored the thousands separator.
6 months ago
translators
7848e80f71
Update: Translations from eints
...
english (us): 4 changes by 2TallTyler
korean: 11 changes by telk5093
6 months ago
dP
0d1fc47edb
Cleanup: Remove redundant break statement ( #12527 )
6 months ago
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.
6 months ago
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.
6 months ago
Peter Nelson
21d11ee361
Codechange: Move cache check function to own file.
6 months ago
Peter Nelson
db56499c01
Codechange: Use std::array for company infrastructure arrays.
6 months ago