void RefreshWeapons() { OwnedWeapons.Clear(); foreach (var weapon in GetComponentsInChildren(typeof(Weapon))) { var weaponComponent = (weapon as Weapon); if (OwnedWeapons.Contains(weaponComponent)) { return; } OwnedWeapons.Add(weaponComponent); } }
public void SetActiveWeapon(int index) { if (!OwnedWeapons.ElementAtOrDefault(index)) { return; } CurrentWeapon = OwnedWeapons.ElementAt(index); CurrentWeapon.gameObject.SetActive(true); var weaponsToDeactivate = OwnedWeapons.Where((weapon, idx) => idx != index); foreach (var weapon in weaponsToDeactivate) { weapon.gameObject.SetActive(false); } }
private void saveBox_Click(object sender, EventArgs e) { // check if we're adding a new weapon if (weaponBox.Enabled) { var selectedWeapon = WeaponDatabase.Weapons[weaponBox.SelectedIndex]; // make sure this new weapon isn't already in the list if (OwnedWeapons.Any(existingWeapon => selectedWeapon.Id == existingWeapon.Id)) { MessageBox.Show(Strings.WEAPON_EXISTS_TEXT); return; } Weapon = selectedWeapon; } Weapon.TurfInked = Convert.ToUInt32(turfInkedBox.Value); Weapon.IsNew = newFlagBox.Checked; Close(); }