public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.GetVersion(); switch (version) { case 1: { TokenType = new TypeSelectProperty <IVendorToken>(reader); TokenName = reader.ReadString(); ShowTokenName = reader.ReadBool(); } goto case 0; case 0: { Trading = reader.ReadBool(); if (version == 0) { TokenType = String.Empty; TokenName = String.Empty; ShowTokenName = true; } } break; } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.GetVersion(); switch (version) { case 2: IsCloth = reader.ReadBool(); goto case 1; case 1: { CraftSystem = reader.ReadType(); Resource = (CraftResource)reader.ReadInt(); IsSlayer = reader.ReadBool(); } goto case 0; case 0: { ItemType = reader.ReadType(); ItemChildren = reader.ReadBool(); ItemChangeReset = reader.ReadBool(); IsExceptional = reader.ReadBool(); } break; } }
public override void EnsureDefaults() { base.EnsureDefaults(); ItemType = DefItemType; ItemChildren = DefItemChildren; ItemChangeReset = DefItemChangeReset; Resource = DefResource; HarvestSystem = DefHarvestSystem; }
public override void EnsureDefaults() { base.EnsureDefaults(); ItemType = DefItemType; ItemChildren = DefItemChildren; ItemChangeReset = DefItemChangeReset; Resource = DefResource; HarvestSystem = DefHarvestSystem; }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); var version = reader.GetVersion(); switch (version) { case 2: _CashAbbr = reader.ReadTextDef(); goto case 1; case 1: CashProperty = new ObjectProperty(reader); goto case 0; case 0: { if (version < 1) { var t = new ItemTypeSelectProperty(reader); CashType = t.InternalType; } else { CashType = new TypeSelectProperty <object>(reader); } _CashName = reader.ReadTextDef(); _ShowCashName = reader.ReadBool(); _Trading = reader.ReadBool(); Discount = reader.ReadInt(); DiscountEnabled = reader.ReadBool(); DiscountYell = reader.ReadBool(); } break; } if (CashProperty == null) { CashProperty = new ObjectProperty(); } if (version < 2) { _CashAbbr = String.Join(String.Empty, _CashName.GetString().Select(Char.IsUpper)); } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.GetVersion(); switch (version) { case 0: { House = reader.ReadType(); } break; } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.GetVersion(); switch (version) { case 0: { House = reader.ReadType(); } break; } }
public override void EnsureDefaults() { base.EnsureDefaults(); ItemType = DefItemType; ItemChildren = DefItemChildren; ItemChangeReset = DefItemChangeReset; IsExceptional = DefExceptional; IsSlayer = DefSlayer; IsCloth = DefIsCloth; Resource = DefResource; CraftSystem = DefCraftSystem; }
public override void EnsureDefaults() { base.EnsureDefaults(); ItemType = DefItemType; ItemChildren = DefItemChildren; ItemChangeReset = DefItemChangeReset; IsExceptional = DefExceptional; IsSlayer = DefSlayer; IsCloth = DefIsCloth; Resource = DefResource; CraftSystem = DefCraftSystem; }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.GetVersion(); switch (version) { case 1: CashProperty = new ObjectProperty(reader); goto case 0; case 0: { if (version < 1) { var t = new ItemTypeSelectProperty(reader); CashType = t.InternalType; } else { CashType = new TypeSelectProperty <object>(reader); } CashName = reader.ReadTextDef(); ShowCashName = reader.ReadBool(); Trading = reader.ReadBool(); Discount = reader.ReadInt(); DiscountEnabled = reader.ReadBool(); DiscountYell = reader.ReadBool(); } break; } if (CashProperty == null) { CashProperty = new ObjectProperty(); } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.GetVersion(); switch (version) { case 0: { ItemType = reader.ReadType(); ItemChildren = reader.ReadBool(); ItemChangeReset = reader.ReadBool(); Resource = reader.ReadFlag <CraftResource>(); HarvestSystem = reader.ReadType(); } break; } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.GetVersion(); switch (version) { case 2: IsCloth = reader.ReadBool(); goto case 1; case 1: { CraftSystem = reader.ReadType(); Resource = (CraftResource)reader.ReadInt(); IsSlayer = reader.ReadBool(); } goto case 0; case 0: { ItemType = reader.ReadType(); ItemChildren = reader.ReadBool(); ItemChangeReset = reader.ReadBool(); IsExceptional = reader.ReadBool(); } break; } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); var version = reader.GetVersion(); switch (version) { case 4: { reader.ReadDictionary( r => { var info = new DynamicBuyInfo(r); return(new KeyValuePair <Item, DynamicBuyInfo>(info.Item, info)); }, _DynamicStock); } goto case 3; case 3: { _WasStocked = reader.ReadBool(); CanRestock = reader.ReadBool(); } goto case 2; case 2: _CashAbbr = reader.ReadTextDef(); goto case 1; case 1: CashProperty = new ObjectProperty(reader); goto case 0; case 0: { if (version < 1) { var t = new ItemTypeSelectProperty(reader); CashType = t.InternalType; } else { CashType = new TypeSelectProperty <object>(reader); } _CashName = reader.ReadTextDef(); _ShowCashName = reader.ReadBool(); _Trading = reader.ReadBool(); Discount = reader.ReadInt(); DiscountEnabled = reader.ReadBool(); DiscountYell = reader.ReadBool(); } break; } if (CashProperty == null) { CashProperty = new ObjectProperty(); } if (version < 3) { CanRestock = true; } if (version < 2) { _CashAbbr = String.Join(String.Empty, _CashName.GetString().Select(Char.IsUpper)); } _DynamicStock.RemoveRange(o => o.Key.Deleted || o.Value == null || o.Value.Item != o.Key); }
public override void EnsureDefaults() { base.EnsureDefaults(); House = DefHouse; }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.GetVersion(); switch (version) { case 0: { ItemType = reader.ReadType(); ItemChildren = reader.ReadBool(); ItemChangeReset = reader.ReadBool(); Resource = reader.ReadFlag<CraftResource>(); HarvestSystem = reader.ReadType(); } break; } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.GetVersion(); switch (version) { case 1: { TokenType = new TypeSelectProperty<IVendorToken>(reader); TokenName = reader.ReadString(); ShowTokenName = reader.ReadBool(); } goto case 0; case 0: { Trading = reader.ReadBool(); if (version == 0) { TokenType = String.Empty; TokenName = String.Empty; ShowTokenName = true; } } break; } }
public static void ImportXML(string path, string file) { using (var xml = new XmlDataStore<ConquestSerial, Conquest>(path, file)) { xml.OnDeserialize = doc => { XmlElement root = doc.DocumentElement; if (root == null) { return true; } foreach (XmlElement conquestNode in root.ChildNodes.OfType<XmlElement>()) { string typeAttr = conquestNode.GetAttribute("type"); var type = new TypeSelectProperty<Conquest>(typeAttr); if (!type.IsNotNull) { continue; } var conquest = type.CreateInstance<Conquest>(); PropertyList<Conquest> pList = conquest.GetProperties( BindingFlags.Instance | BindingFlags.Public, p => p.CanWrite && p.Name != "Enabled" && p.Name != "InvokeReset" && p.Name != "InvokeClear"); foreach (XmlElement conquestPropNode in conquestNode.ChildNodes.OfType<XmlElement>()) { string pName = conquestPropNode.Name; string dType = conquestPropNode.GetAttribute("type"); string data = conquestPropNode.GetAttribute("value"); switch (dType) { case "Type": { Type t = null; if (!String.IsNullOrWhiteSpace(data)) { t = Type.GetType(data, false, true) ?? ScriptCompiler.FindTypeByName(data, true) ?? ScriptCompiler.FindTypeByFullName(data); } pList.Set(pName, t); } break; default: { DataType dataType; if (!Enum.TryParse(dType, out dataType)) { continue; } SimpleType sType; if (SimpleType.TryParse(data, dataType, out sType) && sType.Flag != DataType.Null) { pList.Set(pName, sType.Value); } } break; } } pList.Serialize(conquest); xml.AddOrReplace(conquest.UID, conquest); } return true; }; if (xml.Import() == DataStoreResult.OK) { xml.CopyTo(ConquestRegistry); xml.Document.Delete(); } foreach (Exception e in xml.Errors) { e.ToConsole(); } } }
public static void ImportXML(string path, string file) { using (var xml = new XmlDataStore <ConquestSerial, Conquest>(path, file)) { xml.OnDeserialize = doc => { XmlElement root = doc.DocumentElement; if (root == null) { return(true); } foreach (XmlElement conquestNode in root.ChildNodes.OfType <XmlElement>()) { string typeAttr = conquestNode.GetAttribute("type"); var type = new TypeSelectProperty <Conquest>(typeAttr); if (!type.IsNotNull) { continue; } var conquest = type.CreateInstance <Conquest>(); PropertyList <Conquest> pList = conquest.GetProperties( BindingFlags.Instance | BindingFlags.Public, p => p.CanWrite && p.Name != "Enabled" && p.Name != "InvokeReset" && p.Name != "InvokeClear"); foreach (XmlElement conquestPropNode in conquestNode.ChildNodes.OfType <XmlElement>()) { string pName = conquestPropNode.Name; string dType = conquestPropNode.GetAttribute("type"); string data = conquestPropNode.GetAttribute("value"); switch (dType) { case "Type": { Type t = null; if (!String.IsNullOrWhiteSpace(data)) { t = Type.GetType(data, false, true) ?? ScriptCompiler.FindTypeByName(data, true) ?? ScriptCompiler.FindTypeByFullName(data); } pList.Set(pName, t); } break; default: { DataType dataType; if (!Enum.TryParse(dType, out dataType)) { continue; } SimpleType sType; if (SimpleType.TryParse(data, dataType, out sType) && sType.Flag != DataType.Null) { pList.Set(pName, sType.Value); } } break; } } pList.Serialize(conquest); xml.AddOrReplace(conquest.UID, conquest); } return(true); }; if (xml.Import() == DataStoreResult.OK) { xml.CopyTo(ConquestRegistry); xml.Document.Delete(); } foreach (Exception e in xml.Errors) { e.ToConsole(); } } }
public override void EnsureDefaults() { base.EnsureDefaults(); House = DefHouse; }