public void SaveToFile(string path)
{
listsStream.Seek(0, SeekOrigin.End); // Write names
NameOffset = (int)listsStream.Position;
//NameCount = Names.Where(nam => nam != null).Count();
NameCount = Names.Count;
foreach (String name in Names)
{
if (name != null)
{
listsStream.WriteValueS32(name.Length + 1);
listsStream.WriteString(name);
}
else
listsStream.WriteValueS32(1);
listsStream.WriteByte(0);
listsStream.WriteValueS32(-14);
}
DebugOutput.PrintLn("Writing pcc to: " + path + "\nRefreshing header to stream...");
listsStream.Seek(0, SeekOrigin.Begin);
listsStream.WriteBytes(header);
DebugOutput.PrintLn("Opening filestream and writing to disk...");
using (FileStream fs = new FileStream(path, FileMode.Create, FileAccess.Write))
listsStream.WriteTo(fs);
}