Skip to content

Commit c9a5af5

Browse files
authored
show unknown vehicle flags, fix other misc mistakes (#67)
1 parent fdc4eb2 commit c9a5af5

17 files changed

+112
-112
lines changed

Dat/Objects/DockObject.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ namespace OpenLoco.Dat.Objects
99
public enum DockObjectFlags : uint16_t
1010
{
1111
None = 0,
12-
unk01 = 1 << 0,
12+
HasShadows = 1 << 0,
1313
};
1414

1515
[TypeConverter(typeof(ExpandableObjectConverter))]

Dat/Objects/Industry/IndustryObjectFlags.cs

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
namespace OpenLoco.Dat.Objects
1+
namespace OpenLoco.Dat.Objects
22
{
33
[Flags]
44
public enum IndustryObjectFlags : uint32_t
@@ -19,19 +19,19 @@ public enum IndustryObjectFlags : uint32_t
1919
BuiltRequiresOpenSpace = 1 << 12,
2020
Oilfield = 1 << 13,
2121
Mines = 1 << 14,
22-
unk15 = 1 << 15,
22+
NotRotatable = 1 << 15,
2323
CanBeFoundedByPlayer = 1 << 16,
2424
RequiresAllCargo = 1 << 17,
25-
unk18 = 1 << 18,
26-
unk19 = 1 << 19,
27-
unk20 = 1 << 20,
25+
unk_18 = 1 << 18,
26+
unk_19 = 1 << 19,
27+
RequiresElectricityPylons = 1 << 20,
2828
HasShadows = 1 << 21,
29-
unk22 = 1 << 22,
30-
unk23 = 1 << 23,
29+
unk_22 = 1 << 22,
30+
unk_23 = 1 << 23,
3131
BuiltInDesert = 1 << 24,
3232
BuiltNearDesert = 1 << 25,
33-
unk26 = 1 << 26,
34-
unk27 = 1 << 27,
35-
unk28 = 1 << 28,
33+
unk_26 = 1 << 26,
34+
unk_27 = 1 << 27,
35+
unk_28 = 1 << 28,
3636
}
3737
}

Dat/Objects/LandObject.cs

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,12 @@ namespace OpenLoco.Dat.Objects
99
public enum LandObjectFlags : uint8_t
1010
{
1111
None = 0,
12-
unk0 = 1 << 0,
13-
unk1 = 1 << 1,
12+
unk_00 = 1 << 0,
13+
unk_01 = 1 << 1,
1414
IsDesert = 1 << 2,
1515
NoTrees = 1 << 3,
16+
unk_04 = 1 << 4,
17+
unk_05 = 1 << 5,
1618
};
1719

1820
[TypeConverter(typeof(ExpandableObjectConverter))]
@@ -48,7 +50,7 @@ public ReadOnlySpan<byte> Load(ReadOnlySpan<byte> remainingData)
4850
remainingData = remainingData[S5Header.StructLength..];
4951

