public void AddWeapon(string name, string entity, int ammo, int usage, HealthMeter meter, int? palette) { if (weapons.Any(info => info.Name == name)) { return; } WeaponInfo weapon = new WeaponInfo { Name = name, Entity = entity, Ammo = ammo, Max = ammo, Usage = usage, Meter = meter, Palette = palette, Index = weapons.Count }; weapons.Add(weapon); }
public IComponentInfo Load(XElement node, Project project) { var comp = new WeaponComponentInfo(); comp.Weapons = node.Elements("Weapon") .Select(x => { var w = new WeaponInfo() { Name = x.GetAttribute<string>("name"), EntityName = x.GetAttribute<string>("entity"), Ammo = x.TryAttribute<int?>("ammo"), Usage = x.TryAttribute<int?>("usage"), Palette = x.TryAttribute<int?>("palette") }; var meterNode = x.Element("Meter"); if (meterNode != null) w.Meter = _meterReader.LoadMeter(meterNode, project.BaseDir); return w; }) .ToList(); return comp; }