private void ActiveSkillBox_SelectedIndexChanged(object sender, EventArgs e) { try { int index = ActiveSkillBox.SelectedIndex - 1; var aSkill = _state.Player.Set.Skills[index]; var selected = aSkill.Skill; SkillDisplayBox.Clear(); switch (selected.S_Type) { case SkillType.OFFENSIVE: UpdateMLTB(SkillDisplayBox, selected.Name); UpdateMLTB(SkillDisplayBox, $"{selected.GetDamage()} Damage"); SkillDisplayBox.AppendText($"Element: {_state.SManager.ElementToString(selected.Element)}"); break; case SkillType.PASSIVE_BUFF: UpdateMLTB(SkillDisplayBox, selected.Name); SkillDisplayBox.AppendText($"Boosts {_state.SManager.StatsToString(selected.Stat)} by {selected.Multiplier}"); break; case SkillType.PASSIVE_VOID: UpdateMLTB(SkillDisplayBox, selected.Name); SkillDisplayBox.AppendText($"Reduces {_state.SManager.ElementToString(selected.Element)} dmg by {selected.Multiplier}"); break; } } catch (NullReferenceException) { } catch (ArgumentOutOfRangeException) { } }
private void UpdateSkillBox(string info) { string[] display = info.Split('*'); for (int d = 0; d < display.Length - 1; d++) { SkillDisplayBox.AppendText(display[d]); SkillDisplayBox.AppendText(Environment.NewLine); } SkillDisplayBox.AppendText(display[display.Length - 1]); }