Peter Nelson and GitHub
a7a025623e
Codechange: make RailVehicleType a scoped enum ( #15576 )
2026-05-04 22:58:05 +01:00
Peter Nelson and GitHub
792f6d99a3
Codechange: make ExpensesType a scoped enum ( #15572 )
2026-05-04 08:20:52 +01:00
Jonathan G Rennison and rubidium42
bbe5dbf230
Cleanup: Correct various spelling errors
2026-04-27 21:05:08 +02:00
Peter Nelson and Peter Nelson
77403627a8
Codechange: make VehicleType a scoped enum
2026-04-26 07:00:13 +01:00
Peter Nelson and Peter Nelson
c45aa3c9b6
Codechange: use EnumBitSet for CargoTypes
2026-04-21 17:13:31 +01:00
Peter Nelson and GitHub
16b192d61f
Fix #15511 : vehicle passed to commands must be a company buildable type ( #15512 )
2026-04-19 17:03:39 +01:00
Tyler Trahan
2b530751dd
Feature: Trains with an engine on the rear drive backwards when reversing
2026-04-13 21:52:22 -04:00
Cyprian Klimaszewski and rubidium42
21bee91fa7
Codechange: Make some variables and constants documentation comments recognised by doxygen.
2026-02-21 15:05:13 +01:00
Rubidium and rubidium42
73232058d9
Codechange: deduplicate code by dereferencing in callee instead of callers
2026-02-01 15:50:17 +01:00
Rubidium and rubidium42
4adf494ebc
Codechange: enum-class-ify Commands
2026-01-28 23:32:51 +01:00
Rubidium and rubidium42
d4f0ff927e
Codechange: make aircraft vehicle flags enum-class and EnumBitSet
2026-01-16 07:33:13 +01:00
Cyprian Klimaszewski and rubidium42
322ce224b4
Codechange: Make Price an enum class.
2026-01-14 22:07:02 +01:00
Rubidium and rubidium42
13cf05c941
Codechange: remove unused parameter and unneeded heap allocation
2026-01-03 18:34:37 +01:00
Cyprian Klimaszewski and GitHub
99f04f27de
Doc: Update information for receiving a copy of GPL. ( #14869 )
2025-12-07 11:25:08 +00:00
Peter Nelson and GitHub
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
Tyler Trahan and GitHub
5dea170589
Fix #14588 : Show error when unable to clone partly-cleared crashed train ( #14591 )
2025-09-15 19:05:35 -04:00
Rubidium and rubidium42
7c0f69a8fe
Codefix: typos in comments and strings
2025-08-31 10:30:37 +02:00
Peter Nelson and GitHub
f2318c35db
Fix 0455627d16: Order backups were no longer created when selling vehicles. ( #14352 )
2025-06-10 18:03:05 +01:00
Peter Nelson and GitHub
0455627d16
Codechange: Move ownership of Orders to OrderList. ( #13948 )
...
Removes the orders pool, and orders are now stored directly in each OrderList.
Iterating orders now no longer needs to traverse a linked-list, all orders in an OrderList are sequential.
2025-05-23 10:36:28 +01:00
Peter Nelson and GitHub
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 and GitHub
ce83f583bc
Codechange: Use EnumBitSet for VehicleRailFlags. ( #14280 )
2025-05-19 18:56:45 +01:00
frosch and 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
Peter Nelson and GitHub
2c59838acb
Codechange: (re)set multiple bitset flags in one call. ( #14017 )
2025-04-18 14:07:57 +01:00
frosch and GitHub
04246c530f
Codechange: Use fmt::format instead of stringstream with iomanip flags. ( #13964 )
2025-04-08 20:57:50 +00:00
Peter Nelson and GitHub
89948b941b
Codechange: Use emplace_back instead of push_back. ( #13855 )
2025-03-20 17:39:10 +00:00
Peter Nelson and GitHub
17f7d0950e
Fix #13838 : Formatted error message of sub-errors may be lost. ( #13840 )
2025-03-18 08:39:40 +00:00
Rubidium and rubidium42
5ea5855677
Codechange: use std::move over copying where applicable
2025-03-16 17:33:06 +01:00
Rubidium and rubidium42
754311a779
Codechange: use std::move when appropriate
2025-03-13 13:00:24 +01:00
Peter Nelson and GitHub
91d22f7617
Codechange: Use EnumBitSet for VehStates. ( #13755 )
...
Renamed from VehStatus because pluralising that is weird.
2025-03-08 18:24:21 +00:00
Rubidium and rubidium42
fd4adc55e3
Codechange: replace INVALID_X with XID::Invalid() for PoolIDs
2025-02-16 20:23:00 +01:00
Rubidium and rubidium42
c3d5e6d2a0
Codechange: Use EnumBitSet for DoCommandFlags
2025-02-14 00:28:57 +01:00
Peter Nelson and GitHub
d61b376998
Codechange: Use EnumBitSet for CargoClasses. ( #13491 )
2025-02-08 08:46:38 +00:00
Peter Nelson and GitHub
ffb5e71a28
Fix: Missing error messages with sell- and autoreplace-all commands. ( #13469 )
...
If these commands failed then then the error message part was blank.
2025-02-04 22:30:42 +00:00
Peter Nelson and Peter Nelson
6c4ddb242a
Codechange: Use EnumBitSet for EngineMiscFlags.
2025-01-31 18:55:31 +00:00
Peter Nelson and Peter Nelson
f51627c76f
Codechange: Use EnumBitSet for DepotCommand(Flag)s.
2025-01-29 21:46:39 +00:00
Rubidium and rubidium42
e894a5880c
Codechange: rename CargoID to CargoType and amend related variables/comments
2025-01-26 18:07:10 +01:00
Rubidium and rubidium42
08d84b2f4a
Codechange: use AdviceType over StringID to remove vehicle advice news
2025-01-08 02:03:55 +01:00
Peter Nelson and Peter Nelson
2d372fa516
Codechange: NewGRF strings are not StringIDs.
...
Add GRFStringID type and use it when dealing with GRF-local string IDs.
2025-01-02 20:03:40 +00:00
Peter Nelson and GitHub
1e77fd0b61
Codechange: Remove unnecessary 'return_cmd_error` macro. ( #13160 )
...
This macro is a leftover from when errors used to be packed into a single int32_t.
`return CommandCost` is clearer, and doesn't need a macro.
2024-12-08 18:02:30 +00:00
Peter Nelson and Peter Nelson
3be0166801
Codechange: Use std::ranges::find where possible.
...
Replace `std::find(range.begin(), range.end(), ...)` with `std::ranges::find(range, ...)`.
2024-11-24 10:36:03 +00:00
Peter Nelson and GitHub
376e882a14
Codechange: Add HasFlag() to test if a value is present in a bitset enum type. ( #12959 )
...
This simplifies tests for `(x & y) != y` with enum classes by reducing repetition, similar to HasBit(), and also makes the intent of the expression clearer.
2024-09-22 14:51:37 +01:00
Patric Stout and GitHub
a3cfd23cf9
Codechange: rename byte to uint8_t ( #12308 )
2024-03-16 23:59:32 +01:00
Peter Nelson and GitHub
e93d081a4a
Codechange: Use range-for instead of indexed loop. ( #12191 )
2024-02-27 18:18:57 +00:00
Peter Nelson and GitHub
56cf89d189
Change: Use bitmap for free unit ID generation. ( #12165 )
...
This improves performance of finding the next free unit number for a vehicle.
Based loosely on pool's used slot bitmap.
2024-02-25 12:36:13 +00:00
Peter Nelson and GitHub
2fd9096070
Change: Decouple and remove landscape-dependent cargo types. ( #11719 )
...
Cargo types of default engines, industries and houses are now specified in terms of label.
2024-02-04 10:16:08 +00:00
Tyler Trahan and GitHub
f6dd5053a3
Feature: Order flag to unbunch vehicles at depot ( #11945 )
2024-02-03 08:04:24 -05:00
Peter Nelson and Peter Nelson
952d111b94
Codechange: Split CT_INVALID into CT_INVALID and INVALID_CARGO.
...
INVALID_CARGO is a CargoID and should be used for most purposes in game.
CT_INVALID is a CargoType used for defining default properties.
2024-01-09 18:56:05 +00:00
Peter Nelson and GitHub
e6d132d24b
Fix #10926 : New free wagons no longer split by type. ( #11507 )
...
NormalizeTrainVehInDepot() should only be called if an engine was built, not for wagons.
2023-11-28 13:48:09 +00:00
Rubidium and rubidium42
eaae0bb5e7
Codechange: automatic adding of _t to (u)int types, and WChar to char32_t
...
for i in `find src -type f|grep -v 3rdparty/fmt|grep -v 3rdparty/catch2|grep -v 3rdparty/opengl|grep -v stdafx.h`; do sed 's/uint16& /uint16 \&/g;s/int8\([ >*),;[]\)/int8_t\1/g;s/int16\([ >*),;[]\)/int16_t\1/g;s/int32\([ >*),;[]\)/int32_t\1/g;s/int64\([ >*),;[]\)/int64_t\1/g;s/ uint32(/ uint32_t(/g;s/_uint8_t/_uint8/;s/Uint8_t/Uint8/;s/ft_int64_t/ft_int64/g;s/uint64$/uint64_t/;s/WChar/char32_t/g;s/char32_t char32_t/char32_t WChar/' -i $i; done
2023-07-19 19:30:14 +02:00
PeterN and GitHub
2a2443dd01
Feature: Create group of vehicles from manage vehicle list button. ( #10890 )
2023-06-18 20:48:04 +01:00