public Shaman() { spell_power = 0; spell_crit_rating = 0; spell_haste_rating = 0; intellect = 0; BlessingOfKings = false; Misery = false; SpellCritBonus = 0.152; //0.022 is a base shaman's crit chance, w/o intellect and crit rating and we get 0.1 from talents and 0.03 from totem SpellPowerBonus = 101; //totem SpellCritRatingBonus = 0; IntellectBonus = 0; HyjalExaltedRing = false; TheLightningCapacitor = false; HexShrunkenHead = false; SkullOfGuldan = false; SkycallTotem = false; //mana cost and casting time include modifications by talents, but base damage doesn't //using broken spell coefficients here LightningBolt = new Spell("Lightning Bolt", 563, 643, 270, 2, 0.714, 1); ChainLightning = new Spell("Chain Lightning", 734, 838, 684, 1.5, 0.641, 1); max_mana = 2958 + (Intellect < 20 ? Intellect : 20 + 15 * (Intellect - 20)); CurrentMana = max_mana; }
public SpellbookLevel(string levelText) { allSpells = new ObservableCollection<Spell>(); casterSpells = new ObservableCollection<Spell>(); string[] schools = levelText.Split('#'); foreach (string school in schools) { string[] spellsFromSchool = school.Split('!'); for (int i = 1; i < spellsFromSchool.Count(); i++) { string[] spellSegments = spellsFromSchool[i].Split(':'); Spell spell = new Spell(); spell.spellName = spellSegments[0]; spell.spellSchool = spellsFromSchool[0]; allSpells.Add(spell); } } }