5052
// unused obj
51-
if (Flags.HasFlag(LandObjectFlags.unk1))
53+
if (Flags.HasFlag(LandObjectFlags.unk_01))
5254
{
5355
UnkObjHeader = S5Header.Read(remainingData[..S5Header.StructLength]);
5456
remainingData = remainingData[S5Header.StructLength..];
@@ -59,12 +61,12 @@ public ReadOnlySpan<byte> Load(ReadOnlySpan<byte> remainingData)
5961

6062
public ReadOnlySpan<byte> Save()
6163
{
62-
var variableDataSize = S5Header.StructLength + (Flags.HasFlag(LandObjectFlags.unk1) ? S5Header.StructLength : 0);
64+
var variableDataSize = S5Header.StructLength + (Flags.HasFlag(LandObjectFlags.unk_01) ? S5Header.StructLength : 0);
6365

6466
var data = new byte[variableDataSize];
6567
data = [.. CliffEdgeHeader.Write()];
6668

67-
if (Flags.HasFlag(LandObjectFlags.unk1))
69+
if (Flags.HasFlag(LandObjectFlags.unk_01))
6870
{
6971
UnkObjHeader.Write().CopyTo(data.AsSpan()[S5Header.StructLength..]);
7072
}

Dat/Objects/RoadObject.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ namespace OpenLoco.Dat.Objects
88
[Flags]
99
public enum RoadObjectFlags : uint16_t
1010
{
11-
none = 0,
11+
None = 0,
1212
unk_00 = 1 << 0,
1313
unk_01 = 1 << 1,
1414
unk_02 = 1 << 2,

Dat/Objects/SteamObject.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@ public enum SteamObjectFlags : uint16_t
1111
None = 0,
1212
ApplyWind = 1 << 0,
1313
DisperseOnCollision = 1 << 1,
14-
unk2 = 1 << 2,
15-
unk3 = 1 << 3,
14+
unk_02 = 1 << 2,
15+
unk_03 = 1 << 3,
1616
};
1717

1818
[TypeConverter(typeof(ExpandableObjectConverter))]

Dat/Objects/TrainSignalObject.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ public enum TrainSignalObjectFlags : uint16_t
1111
None = 0 << 0,
1212
IsLeft = 1 << 0,
1313
HasLights = 1 << 1,
14-
unk1 = 1 << 2,
14+
unk_02 = 1 << 2,
1515
}
1616

1717
[TypeConverter(typeof(ExpandableObjectConverter))]

Dat/Objects/TreeObject.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,11 @@ public enum TreeObjectFlags : uint16_t
1010
{
1111
None = 0,
1212
HasSnowVariation = 1 << 0,
13-
unk1 = 1 << 1,
13+
unk_01 = 1 << 1,
1414
VeryHighAltitude = 1 << 2,
1515
HighAltitude = 1 << 3,
1616
RequiresWater = 1 << 4,
17-
unk5 = 1 << 5,
17+
unk_05 = 1 << 5,
1818
DroughtResistant = 1 << 6,
1919
HasShadow = 1 << 7,
2020
};
Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,15 @@
1-
namespace OpenLoco.Dat.Objects
1+
namespace OpenLoco.Dat.Objects
22
{
33
[Flags]
44
public enum BogieSpriteFlags : uint8_t
55
{
66
None = 0,
77
HasSprites = 1 << 0, // If not set then no bogie will be loaded
88
RotationalSymmetry = 1 << 1, // requires 16 rather than 32 sprites
9-
HasGentleSprites = 1 << 2, // for gentle slopes
10-
HasSteepSprites = 1 << 3, // for steep slopes
11-
unk_4 = 1 << 4, // Increases bounding box size
9+
unk_02 = 1 << 2,
10+
HasGentleSprites = 1 << 3, // for gentle slopes
11+
HasSteepSprites = 1 << 4, // for steep slopes
12+
HasBrakingLights = 1 << 5,
13+
HasSpeedAnimation = 1 << 6, // Speed based animation (such as hydrofoil)
1214
};
1315
}

Dat/Objects/Vehicle/VehicleObject.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -142,7 +142,7 @@ public Engine2Sound? SoundPropertyEngine2
142142
public ReadOnlySpan<byte> Load(ReadOnlySpan<byte> remainingData)
143143
{
144144
// track type
145-
if (!Flags.HasFlag(VehicleObjectFlags.unk09) && (Mode == TransportMode.Rail || Mode == TransportMode.Road))
145+
if (!Flags.HasFlag(VehicleObjectFlags.unk_09) && (Mode == TransportMode.Rail || Mode == TransportMode.Road))
146146
{
147147
TrackType = S5Header.Read(remainingData[..S5Header.StructLength]);
148148
remainingData = remainingData[S5Header.StructLength..];
@@ -259,7 +259,7 @@ public ReadOnlySpan<byte> Save()
259259
var ms = new MemoryStream();
260260

261261
// track type
262-
if (!Flags.HasFlag(VehicleObjectFlags.unk09) && (Mode == TransportMode.Rail || Mode == TransportMode.Road))
262+
if (!Flags.HasFlag(VehicleObjectFlags.unk_09) && (Mode == TransportMode.Rail || Mode == TransportMode.Road))
263263
{
264264
ms.Write(TrackType!.Write());
265265
}
@@ -500,7 +500,7 @@ public bool Validate()
500500
return false;
501501
}
502502

503-
if (Flags.HasFlag(VehicleObjectFlags.unk09))
503+
if (Flags.HasFlag(VehicleObjectFlags.unk_09))
504504
{
505505
if (NumTrackExtras != 0)
506506
{

Dat/Objects/Vehicle/VehicleObjectFlags.cs

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,16 +4,21 @@ namespace OpenLoco.Dat.Objects
44
public enum VehicleObjectFlags : uint16_t
55
{
66
None = 0,
7-
flag_02 = 1 << 2, // rollable? APT Passenger carriage
8-
flag_03 = 1 << 3, // rollable? APT Driving carriage
7+
unk_00 = 1 << 0,
8+
unk_01 = 1 << 1,
9+
unk_02 = 1 << 2, // rollable? APT Passenger carriage
10+
unk_03 = 1 << 3, // rollable? APT Driving carriage
11+
unk_04 = 1 << 4,
12+
unk_05 = 1 << 5,
913
RackRail = 1 << 6,
10-
unk08 = 1 << 8,
11-
unk09 = 1 << 9, // any-track??
14+
unk_07 = 1 << 7,
15+
unk_08 = 1 << 8,
16+
unk_09 = 1 << 9, // any-track??
1217
SpeedControl = 1 << 10,
1318
CanCouple = 1 << 11,
14-
unk12 = 1 << 12, // dual-head??
19+
unk_12 = 1 << 12, // dual-head??
1520
IsHelicopter = 1 << 13,
1621
Refittable = 1 << 14,
17-
unk15 = 1 << 15, // no-announce??
22+
unk_15 = 1 << 15, // no-announce??
1823
};
1924
}

0 commit comments

Comments
 (0)