public void SaveFile()
{
if (pcc == null)
{
return;
}
if (CodexMapControl != null)
{
IExportEntry export;
int dataOffset;
if (CodexMapView.TryFindCodexMap(pcc, out export, out dataOffset))
{
using (var stream = new MemoryStream())
{
var codexMap = CodexMapControl.ToCodexMap();
var binaryCodexMap = new BinaryBioCodexMap(codexMap.Sections, codexMap.Pages);
binaryCodexMap.Save(stream);
export.setBinaryData(stream.ToArray());
}
}
}
if (QuestMapControl != null)
{
IExportEntry export;
int dataOffset;
if (QuestMapControl.TryFindQuestMap(pcc, out export, out dataOffset))
{
using (var stream = new MemoryStream())
{
var questMap = QuestMapControl.ToQuestMap();
var binaryQuestMap = new BinaryBioQuestMap(questMap.Quests, questMap.BoolTaskEvals, questMap.IntTaskEvals, questMap.FloatTaskEvals);
binaryQuestMap.Save(stream);
export.setBinaryData(stream.ToArray());
}
}
}
if (StateEventMapControl != null)
{
IExportEntry export;
int dataOffset;
if (StateEventMapControl.TryFindStateEventMap(pcc, out export, out dataOffset))
{
using (var stream = new MemoryStream())
{
var stateEventMap = StateEventMapControl.ToStateEventMap();
var binaryStateEventMap = new BinaryBioStateEventMap(stateEventMap.StateEvents);
binaryStateEventMap.Save(stream);
export.setBinaryData(stream.ToArray());
}
}
}
pcc.save(FileName);
}