public static SetItemEffectTemplate Parse(int id, IDataProperty property) { var t = new SetItemEffectTemplate { ID = id }; property.Resolve(p => { t.IncSTR = p.Resolve <short>("incSTR") ?? 0; t.IncDEX = p.Resolve <short>("incDEX") ?? 0; t.IncINT = p.Resolve <short>("incINT") ?? 0; t.IncLUK = p.Resolve <short>("incLUK") ?? 0; t.IncMaxHP = p.Resolve <short>("incMHP") ?? 0; t.IncMaxMP = p.Resolve <short>("incMMP") ?? 0; t.IncPAD = p.Resolve <short>("incPAD") ?? 0; t.IncMAD = p.Resolve <short>("incMAD") ?? 0; t.IncPDD = p.Resolve <short>("incPDD") ?? 0; t.IncMDD = p.Resolve <short>("incMDD") ?? 0; t.IncACC = p.Resolve <short>("incACC") ?? 0; t.IncEVA = p.Resolve <short>("incEVA") ?? 0; t.IncCraft = p.Resolve <short>("incCraft") ?? 0; t.IncSpeed = p.Resolve <short>("incSpeed") ?? 0; t.IncJump = p.Resolve <short>("incJump") ?? 0; }); return(t); }
public static SetItemInfoTemplate Parse(int id, IDataProperty property) { var t = new SetItemInfoTemplate { ID = id }; property.Resolve(p => { t.SetCompleteCount = p.Resolve <int>("completeCount") ?? 0; t.ItemTemplateID = p.Resolve("itemID")?.Children .Select(c => c.Resolve <int>() ?? 0) .ToList(); t.Effect = p.Resolve("Effect")?.Children .ToDictionary( c => Convert.ToInt32(c.Name), c => SetItemEffectTemplate.Parse(Convert.ToInt32(c.Name), c) ); }); return(t); }