mirror of
https://github.com/OpenTTD/OpenTTD
synced 2026-01-17 01:12:39 +01:00
Codechange: Use EnumBitSet for VehicleRailFlags. (#14280)
This commit is contained in:
@@ -717,7 +717,7 @@ static uint32_t VehicleGetVariable(Vehicle *v, const VehicleScopeResolver *objec
|
||||
|
||||
if (v->type == VEH_TRAIN) {
|
||||
const Train *t = Train::From(v);
|
||||
bool is_powered_wagon = HasBit(t->flags, VRF_POWEREDWAGON);
|
||||
bool is_powered_wagon = t->flags.Test(VehicleRailFlag::PoweredWagon);
|
||||
const Train *u = is_powered_wagon ? t->First() : t; // for powered wagons the engine defines the type of engine (i.e. railtype)
|
||||
RailType railtype = GetRailType(v->tile);
|
||||
bool powered = t->IsEngine() || is_powered_wagon;
|
||||
@@ -725,7 +725,7 @@ static uint32_t VehicleGetVariable(Vehicle *v, const VehicleScopeResolver *objec
|
||||
|
||||
if (powered && has_power) SetBit(modflags, 5);
|
||||
if (powered && !has_power) SetBit(modflags, 6);
|
||||
if (HasBit(t->flags, VRF_TOGGLE_REVERSE)) SetBit(modflags, 8);
|
||||
if (t->flags.Test(VehicleRailFlag::Reversed)) SetBit(modflags, 8);
|
||||
}
|
||||
if (v->vehicle_flags.Test(VehicleFlag::CargoUnloading)) SetBit(modflags, 1);
|
||||
if (v->vehicle_flags.Test(VehicleFlag::BuiltAsPrototype)) SetBit(modflags, 10);
|
||||
@@ -839,7 +839,7 @@ static uint32_t VehicleGetVariable(Vehicle *v, const VehicleScopeResolver *objec
|
||||
case 0x47: return GB(v->GetEngine()->grf_prop.local_id, 8, 8);
|
||||
case 0x48:
|
||||
if (v->type != VEH_TRAIN || v->spritenum != CUSTOM_VEHICLE_SPRITENUM) return v->spritenum;
|
||||
return HasBit(Train::From(v)->flags, VRF_REVERSE_DIRECTION) ? CUSTOM_VEHICLE_SPRITENUM_REVERSED : CUSTOM_VEHICLE_SPRITENUM;
|
||||
return Train::From(v)->flags.Test(VehicleRailFlag::Flipped) ? CUSTOM_VEHICLE_SPRITENUM_REVERSED : CUSTOM_VEHICLE_SPRITENUM;
|
||||
|
||||
case 0x49: return v->day_counter;
|
||||
case 0x4A: return v->breakdowns_since_last_service;
|
||||
|
||||
Reference in New Issue
Block a user