Remove duplicated Format2 implementation.
This commit is contained in:
@@ -12,25 +12,22 @@ namespace OpenRA.FileFormats
|
||||
{
|
||||
public static class Format2
|
||||
{
|
||||
public static int DecodeInto(byte[] src, byte[] dest)
|
||||
public static void DecodeInto(byte[] src, byte[] dest, int destIndex)
|
||||
{
|
||||
FastByteReader r = new FastByteReader(src);
|
||||
var r = new FastByteReader(src);
|
||||
|
||||
int i = 0;
|
||||
while (!r.Done())
|
||||
{
|
||||
byte cmd = r.ReadByte();
|
||||
var cmd = r.ReadByte();
|
||||
if (cmd == 0)
|
||||
{
|
||||
byte count = r.ReadByte();
|
||||
var count = r.ReadByte();
|
||||
while (count-- > 0)
|
||||
dest[i++] = 0;
|
||||
dest[destIndex++] = 0;
|
||||
}
|
||||
else
|
||||
dest[i++] = cmd;
|
||||
dest[destIndex++] = cmd;
|
||||
}
|
||||
|
||||
return i;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -73,10 +73,10 @@ namespace OpenRA.FileFormats
|
||||
{
|
||||
var tempData = new byte[dataSize];
|
||||
Format80.DecodeInto(imgData, tempData);
|
||||
Format2.DecodeInto(tempData, Data);
|
||||
Format2.DecodeInto(tempData, Data, 0);
|
||||
}
|
||||
else
|
||||
Format2.DecodeInto(imgData, Data);
|
||||
Format2.DecodeInto(imgData, Data, 0);
|
||||
|
||||
// Lookup values in lookup table
|
||||
for (var j = 0; j < Data.Length; j++)
|
||||
|
||||
@@ -89,21 +89,8 @@ namespace OpenRA.FileFormats
|
||||
|
||||
for (var j = 0; j < f.Size.Height; j++)
|
||||
{
|
||||
var k = j * f.Size.Width;
|
||||
var length = stream.ReadUInt16() - 2;
|
||||
while (length > 0)
|
||||
{
|
||||
var b = stream.ReadUInt8();
|
||||
length--;
|
||||
|
||||
if (b == 0)
|
||||
{
|
||||
k += stream.ReadUInt8();
|
||||
length--;
|
||||
}
|
||||
else
|
||||
f.Data[k++] = b;
|
||||
}
|
||||
Format2.DecodeInto(stream.ReadBytes(length), f.Data, j * f.Size.Width);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user