public static Tile LoadFromJson(JSONClass p_json) { try { string name = Util.getValue <string> (p_json, "name"); ETileColor color = Util.parseEnum <ETileColor> (Util.getValue <string> (p_json, "color")); ETileIcon icon = Util.parseEnum <ETileIcon> (Util.getValue <string> (p_json, "icon")); int price = Util.getValue <int> (p_json, "price"); ETileLetter letter = Util.parseEnum <ETileLetter> (Util.getValue <string> (p_json, "letter")); int number = Util.getValue <int> (p_json, "number"); List <Trigger> triggers = new List <Trigger> (); if (p_json ["triggers"] != null) { foreach (JSONNode trigger in p_json["triggers"].AsArray) { triggers.Add(Trigger.LoadFromJson(trigger.AsObject)); } } Effect immediate_effect = null; if (p_json ["immediate"] != null && p_json ["immediate"].Value != "NONE") { immediate_effect = new Effect(Util.parseEnum <ETileResource> (p_json ["immediate"] ["resource"].Value), p_json ["immediate"] ["value"].AsInt); } return(new Tile(name, color, icon, price, letter, number, triggers, immediate_effect)); } catch (ArgumentException) { Debug.LogError("Error while loading Tile from Json !"); return(null); } }
private Tile(string p_name, ETileColor p_color, ETileIcon p_icon, int p_price, ETileLetter p_letter, int p_number, List <Trigger> p_triggers, Effect p_immediate_effect) { m_name = p_name; m_color = p_color; m_icon = p_icon; m_price = p_price; m_letter = p_letter; m_number = p_number; m_triggers = p_triggers; m_immediate_effect = p_immediate_effect; }
private Tile(string p_name, ETileColor p_color, ETileIcon p_icon, int p_price, ETileLetter p_letter, int p_number, List<Trigger> p_triggers, Effect p_immediate_effect) { m_name = p_name; m_color = p_color; m_icon = p_icon; m_price = p_price; m_letter = p_letter; m_number = p_number; m_triggers = p_triggers; m_immediate_effect = p_immediate_effect; }