From ba1f440d0762ab77cd3f08734043df7db5b4329e Mon Sep 17 00:00:00 2001 From: TrueDoctor Date: Fri, 15 Jun 2018 21:58:34 +0200 Subject: implemented session saves --- DiscoBot/DSA_Game/Save/Session.cs | 50 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 DiscoBot/DSA_Game/Save/Session.cs (limited to 'DiscoBot/DSA_Game/Save/Session.cs') diff --git a/DiscoBot/DSA_Game/Save/Session.cs b/DiscoBot/DSA_Game/Save/Session.cs new file mode 100644 index 0000000..b0a34a5 --- /dev/null +++ b/DiscoBot/DSA_Game/Save/Session.cs @@ -0,0 +1,50 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace DiscoBot.DSA_Game.Save +{ + using System.IO; + + using DiscoBot.DSA_Game.Characters; + + using Discord.Commands; + + using Newtonsoft.Json; + + public class Session + { + public ICommandContext GeneralContext { get; set; } + + public Dictionary Relation { get; set; } = new Dictionary(); // dictionary to match the char + + public List Chars { get; set; } = new List(); // list of all characters + + public static Session Load(string path = @"..\..\session.json") + { + try + { + return JsonConvert.DeserializeObject(File.ReadAllText(path)); // Deserialize Data and create Session Object + } + catch (Exception e) + { + // ignored + return null; + } + } + + public void Save(string path = @"..\..\session.json") + { + try + { + File.WriteAllText(path, JsonConvert.SerializeObject(this, Formatting.Indented)); // Deserialize Data and create CommandInfo Struct + } + catch (Exception e) + { + // ignored + } + } + } +} -- cgit v1.2.3-70-g09d2