// Writer public static void JsonSerializer(Jboy.JsonWriter writer, object instance) { GenericSerializer.WriteJSONClassInstance <GuildMember>(writer, (GuildMember)instance, null, new HashSet <string>() { "name" }); }
// Writer public static void JsonSerializer(Jboy.JsonWriter writer, object instance) { var fieldFilter = new HashSet <string>() { "unixTimeStamp", }; GenericSerializer.WriteJSONClassInstance <TimeStamp>(writer, (TimeStamp)instance, fieldFilter); }
// Writer public static void JsonSerializer(Jboy.JsonWriter writer, object instance) { var inv = (T)instance; writer.WriteArrayStart(); for (var i = 0; i < inv.bags.Length; i++) { GenericSerializer.WriteJSONClassInstance <Bag>(writer, inv.bags[i]); } writer.WriteArrayEnd(); }
// Writes all fields of a class instance public static void WriteJSONClassInstance <T>(Jboy.JsonWriter writer, T instance, HashSet <string> fieldFilter = null, HashSet <string> fieldExclude = null) { if (instance == null) { writer.WriteNull(); return; } // Type pointer Type type = typeof(T); // Obtain all fields FieldInfo[] fields = type.GetFields(); // Loop through all fields writer.WriteObjectStart(); foreach (var field in fields) { if (field.IsStatic) { continue; } // Get property name and value string name = field.Name; if (fieldFilter != null && !fieldFilter.Contains(name)) { continue; } if (fieldExclude != null && fieldExclude.Contains(name)) { continue; } object val = field.GetValue(instance); //LogManager.General.Log("Writing '" + name + "'"); // with value '" + ((double)val).ToString() + "'"); //LogManager.General.Log("ValueType " + val.GetType().ToString()); //LogManager.General.Log("Value " + val.ToString()); // Write them to the JSON stream writer.WritePropertyName(name); GenericSerializer.WriteJSONValue(writer, val); } writer.WriteObjectEnd(); }
// Writer public static void JsonSerializer(Jboy.JsonWriter writer, object instance) { Color col = (Color)instance; writer.WriteObjectStart(); writer.WritePropertyName("r"); writer.WriteNumber(col.r); writer.WritePropertyName("g"); writer.WriteNumber(col.g); writer.WritePropertyName("b"); writer.WriteNumber(col.b); writer.WritePropertyName("a"); writer.WriteNumber(col.a); writer.WriteObjectEnd(); }
// Writer public static void JsonSerializer(Jboy.JsonWriter writer, object instance) { writer.WriteNull(); /*var tex = (Texture2D)instance; * writer.WriteObjectStart(); * * writer.WritePropertyName("width"); * writer.WriteNumber(tex.width); * * writer.WritePropertyName("height"); * writer.WriteNumber(tex.height); * * writer.WritePropertyName("data"); * Jboy.Json.WriteObject(tex.EncodeToPNG(), writer); * * writer.WriteObjectEnd();*/ }
// Write a single value in JSON public static void WriteJSONValue(Jboy.JsonWriter writer, object val) { if (val is int || val is KeyCode) { writer.WriteNumber((double)((int)val)); } else if (val is long) { writer.WriteNumber((double)((long)val)); } else if (val is double) { writer.WriteNumber((double)val); } else { Jboy.Json.WriteObject(val, writer); } }
// Writer public static void JsonSerializer(Jboy.JsonWriter writer, object instance) { var control = (InputControl)instance; if (!control.active) { return; } var fieldFilter = new HashSet <string>() { "id", "keyCode", "altKeyCode", //"gamePadKeyCode", }; GenericSerializer.WriteJSONClassInstance <InputControl>(writer, control, fieldFilter); }
// Writer public static void JsonSerializer(Jboy.JsonWriter writer, object instance) { writer.WriteArrayStart(); var tree = (ArtifactTree)instance; foreach (var slotLevel in tree.slots) { writer.WriteArrayStart(); for (int i = 0; i < slotLevel.Length; i++) { Jboy.Json.WriteObject(slotLevel[i].artifact, writer); } writer.WriteArrayEnd(); } writer.WriteArrayEnd(); }
static void CreateConfig(string configFile) { Jboy.JsonWriter writer = new Jboy.JsonWriter(true, true, 2); writer.WriteObjectStart(); writer.WritePropertyName("LobbyIP"); Jboy.Json.WriteObject(LobbyIP, writer); writer.WritePropertyName("LobbyPort"); Jboy.Json.WriteObject(LobbyPort, writer); writer.WritePropertyName("ProxyIP"); Jboy.Json.WriteObject(ProxyIP, writer); writer.WritePropertyName("ProxyPort"); Jboy.Json.WriteObject(ProxyPort, writer); writer.WriteObjectEnd(); File.WriteAllText(configFile, writer.ToString()); }
// Writer public static void JsonSerializer(Jboy.JsonWriter writer, object instance) { var slot = (ArtifactSlot)instance; writer.WriteObjectStart(); writer.WritePropertyName("requiredLevel"); writer.WriteNumber(slot.requiredLevel); writer.WritePropertyName("artifactId"); if (slot.artifact != null) { writer.WriteNumber(slot.artifact.id); } else { writer.WriteNumber(-1); } writer.WriteObjectEnd(); }
// Writer public static void JsonSerializer(Jboy.JsonWriter writer, object instance) { if (instance == null) { writer.WriteNull(); return; } var item = (Item)instance; writer.WriteObjectStart(); // ID writer.WritePropertyName("id"); writer.WriteNumber(item.id); // Meta data item.WriteItemMetaData(writer); writer.WriteObjectEnd(); }
// Writer public static void JsonSerializer(Jboy.JsonWriter writer, object instance) { if (instance == null) { writer.WriteNull(); return; } var slot = (ItemSlot)instance; writer.WriteObjectStart(); // ID writer.WritePropertyName("item"); Jboy.Json.WriteObject(slot.item, writer); // Count writer.WritePropertyName("count"); writer.WriteNumber(slot.count); writer.WriteObjectEnd(); }
// Writer public static void JsonSerializer(Jboy.JsonWriter writer, object instance) { GenericSerializer.WriteJSONClassInstance <PlayerQueueStats>(writer, (PlayerQueueStats)instance); }
// WriteItemMetaData public void WriteItemMetaData(Jboy.JsonWriter writer) { // TODO: Enchantments }
// Writer public static void JsonSerializer(Jboy.JsonWriter writer, object instance) { GenericSerializer.WriteJSONClassInstance <CharacterCustomization>(writer, (CharacterCustomization)instance); }
// Writer public static void JsonSerializer(Jboy.JsonWriter writer, object instance) { GenericSerializer.WriteJSONClassInstance <InputSettings>(writer, (InputSettings)instance); }
// Writer public static void JsonSerializer(Jboy.JsonWriter writer, object instance) { ItemSerializer.JsonSerializer(writer, instance); }
// Writer public static void JsonSerializer(Jboy.JsonWriter writer, object instance) { writer.TryWritePropertyName("serverType"); writer.WriteString(((ServerType)instance).ToString()); }
// Writer public static void JsonSerializer(Jboy.JsonWriter writer, object instance) { GenericSerializer.WriteJSONClassInstance <T>(writer, (T)instance); }
public void Create(string configFile) { Jboy.JsonWriter writer = new Jboy.JsonWriter(true, true, 8); writer.WriteObjectStart(); writer.WritePropertyName("ServerName"); Jboy.Json.WriteObject(gameName, writer); writer.WritePropertyName("MasterRoleName"); Jboy.Json.WriteObject(masterRoleName, writer); writer.WritePropertyName("Password"); Jboy.Json.WriteObject(gamePassword, writer); writer.WritePropertyName("MapName"); Jboy.Json.WriteObject(mapName, writer); writer.WritePropertyName("GameMode"); Jboy.Json.WriteObject(gameMode, writer); writer.WritePropertyName("GameType"); Jboy.Json.WriteObject(gameType, writer); writer.WritePropertyName("MapSeed"); Jboy.Json.WriteObject(seedStr, writer); writer.WritePropertyName("TeamNum"); Jboy.Json.WriteObject(teamNum, writer); writer.WritePropertyName("NumPerTeam"); Jboy.Json.WriteObject(numPerTeam, writer); writer.WritePropertyName("TerrainType"); Jboy.Json.WriteObject(terrainType, writer); writer.WritePropertyName("VegetationType"); Jboy.Json.WriteObject(vegetationId, writer); writer.WritePropertyName("ClimateType"); Jboy.Json.WriteObject(sceneClimate, writer); writer.WritePropertyName("MonsterYes"); Jboy.Json.WriteObject(monsterYes, writer); writer.WritePropertyName("IsPrivate"); Jboy.Json.WriteObject(isPrivate, writer); writer.WritePropertyName("ProxyServer"); Jboy.Json.WriteObject(proxyServer, writer); writer.WritePropertyName("UnlimitedRes"); Jboy.Json.WriteObject(unlimitedRes, writer); writer.WritePropertyName("TerrainHeight"); Jboy.Json.WriteObject(terrainHeight, writer); writer.WritePropertyName("MapSize"); Jboy.Json.WriteObject(mapSize, writer); writer.WritePropertyName("RiverDensity"); Jboy.Json.WriteObject(riverDensity, writer); writer.WritePropertyName("RiverWidth"); Jboy.Json.WriteObject(riverWidth, writer); //a0.95 writer.WritePropertyName("PlainHeight"); Jboy.Json.WriteObject(plainHeight, writer); writer.WritePropertyName("Flatness"); Jboy.Json.WriteObject(flatness, writer); writer.WritePropertyName("BridgeMaxHeight"); Jboy.Json.WriteObject(bridgeMaxHeight, writer); writer.WritePropertyName("AICount"); Jboy.Json.WriteObject(AICount, writer); writer.WritePropertyName("UseSkillTree"); Jboy.Json.WriteObject(useSkillTree, writer); writer.WritePropertyName("DropDeadPercent"); Jboy.Json.WriteObject(dropDeadPercent, writer); writer.WritePropertyName("UID"); Jboy.Json.WriteObject(uid, writer); writer.WritePropertyName("ScriptsAvailable"); Jboy.Json.WriteObject(scriptsAvailable, writer); writer.WriteObjectEnd(); System.IO.File.WriteAllText(configFile, writer.ToString()); }