public ActionResult AddDisadvantage(Disadvantage disadvantage) { var list = new DisadvantageDataAccess().FindAll <Disadvantage>(); disadvantage.Id = list.Count == 0 ? 1 : list.Last().Id + 1; disadvantage.Name = Request.Form["Name"]; disadvantage.Description = Request.Form["Description"]; disadvantage.Cost = int.Parse(Request.Form["Cost"]); disadvantage.Level = 0; disadvantage.LevelCap = int.Parse(Request.Form["LevelCap"]); if (disadvantage.LevelCap == 0) { disadvantage.LevelCap = int.MaxValue; } disadvantage.Formula = Request.Form["Formula"]; disadvantage.Types.AddRange(Request.Form.Where(x => x.Value.Contains("true")).Select(x => x.Key)); new DisadvantageDataAccess().InsertOne(disadvantage); return(RedirectToAction("Main", "Admin")); }
public static GameObject LoadGameObject(this XElement xml) { if (xml.Name.LocalName != GameObjectNode) { throw new ArgumentException("Load GameObject: xml is not a GameObject"); } var type = (ObjectType)Enum.Parse(typeof(ObjectType), xml.Attribute("Type").Value); switch (type) { case ObjectType.Character: return(Character.FromXml(xml)); case ObjectType.Demeanor: return(Demeanor.FromXml(xml)); case ObjectType.Advantage: return(Advantage.FromXml(xml)); case ObjectType.Disadvantage: return(Disadvantage.FromXml(xml)); case ObjectType.Ability: return(Ability.FromXml(xml)); case ObjectType.Equipment: return(Gear.FromXml(xml)); case ObjectType.Template: return(Template.FromXml(xml)); default: throw new ArgumentException("Load GameObject: xml GameObject unknown type."); } }