Peter Nelson
2fdc22e7ea
Codechange: Shuffle CargoPayment members to reduce padding.
2023-09-14 09:50:58 +01:00
PeterN
a3c70ee6fb
Codechange: Pass by reference and use emplace-at-end for CargoSummary. ( #11296 )
2023-09-14 08:41:33 +00:00
Loïc Guilloux
b4ff06b6ef
Fix: marked text was not updated during text deletion ( #11293 )
2023-09-13 20:59:34 +00:00
translators
fca62c245f
Update: Translations from eints
2023-09-13 18:38:58 +00:00
Loïc Guilloux
220f93f552
Fix: IConsoleWindow:GetTextBoundingRect() is incorrect ( #11292 )
2023-09-13 16:07:55 +00:00
Daniel Robinson
71c2878799
Fix #10600 : 'Replace Vehicles' didn't show numbers >999 ( #10680 )
2023-09-13 15:19:44 +00:00
Patric Stout
9c49a61249
Fix: base cargo payment on load/unload tile, instead of station sign location ( #11281 )
2023-09-13 14:41:09 +00:00
Patric Stout
ba67f39db6
Codechange: vendor the nlohmann-json library ( #11290 )
2023-09-13 16:11:34 +02:00
Niels Martin Hansen
41de0d46f3
Feature: Help and manuals access window
2023-09-13 16:11:08 +02:00
Niels Martin Hansen
4765d0f8c2
Change: Text Layouter support querying all lines for character at pixel
2023-09-13 16:11:08 +02:00
Patric Stout
d1a0ca67be
Codechange: simplify splitting of CargoPacket ( #11286 )
2023-09-13 09:40:01 -04:00
translators
a16aa3ef7d
Update: Translations from eints
...
swedish: 1 change by joeax910
2023-09-12 18:38:00 +00:00
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
2023-09-11 18:38:29 +00:00
PeterN
acd7d3c913
Codechange: Rename *Railtype* to *RailType* for consistency. ( #11287 )
2023-09-11 08:55:12 +00:00
PeterN
a0b2f28f9c
Codechange: Use std::copy/fill pattern to initialize rail and road specs. ( #11285 )
...
This avoids use of lengthof and array indices.
2023-09-10 23:01:08 +00:00
Patric Stout
7e3cdbaf62
Fix: mark next_station as INVALID_STATION when loading from older savegames
2023-09-11 00:25:47 +02:00
Patric Stout
9e3763cfb3
Fix b0e73277
: save/load next_station for CargoPacket again
2023-09-11 00:25:47 +02:00
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.
2023-09-11 00:25:47 +02:00
Patric Stout
9f8c1ea552
Codechange: rename next_station to next_hop to avoid confusing with another next_station
2023-09-11 00:25:47 +02:00
Patric Stout
a0f6983be4
Codechange: remove parameter from VehicleCargoList::Reassign that is always INVALID_STATION
2023-09-11 00:25:47 +02:00
PeterN
6643c010bd
Fix: NewGRF house class mappings were not reset between games. ( #11279 )
2023-09-10 18:55:37 +01:00
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.
2023-09-10 19:38:18 +02:00
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.
2023-09-10 19:38:18 +02:00
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.
2023-09-10 15:20:58 +02:00
Tyler Trahan
701a61c9af
Codechange: Delete date_type.h
2023-09-10 08:40:25 -04:00
Tyler Trahan
77173a6a10
Codechange: Move date consts and functions to CalendarTime and TimerGameCalendar classes
2023-09-10 08:40:25 -04:00
Tyler Trahan
fca2b37726
Codechange: Move Ticks into their own class
2023-09-10 08:40:25 -04:00
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.
2023-09-09 23:21:21 +02:00
Patric Stout
b0e73277d6
Codechange: remove loaded_at_xy from CargoPacket as it was unused ( #11276 )
2023-09-09 20:24:46 +01:00
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.
2023-09-09 19:26:47 +01:00
Peter Nelson
f6939d6c4d
Codechange: Make INVALID_TE_ID a TextEffectID instead of a TextEffectMode.
...
Type-correctness?
2023-09-09 19:26:47 +01:00
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.
2023-09-09 19:26:47 +01:00
Peter Nelson
78b841d14e
Codechange: Take reference to text effect instead of pointer when updating.
2023-09-09 19:26:47 +01:00
Peter Nelson
7519f7ad79
Codechange: Use std::find_if to find or assign a text effect slot.
...
This replaces an index-based loop.
2023-09-09 19:26:47 +01:00
Peter Nelson
7bd019df90
Codechange: Use std::array for TemporaryStorageArray.
...
This removes the need for initialisation with memset().
2023-09-09 15:26:03 +01:00
Peter Nelson
9040d7813d
Codechange: Use std::array and std::unique_ptr for PersistentStorageArrays.
...
This (mostly) avoids the need for manual memory management and copying.
2023-09-09 15:26:03 +01:00
Patric Stout
c3918838f6
Fix: crash when opening a damaged base-graphics ( #11275 )
2023-09-09 14:06:00 +00:00
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.
2023-09-09 13:15:53 +00:00
Patric Stout
00f13282a9
Codechange: keep how we convert string <-> JSON private ( #11269 )
2023-09-08 19:03:10 +02:00
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.
2023-09-08 10:11:37 +00:00
Rubidium
8c742b456f
Codechange: use Textbuf directly, instead via several virtual functions in Window
2023-09-06 23:07:04 +02:00
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().
2023-09-06 21:36:26 +02:00
Patric Stout
5f9b8aaa95
Codechange: [Script] use nlohmann for Squirrel <-> JSON conversion ( #11251 )
2023-09-06 13:14:12 +02:00
translators
6e8d7964ed
Update: Translations from eints
...
english (us): 4 changes by 2TallTyler
2023-09-05 18:38:17 +00:00
translators
9d2920e9c5
Update: Translations from eints
...
french: 2 changes by ottdfevr
2023-09-04 18:38:09 +00:00
Patric Stout
337b7b0c63
Fix 8c9ecde9
: actually remove autosave_interval from setting window ( #11260 )
2023-09-04 11:18:47 +00:00
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.
2023-09-04 10:20:45 +01:00
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.
2023-09-04 10:20:45 +01:00
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.
2023-09-04 09:49:09 +01:00
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.
2023-09-04 09:49:09 +01:00
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
2023-09-03 18:38:15 +00:00
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.
2023-09-02 20:56:36 +00:00
translators
5c2e4ee6fe
Update: Translations from eints
2023-09-02 18:38:13 +00:00
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.
2023-09-02 19:46:52 +02:00
Michael Lutz
0089323542
Add: [Script] Custom news message text for industry SetProductionLevel.
2023-09-02 16:20:59 +02:00
Michael Lutz
1c56991213
Add: [Script] Game script control of industry production level.
2023-09-02 16:20:59 +02:00
mrmbernardi
a5c8365aa4
Feature: Setting to disallow level crossings with competitors ( #10755 )
2023-09-02 12:46:24 +02:00
frosch
236ec41fa2
Fix #11230 : Group list widget layout failed, if dropdown widgets were higher than the font height. ( #11231 )
2023-09-02 12:45:19 +02:00
translators
6ab169fbe0
Update: Translations from eints
...
dutch: 1 change by Afoklala
2023-09-01 18:38:57 +00:00
Patric Stout
7afd686541
Codechange: add tests for GS <-> AdminPort JSON conversion ( #11252 )
...
While at it, fix a bug where booleans were made integers.
2023-08-31 19:38:15 +00:00
Patric Stout
993e7be707
Fix: [Script] GSAdmin.Send() could generate invalid JSON ( #11250 )
2023-08-31 16:52:52 +00:00
glx22
4eddec9e79
Add: [Emscripten] Support for bootstrapping
2023-08-31 12:59:12 +02:00
glx22
3d1c4a8589
Codechange: [Emscripten] Improve syncfs synchronisation on exit/abort
2023-08-31 12:59:12 +02:00
Patric Stout
502414b567
Fix: [Emscripten] config not saved on exit game ( #11248 )
...
When changing a Game Option and pressing Exit Game, the changes
were not actually stored. This because the post-mainloop code
was never executed for Emscripten.
2023-08-31 10:10:11 +01:00
Patric Stout
ecb4bb5161
Change: for surveys capture more information about the OpenTTD version ( #11244 )
2023-08-30 12:14:32 +02:00
translators
5e75afb628
Update: Translations from eints
...
catalan: 2 changes by J0anJosep
2023-08-28 18:38:07 +00:00
Patric Stout
a3d631ffed
Change: make nlohmann a mandatory library to build OpenTTD ( #11235 )
2023-08-28 19:04:36 +02:00
Patric Stout
abc060525d
Add: calendar date for Survey results
...
This means no heuristics is possible on around which date people
play the game.
2023-08-28 13:02:52 +02:00
Patric Stout
b0d7cfaa3d
Change: [Win32] don't allocate 192KiB of memory on the stack on crash ( #11240 )
...
Heap is out of the question, as it might be corrupted.
Allocating this much on stack is silly.
So instead, allocate virtual pages to write the information in.
2023-08-28 12:14:11 +02:00
Patric Stout
de5e338a76
Change: mention in MacOS / Windows crashlog popup when files couldn't be generated ( #11239 )
...
For example, if the crash.sav couldn't be created, and the TryExcept
detected an issue, write out that the file is not available in
the popup.
2023-08-27 22:49:12 +00:00
Joan Josep
be9a690f41
Fix #9642 : Keep infrastructure totals when overbuilding road depots. ( #11229 )
2023-08-28 00:20:37 +02:00
Patric Stout
d4312c59a4
Codechange: [MacOS] use backtrace() instead of our custom variant ( #11233 )
...
As mentioned in the comment, we only did it ourselves as we once
were compatible with versions before 10.5. But that time has long
gone. So let's update the code to a bit more modern approach.
2023-08-27 22:32:11 +02:00
Joan Josep
5e6b5d981f
Codechange: Use existing functions in GetMonthlyInfrastructureCosts. ( #11237 )
2023-08-27 22:12:44 +02:00
Patric Stout
b00e483b0f
Change: recover when possible from crashes during a crash ( #11238 )
2023-08-27 21:54:05 +02:00
translators
99e4a14cdf
Update: Translations from eints
...
english (au): 1 change by krysclarke
finnish: 3 changes by hpiirai
danish: 1 change by bscargo
french: 1 change by glx22
portuguese (brazilian): 1 change by pasantoro
2023-08-27 18:39:02 +00:00
Patric Stout
29a37c2e0b
Change: [Win32] unify the crashlog handler with the other OSes ( #11236 )
...
While at it, make the crash text a bit more readable, and sync
this with MacOS.
2023-08-27 17:58:31 +00:00
translators
f2841e62d9
Update: Translations from eints
...
russian: 1 change by Ln-Wolf
turkish: 1 change by densxd
portuguese: 1 change by azulcosta
polish: 3 changes by pAter-exe
2023-08-26 18:38:15 +00:00
translators
6726918ab0
Update: Translations from eints
...
catalan: 30 changes by J0anJosep
2023-08-25 18:38:04 +00:00
Richard Wheeler
96fdfb941a
Feature: Transparency option for cost and income indicators ( #11001 )
2023-08-25 16:04:40 +02:00
Joan Josep
a938067d6b
Codechange: Invalid depot value is unrelated to invalid station value. ( #11227 )
2023-08-25 14:29:51 +02:00
translators
9aef380c99
Update: Translations from eints
...
italian: 43 changes by Rivarossi
french: 1 change by ottdfevr
2023-08-24 18:38:24 +00:00
translators
4d4a046d23
Update: Translations from eints
...
polish: 2 changes by pAter-exe
2023-08-22 18:39:08 +00:00
Jonathan G Rennison
2cbd76593a
Fix #11215 : Assert in NewGRF parameters window (manual parameter mode) ( #11217 )
2023-08-21 12:42:33 +02:00
Rubidium
6635f809dd
Fix #11181 : attempting to read string as int triggers assertion
2023-08-20 23:57:42 +02:00
Jonathan G Rennison
8df4aa7979
Fix: Road stops should not draw a ground sprite of 0 ( #11214 )
2023-08-20 15:46:19 -04:00
Patric Stout
45cc3acaf5
Codechange: [Win32] unify AppendDecodedStacktrace and LogStacktrace ( #11220 )
...
AppendDecodedStacktrace was already doing the same as LogStacktrace,
just with a different name.
2023-08-20 18:57:01 +00:00
translators
bc2dfc4691
Update: Translations from eints
...
turkish: 2 changes by BeratSJ
2023-08-20 18:39:09 +00:00
Patric Stout
352ac264a5
Remove: [Win32] module-list from crash.log ( #11219 )
...
Only Windows implemented this, and it opens the files to read them
to get a CRC. Doing this in a crash-handler is strange at best.
Lastly, nobody has actually ever used this information to come to
some sort of conclusion. The module-list is used in combination
with the crash.dmp, but this information is already embedded in
there.
2023-08-20 17:09:21 +00:00
Patric Stout
f120d2beb8
Add: use breakpad to create crash.dmp on MacOS / Linux too ( #11202 )
...
Normally only the Windows platform could create a crash.dmp, making
analysing crash-reports from MacOS / Linux rather tricky.
2023-08-20 17:16:08 +02:00
Patric Stout
8f6df242c4
Remove: [Win32] (pointer-only) stack trace in crash.log ( #11211 )
...
It only contains pointers, which nobody can decipher anyway.
So instead, just report "Not supported", like other targets do
when they can't print a sane stack trace.
2023-08-20 17:08:16 +02:00
Patric Stout
a5aebeb1b5
Remove: [Win32] register values in crash.log ( #11212 )
2023-08-20 16:59:22 +02:00
Loïc Guilloux
8c9ecde964
Change: Remove autosave from settings window ( #11218 )
...
It is broken since 4f4810d
and it's also in game options.
2023-08-20 14:33:02 +00:00
translators
93f4f1e83a
Update: Translations from eints
...
german: 40 changes by Wuzzy2
2023-08-19 18:38:46 +00:00
Patric Stout
cd10ddf9ae
Remove: last remnants of SunOS ( #11210 )
...
We have no evidence SunOS has been tried in the last few years,
and the code is awkward enough to just remove.
2023-08-19 00:52:58 +02:00
translators
7f5c0aab60
Update: Translations from eints
...
dutch: 2 changes by Afoklala
2023-08-18 18:38:21 +00:00
Patric Stout
5ac333c2cc
Fix: [MacOS] screen looks blue-ish when using newer SDKs ( #11207 )
...
The define kCGBitmapByteOrder32Host changed (around SDK 12?)
into an enum, which means an old #ifndef was triggering,
overwriting the value to 0. Sadly, 0 means Order16Big, causing
RGBA to become GRAB, which results in strange colours.
As we no longer support PPC, drop that piece of code completely.
2023-08-18 13:22:00 +02:00
Loïc Guilloux
2bf3c02fbf
Fix: no fast forward in network was ensured only from GUI side ( #11206 )
2023-08-17 21:14:39 +02:00
translators
e8c49d3543
Update: Translations from eints
...
swedish: 1 change by joeax910
2023-08-17 18:38:20 +00:00
Jonathan G Rennison
9061fef59c
Fix #11203 : [ICU] Glyph to char mapping with multiple runs ( #11204 )
2023-08-16 19:17:02 +00:00
translators
db1a9f00c0
Update: Translations from eints
...
dutch: 1 change by Bouke
2023-08-16 18:38:51 +00:00