dont use the .uid file hack -- compute them on demand

This commit is contained in:
Chris Forbes
2010-12-28 18:52:19 +13:00
parent 1cee570207
commit c20b3b90f4
2 changed files with 15 additions and 17 deletions

View File

@@ -225,7 +225,6 @@ namespace OpenRA
SaveBinaryData(Path.Combine(filepath, "map.bin"));
root.WriteToFile(Path.Combine(filepath, "map.yaml"));
SaveUid(Path.Combine(filepath, "map.uid"));
}
static byte ReadByte(Stream s)
@@ -308,20 +307,6 @@ namespace OpenRA
File.Move(filepath + ".tmp", filepath);
}
public void SaveUid(string filename)
{
// UID is calculated by taking an SHA1 of the yaml and binary data
// Read the relevant data into a buffer
var data = Container.GetContent("map.yaml").ReadAllBytes()
.Concat(Container.GetContent("map.bin").ReadAllBytes()).ToArray();
// Take the SHA1
using (var csp = SHA1.Create())
Uid = new string(csp.ComputeHash(data).SelectMany(a => a.ToString("x2")).ToArray());
File.WriteAllText(filename, Uid);
}
public bool IsInMap(int2 xy)
{
return IsInMap(xy.X, xy.Y);