Commit Graph

27889 Commits (b389d45d55da17e527bc0d8ee1f4fc364984643e)
 

Author SHA1 Message Date
Patric Stout b389d45d55
Doc: Add more hyperlinks within the included documentation (#11288)
Co-authored-by: Niels Martin Hansen <nielsm@indvikleren.dk>
8 months ago
translators 3fd50c2949 Update: Translations from eints
swedish: 2 changes by optiedev
vietnamese: 11 changes by KhoiCanDev
romanian: 5 changes by bnegrut
danish: 2 changes by bscargo
dutch: 2 changes by Afoklala
portuguese: 2 changes by azulcosta
polish: 15 changes by pAter-exe
8 months ago
PeterN acd7d3c913
Codechange: Rename *Railtype* to *RailType* for consistency. (#11287) 9 months ago
PeterN a0b2f28f9c
Codechange: Use std::copy/fill pattern to initialize rail and road specs. (#11285)
This avoids use of lengthof and array indices.
9 months ago
Patric Stout 7e3cdbaf62 Fix: mark next_station as INVALID_STATION when loading from older savegames 9 months ago
Patric Stout 9e3763cfb3 Fix b0e73277: save/load next_station for CargoPacket again 9 months ago
Patric Stout 1243c331b6 Fix: don't compare next_station when trying to merge CargoPackets
For vehicle packets they shouldn't be compared, and for station
packets they are already in a bucket per next_station.
9 months ago
Patric Stout 9f8c1ea552 Codechange: rename next_station to next_hop to avoid confusing with another next_station 9 months ago
Patric Stout a0f6983be4 Codechange: remove parameter from VehicleCargoList::Reassign that is always INVALID_STATION 9 months ago
PeterN 6643c010bd
Fix: NewGRF house class mappings were not reset between games. (#11279) 9 months ago
Michael Lutz 1c620b349f Feature: [NewGRF] Related Act2 objects for airports and airport tiles.
Airports are similar two stations and industries, both of which have the town as related object.
Airport tiles are similar to industry tiles, which have the industry as related object.
This seems a sensible structure, so let's make it Airport Tile -> Airport -> Town.
9 months ago
Michael Lutz a6f2f3c042 Add: [NewGRF] Inspection window for airports.
As as the station window combines all station types, accessing the
debug view is via the parent of the airport tile only.
9 months ago
Patric Stout e6c02ebee6
Fix b0e73277: cargodist information got lost when splitting of cargo (#11280)
During b0e73277 we removed loaded_at_xy, but I kinda forgot that
it was a union with next_station. Now next_station wasn't copied
anymore, or checked in AreMergable.
9 months ago
Tyler Trahan 701a61c9af Codechange: Delete date_type.h 9 months ago
Tyler Trahan 77173a6a10 Codechange: Move date consts and functions to CalendarTime and TimerGameCalendar classes 9 months ago
Tyler Trahan fca2b37726 Codechange: Move Ticks into their own class 9 months ago
Patric Stout 30172fc037
Codechange: cleanup CargoPacket in terms of variable/function names (#11278)
Over the years, things got reused and changed, making the current
names somewhat unclear in what they actually mean and do.
9 months ago
Patric Stout b0e73277d6
Codechange: remove loaded_at_xy from CargoPacket as it was unused (#11276) 9 months ago
Peter Nelson f3b4f9d640 Codechange: Reduce size of TextEffectMode and TextEffectID.
TextEffectID was promoted to size_t in #9235, when it was used in loops.
However since then the relevant code uses range-for or iterators instead.
9 months ago
Peter Nelson f6939d6c4d Codechange: Make INVALID_TE_ID a TextEffectID instead of a TextEffectMode.
Type-correctness?
9 months ago
Peter Nelson 3c61c642a9 Codechange: Don't allocate a text effect with INVALID_TE_ID.
Previously, despite INVALID_TE_ID existing, it was not checked during allocation and there was no limit to the number of text effects.
9 months ago
Peter Nelson 78b841d14e Codechange: Take reference to text effect instead of pointer when updating. 9 months ago
Peter Nelson 7519f7ad79 Codechange: Use std::find_if to find or assign a text effect slot.
This replaces an index-based loop.
9 months ago
Peter Nelson 7bd019df90 Codechange: Use std::array for TemporaryStorageArray.
This removes the need for initialisation with memset().
9 months ago
Peter Nelson 9040d7813d Codechange: Use std::array and std::unique_ptr for PersistentStorageArrays.
This (mostly) avoids the need for manual memory management and copying.
9 months ago
Patric Stout c3918838f6
Fix: crash when opening a damaged base-graphics (#11275) 9 months ago
PeterN afc1ea8135
Codechange: Using alias and std::array for company expense storage. (#11273)
This simplifies passing yearly expenses to functions and use of std algorithms.
9 months ago
Patric Stout 00f13282a9
Codechange: keep how we convert string <-> JSON private (#11269) 9 months ago
Patric Stout d725fa14a2
Fix: asserts unintentially being partially disabled in release-builds (#11268)
The nlohmann-json header file includes assert.h, which rudely resets
the assert macro to what that header thinks is right. As we set the
assert macro to be active with release builds when WITH_ASSERT is
active, this means that every file including nlohmann-json has their
asserts disabled (for release-builds) but files that don't do no.

Let's avoid this issue, by telling nlohmann to not include assert.h.
9 months ago
Rubidium 8c742b456f Codechange: use Textbuf directly, instead via several virtual functions in Window 9 months ago
Jonathan G Rennison 0316940fe8
Fix: Inaccurate waiting cargo total in station window when using cargodist (#11213)
For stations with many flows and/or small cargo packets,
due to accumulated inaccuracies in DivideApprox.

The displayed total should match GoodsEntry::TotalCount().
9 months ago
Loïc Guilloux 21bd5fb991
Fix: [CI] preview flow can't install latest version of npm (#11265) 9 months ago
Patric Stout 5f9b8aaa95
Codechange: [Script] use nlohmann for Squirrel <-> JSON conversion (#11251) 9 months ago
translators 6e8d7964ed Update: Translations from eints
english (us): 4 changes by 2TallTyler
9 months ago
translators 9d2920e9c5 Update: Translations from eints
french: 2 changes by ottdfevr
9 months ago
Patric Stout 337b7b0c63
Fix 8c9ecde9: actually remove autosave_interval from setting window (#11260) 9 months ago
Peter Nelson 152b0cac34 Codechange: Return update nwid_begin instead of count.
This avoids needing to keep track of how many widget parts have been consumed, instead we only to ensure nwid_begin < nwid_end.
9 months ago
Peter Nelson e8015e497d Codechange: Use begin/end of nwidget parts of begin/length.
This simplifies processing nwidget parts as, unlike the remaining length, the pointer to the end of the list never changes. This is the same principle as we use(d) for tracking end instead of length for C-style strings.

And this removes 160~ instances of the lengthof() macro.
9 months ago
Peter Nelson e4613fc04c Codechange: Allow using more than 65536 NewGRF string IDs.
NewGRF string allocation allowed up to 524288 strings, however stringid was passed as uint16_t which limits to 2^16.
9 months ago
Peter Nelson 3e762af2d1 Change: Replace fixed length _grf_text array with vector.
Additionally reshuffle GRFTextEntry for better alignment.

This removes a mostly-unused static 20MB allocation.
9 months ago
translators dadf5182d8 Update: Translations from eints
english (au): 2 changes by krysclarke
russian: 3 changes by Ln-Wolf
finnish: 2 changes by hpiirai
portuguese (brazilian): 2 changes by pasantoro
9 months ago
PeterN bd150df914
Codechange: Reorder some high-use structs to reduce their size. (#11201)
This reduces GoodsEntry from 144 to 136 bytes (thereby reducing Station from 9704 bytes to 9192 bytes), and CargoPacket from 40 bytes to 32 bytes.
9 months ago
translators 5c2e4ee6fe Update: Translations from eints 9 months ago
glx22 b0f8890ba5 Codechange: [CMake] detect source files with duplicate names 9 months ago
glx22 c77184aa35 Codechange: [CMake] reduce code duplication 9 months ago
Bouke Haarsma 7e54418022
Codechange: workaround CMake/Xcode duplicate file name issue (#11186)
Having a library with files with the same name isn't supported in CMake's Xcode project file generation: https://gitlab.kitware.com/cmake/cmake/-/issues/20501. One of the files is renamed to work around this bug.
9 months ago
Michael Lutz 0089323542 Add: [Script] Custom news message text for industry SetProductionLevel. 9 months ago
Michael Lutz 1c56991213 Add: [Script] Game script control of industry production level. 9 months ago
mrmbernardi a5c8365aa4
Feature: Setting to disallow level crossings with competitors (#10755) 9 months ago
frosch 236ec41fa2
Fix #11230: Group list widget layout failed, if dropdown widgets were higher than the font height. (#11231) 9 months ago