feat: Add switch container functionality

This commit is contained in:
2026-04-15 21:05:17 +08:00
parent c62cb4f37b
commit ca6fff2717
57 changed files with 719 additions and 75 deletions
@@ -98,6 +98,7 @@ public partial class AudioObject : IBinarySerializable
/// 0 = 随机播放
/// 1 = 顺序播放
/// 2 = 混合播放
/// 3 = 切换播放
/// </summary>
public ContainerType ContainerType { get; set; }
@@ -147,6 +148,16 @@ public partial class AudioObject : IBinarySerializable
/// </summary>
public int VolumeStep { get; set; }
/// <summary>
/// 要绑定的 StateGroup ID
/// </summary>
public uint SwitchGroupId { get; set; }
/// <summary>
/// 匹配失败时的备用 AudioObject ID
/// </summary>
public uint DefaultSwitchId { get; set; }
public void DeSerialize(BinaryReader reader)
{
@@ -186,6 +197,8 @@ public partial class AudioObject : IBinarySerializable
VolumeStepThreshold = reader.ReadUInt32();
Volume = reader.ReadInt32();
VolumeStep = reader.ReadInt32();
SwitchGroupId = reader.ReadUInt32();
DefaultSwitchId = reader.ReadUInt32();
}
public void Serialize(BinaryWriter writer)
@@ -225,6 +238,8 @@ public partial class AudioObject : IBinarySerializable
writer.Write(VolumeStepThreshold);
writer.Write(Volume);
writer.Write(VolumeStep);
writer.Write(SwitchGroupId);
writer.Write(DefaultSwitchId);
}
}