public void setInfoLabel(MyLabel label, Rune check_rune) { StatSum statsum = (check_rune != null) ? check_rune.GetStats(Get.isSpecial(label.effect_type)) : null; StatBit statbit = (statsum != null) ? statsum.GetStatBit(label.effect_type) : null; if (label.text != null) { label.text.text = ""; } if (label.image_labels.Length > 0) { label.image_labels[0].setLabel("", 0); } if (statbit != null && statbit.hasStat()) { int lvl = check_rune.getLevel(label.effect_type); if (label.text != null) { label.text.text = (lvl > 0) ? lvl.ToString() : ""; } if (label.image_labels.Length > 0) { label.image_labels[0].setLabel("", lvl); } } }
void UpgradeTargetGhosts() { if (child_toys.Count == 0) { return; } StatSum my_stats = rune.GetStats(false); float tower_force = rune.getLevel(EffectType.TowerForce); float tower_range = rune.getLevel(EffectType.TowerRange); foreach (Toy f in child_toys) { int i = 0; while (f.rune.getLevel(EffectType.Force) < tower_force && i < 10) { f.rune.Upgrade(EffectType.Force, false); // Debug.Log(f.name + "am force level " + f.rune.getLevel(EffectType.Force) + " want to be level " + tower_force + "\n"); i++; } i = 0; while (f.rune.getLevel(EffectType.Range) < tower_range && i < 10) { Debug.Log(f.name + "am range level " + f.rune.getLevel(EffectType.Range) + " want to be level " + tower_range + "\n"); f.rune.Upgrade(EffectType.Range, false); i++; } } }
public void CheckUpgrades() { bool special_skills_mode = (this is LevelList_Toy_Button_Driver); foreach (KeyValuePair <Toy_Button, Button> kvp in drivers[current_driver].button_map) { Toy_Button button = kvp.Key; if (parent == null && !special_skills_mode) { return; } Rune check_rune = getCheckRune(button); RuneType check_me_instead = RuneType.Sensible; // instead of parent.rune.runetype if (check_rune != null && UpgradeButton(button.type)) { //specialskillmode has a separate upgrade button //StateType status = (special_skills_mode) ? StateType.Yes : check_rune.CanUpgrade(button.effect_type, check_me_instead); StateType status = check_rune.CanUpgrade(button.effect_type, check_me_instead); StateType have_skill = (check_rune.haveUpgrade(button.effect_type)) ? StateType.Yes : status; button.setState(status); button.setButtonImage(have_skill); } else if (!UpgradeButton(button.type)) { if (check_rune == null) { continue; } if (button.type.Equals("sell")) { kvp.Value.gameObject.SetActive(!(check_rune.toy_type == ToyType.Hero || check_rune.runetype == RuneType.Castle)); } else if (button.type.Equals("move_confirm")) { kvp.Value.gameObject.SetActive(check_rune.toy_type == ToyType.Hero); } else if (button.type.Equals("reset_special_skills") || button.type.Equals("reset_skills")) { kvp.Value.gameObject.SetActive(check_rune.toy_type == ToyType.Hero); } } else { button.setState(StateType.No); button.setButtonImage(StateType.No); } } StatSum statsum = null; if (!special_skills_mode) { statsum = parent.rune.GetStats(false); } List <MyLabel> labels = drivers[current_driver].labels; for (int i = 0; i < labels.Count; i++) { MyLabel label = labels[i]; Rune check_rune = null; if (special_skills_mode) { check_rune = Central.Instance.getHeroRune(label.runetype); } else { check_rune = parent.rune; } statsum = (check_rune != null) ? check_rune.GetStats(special_skills_mode) : null; if (label.type.Equals("current_score")) { labels[i].text.text = Get.Round(ScoreKeeper.Instance.getTotalScore(), 0).ToString(); } } }