// Learns a new spell public void Update(SpellUpgradeSuccessMessage message) { Spell newSpell = new Spell(message); Spell known = m_spells.FirstOrDefault(spell => spell.Template.id == newSpell.Template.id); if (known != null) { m_spells[m_spells.IndexOf(known)] = newSpell; } else { m_spells.Add(newSpell); } }