using System; using GameCore; using Newtonsoft.Json; using Newtonsoft.Json.Linq; namespace EventSmash.Converter { public class ItemDataIgnoreCurCountConverter : JsonConverter { public override void WriteJson(JsonWriter writer, ItemData value, JsonSerializer serializer) { writer.WriteStartObject(); writer.WritePropertyName("id"); writer.WriteValue(value.id); writer.WritePropertyName("count"); writer.WriteValue(value.count); writer.WriteEndObject(); } public override ItemData ReadJson(JsonReader reader, Type objectType, ItemData existingValue, bool hasExistingValue, JsonSerializer serializer) { var obj = JObject.Load(reader); return new ItemData { id = obj["id"]?.Value() ?? 0, count = obj["count"]?.Value() ?? 0 }; } } }