Commit Graph

20272 Commits (5e1bcee39bd409e37687bcfc2ebe8a5ca9237e77)

Author SHA1 Message Date
Tyler Trahan 6e52ceab96
Feature: Industry directory text filter (#10518) 2 years ago
Rubidium 1eefe1c3a0 Codechange: hide Tile(Extended) into the Tile structure 2 years ago
Rubidium 580d0a6343 Codechange: make use of Tile in for all direct map accesses 2 years ago
Rubidium 7a6452d3ef Codechange: introduce Tile class for accessing map data of a single tile 2 years ago
Rubidium 7a1816a6cd Codechange: rename Tile to TileBase to be able to introduce a new Tile class 2 years ago
Rubidium 0fb0469e47 Codechange: introduce iterator to iterate over the Tiles of a Map
Note: this version is using TileIndex, but that changes later
2 years ago
Chenshu Yu eabb9db0bb
Fix #9810: 'Rebuilding' a through road stop costs money (#9852) 2 years ago
dP b0542c8c49
Codechange: Don't store tree counter in the map array (#10018) 2 years ago
SamuXarick 6eabbaa751 Fix #10469, 5e14a20: [Script] League Table rating element is a int64 everywhere else 2 years ago
Michael Lutz aab580e0ac Codechange: [Linkgraph] Drop node/edge wrappers from LinkGraph. 2 years ago
Michael Lutz 4d3da0cf14 Codechange: [Linkgraph] Drop node/edge wrappers from LinkGraphJob. 2 years ago
Michael Lutz 7352f812e6 Codechange: [Linkgraph] Only store present link graph edges and not all possible edges. 2 years ago
Michael Lutz 178249e7cc Codechange: Saveload macros for entries with a custom table name. 2 years ago
Michael Lutz 8f851ead70 Codechange: [Linkgraph] Split annotation for demand between nodes from the edge annotations. 2 years ago
Michael Lutz 564de01d66 Remove: SmallMatrix be gone. 2 years ago
Michael Lutz fe27db3dfd Codechange: [Linkgraph] Store edges in each node and not in a global matrix. 2 years ago
Niels Martin Hansen 2fee8ecdda Add #7525: Allow autoreplace with same model vehicle 2 years ago
Jonathan G Rennison 4c1406a4b5 Add: NewGRF road stops 2 years ago
Tyler Trahan a18182e24b
Revert 92c7551: Line drawing algorithm fix broke other cases (#10497)
This reverts commit 92c755161d.
2 years ago
translators 07fbd19da3 Update: Translations from eints
luxembourgish: 8 changes by phreeze83
2 years ago
Rubidium 947a789bf6 Codechange: split large function into smaller steps and simplify logic 2 years ago
Rubidium 8cbf1be9d6 Codechange: split large function into smaller functions with self-explanatory names 2 years ago
Rubidium a409e4b026 Add: documention to large functions that have too little documentation according to CodeQL 2 years ago
translators 2561fad5d4 Update: Translations from eints
romanian: 1 change by bnegrut
2 years ago
dP c73b88ddca
Fix: Don't send unused tile field over the network (#10507) 2 years ago
Michael Lutz 9b3326e3fd Codechange: [Script] Use std::vector instead of a hand-rolled alternative. 2 years ago
Michael Lutz ca3cb4d2ef Codechange: [Script] Use a class template instead of a function template for squirrel type conversion.
Class templates allow using partial template specialization, which is useful in
case one wants to have a type conversion on a type that is itself templated.
2 years ago
translators 187d330177 Update: Translations from eints
spanish (mexican): 1 change by GNosii
2 years ago
SamuXarick b52b29b1a4 Change: Avoid crashing to the side of a train
When a road vehicle is already running on a multi level crossing, and a train shows up ahead, don't make the road vehicle crash on the side of the train.
2 years ago
SamuXarick 8351b97f52 Add: [Script] Labels for negative values of a setting 2 years ago
SamuXarick 376820c0b6 Doc: [Script] Update info descriptions 2 years ago
SamuXarick bb2ac8b3c4 Fix: [Script] Save config item values up to 10 digits + 1 for sign + 1 for termination, enough to fit min and max int 2 years ago
SamuXarick fde7028a95 Fix #10059: [Script] Let custom values on a config item be up to 10 digits + 1 for sign 2 years ago
SamuXarick 7b1fd3e37f Fix #10059: [Script] Clamp config item values to int32
Also prevent random_deviation to be below 0.
2 years ago
Nik Nyby 92c755161d
Fix #10222: Adjust line drawing algorithm (#10491) 2 years ago
translators 8778949b6a Update: Translations from eints
english (us): 1 change by nikolas
galician: 18 changes by pvillaverde
2 years ago
translators 9ade3345f7 Update: Translations from eints
english (us): 3 changes by nikolas
galician: 1 change by pvillaverde
2 years ago
translators 4a8b8807e6 Update: Translations from eints
vietnamese: 6 changes by KhoiCanDev
korean: 1 change by telk5093
2 years ago
PeterN 2376112c77
Fix #10477: Not enough space for text due to rounding down (OSX) (#10489) 2 years ago
SamuXarick 3df9321a65 Fix: Some Script::IsValidVehicle checks need to be complemented with IsPrimaryVehicle
Add: [Script] ScriptVehicle.IsPrimaryVehicle
2 years ago
glx22 3559576166 Codechange: [Script] Don't expose static buffers outside of ScriptText 2 years ago
glx22 e735370318 Change: [Script] A ScriptText with too many parameters is now a fatal error
It should never happen as adding/setting parameters already checks that anyway.
2 years ago
translators 2fdfc38da8 Update: Translations from eints
korean: 6 changes by telk5093
slovak: 8 changes by legitalk
catalan: 3 changes by J0anJosep
turkish: 5 changes by EndChapter
dutch: 1 change by Afoklala
portuguese (brazilian): 8 changes by ericandradex
polish: 2 changes by pAter-exe
2 years ago
Loïc Guilloux 4072dcff49
Fix #10486: [Script] Debug window requires AIs to be started before GS (#10487) 2 years ago
Patric Stout fdfcb09aa3 Fix #10131: actually cancel downloads when pressing cancel 2 years ago
Patric Stout dea2dea881 Fix: reset content download progress to zero if falling back to TCP
Otherwise this chain of events can happen:
- You already have a (partial) file downloaded
- You start the download, and HTTP fails
- This resets the download progress to the current size of the file
- The TCP download starts at a very large value (UINT32_MAX - filesize)

It now resets to 0% done when any negative value is being given.
As added bonus, we no longer have to query how much was already
downloaded.
2 years ago
Patric Stout 1c17556f96 Codechange: replace instance of char * with std::string 2 years ago
Patric Stout 0722bb3bf4
Change: try to detect the CA file/path for CURL (#10481)
The default is given compile-time, not run-time. So libcurl is
of no use to us.

Current list is kindly borrowed from
https://go.dev/src/crypto/x509/root_linux.go
2 years ago
Patric Stout ea90fa24f8
Codechange: move curl into a thread so simplify code (#10480)
With a thread, we can just run curl_easy_perform() and let CURL
and threads handle the blocking part.

With async solution there are too many things to keep track of,
and it makes "when to update the GUI" tricky. By using a thread
that all gets a lot simpler, as the game-thread and download-thread
run side-by-side.

This is similar to how the WinHttp backend already works.
2 years ago
translators 228b34c2bf Update: Translations from eints
english (au): 1 change by krysclarke
czech: 2 changes by jachymozo
finnish: 1 change by hpiirai
2 years ago
dP fe2c8a1240
Codechange: Decouple INDUSTRY_CTRL into separate commands (#10475) 2 years ago
frosch d7fcb420c4 Fix: compilation with libcurl from 2013. 2 years ago
translators 04847b1208 Update: Translations from eints
english (us): 1 change by 2TallTyler
portuguese: 2 changes by ppxppy
2 years ago
translators 695ce0ab09 Update: Translations from eints
swedish: 3 changes by joeax910
italian: 1 change by Rivarossi
russian: 1 change by Ln-Wolf
ukrainian: 1 change by serg-bloim
latvian: 7 changes by lexuslatvia
2 years ago
Patric Stout 64523709bf
Add: use https:// for content-service connections (#10448)
This requires the use of WinHTTP (for Windows) or libcurl (for all
others except Emscripten). Emscripten does not support http(s)
calls currently.

On Linux it requires ca-certificates to be installed, so the HTTPS
certificate can be validated. It is really likely this is installed
on any modern machine, as most connections these days are HTTPS.

(On MacOS and Windows the certificate store is filled by default)

Reminder: in case the http(s):// connection cannot be established,
OpenTTD falls back to a custom TCP-based connection to fetch the
content from the content-service. Emscripten will always do this.
2 years ago
translators 09f7f32b8d Update: Translations from eints
ukrainian: 2 changes by serg-bloim
2 years ago
Loïc Guilloux a2c8168924
Fix #10465: Delay closing of network join progress window (#10466) 2 years ago
Bilongozhko, Serhii (Contractor) 35ad964c6b Feature: Ctrl+Click to reset late counter for the entire vehicle group. 2 years ago
SamuXarick 231935fccd Change: Show buy company dialog window even when playing in the AI company 2 years ago
SamuXarick 43ce73db86 Fix: [Script] Use Money instead of int32 for presenting the value of a company to AIs 2 years ago
Loïc Guilloux 6b99b6672e
Fix: [Script] ScriptBase::Rand() return value was between -MIN(int32) and MAX(int32) (#10443)
Also ensure the parameters for ScriptBase::RandRange() and ScriptBase::Chance() are in [0-MAX(uint32)] range
2 years ago
translators 7bd475b86c Update: Translations from eints
english (au): 2 changes by krysclarke
estonian: 107 changes by RM87
romanian: 2 changes by bnegrut
finnish: 8 changes by hpiirai
dutch: 4 changes by Afoklala
portuguese: 2 changes by azulcosta
polish: 2 changes by pAter-exe
2 years ago
glx22 3278f4c7bb Fix #10280, 59645c6: Ignore double-click for unavailable town actions 2 years ago
glx22 d6aa526b69 Fix #10461, 59645c6: Properly check for _local_company validity 2 years ago
translators 59251d3c6b Update: Translations from eints
english (us): 2 changes by 2TallTyler
estonian: 110 changes by RM87
czech: 5 changes by jacobczsk
italian: 11 changes by Rivarossi
russian: 2 changes by Ln-Wolf
2 years ago
translators b083584649 Update: Translations from eints
arabic (egypt): 30 changes by AviationGamerX
portuguese: 1 change by azulcosta
2 years ago
Tyler Trahan f12498b633
Add: Show NewGRF name in NewGRF-created errors (#10457) 2 years ago
translators 0c36e4a771 Update: Translations from eints
english (au): 1 change by krysclarke
english (us): 1 change by 2TallTyler
vietnamese: 2 changes by KhoiCanDev
luxembourgish: 5 changes by phreeze83
catalan: 3 changes by J0anJosep
french: 11 changes by ZarTek-Creole, 5 changes by glx22
2 years ago
dP b5bc001d42
Codechange: Swap comments for CommandHelper::Post overloads (#10454) 2 years ago
translators cb2944205c Update: Translations from eints
english (au): 4 changes by krysclarke
swedish: 16 changes by joeax910
english (us): 2 changes by 2TallTyler
chinese (simplified): 2 changes by XiaoJi-Game
hebrew: 3 changes by Boltyansky
romanian: 10 changes by kneekoo
russian: 5 changes by Ln-Wolf
portuguese: 2 changes by azulcosta
polish: 4 changes by pAter-exe
2 years ago
translators 7c998d46bd Update: Translations from eints
spanish (mexican): 22 changes by VMMF
chinese (simplified): 2 changes by XiaoJi-Game
turkish: 2 changes by EndChapter
2 years ago
glx22 b080f24bd8 Codechange: move windows common to AI and GS out of ai_gui 2 years ago
glx22 78e3c93a25 Fix: caption for GS settings window opened from debug window 2 years ago
glx22 cef9931e53 Cleanup: GS don't have "start_date" 2 years ago
translators 6aafccfb22 Update: Translations from eints
korean: 2 changes by telk5093
spanish: 2 changes by MontyMontana
portuguese: 2 changes by azulcosta
2 years ago
translators b364b41768 Update: Translations from eints
english (us): 2 changes by 2TallTyler
finnish: 2 changes by hpiirai
catalan: 2 changes by J0anJosep
dutch: 2 changes by Afoklala
2 years ago
translators e41af1f2bb Update: Translations from eints
portuguese (brazilian): 8 changes by ericandradex
2 years ago
SamuXarick 1f194eb94e
Fix: [Script] Incorrect value for GOAL_INVALID (#10436)
* Fix: [Script] Incorrect value for GOAL_INVALID

* Cleanup: Remove unused static variable
2 years ago
Rubidium bf8b32d193 Change: explicitly allow initial loan of 0, however show warning in UI 2 years ago
Rubidium b7b7c11b90 Change #10077: make maximum loan a positive multiple of the loan interval
And set the minimum maximum loan to the value of loan interval, so there is
always an amount of money to lend. Compared to being allowed to set max loan
to 0 and never be allowed to lend any money.
2 years ago
SamuXarick d0639cdc28 Fix: [Script] Incorrect subsidy SourceID value used 2 years ago
SamuXarick 4fc4874a30 Add: [Script] Let random road layout be a choice 2 years ago
SamuXarick 184ff92057
Cleanup: [Script] Pass new_rating directly to CmdTownRating (#10441) 2 years ago
translators 654a77c4f7 Update: Translations from eints
luxembourgish: 21 changes by phreeze83
2 years ago
Rubidium 31869501ee Fix: make script goals work with the whole range of ClientIDs 2 years ago
translators 1897e98c3d Update: Translations from eints
slovak: 10 changes by legitalk
2 years ago
Michael Lutz 05ed9f56fd Feature: [NewGRF] Engine name callback. 2 years ago
Michael Lutz 2d73076056 Add: [NewGRF] Second vehicle property for additional callback flags. 2 years ago
Michael Lutz f5394ed2ef Change: [NewGRF] Extend the D8xx (DCxx) string area up to FFFF.
This adds the Exxx and Fxxx blocks to the usable range for NewGRF
local strings. TTDPatch uses these ranges for internal strings, but as
we don't support any of them anyway, it is "free" real estate for us.
2 years ago
translators 43657cf65d Update: Translations from eints
chinese (traditional): 9 changes by wpi3
2 years ago
Loïc Guilloux 07b40c02fe
Fix #10361, fe30f66: Don't try to give saved data to a dead script (#10433) 2 years ago
Jonathan G Rennison 9c915f05ec Fix: Water infrastructure accounting when building docks 2 years ago
Jonathan G Rennison b82bcac3cd Fix #10419: Water infrastructure accounting when building ship depots 2 years ago
Rubidium 4e65ec1dc4 Codechange: do not declare functions in blocks 2 years ago
translators 5a4f0498fe Update: Translations from eints
hebrew: 6 changes by haimlm
catalan: 4 changes by J0anJosep
turkish: 7 changes by ahmetlii
2 years ago
Rubidium 8be908c919 Fix #10430, Fix 6ba55e6: display chain window causing assert 2 years ago
rubidium42 6ba55e663e Codechange: do not hide variables with other variables 2 years ago
rubidium42 1951af07c0 Codechange: do not hide parameters with local variables 2 years ago
Rubidium f001e84e5e Codechange: use RAII to automatically restore _cur_dpi after use 2 years ago
Rubidium b7a5d8e296 Codechange: add annotation to selectively force inlining in debug build 2 years ago
SamuXarick df89c34e03
Fix 7e1e275: Measure AI Collect Garbage performance (#9924) 2 years ago
translators 4a58d197ee Update: Translations from eints
japanese: 26 changes by Azusa257
vietnamese: 4 changes by KhoiCanDev
chinese (simplified): 4 changes by XiaoJi-Game
french: 8 changes by glx22
2 years ago
Rubidium 04d10b3d2d Codechange: instead of global pointer to stack variable, just put variable in that global
Removes one indirection and a dangling pointer to a stack location
2 years ago
Rubidium d51d08ddcb Codechange: put stack variables in global variables for gamelog/crashlog 2 years ago
Rubidium ed7685910d Codechange: pass large objects by reference instead of value
Especially when they get passed on directly to the next function or via a
constructor into an instance variable
2 years ago
translators dbc666905d Update: Translations from eints
czech: 10 changes by jacobczsk
dutch: 4 changes by Afoklala
2 years ago
Rubidium 7e1d272397 Cleanup: remove unused static variables 2 years ago
Rubidium 00721787e1 Fix: wrong type for INVALID_LINK_GRAPH_JOB 2 years ago
Rubidium 755e41de9f Codechange: make rounding code clearer
-O1 already optimizes it to the original hand optimized magic code
2 years ago
Rubidium 71b46db8d0 Cleanup: remove commented out code 2 years ago
Rubidium 5863d78cb4 Codechange: use commented out code, or guard by #ifdef 2 years ago
Rubidium ae422be979 Cleanup: remove/replace trailing ; with . in comments 2 years ago
Henry Wilson 0b2567d882 Codechange: Remove shift as fast-forward key when _DEBUG is defined 2 years ago
SamuXarick 46dc6da270
Codechange: Make void tiles flood edge tiles, instead of edge tiles flooding themselves (#8517) 2 years ago
Peter Nelson ede1201b6a Codechange: Rename override manager variables. 2 years ago
Peter Nelson bcc53c5ad5 Codechange: Add missing `this->` in override manager.
Variable scope is also tweaked in a couple of cases reducing line count.
2 years ago
Peter Nelson eedb786872 Codechange: Use vector for NewGRF spec overrides.
This replaces C-style memory management.
2 years ago
translators 07940726d3 Update: Translations from eints
korean: 4 changes by telk5093
2 years ago
Rubidium 2fd99467ea Fix: scripts are not aware of nullptr, they only know null 2 years ago
Rubidium f9a473bef7 Fix: missing/duplicate documentation tags for scripts 2 years ago
Rubidium 3112b387e7 Fix: warnings about obsolete settings/setting values in Doxygen configurations 2 years ago
Rubidium 41fa94bc56 Fix: scripts cannot call constructors of ScriptEvents, so remove from the documentation 2 years ago
merni-ns 2d0c1ffdb7
Change #10255: Reduce basic thickness of linkgraph GUI lines (#10410)
From 3px to 2px (multiplied by UI scale).
2 years ago
translators 01a2449489 Update: Translations from eints
finnish: 8 changes by hpiirai
polish: 4 changes by pAter-exe
2 years ago
PeterN 4dfd6a096f
Fix #10220: Don't select unselectable engine as default. (#10404) 2 years ago
translators 97844df123 Update: Translations from eints
spanish: 4 changes by MontyMontana
2 years ago
Tyler Trahan 9c5de7fd72
Fix #10395: When loading old saves, don't forcibly bar level crossings (#10400) 2 years ago
Rubidium 8aeef665c7 Fix #10377, Fix 94167df: bad sorting of rail vehicles when primary variant is missing 2 years ago
translators 7d502e2857 Update: Translations from eints
english (us): 4 changes by 2TallTyler
romanian: 10 changes by bnegrut
russian: 4 changes by Ln-Wolf
portuguese: 4 changes by azulcosta
2 years ago
SamuXarick b2a5ebcfc4
Fix 3c047b1: AIGroup.GetProfitLastYear could get values different than those displayed in GUI (#10227)
* Change: Store "all time" and "since minimum age" last year profits on groups

* Fix: Update last year profit for groups when copying vehicle statistics on autoreplace

* Codechange: Refactor profit last year

* Change: Rename some group related items for clarity

* Change: Reorder the fields in GroupStatistics

That way less memory gets wasted.
2 years ago
translators 8b5fa2cc7b Update: Translations from eints
english (au): 4 changes by krysclarke
2 years ago
Rubidium 7cdc23fd64 Codechange: hide the map's size related fields in the Map structure 2 years ago
Rubidium de6bc8e692 Codechange: move TILE_MASK to Map::WrapToMap 2 years ago
Rubidium fe2bcd2a58 Codechange: migrate size related functions to Map structure 2 years ago
Rubidium d481f78b24 Codechange: add map size related functions to Map structure 2 years ago
Rubidium 9c1a3b17e3 Codechange: use MapLogY() instead of FindFirstBit(MapSizeY()), MapSize() instead of MapSizeX() * MapSizeY() 2 years ago
Rubidium 22d3de8b67 Codechange: use ScriptMap size functions instead of global functions 2 years ago
Rubidium 953445a5ac Codechange: use MakeSea/AllocateMap in the oldloader instead of MemSetT 2 years ago
Andy 3b0b572ebf
Change: Log AI/GS Squirrel crashes in white text for readability (#10375) 2 years ago
translators 5eb2e0fd3d Update: Translations from eints
dutch: 4 changes by Afoklala
2 years ago
Francis Herne 01be423237 Fix #10362: NewGRF bridges without speed limits.
For bridges, a max speed of 0xFFFF (i.e. no effective limit)
 is no longer displayed as a limit in the UI.

A max speed of 0 is also considered unlimited, for similarity to the
 roadtype and railtype interface.
2 years ago
translators 3c80f2d14a Update: Translations from eints
english (au): 6 changes by krysclarke
chinese (simplified): 3 changes by XiaoJi-Game, 1 change by ZZY2357
arabic (egypt): 11 changes by AviationGamerX
korean: 3 changes by telk5093
indonesian: 8 changes by K4smun1
2 years ago
translators 83d5e681fc Update: Translations from eints
vietnamese: 6 changes by chupper100
italian: 4 changes by Rivarossi
tamil: 10 changes by merni-ns
2 years ago
PeterN 5801442780
Fix: Switch to OWNER_TOWN prevented OWNER_DEITY test during industry prospecting. (#10360) 2 years ago
Rubidium 8d8519c3f6 Fix #10368, Fix 994bf19: server restarting game caused clients to hit assertion
Upon closing the EndGameWindow, triggered from UnInitWindowSystem, the
HighScoreWindow would be opened and _z_windows would not be empty.
2 years ago
translators dcc06f44bc Update: Translations from eints
english (us): 6 changes by 2TallTyler
catalan: 6 changes by J0anJosep
spanish: 5 changes by MontyMontana
portuguese: 4 changes by azulcosta
polish: 4 changes by pAter-exe
2 years ago
translators 8a6f4c22c9 Update: Translations from eints
finnish: 2 changes by hpiirai
french: 2 changes by glx22
portuguese: 2 changes by azulcosta
portuguese (brazilian): 2 changes by ericandradex
polish: 2 changes by pAter-exe
2 years ago
Tyler Trahan dbf69fde53
Fix #10363: CargoDist setting helptext shouldn't suggest symmetric distribution for diamonds in subtropic (#10364)
* Fix #10363: CargoDist setting helptext shouldn't suggest symmetric distribution for diamonds in subtropic

* Fix: Always capitalize the first word of a sentence, even if a quoted setting name
2 years ago
translators 750d89d37b Update: Translations from eints
russian: 2 changes by Ln-Wolf
turkish: 2 changes by EndChapter
2 years ago
Rubidium a4a819c983 Fix #9865: removing files with the console always failed 2 years ago
Rubidium 1ed0b35520 Fix #10009: bad overflow protection when taking out loans 2 years ago
PeterN 2355882ec1
Codechange: Remove object `enabled` flag and shuffle members. (#10358)
`enabled` flag is replaced with IsEnabled() which checks if views is
non-zero.

ObjectSpec is shuffled to reduce its memory footprint.
2 years ago
Rubidium 8f9a60893d Fix #10177: company list password padlock showed after switching to single player 2 years ago
Rubidium c578917783 Fix #10057: FallbackParagraphLayout fails to properly wrap
... during the first word after a new run has been started.
2 years ago
SamuXarick 96ec9908a0
Codechange: refactor removal of desert around river tiles 2 years ago
Rubidium 20a9e13272 Fix: inconsistent definition of copy constructor and assignment 2 years ago
Rubidium 6dfd2cad69 Fix: comparison result is always the same warnings 2 years ago
PeterN b4f0450974
Change: Display font status as aa/noaa instead of true/false. (#10352) 2 years ago
Rubidium 921c6591f9 Codechange: do not use interactive random anymore for script configuration 2 years ago
Rubidium c5ff61c5f2 Add: script specific Randomizer instances 2 years ago
Rubidium 6abad681bd Codechange: move choice for randomizer of scripts to a single location 2 years ago
Rubidium 3373128233 Codechange: pass the randomizer directly to the town name generation 2 years ago
Rubidium b3b8c3fd2d Codechange: pass the randomizer to use directly to the company face generation 2 years ago
Peter Nelson 8149ba338f Change: Check glyph size before trying to render it.
This change of order ensures that the "Font glyph is foot large" occurs
even if the glyph is too large for an alloca() allocation.
2 years ago
Peter Nelson fa0c67b10a Change: Remove guess-work from calls to GetGlyphOutline().
This API method is intended to be called twice, so don't attempt to guess
the required size.
2 years ago
Peter Nelson 5370e910d3 Change: Use std::vector for fallback font list. 2 years ago
Rubidium 90f1768006 Codechange: add non-nullptr asserts in cases where it should never be nullptr
Though where similar calls are checked for nullptr as in those instances of
the use of that function it can actually return nullptr. In other words, write
down the assumption that the function never returns nullptr in an assert.
2 years ago
Rubidium bcfe0fb076 Codechange: introduce GetMainWindow() to properly account for nullptr checks
Some nullptr checks have been removed as they were not triggered with nullptr
with the null video driver and in dedicated server mode.
2 years ago
Rubidium 9c70c38c5e Fix: check for the existence of shadow and rotor vehicles for aircraft
Instead of just assuming that it exists in the savegame that got loaded.
2 years ago
translators 5ddfd38de6 Update: Translations from eints
norwegian (bokmal): 1 change by buzzCraft
2 years ago
Jonathan G Rennison 10e76b2788 Fix #10032: Capacities of articulated vehicles in build window
See also: #9954
2 years ago
Tyler Trahan 07fba75238
Fix: Various Wide River issues (#10348) 2 years ago
Tyler Trahan 2206c73156
Feature: Set a custom number of industries in map generation window (#10340) 2 years ago
Tyler Trahan 5c64cdcb79
Feature: Press Ctrl to build a diagonal area of trees (#10342) 2 years ago
Rubidium b951332def Codechange: use smart pointers when creating StringIterators 2 years ago
Rubidium b35c791d05 Codechange: use smart pointers when cloning iterators 2 years ago
Rubidium f667a831a5 Codechange: unify creation of diagonal/orthogonal iterator using smart pointers 2 years ago
PeterN 6a0d1c7c19
Fix: Link variants to parents when finalising engines. (#10346)
This ensures that definition-order of engines within the NewGRF does not matter.
2 years ago
Tyler Trahan dced2d8c30
Fix #10333, c53f29d: Only show industry prospecting errors to local company (#10338) 2 years ago
translators b05c21203a Update: Translations from eints
arabic (egypt): 20 changes by AviationGamerX
2 years ago
Tyler Trahan 5a2907a99f
Change: Remove land generator setting from World Generation GUI (#10093) 2 years ago
translators 80322b85c2 Update: Translations from eints
swedish: 7 changes by joeax910
japanese: 17 changes by scabtert
luxembourgish: 14 changes by phreeze83
lithuanian: 80 changes by devastatorius
2 years ago
PeterN 09a32f2ce1
Fix #10335: Set initial scrollbar count for object GUI. (#10336)
This previously happened when the window was resized by itself which was fixed by #10196. Explicitly set the count instead.
2 years ago
translators 70157b2ad5 Update: Translations from eints
luxembourgish: 3 changes by phreeze83
hebrew: 125 changes by haimlm
2 years ago
translators 9d13213c61 Update: Translations from eints
spanish (mexican): 3 changes by absay
2 years ago
translators 81c5c16477 Update: Translations from eints
galician: 1 change by NicoSGF64
romanian: 8 changes by ALEX11BR
2 years ago
PeterN c18a171028
Fix #10331: Starting new company during load must happen after AI start. (#10332)
This situation occurs when loading a savegame in single-player which only
has AI companies.
2 years ago
translators 7460fdb298 Update: Translations from eints
chinese (simplified): 7 changes by HansKaffee
turkish: 13 changes by rustoocas
2 years ago
Rubidium 46dfb309bc Fix #10309: [SDL] Uninitialized width and height when turning off full screen 2 years ago
translators 29af0f8c7b Update: Translations from eints
swedish: 18 changes by joeax910
chinese (simplified): 2 changes by HansKaffee
romanian: 3 changes by ALEX11BR
slovak: 15 changes by legitalk
tamil: 21 changes by Aswn
2 years ago
Rubidium 0251786f46 Fix: virtual call from constructor
That fills an instance variable that is only read from the Game Options window
and that is overwritten when the video driver is started. Since you cannot get
into the Game Options window without starting the video driver, it is just
pointless and wrong code that would never be noticed by the end user.
2 years ago
Rubidium c1ff471c77 Fix: bad oddness checks
Modulo on a signed number returns negative values for negative values, so
i % 2 == 1 will only return true for positive odd numbers, whereas i % 2 != 0
returns true for both positive and negative odd numbers.
2 years ago
Rubidium f7af9a299a Codechange: prevent suspicious pointer scaling 2 years ago
Rubidium 170f37d07f Codechange: silence some potentially uninitialized local variable errors
In these cases technically they are false positives, however dismissing the
alerts when the underlying code may make them true positives does not seem
like the safest solution.
2 years ago
Rubidium 496ec1f012 Fix: use reference and array indexing to prevent suspicious pointer scaling 2 years ago
Rubidium fbd0f5ad7d Fix: inconsistent allocation error handling
Mix-and-matching std::bad_alloc exception handling with nullptr checks
2 years ago
Rubidium 3c54344825 Fix: comparison of narrow type with wide type in loop condition
Technically this can't be triggered with the currently returned values though.
2 years ago
Charles Pigott e00996a18a
Change: Big UFO disaster targets current location of a random train (#10290) 2 years ago
PeterN 1b1aa682a6
Fix: Don't assume engclass 2 should be elrail. (#10315)
When disabling/enabling elrail, there is an assumption that `engclass` of 2
means the engine will run on elrail. While this holds for default engines,
NewGRFs can do other things.

To resolve this we store the intended railtype so that toggling elrail will
restore to the correct type.
2 years ago
Rubidium 51049946d1 Fix: prevent corrupted GRF files to allocate stupid amounts of memory 2 years ago