Loïc Guilloux
a683f1c96b
Fix 98ac75e: non deterministic handling of train crashes ( #15338 )
2026-02-24 21:57:11 +01:00
Rubidium
9a5187bac8
Codechange: document return types and parameters
2026-02-21 06:13:15 +01:00
Rito12
7179ea8b02
Codechange: Fix all doxygen warnings related to train.h file.
...
Fixes 14 doxygen warnings.
The `head` parameter of `GroundVehicle::GetPoweredPartPower` virtual method is removed as it's always the same as the object it's called on.
2026-02-20 16:14:33 +01:00
Rubidium
b387f55ff7
Codechange: use designated initialisers for _tile_type_tunnelbridge_procs
2026-02-18 17:03:33 +01:00
Rubidium
a0b173b43c
Codechange: remove @return documentation for void methods
2026-02-15 20:30:26 +01:00
Rubidium
c6c06e13eb
Codefix: wrong parameter names and partially missing parameters
2026-02-02 16:31:46 +01:00
Rubidium
73232058d9
Codechange: deduplicate code by dereferencing in callee instead of callers
2026-02-01 15:50:17 +01:00
Rubidium
4adf494ebc
Codechange: enum-class-ify Commands
2026-01-28 23:32:51 +01:00
Peter Nelson
6addf5c704
Fix #15088 : When building a new train, the refit button state may be incorrect. ( #15162 )
...
Invalidate vehicle view window when the vehicle chain is changed.
Co-authored-by: Abigail <abigailthomsonhicks@gmail.com >
2026-01-24 19:12:22 +00:00
Cyprian Klimaszewski
97f3e5b70f
Codechange: Make TileType enum an enum class.
2026-01-24 08:34:05 +01:00
Cyprian Klimaszewski
322ce224b4
Codechange: Make Price an enum class.
2026-01-14 22:07:02 +01:00
Cyprian Klimaszewski
d405e4cb09
Codechange: Use proper widget type and update widgets properly ( #14870 )
...
For vehicle window.
2026-01-08 22:31:00 +00:00
Rubidium
2fcd4e189a
Codechange: replace 'new PoolItem(...' with 'PoolItem::Create(...'
2026-01-03 16:04:32 +01:00
Cyprian Klimaszewski
bbf582ff3a
Fix 92e895a: don't force proceed crashed trains
2025-12-07 13:19:50 +00:00
Cyprian Klimaszewski
99f04f27de
Doc: Update information for receiving a copy of GPL. ( #14869 )
2025-12-07 11:25:08 +00:00
Cyprian Klimaszewski
92e895a37a
Fix #14723 : Set force proceed to TFP_SIGNAL if next tile has signals. ( #14724 )
2025-12-06 18:12:03 +01:00
Peter Nelson
046b0c6267
Codechange: Use enum class and EnumBitSet for various order flags. ( #14783 )
2025-12-06 12:29:11 +00:00
Peter Nelson
0f5a4290df
Codechange: Use enum class for RailTileType
2025-11-17 20:46:05 +00:00
Peter Nelson
5ed8f1203b
Codechange: Cleanup unnecessary includes of spritecache.h ( #14678 )
2025-09-28 17:09:57 +00:00
Peter Nelson
42c9f84d74
Fix 3ac1a2f1e4: Game crash due to invalid vehicle type information. ( #14628 )
...
Use std::variant instead of union for vehicle info.
RailVehicleInfo is now non-POD so using in a union causes undefined behaviour.
2025-09-24 22:44:41 +01:00
Michael Lutz
3ac1a2f1e4
Codechange: Store the rail type of rail engines as a RailTypes bitmask.
2025-09-14 17:11:26 +02:00
Michael Lutz
0715903b24
Codechange: Use an enum for vehicle acceleration model.
2025-09-14 17:11:26 +02:00
Peter Nelson
921d83c324
Codechange: Unify structures with sprite sub-tile bounds and simplify bounding boxes. ( #14424 )
...
Lots of different structs contain variations on sub-tile bounds with different naming. Unify into a single struct that can be inherited and passed directly to AddSortableSpriteToDraw.
At the same time, offsets now work more logically: sub-tile bounds now specify the bounding box, and an offset can be applied to the sprite.
2025-07-22 00:02:00 +01:00
Peter Nelson
7c9c2aec49
Codechange: Use vehicle tile hash to search for free wagons. ( #14343 )
...
Avoids iterating the vehicle pool.
2025-06-08 19:07:43 +01:00
Peter Nelson
a2addf0fe7
Fix: Clear rail vehicle flipped flag if reverse probability callback returns false. ( #14281 )
...
This now distinguishes between not-flipped and callback not implemented.
2025-05-20 23:03:55 +01:00
Peter Nelson
ce83f583bc
Codechange: Use EnumBitSet for VehicleRailFlags. ( #14280 )
2025-05-19 18:56:45 +01:00
frosch
c6fa5022cb
Add: [NewGRF] All callbacks returning D0xx strings, have now the option to return any string id via register 0x100.
2025-05-09 12:39:11 +02:00
frosch
be39a05327
Fix: Road vehicle blocking and train collissions used slightly inconsistent distance thresholds.
2025-04-26 19:32:59 +02:00
frosch
3a70d1e2f7
Codechange: Pass the max-distance as parameter to VehiclesNearTileXY.
2025-04-26 19:32:59 +02:00
frosch
98ac75e74f
Codechange: Replace FindVehicleOnPosXY/HasVehicleOnPosXY with VehiclesNearTileXY/HasVehicleNearTileXY.
2025-04-26 16:54:56 +02:00
frosch
2bee313642
Codechange: Replace FindVehicleOnPos with 'for' loop.
2025-04-22 22:12:59 +02:00
frosch
06c399b79e
Codechange: Replace HasVehicleOnPos and callbacks with HasVehicleOnTile and lambda-predicates.
2025-04-22 22:12:59 +02:00
frosch
d7ddea4032
Codechange: Turn AnimationTrigger enums into enum classes. ( #14067 )
2025-04-21 20:53:31 +02:00
frosch
61a0a520f6
Codechange: Unify random trigger enums and turn them into enum classes. ( #14066 )
2025-04-21 20:03:34 +02:00
Peter Nelson
fc45bb5a2b
Codechange: Replace bitstuffed VehicleEnterTileStatus. ( #14027 )
...
VehicleEnterTileStatus was an bitset-style enum, but bitstuffed with a StationID. However the StationID part was only used by trains, and only in two locations.
Instead, return just the enum bitset. The two places which require the StationID just call GetStationIndex() directly.
2025-04-20 21:10:02 +01:00
frosch
b862d4937f
Codechange: Turn custom vehicle spritenums into enum, and use them consistently. ( #14022 )
2025-04-18 15:19:28 +02:00
Björn Wärmedal
d009bfc47b
Codechange: Add vehicle owner to crash event ( #13878 )
...
Co-authored-by: Björn Wärmedal <bjorn.warmedal@lumera.com >
2025-03-25 22:53:44 +01:00
Peter Nelson
47d078c033
Codechange: Use EnumBitSet for RailTypes.
2025-03-25 20:15:48 +00:00
Peter Nelson
79ef4e98fe
Codechange: Use std::swap() instead of Swap() ( #13883 )
2025-03-24 23:47:34 +00:00
Peter Nelson
8b39b23d2b
Codechange: Use EnumBitSet for VehicleFlags. ( #13793 )
2025-03-13 08:38:54 +00:00
Peter Nelson
7c97460080
Codechange: Use EnumBitSet for ConsistChangeFlags. ( #13788 )
2025-03-09 21:13:57 +00:00
Peter Nelson
91d22f7617
Codechange: Use EnumBitSet for VehStates. ( #13755 )
...
Renamed from VehStatus because pluralising that is weird.
2025-03-08 18:24:21 +00:00
Peter Nelson
6e10584b91
Codechange: Use EncodedStrings for News messages. ( #13654 )
2025-02-23 20:24:02 +00:00
Rubidium
fd4adc55e3
Codechange: replace INVALID_X with XID::Invalid() for PoolIDs
2025-02-16 20:23:00 +01:00
Rubidium
59df0ff496
Codechange: strongly type StationID
2025-02-16 18:25:51 +01:00
Peter Nelson
2d7d085e8e
Codechange: Use EncodedString for error messages. ( #13569 )
2025-02-16 10:04:32 +00:00
Peter Nelson
6cf7a899e9
Codechange: Use EnumBitSet for PauseMode. ( #13553 )
2025-02-14 08:30:04 +00:00
Rubidium
c3d5e6d2a0
Codechange: Use EnumBitSet for DoCommandFlags
2025-02-14 00:28:57 +01:00
Peter Nelson
75387b9e2b
Codechange: Use EnumBitSet for StationFacility.
2025-02-13 18:03:13 +00:00
Peter Nelson
ca75a8ce19
Codechange: Use enum class for NewsType.
2025-02-07 19:36:52 +00:00