94 lines
1.2 KiB
C#
94 lines
1.2 KiB
C#
|
using System.IO;
|
||
|
|
||
|
namespace GMAssetCompiler
|
||
|
{
|
||
|
public class GMSound
|
||
|
{
|
||
|
public const string MissingSoundName = "Dummy";
|
||
|
|
||
|
public int Kind
|
||
|
{
|
||
|
get;
|
||
|
private set;
|
||
|
}
|
||
|
|
||
|
public string Extension
|
||
|
{
|
||
|
get;
|
||
|
private set;
|
||
|
}
|
||
|
|
||
|
public string OrigName
|
||
|
{
|
||
|
get;
|
||
|
private set;
|
||
|
}
|
||
|
|
||
|
public bool ReadMe
|
||
|
{
|
||
|
get;
|
||
|
private set;
|
||
|
}
|
||
|
|
||
|
public int Effects
|
||
|
{
|
||
|
get;
|
||
|
private set;
|
||
|
}
|
||
|
|
||
|
public double Volume
|
||
|
{
|
||
|
get;
|
||
|
private set;
|
||
|
}
|
||
|
|
||
|
public double Pan
|
||
|
{
|
||
|
get;
|
||
|
private set;
|
||
|
}
|
||
|
|
||
|
public bool Preload
|
||
|
{
|
||
|
get;
|
||
|
private set;
|
||
|
}
|
||
|
|
||
|
public byte[] Data
|
||
|
{
|
||
|
get;
|
||
|
private set;
|
||
|
}
|
||
|
|
||
|
public GMSound(GMAssets _a, Stream _s)
|
||
|
{
|
||
|
int num = _s.ReadInteger();
|
||
|
Kind = _s.ReadInteger();
|
||
|
Extension = _s.ReadString();
|
||
|
OrigName = _s.ReadString();
|
||
|
if (OrigName == "")
|
||
|
{
|
||
|
OrigName = "Dummy" + Extension;
|
||
|
}
|
||
|
bool flag = _s.ReadBoolean();
|
||
|
Data = null;
|
||
|
if (flag)
|
||
|
{
|
||
|
switch (num)
|
||
|
{
|
||
|
case 600:
|
||
|
Data = _s.ReadCompressedStream();
|
||
|
break;
|
||
|
case 800:
|
||
|
Data = _s.ReadStream();
|
||
|
break;
|
||
|
}
|
||
|
}
|
||
|
Effects = _s.ReadInteger();
|
||
|
Volume = _s.ReadDouble();
|
||
|
Pan = _s.ReadDouble();
|
||
|
Preload = _s.ReadBoolean();
|
||
|
}
|
||
|
}
|
||
|
}
|