private static void LevelUpSpell(Levelsequence lvlsequence) { var myLvl = PUC.Player.Level; var q = PUC.Player.Spellbook.GetSpell(SpellSlot.Q); var w = PUC.Player.Spellbook.GetSpell(SpellSlot.W); var e = PUC.Player.Spellbook.GetSpell(SpellSlot.E); var r = PUC.Player.Spellbook.GetSpell(SpellSlot.R); var lvlQ = 0; var lvlW = 0; var lvlE = 0; var lvlR = 0; foreach (var level in lvlsequence.Sequence) { if (lvlQ + lvlW + lvlE + lvlR >= myLvl + lvlsequence.LvlOffset) { return; } switch (level) { case 1: lvlQ += 1; if (q.Level >= lvlQ) { continue; } PUC.Player.Spellbook.LevelUpSpell(SpellSlot.Q); return; case 2: lvlW += 1; if (w.Level >= lvlW) { continue; } PUC.Player.Spellbook.LevelUpSpell(SpellSlot.W); return; case 3: lvlE += 1; if (e.Level >= lvlE) { continue; } PUC.Player.Spellbook.LevelUpSpell(SpellSlot.E); return; case 4: lvlR += 1; if (r.Level >= lvlR) { continue; } PUC.Player.Spellbook.LevelUpSpell(SpellSlot.R); return; } } }
private static void LevelUpSpell(Levelsequence lvlsequence) { var myLvl = PUC.Player.Level; var q = PUC.Player.Spellbook.GetSpell(SpellSlot.Q); var w = PUC.Player.Spellbook.GetSpell(SpellSlot.W); var e = PUC.Player.Spellbook.GetSpell(SpellSlot.E); var r = PUC.Player.Spellbook.GetSpell(SpellSlot.R); var lvlQ = 0; var lvlW = 0; var lvlE = 0; var lvlR = 0; foreach (var level in lvlsequence.Sequence) { if(lvlQ + lvlW + lvlE + lvlR >= myLvl + lvlsequence.LvlOffset) return; switch(level) { case 1: lvlQ += 1; if(q.Level >= lvlQ) continue; PUC.Player.Spellbook.LevelUpSpell(SpellSlot.Q); return; case 2: lvlW += 1; if(w.Level >= lvlW) continue; PUC.Player.Spellbook.LevelUpSpell(SpellSlot.W); return; case 3: lvlE += 1; if(e.Level >= lvlE) continue; PUC.Player.Spellbook.LevelUpSpell(SpellSlot.E); return; case 4: lvlR += 1; if(r.Level >= lvlR) continue; PUC.Player.Spellbook.LevelUpSpell(SpellSlot.R); return; } } }