Ejemplo n.º 1
0
        public void ReadCommonSaveData(GameContext ctx)
        {
            string filePath = Path.Combine(_commonDir, "val.npf");

            if (!File.Exists(filePath))
            {
                return;
            }
            byte[] bytes    = File.ReadAllBytes(filePath);
            var    reader   = new MessagePackReader(bytes);
            var    saveData = new CommonSaveData(ref reader);

            ctx.VM.RestoreFlags(saveData.Flags);
        }
Ejemplo n.º 2
0
        private void WriteCommonSaveData(GameContext ctx)
        {
            var buffer = new ArrayBufferWriter <byte>();
            var writer = new MessagePackWriter(buffer);
            var data   = new CommonSaveData
            {
                Flags = ctx.VM.DumpFlags()
            };

            data.Serialize(ref writer);
            writer.Flush();

            string filePath = Path.Combine(_commonDir, "val.npf");

            using FileStream file = File.OpenWrite(filePath);
            file.Write(buffer.WrittenSpan);
            File.Create(Path.Combine(_commonDir, "cqst.npf")).Close();
        }