Codechange: Store the rail type of rail engines as a RailTypes bitmask.

This commit is contained in:
Michael Lutz
2025-06-13 21:01:31 +02:00
parent 0715903b24
commit 3ac1a2f1e4
27 changed files with 184 additions and 87 deletions
+6 -6
View File
@@ -132,11 +132,11 @@ RailTypes GetCompanyRailTypes(CompanyID company, bool introduces)
const RailVehicleInfo *rvi = &e->u.rail;
if (rvi->railveh_type != RAILVEH_WAGON) {
assert(rvi->railtype < RAILTYPE_END);
assert(rvi->railtypes.Any());
if (introduces) {
rts.Set(GetRailTypeInfo(rvi->railtype)->introduces_railtypes);
rts.Set(GetAllIntroducesRailTypes(rvi->railtypes));
} else {
rts.Set(rvi->railtype);
rts.Set(rvi->railtypes);
}
}
}
@@ -161,11 +161,11 @@ RailTypes GetRailTypes(bool introduces)
const RailVehicleInfo *rvi = &e->u.rail;
if (rvi->railveh_type != RAILVEH_WAGON) {
assert(rvi->railtype < RAILTYPE_END);
assert(rvi->railtypes.Any());
if (introduces) {
rts.Set(GetRailTypeInfo(rvi->railtype)->introduces_railtypes);
rts.Set(GetAllIntroducesRailTypes(rvi->railtypes));
} else {
rts.Set(rvi->railtype);
rts.Set(rvi->railtypes);
}
}
}