mirror of
https://github.com/simtactics/mysimulation.git
synced 2025-03-19 08:21:22 +00:00
37 lines
1 KiB
C#
37 lines
1 KiB
C#
|
using FSO.Files.Utils;
|
|||
|
using System.IO;
|
|||
|
|
|||
|
namespace FSO.Files.Formats.IFF.Chunks
|
|||
|
{
|
|||
|
/// <summary>
|
|||
|
/// A simple container for FSOV data within an iff. If this exists, normal TS1 iff loading is subverted.
|
|||
|
/// </summary>
|
|||
|
public class FSOV : IffChunk
|
|||
|
{
|
|||
|
public static int CURRENT_VERSION = 1;
|
|||
|
public int Version = CURRENT_VERSION;
|
|||
|
public byte[] Data;
|
|||
|
|
|||
|
public override void Read(IffFile iff, Stream stream)
|
|||
|
{
|
|||
|
using (var io = IoBuffer.FromStream(stream, ByteOrder.LITTLE_ENDIAN))
|
|||
|
{
|
|||
|
Version = io.ReadInt32();
|
|||
|
var length = io.ReadInt32();
|
|||
|
Data = io.ReadBytes(length);
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
public override bool Write(IffFile iff, Stream stream)
|
|||
|
{
|
|||
|
using (var io = IoWriter.FromStream(stream, ByteOrder.LITTLE_ENDIAN))
|
|||
|
{
|
|||
|
io.WriteInt32(Version);
|
|||
|
io.WriteInt32(Data.Length);
|
|||
|
io.WriteBytes(Data);
|
|||
|
}
|
|||
|
return true;
|
|||
|
}
|
|||
|
}
|
|||
|
}
|