public void AssignBender(List <string> benderArgs) { string type = benderArgs[0]; string name = benderArgs[1]; int power = int.Parse(benderArgs[2]); double secondaryParameter = double.Parse(benderArgs[3]); IBender bender = benderFactory.CreateBender(type, name, power, secondaryParameter); this.bendersByNation[type].Add(bender); }
public IBender CreateBender(string type, string name, int power, double secondaryParameter) { Type benderType = Assembly.GetExecutingAssembly() .GetTypes() .Where(t => t.IsClass) .FirstOrDefault(t => t.Name == type + BenderSuffix); if (benderType == null) { throw new ArgumentNullException(nameof(benderType), "Unknown bender"); } IBender bender = (IBender)Activator.CreateInstance(benderType, name, power, secondaryParameter); return(bender); }
public void AddBender(IBender bender) => this.benders.Add(bender);
public void AssignBender(List <string> benderArgs) { IBender bender = benderFactory.CreateBender(benderArgs); benders.Add(bender); }