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