using System.Runtime.InteropServices;

namespace OmicronMountMusicFixer;

[StructLayout(LayoutKind.Explicit)]
internal struct BGMPlayer
{
	[FieldOffset(0)]
	public float MaxStandbyTime;

	[FieldOffset(4)]
	public uint State;

	[FieldOffset(8)]
	public ushort BgmId;

	[FieldOffset(16)]
	public uint BgmScene;

	[FieldOffset(32)]
	public uint SpecialMode;

	[FieldOffset(37)]
	public bool IsStandby;

	[FieldOffset(40)]
	public uint FadeOutTime;

	[FieldOffset(44)]
	public uint ResumeFadeInTime;

	[FieldOffset(48)]
	public uint FadeInStartTime;

	[FieldOffset(52)]
	public uint FadeInTime;

	[FieldOffset(56)]
	public uint ElapsedTime;

	[FieldOffset(64)]
	public float StandbyTime;

	[FieldOffset(77)]
	public byte SpecialModeType;
}
