public static void CustomSeperateSave(SeperateSaveData data)
        {
            GenericWriter writer = new BinaryFileWriter(Path.Combine(data.SaveLocation, data.SaveName + ".bin"), true);
            DirectoryCheck(data.SaveLocation);

            data.SaveMethod(writer);
            writer.Write(writer.Position);
            writer.Close();
        }
 public static void AddSeperateSave(SeperateSaveData ssd)
 {
     m_SeperateDataList.Add(ssd);
 }
        private static void CustomSeperateLoad(SeperateSaveData data)
        {
            string binpath = Path.Combine(data.SaveLocation, data.SaveName + ".bin");

            if (File.Exists(binpath))
            {
                using (FileStream bin = GetFileStream(binpath))
                {
                    BinaryFileReader reader = new BinaryFileReader(new BinaryReader(bin));
                    try
                    {
                        data.LoadMethod(reader);

                        long endpos = reader.Position;
                        reader.Seek(-8, SeekOrigin.End);
                        if (reader.ReadLong() != endpos)
                            HandleError(null, binpath, null);
                    }
                    catch (Exception error)
                    {
                        HandleError(error, binpath, null);
                    }

                    reader.Close();
                }
            }
        }