public void UpdateUpgrades(UpgradeCalculator calculator) { bonusPower = 0; bonusHit = 0; bonusCrit = 0; bonusCharges = 0; bonusCost = 0; if (itemz == null) { return; } List <UpgradeItem> list = calculator.GetItemUpgradeList(itemz.uuid); for (int i = 0; i < list.Count; i++) { if (!list[i].researched) { continue; } bonusPower += list[i].upgrade.power; bonusHit += list[i].upgrade.hit; bonusCrit += list[i].upgrade.crit; bonusCharges += list[i].upgrade.charges; bonusCost += list[i].upgrade.costValue; } UpdateBonus(); }
/// <summary> /// Refreshes the bonus values for all the items in the inventory. /// </summary> /// <param name="calculator"></param> public void RefreshUpgrades(UpgradeCalculator calculator) { for (int i = 0; i < inventory.Count; i++) { inventory[i].UpdateUpgrades(calculator); } }
public void ResetData() { stats = new List <StatsContainer>(); inventory = new List <InventoryContainer>(); skills = new List <SkillsContainer>(); baseInfo = new List <SupportContainer>(); items = new List <InventoryItem>(); upgrader = new UpgradeCalculator(); missions = new List <MissionProgress>(); graveyard = new List <string>(); }
public InventoryContainer(ScrObjLibraryVariable iLib, CharacterSaveData saveData, UpgradeCalculator calculator) { wpnSkills = new WeaponRank[WPN_SKILLS]; for (int i = 0; i < saveData.wpnSkills.Length; i++) { wpnSkills[i] = (WeaponRank)saveData.wpnSkills[i]; } for (int i = 0; i < INVENTORY_SIZE; i++) { if (i >= saveData.inventory.Count) { inventory.Add(new InventoryTuple(null, i)); } else { ItemEntry item = (ItemEntry)iLib.GetEntry(saveData.inventory[i]); inventory.Add(new InventoryTuple(item, i) { currentCharges = saveData.invCharges[i] }); inventory[i].UpdateUpgrades(calculator); } } }