Joan Josep
6b7537646d
Fix: Allow NewGRF inspection of road tiles. ( #11323 )
2023-09-20 22:54:34 +01:00
Peter Nelson
122bfa2afd
Codechange: Use less locals for station free names bitmask.
2023-09-20 21:57:51 +01:00
Peter Nelson
aeaa552385
Codechange: Use std::bitset instead of bool array.
...
This avoids use of C-style pointers and memset.
2023-09-20 21:57:51 +01:00
Peter Nelson
2eacf36d0a
Codechange: List fallback station names by ID instead of magic number.
...
This improves readability and intention of the station name generator.
2023-09-20 21:57:51 +01:00
frosch
f40816503f
Codechange: Add enum items for dynmically created setting dropdowns.
2023-09-20 22:35:32 +02:00
frosch
39e67b6f4c
Codechange: Use existing widget ids instead of raw numbers.
2023-09-20 22:35:32 +02:00
frosch
e0df937247
Fix b5885295: NewGRF preset dropdown was broken.
2023-09-20 22:35:32 +02:00
translators
72323ae9e6
Update: Translations from eints
...
danish: 20 changes by bscargo
2023-09-20 18:38:51 +00:00
Joan Josep
b9a1cb5d7c
Fix: Spelling of NIHAirport. ( #11322 )
2023-09-20 20:22:37 +02:00
PeterN
a0c6259e33
Codechange: Don't access cargo filter before it is initialized. ( #11321 )
...
The cargo filter list is initialized during window OnInit, but the first
build of the filtered list occurred before this.
2023-09-20 08:58:08 +01:00
PeterN
48dc4219ea
Codechange: Don't pass GUI cargo filter constants to command system. ( #11320 )
...
CMD_BUILD_VEHICLE expects CT_INVALID to indicate a new vehicle should not
be refitted on build, but the code passed CF_NONE instead. CF_NONE has the
same numeric value at CT_INVALID, so the test passed, but...
2023-09-20 08:56:53 +01:00
frosch
6b586dddad
Cleanup: TransmitNotesOff is only called with buffer==_buffer.
2023-09-19 22:49:59 +02:00
frosch
c84fd30317
Codechange: Add missing 'override'.
2023-09-19 22:49:59 +02:00
frosch
a7707302e6
Codechange: silence false warning.
2023-09-19 22:49:59 +02:00
frosch
55da426d44
Codechange: All ParagraphLayoutFactory::AppendToBuffer assume that the buffer has at least some space.
...
Assert on that.
2023-09-19 22:49:59 +02:00
frosch
baf7cc858b
Codechange: Rename ship docking tile related functions.
2023-09-19 22:49:59 +02:00
frosch
5733145c59
Cleanup: Remove unneeded parameters.
2023-09-19 22:49:59 +02:00
frosch
b5885295f0
Codechange: Use parameters, which should be used.
2023-09-19 22:49:59 +02:00
frosch
b6c8f301be
Codechange: Silence warnings about intentionally unused parameters.
2023-09-19 22:49:59 +02:00
Patric Stout
df400ef84a
Fix: only count distance traveled in vehicles for cargo payment ( #11283 )
...
No longer you can utilize the free (and instant) labour of station
workers, transporting your cargo from one part of the station to
the other. No more!
Based on patch by dP.
2023-09-19 22:16:31 +02:00
translators
710722e3c1
Update: Translations from eints
...
korean: 1 change by telk5093
2023-09-19 18:38:46 +00:00
Peter Nelson
6fb89b189f
Fix #11315 : Sort industries and cargoes by name* in industry chain window.
...
*Cargo types are sorted by the normal method so it's not strictly alphabetical.
2023-09-19 12:25:20 +01:00
Peter Nelson
106f29f761
Codechange: Use iteration to copy cargo list into CFT_CARGO.
2023-09-19 12:25:20 +01:00
Peter Nelson
4f8d06ff73
Codechange: Use uint8_t instead of byte for numeric values.
2023-09-19 12:25:20 +01:00
Peter Nelson
9457bda614
Codechange: Use std::fill instead of memset when initializing GUI cargo fields.
2023-09-19 12:25:20 +01:00
PeterN
18e75dbc88
Fix: Don't produce invalid cargo. ( #11314 )
...
Production for secondary industries did not always check that the produced cargo type isn't valid.
2023-09-18 22:43:03 +01:00
Peter Nelson
fd2dd4397f
Codechange: Use range-for and iterator to populate default cargo table.
2023-09-17 21:26:01 +01:00
Peter Nelson
280dce9543
Codechange: Reorder CargoSpec to reduce alignment padding.
2023-09-17 21:26:01 +01:00
Peter Nelson
e8cbc3c2c7
Codechange: Simplify initialization of default cargoes.
2023-09-17 21:26:01 +01:00
Rubidium
3a2509198f
Codechange: use better location for the "invalid" action sentinel value
...
It used to be a random sentinel for end-of-(widget-)list that was used to tell
that no action has taken place yet. Since the last action is practically the
widget that was pressed, add the sentinel to that enumeration.
2023-09-17 19:44:20 +02:00
Rubidium
09a7902d36
Fix 8ab0936: missed WIDGET_LIST_END removals
2023-09-17 19:44:20 +02:00
Jonathan G Rennison
3afb732c37
Fix #11307 : Incorrect GroupStatistics after selling leading wagon
...
When this results in a countable consist
2023-09-17 18:42:37 +01:00
Peter Nelson
14bcfff6f5
Codechange: Rename INVALID_CARGO to INVALID_CARGO_BITNUM
...
... to avoid future ambiguity.
2023-09-17 16:56:07 +01:00
Peter Nelson
9d1b131c44
Codechange: Use correct constant for invalid cargo type.
2023-09-17 16:56:07 +01:00
Rubidium
7ef22af2bb
Codechange: introduce and use function to raise and dirty a set of widgets when they are lowered
2023-09-17 16:03:01 +02:00
PeterN
6580ff1adb
Fix #11230 : Widget layout also failed for group-less vehicle list window. ( #11310 )
2023-09-17 10:03:24 +00:00
Rubidium
4cf88e068a
Remove: unused include of cstdarg/stdarg.h
2023-09-16 23:09:53 +02:00
Rubidium
8ab0936491
Codechange: use parameter pack/folding instead of va_arg macros for widget states
2023-09-16 23:09:53 +02:00
translators
30eba33f1e
Update: Translations from eints
...
english (us): 20 changes by 2TallTyler
2023-09-16 18:37:38 +00:00
frosch
c6f5b57f13
Fix #11297 , 4e9a871: SCC_GENDER_LIST tried to determine the gender from the wrong sub-string. ( #11299 )
2023-09-15 15:25:25 -04:00
Patric Stout
39ef4b503f
Fix: also apply cargo filters on shared groups in vehicle listing ( #11294 )
2023-09-15 21:22:58 +02:00
translators
8d90448153
Update: Translations from eints
...
romanian: 18 changes by bnegrut
turkish: 22 changes by densxd
dutch: 20 changes by Afoklala
portuguese: 21 changes by azulcosta
2023-09-15 18:37:57 +00:00
Jonathan G Rennison
42170e6c2b
Codechange: Rename RoadType parameter of MakeRoadDepot
...
See: #9642
2023-09-15 18:21:12 +02:00
frosch
a3f661cb66
Fix: compilation failed on gcc 10.2 due to missing include. ( #11300 )
...
'_exit' is defined in 'unistd.h'.
2023-09-15 09:26:03 +01:00
translators
ba51a34b4c
Update: Translations from eints
...
english (au): 20 changes by krysclarke
korean: 25 changes by telk5093
russian: 20 changes by Ln-Wolf
finnish: 20 changes by hpiirai
french: 20 changes by glx22
portuguese (brazilian): 20 changes by pasantoro
2023-09-14 18:37:08 +00:00
Patric Stout
37e2f99c09
Change: store crash logs in JSON format ( #11232 )
2023-09-14 20:13:27 +02:00
Peter Nelson
a0353af223
Codechange: Shuffle Depot members to reduce padding.
2023-09-14 09:50:58 +01:00
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