Esempio n. 1
0
        internal static bool load_progress(
            BinaryReader reader,
            out Save_Progress progress)
        {
            // Read and check version
            Version v;

            if (!ValidVersion(reader, new Version(0, 0, 0, 0), out v))
            {
                progress = null;
                return(false);
            }

            // Read progression
            Func <BinaryReader, Save_Progress> suspendInfoFunction = (BinaryReader r) =>
            {
                return(ReadProgress(r, v));
            };

            if (IsEncryptedVersion(v))
            {
                progress = DecryptStream(reader, suspendInfoFunction);
            }
            else
            {
                progress = suspendInfoFunction(reader);
            }

            return(true);
        }
Esempio n. 2
0
        private static Save_Progress ReadProgress(BinaryReader reader, Version version)
        {
            if (false)
            {
            }              //@Debug: if different versions are handled differently
            else
            {
                return(Save_Progress.read(reader, version));
            }

            return(null);
        }