Jonathan G Rennison
e17420777a
Fix #10637 : Incorrect water infra total when building multi-tile object
...
Wrong tile used in ownership checks
1 year ago
PeterN
3b2eb11fe8
Codechange: Use cached name for all station/industry/town name formatting. ( #10634 )
...
This reuses an existing name caching mechanism to avoid "recalculating" names every time.
1 year ago
translators
d7f0c5d6d8
Update: Translations from eints
...
russian: 3 changes by Ln-Wolf
finnish: 7 changes by hpiirai
polish: 17 changes by pAter-exe
1 year ago
translators
9e69556e2f
Update: Translations from eints
...
english (au): 13 changes by krysclarke
english (us): 15 changes by 2TallTyler
russian: 12 changes by Ln-Wolf
1 year ago
PeterN
ce046f6d17
Fix: Abort loading savegame if road vehicle is on invalid road type. ( #10622 )
...
This can happen if NewGRFs are missing so that engine or road type definitions are wrong.
1 year ago
Charles Pigott
ce24709576
Add: Some additional debugging information when chunk sizes are incorrect
1 year ago
Charles Pigott
8aea13a85b
Codechange: Use fmt for SlErrorCorruptFmt
1 year ago
PeterN
246ba6f00a
Fix 8361cf5a73: Missing bounds check for house specs. ( #10625 )
1 year ago
dP
e2f1cd44dc
Change: Increase max cargo age and let min cargo payment approach zero. ( #10596 )
...
Co-authored-by: Michael Lutz <michi@icosahedron.de>
1 year ago
translators
58e629ca84
Update: Translations from eints
...
korean: 8 changes by telk5093
russian: 7 changes by Ln-Wolf
finnish: 8 changes by hpiirai
1 year ago
PeterN
078e27bd84
Fix #10619 : Crash loading linkgraph for older savegames. ( #10620 )
1 year ago
Rubidium
c6ff7dad68
Add: compile time "unit tests" for GetPartialZ consistent
1 year ago
Rubidium
41ef7c88af
Codechange: make a numer of Slope related functions constexpr
1 year ago
Rubidium
9d2a0f3d0b
Change: make GetPartialZ consistent, meaning Z of adjacent slopes continue
...
Previously, on a straight line of a one corner up slope with the adjacent
steep sloop the Z would increase one step every two sub pixels, except for one
case where one sub pixel is skipped. Similarly, a steep slope with two
adjacent one corner up slopes, would have a bump in the height line along the
diagonal whenever it enters/leaves the steep slope tile.
1 year ago
Rubidium
1fcd69096c
Fix: do not update a RV's Z-position when stationary while turning
...
When the direction of a RV changes the Z-position update logic was called,
which did nothing to the Z-position because that is only changed every other
step. By chance/luck this never triggered with RV's turning around, until
making the partial Z calculations consistent and moving the locations where
the Z-position is changed, causing the Z-position to be changed twice for
the RV that stayed at the same location.
1 year ago
Rubidium
e8af8daa68
Codechange: pass "ground vehicle" to GetTileSlopeZ since for tunnel/bridges there are two states
...
Previously it checked the position in non-driving direction to "guess" whether
a ground vehicle was using the function, so on tunnels/bridges it could either
return the Z of the (virtual) ground compared to the Z of the path the vehicle
would take.
1 year ago
Alberth289346
1321e48465
Fix: Update top toolbar tooltips for added features. ( #10616 )
2 years ago
Tyler Trahan
97bdf99239
Codechange: Add a property to graph windows for whether to draw dates ( #10608 )
2 years ago
translators
39c6b3def1
Update: Translations from eints
...
english (au): 2 changes by krysclarke
russian: 2 changes by Ln-Wolf
2 years ago
Tyler Trahan
0de5eb53fa
Codechange: Use constants for service interval max/min/default values ( #10611 )
2 years ago
Tyler Trahan
1691640603
Fix: Specify units for value of share trading age setting ( #10612 )
2 years ago
PeterN
f1144de509
Feature: Separate rail/road and sea/air velocity units, and add knots. ( #10594 )
...
This is achieved by packing vehicle type along with the velocity so that
the string system can decode and pick the appropriate unit.
2 years ago
glx22
3a48d6e60f
Fix 991a797: [Script] Allow STRINGN consumption to be different than expected
2 years ago
Jonathan G Rennison
43cea852a6
Fix 41b414b: Validate RAW_STRING parameter values in game_script mode
2 years ago
Peter Nelson
47e12a8790
Codechange: Check that CompanyMask fits into 16 bits during compilation.
2 years ago
Peter Nelson
5199881a8d
Codechange: Use correct type for linkgraph company mask.
2 years ago
Peter Nelson
65e0b0dcb7
Codechange: Be consistent with how company masks are set to all.
2 years ago
Peter Nelson
08977828cc
Fix: Check ID for name is within bounds.
2 years ago
Peter Nelson
cd6c04a663
Fix: Check station ID is within bounds when copying layouts.
2 years ago
Peter Nelson
8361cf5a73
Fix: Check sprite group mapping ID is within bounds of feature.
2 years ago
Peter Nelson
96f4eb3681
Codechange: Check NewGRF feature is defined before processing any sprite group mapping.
...
Previously this was checked after loading ids, or repeatedly checked for
each item.
2 years ago
Peter Nelson
04215afe3f
Codechange: Replace roadstop spec limit magic number with constant.
2 years ago
translators
9246789fd3
Update: Translations from eints
...
spanish (mexican): 2 changes by GNosii
vietnamese: 2 changes by KhoiCanDev
czech: 1 change by jachymozo
romanian: 10 changes by bnegrut
danish: 3 changes by bscargo
2 years ago
Loïc Guilloux
e4c511d403
Fix #10578 : Allow to select any version of AI/GS from GUI ( #10604 )
2 years ago
Peter Nelson
82c70ed3b8
Change: Expose ObjectSpec vector to simplify iteration.
2 years ago
Peter Nelson
1f46f080f0
Codechange: Store objectspecs in std::vector instead of flat array.
2 years ago
Peter Nelson
93197f58b7
Codechange: Bind objectspecs to classes once all finalised.
2 years ago
Peter Nelson
02961fd7af
Codechange: Use std::vector for NewGRF class lists.
2 years ago
PeterN
73474b08fe
Fix: Clicking on editbox clear button didn't take account of padding. ( #10583 )
2 years ago
PeterN
c1077212d7
Codechange: Use a shared_ptr for viewport overlay. ( #10586 )
2 years ago
translators
c905824248
Update: Translations from eints
...
chinese (traditional): 14 changes by inAndyPao
danish: 1 change by bscargo
2 years ago
Loïc Guilloux
9642e87bc8
Fix: [Script] Access to enum/consts defined outside of main.nut ( #10573 )
2 years ago
Tyler Trahan
0bf6f82305
Cleanup: Don't mix switches and early returns in widget selection
2 years ago
Tyler Trahan
066ae6f3fb
Codechange: Simplify some CodeQL-flagged trivial switches
2 years ago
translators
a15e584e40
Update: Translations from eints
...
japanese: 27 changes by fmang
chinese (simplified): 12 changes by XiaoJi-Game
2 years ago
translators
24e9af83aa
Update: Translations from eints
...
japanese: 22 changes by fmang
2 years ago
translators
83eb73a9b2
Update: Translations from eints
...
japanese: 12 changes by fmang
2 years ago
translators
1d915214a1
Update: Translations from eints
...
japanese: 31 changes by fmang
2 years ago
translators
d15a14bd9e
Update: Translations from eints
...
japanese: 32 changes by fmang
danish: 7 changes by bscargo
2 years ago
Tyler Trahan
e5438891e2
Cleanup: Keep spacing saveload versions by groups of five ( #10576 )
2 years ago
translators
1424b7b49e
Update: Translations from eints
...
french: 14 changes by ZarTek-Creole
2 years ago
translators
3254d65b3e
Update: Translations from eints
...
swedish: 17 changes by joeax910
czech: 13 changes by jachymozo
danish: 3 changes by bscargo
2 years ago
translators
0bf6d80cd7
Update: Translations from eints
...
danish: 161 changes by bscargo
2 years ago
Rubidium
24b5033a06
Fix #10568 : "can savegame be loaded check" failed in dedicated server
...
* If loading fails, it usually returns SL_REINIT which doesn't trigger check
* If savegame has NewGRFs, it complains NewGRFs are not allowed in intro game
2 years ago
translators
be69aa6257
Update: Translations from eints
...
vietnamese: 1 change by KhoiCanDev
korean: 3 changes by telk5093
german: 30 changes by Wuzzy2
slovak: 14 changes by legitalk
dutch: 12 changes by Afoklala
2 years ago
Peter Nelson
e999aa2923
Fix: Don't (briefly) switch from title-only playlist on menu screen.
...
Switching playlist while on the menu screen now only changes the playlist
that will be used when out of the menu screen.
2 years ago
Peter Nelson
3b90b85439
Change: Allow jukebox lists to fill window width.
2 years ago
Peter Nelson
0c4e2ce114
Change: Resize jukebox when changing music set.
2 years ago
Peter Nelson
1ec34acb51
Fix: Truncated music-set song names cause warning log.
...
The music-set does not need to be selected for this to occur.
Resolved by using std::string instead of fixed buffer for song names,
which avoids manual string copying and removes the length limit.
2 years ago
PeterN
2d3250923c
Fix #10554 : Let Scrollbar::SetPosition clamp instead of assert. ( #10555 )
2 years ago
Rubidium
1e4a89177e
Fix: crashes to desktop from game scripts when companies disappear
...
When a game script is in company mode, it pretends to be another company. When
that company disappear (bankruptcy/merger), the game script still uses that
company and it keeps calling functions as if it is that company.
For example, ScriptEngine::IsBuildable internally dereferences Company without
checks, causing a null dereference for any ScriptEngine function when called
from a company scope of a company that has disappeared.
Guard against this by extending the ScriptCompanyScope::IsValid check to also
check for the company still being active.
2 years ago
Rubidium
717f79ff22
Add: deity mode enforcement checks to functions with command or company access
...
Command functions are those that call ScriptObject::Command, and functions
with company access are any that call ScriptObject::GetCompany. This is a bit
over-protective, but having the check everywhere makes it easier to validate
that no check is missing automatically instead of by review.
2 years ago
Rubidium
8d443d1379
Add: company mode enforcement checks to functions with command or company access
...
Command functions are those that call ScriptObject::Command, and functions
with company access are any that call ScriptObject::GetCompany. This is a bit
over-protective, but having the check everywhere makes it easier to validate
that no check is missing automatically instead of by review.
2 years ago
Rubidium
534f2419ad
Add: precondition checks to functions that work with both valid company and deity
...
These are functions that either use ScriptObject::Command or ScriptObject::GetCompany.
This is a bit over-protective, but having the check everywhere makes it easier to
validate that no check is missing automatically instead of by review.
At this moment these checks will not do anything useful, as either IsValid or
IsDeity from ScriptCompanyMode returns true, but that will change later.
2 years ago
Rubidium
a79f97c022
Change: upon an invalid company mode, set ERR_PRECONDITION_INVALID_COMPANY instead of ERR_PRECONDITION_INVALID
2 years ago
Joan Josep
d80f193e74
Fix: Improve grfmessage for ShipVehicleChangeInfo. ( #10558 )
2 years ago
translators
4af7f3e645
Update: Translations from eints
...
catalan: 13 changes by J0anJosep
2 years ago
Jonathan G Rennison
c74dfe393f
Fix #10556 : Duplication of road infrastructure count updates ( #10557 )
...
When building a road stop
2 years ago
Rubidium
3287acd114
Fix 13528bfcd0: bank balance command allows int64, GS was limited to int32
2 years ago
Peter Nelson
b6609d1833
Fix: Network server highlight invisible with RTL layout.
2 years ago
translators
df2b66ad5d
Update: Translations from eints
...
english (au): 14 changes by krysclarke
romanian: 3 changes by bnegrut
finnish: 10 changes by hpiirai
2 years ago
Rubidium
83946ca31d
Codechange: use GSCompanyMode::IsValid, IsDeity, and the precondition helpers
...
Direct 1:1 replacements in the code, and comments now refer to either
GSCompanyMode::IsValid or GSCompanyMode::IsDeity instead of several variations
on "company mode active" or "no company mode active".
2 years ago
Rubidium
cada2ca310
Add: GSCompanyMode::IsValid and IsDeity, and precondition enforcement helpers
2 years ago
translators
665a73b3c7
Update: Translations from eints
...
english (us): 12 changes by 2TallTyler
korean: 14 changes by telk5093
portuguese: 12 changes by azulcosta
polish: 16 changes by pAter-exe
2 years ago
glx22
ca149447d7
Codechange: Use SQInteger for generic numbers in script_window
2 years ago
glx22
f752d96125
Codechange: Use SQInteger for generic numbers in script_vehicle
2 years ago
glx22
4e48bf2e16
Codechange: Use SQInteger for generic numbers in script_town
2 years ago
glx22
18fe0a4046
Codechange: Use SQInteger for generic numbers in script_tilelist
2 years ago
glx22
cada18a6f8
Codechange: Use SQInteger for generic numbers in script_tile
2 years ago
glx22
07b73a8c02
Codechange: Use SQInteger for generic numbers in script_subsidy
2 years ago
glx22
cd80b31d19
Codechange: Use SQInteger for generic numbers in script_storypage
2 years ago
glx22
a9a55f2153
Codechange: Use SQInteger for generic numbers in script_station
2 years ago
glx22
446ebaa6b9
Codechange: Use SQInteger for generic numbers in script_road
2 years ago
glx22
4f6a2f31b5
Codechange: Use SQInteger for generic numbers in script_rail
2 years ago
glx22
cb2e76aae3
Codechange: Use SQInteger for generic numbers in script_priorityqueue
2 years ago
glx22
777b4d0987
Codechange: Use SQInteger for generic numbers in script_order
2 years ago
glx22
49ea69fdef
Codechange: Use SQInteger for generic numbers in script_objecttype
2 years ago
glx22
0293fd41e5
Codechange: Use SQInteger for generic numbers in script_news
2 years ago
glx22
f22903ab14
Codechange: Use SQInteger for generic numbers in script_newgrf
2 years ago
glx22
ca67075397
Codechange: Use SQInteger for generic numbers in script_map
2 years ago
glx22
a225fda9fe
Codechange: Use SQInteger for generic numbers in script_list
2 years ago
glx22
74ab9ee9dd
Codechange: Use SQInteger for generic numbers in script_league
2 years ago
glx22
367b2ba6d1
Codechange: Use SQInteger for generic numbers in script_infrastructure
2 years ago
glx22
5eaf9d39bf
Codechange: Use SQInteger for generic numbers in script_industrytype
2 years ago
glx22
6671994655
Codechange: Use SQInteger for generic numbers in script_industry
2 years ago
glx22
8eb35633ec
Codechange: Use SQInteger for generic numbers in script_group
2 years ago
glx22
6ca8499e6a
Codechange: Use SQInteger for generic numbers in script_goal
2 years ago
glx22
e784915b27
Codechange: Use SQInteger for generic numbers in script_gamesettings
2 years ago
glx22
6b8b4c392f
Codechange: Use SQInteger for generic numbers in script_engine
2 years ago
glx22
2f40bf8097
Codechange: Use SQInteger for generic numbers in script_date
2 years ago
glx22
424ae74504
Codechange: Use SQInteger for generic numbers in script_companymode
2 years ago
glx22
89c0841d0a
Codechange: Use SQInteger for generic numbers in script_company
2 years ago
glx22
7727323dbe
Codechange: Use SQInteger for generic numbers in script_cargomonitor
2 years ago
glx22
40424601c6
Codechange: Use SQInteger for generic numbers in script_cargo
2 years ago
glx22
83826b1793
Codechange: Use SQInteger for generic numbers in script_bridgelist
2 years ago
glx22
58bf2f7176
Codechange: Use SQInteger for generic numbers in script_bridge
2 years ago
glx22
73561802cb
Codechange: Use SQInteger for generic numbers in script_airport
2 years ago
glx22
b6f3552e4b
Fix: [Script] Inconsistent precondition failure return values
2 years ago
glx22
e06a666fa2
Fix: remove ScriptController constructor from API documentation
2 years ago
glx22
67a4c5e0db
Codechange: Use {fmt} for script_admin JSON generation
2 years ago
glx22
ce8cde3b8d
Fix: [Script] Detect circular references in ScriptText
2 years ago
glx22
9a957f1d4b
Change: [Script] Improve ScriptText validation error messages
2 years ago
Rubidium
8fa61533f0
Fix 30ae072: when a road type is hidden, towns may not build them even when that flag is set
2 years ago
translators
e60632bce6
Update: Translations from eints
...
italian: 12 changes by Rivarossi
russian: 14 changes by Ln-Wolf
finnish: 2 changes by hpiirai
portuguese (brazilian): 14 changes by ericandradex
2 years ago
Rubidium
30ae07269d
Fix: game scripts must not build with non-existing road types
2 years ago
dP
01ebfad809
Fix 3719f60: Crash when copying non-station orders ( #10540 )
2 years ago
translators
16a7bc54b3
Update: Translations from eints
...
finnish: 2 changes by hpiirai
catalan: 2 changes by J0anJosep
2 years ago
Jonathan G Rennison
87f4d37de3
Fix #10522 : Link graph line tooltip test for vertical lines ( #10524 )
2 years ago
Tyler Trahan
3719f60de0
Add: Use specific error message when vehicle cannot go to station/waypoint
2 years ago
Tyler Trahan
44848f4edf
Add: CommandCost supports an optional second error string
2 years ago
dP
e3169c73bd
Fix: Restore using founder client name as company manager name ( #10535 )
2 years ago
translators
ec8b2836df
Update: Translations from eints
...
english (us): 2 changes by 2TallTyler
dutch: 2 changes by Afoklala
polish: 3 changes by pAter-exe
2 years ago
translators
58aa769282
Update: Translations from eints
...
vietnamese: 2 changes by KhoiCanDev
italian: 2 changes by Rivarossi
russian: 2 changes by Ln-Wolf
turkish: 3 changes by EndChapter
portuguese: 2 changes by azulcosta
2 years ago
Loïc Guilloux
2a2e51765a
Cleanup 54db96b: Left-over function declaration ( #10528 )
2 years ago
translators
9bdcbc5af7
Update: Translations from eints
...
french: 3 changes by glx22
2 years ago
Jonathan G Rennison
0e4b716815
Fix: O(N^2) cost of Station::RecomputeCatchmentForAll
...
Station::RemoveFromAllNearbyLists does not need to be called when
all station nearby lists have been cleared and are being regenerated.
2 years ago
Jonathan G Rennison
5d0ad5625b
Fix : [NewGRF] Object and road stop ignore property handlers ( #10525 )
...
* Fix: IgnoreObjectProperty did not handle object property 0x18
* Fix: IgnoreRoadStopProperty did not handle properties 0x0E - 0x12, 0x15
2 years ago
Zachary
e17c82e32b
Add: maximum number of companies allowed to the client list
2 years ago
translators
6f9b3fa964
Update: Translations from eints
...
chinese (traditional): 7 changes by inAndyPao
2 years ago
glx22
41b414bc1c
Change: [Script] Restore support of {RAW_STRING} in ScriptText
2 years ago
glx22
991a797e09
Change: [Script] Validate ScriptText parameters type and amount
2 years ago
Rubidium
728973859d
Change: [Script] Automate the ScriptObject reference counting
2 years ago
glx22
a1fc4d5c0e
Codechange: [Script] Merge the 3 ScriptText param arrays
2 years ago
glx22
af15dca316
Change: [Script] Extract params info from GS strings
2 years ago
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