public static CombatHandler FromJson(string json) { CombatHandler obj = Newtonsoft.Json.JsonConvert.DeserializeObject <CombatHandler>(json, new Newtonsoft.Json.JsonSerializerSettings { TypeNameHandling = Newtonsoft.Json.TypeNameHandling.Auto, NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore, }); fixLoopReferencesCombatHandler(obj); return(obj); }
public static string ToJson(CombatHandler combatHandler) { Newtonsoft.Json.JsonSerializer serializer = new Newtonsoft.Json.JsonSerializer(); serializer.Converters.Add(new Newtonsoft.Json.Converters.JavaScriptDateTimeConverter()); serializer.NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore; serializer.TypeNameHandling = Newtonsoft.Json.TypeNameHandling.Auto; serializer.Formatting = Newtonsoft.Json.Formatting.Indented; StringBuilder sb = new StringBuilder(); using (StringWriter sw = new StringWriter(sb)) using (Newtonsoft.Json.JsonWriter writer = new Newtonsoft.Json.JsonTextWriter(sw)) { serializer.Serialize(writer, combatHandler, typeof(CombatHandler)); } string json = sb.ToString(); return(json); }
static void fixLoopReferencesCombatHandler(CombatHandler combatHandler) { fixLoopReferencesParty(combatHandler.CpuParty); fixLoopReferencesParty(combatHandler.PlayerParty); }