From 929a99bfc4967632abae520b18867f81a254ebae Mon Sep 17 00:00:00 2001 From: THEIS Date: Wed, 23 May 2018 22:10:20 +0200 Subject: [PATCH 1/4] Create Drawer - Draw Spell - Draw Cursor --- Auto/Core.lua | 6 ++ Auto/Drawer.lua | 145 ++++++++++++++++++++++++++++++++++++++++ Auto/currentVersion.lua | 3 + Auto/newVersion.lua | 3 + 4 files changed, 157 insertions(+) create mode 100644 Auto/Drawer.lua diff --git a/Auto/Core.lua b/Auto/Core.lua index e126a5d..d66e3c9 100644 --- a/Auto/Core.lua +++ b/Auto/Core.lua @@ -180,6 +180,12 @@ else print("ERROR: Auto/Alpha.lua is not present in your Scripts/Common folder. Please re open loader.") end +if FileExist(COMMON_PATH .. "Auto/Drawer.lua") then + require 'Auto/Drawer' +else + print("ERROR: Auto/Drawer.lua is not present in your Scripts/Common folder. Please re open loader.") +end + if not _G.SDK or not _G.SDK.TargetSelector then print("IC Orbwalker MUST be active in order to use this script.") return diff --git a/Auto/Drawer.lua b/Auto/Drawer.lua new file mode 100644 index 0000000..de820ab --- /dev/null +++ b/Auto/Drawer.lua @@ -0,0 +1,145 @@ +if _G.Drawer then return end +class "__Drawer" + +local LocalGameHeroCount = Game.HeroCount +local LocalGameHero = Game.Hero +local myHero = myHero +local Menu = { + drawer = nil + } + +function __Drawer:__init() + print("Loaded Auto3.0: Drawer") + self.spellDraw = { + q = true, qr = myHero:GetSpellData(_Q).range, + w = true, wr = myHero:GetSpellData(_W).range, + e = true, er = myHero:GetSpellData(_E).range, + r = true, rr = myHero:GetSpellData(_R).range + } + Menu.drawer = MenuElement({name = "[Drawer]", id = "drawer", type = MENU }) + self:Menu() + Callback.Add('Draw', function() + self:Draw() + end) +end + +function __Drawer:Menu() + Menu.drawer:MenuElement({name = "Enabled", id = "enabled", value = true}) + self:MenuCursor() + self:MenuSpell() +end + +function __Drawer:MenuCursor() + Menu.drawer:MenuElement({name = "Cursor", id = "cursor", type = MENU}) + Menu.drawer.cursor:MenuElement({id = "enabled", name = "Enabled", value = true}) + Menu.drawer.cursor:MenuElement({id = "color", name = "Color", color = Draw.Color(255, 66, 134, 244)}) + Menu.drawer.cursor:MenuElement({id = "width", name = "Width", value = 1, min = 1, max = 10}) + Menu.drawer.cursor:MenuElement({id = "radius", name = "Radius", value = 50, min = 1, max = 300}) +end + +function __Drawer:MenuSpell() + Menu.drawer:MenuElement({name = "Spell Ranges", id = "circle", type = MENU, + onclick = function() + if self.spellDraw.q then + Menu.drawer.circle.qrange:Hide(true) + Menu.drawer.circle.qrangecolor:Hide(true) + Menu.drawer.circle.qrangewidth:Hide(true) + end + if self.spellDraw.w then + Menu.drawer.circle.wrange:Hide(true) + Menu.drawer.circle.wrangecolor:Hide(true) + Menu.drawer.circle.wrangewidth:Hide(true) + end + if self.spellDraw.e then + Menu.drawer.circle.erange:Hide(true) + Menu.drawer.circle.erangecolor:Hide(true) + Menu.drawer.circle.erangewidth:Hide(true) + end + if self.spellDraw.r then + Menu.drawer.circle.rrange:Hide(true) + Menu.drawer.circle.rrangecolor:Hide(true) + Menu.drawer.circle.rrangewidth:Hide(true) + end + end + }) + if self.spellDraw.q then + Menu.drawer.circle:MenuElement({name = "[Q] Range", id = "note5", type = SPACE, + onclick = function() + Menu.drawer.circle.qrange:Hide() + Menu.drawer.circle.qrangecolor:Hide() + Menu.drawer.circle.qrangewidth:Hide() + end + }) + Menu.drawer.circle:MenuElement({id = "qrange", name = " Enabled", value = true}) + Menu.drawer.circle:MenuElement({id = "qrangecolor", name = " Color", color = Draw.Color(255, 66, 134, 244)}) + Menu.drawer.circle:MenuElement({id = "qrangewidth", name = " Width", value = 1, min = 1, max = 10}) + end + if self.spellDraw.w then + Menu.drawer.circle:MenuElement({name = "[W] Range", id = "note6", type = SPACE, + onclick = function() + Menu.drawer.circle.wrange:Hide() + Menu.drawer.circle.wrangecolor:Hide() + Menu.drawer.circle.wrangewidth:Hide() + end + }) + Menu.drawer.circle:MenuElement({id = "wrange", name = " Enabled", value = true}) + Menu.drawer.circle:MenuElement({id = "wrangecolor", name = " Color", color = Draw.Color(255, 92, 66, 244)}) + Menu.drawer.circle:MenuElement({id = "wrangewidth", name = " Width", value = 1, min = 1, max = 10}) + end + if self.spellDraw.e then + Menu.drawer.circle:MenuElement({name = "[E] Range", id = "note7", type = SPACE, + onclick = function() + Menu.drawer.circle.erange:Hide() + Menu.drawer.circle.erangecolor:Hide() + Menu.drawer.circle.erangewidth:Hide() + end + }) + Menu.drawer.circle:MenuElement({id = "erange", name = " Enabled", value = true}) + Menu.drawer.circle:MenuElement({id = "erangecolor", name = " Color", color = Draw.Color(255, 66, 244, 149)}) + Menu.drawer.circle:MenuElement({id = "erangewidth", name = " Width", value = 1, min = 1, max = 10}) + end + if self.spellDraw.r then + Menu.drawer.circle:MenuElement({name = "[R] Range", id = "note8", type = SPACE, + onclick = function() + Menu.drawer.circle.rrange:Hide() + Menu.drawer.circle.rrangecolor:Hide() + Menu.drawer.circle.rrangewidth:Hide() + end + }) + Menu.drawer.circle:MenuElement({id = "rrange", name = " Enabled", value = true}) + Menu.drawer.circle:MenuElement({id = "rrangecolor", name = " Color", color = Draw.Color(255, 244, 182, 66)}) + Menu.drawer.circle:MenuElement({id = "rrangewidth", name = " Width", value = 1, min = 1, max = 10}) + end +end + +function __Drawer:Draw() + -- Enable + if not Menu.drawer.enabled:Value() then + return + end + -- Cursor + if Menu.drawer.cursor.enabled:Value() then + Draw.Circle(mousePos, Menu.drawer.cursor.radius:Value(), Menu.drawer.cursor.width:Value(), Menu.drawer.cursor.color:Value()) + end + -- Spell + local drawMenu = Menu.drawer.circle + if self.spellDraw.q and drawMenu.qrange:Value() then + local qrange = self.spellDraw.qf and self.spellDraw.qf() or self.spellDraw.qr + Draw.Circle(myHero.pos, qrange, drawMenu.qrangewidth:Value(), drawMenu.qrangecolor:Value()) + end + if self.spellDraw.w and drawMenu.wrange:Value() then + local wrange = self.spellDraw.wf and self.spellDraw.wf() or self.spellDraw.wr + Draw.Circle(myHero.pos, wrange, drawMenu.wrangewidth:Value(), drawMenu.wrangecolor:Value()) + end + if self.spellDraw.e and drawMenu.erange:Value() then + local erange = self.spellDraw.ef and self.spellDraw.ef() or self.spellDraw.er + Draw.Circle(myHero.pos, erange, drawMenu.erangewidth:Value(), drawMenu.erangecolor:Value()) + end + if self.spellDraw.r and drawMenu.rrange:Value() then + local rrange = self.spellDraw.rf and self.spellDraw.rf() or self.spellDraw.rr + Draw.Circle(myHero.pos, rrange, drawMenu.rrangewidth:Value(), drawMenu.rrangecolor:Value()) + end +end + +Drawer = __Drawer() +_G.Drawer = Drawer diff --git a/Auto/currentVersion.lua b/Auto/currentVersion.lua index 21d547c..c8e3a5d 100644 --- a/Auto/currentVersion.lua +++ b/Auto/currentVersion.lua @@ -6,6 +6,9 @@ Data = { Activator = { Version = 1.1, }, + Drawer = { + Version = 1.0, + }, }, Loader = { Version = 1.1, diff --git a/Auto/newVersion.lua b/Auto/newVersion.lua index 123d92d..17d380c 100644 --- a/Auto/newVersion.lua +++ b/Auto/newVersion.lua @@ -55,6 +55,9 @@ Data = { Activator = { Version = 1.21, }, + Drawer = { + Version = 1.0, + }, }, } From 4753102f45e29cf25dc15ef8ccda1db9755dd07c Mon Sep 17 00:00:00 2001 From: THEIS Date: Wed, 23 May 2018 22:14:16 +0200 Subject: [PATCH 2/4] Merge branch 'Drawer' --- Auto/Champions/Xerath.lua | 153 ++++++++++++++++++++++++++++++++++++++ Auto/currentVersion.lua | 4 + Auto/newVersion.lua | 4 + 3 files changed, 161 insertions(+) create mode 100644 Auto/Champions/Xerath.lua diff --git a/Auto/Champions/Xerath.lua b/Auto/Champions/Xerath.lua new file mode 100644 index 0000000..37e87ba --- /dev/null +++ b/Auto/Champions/Xerath.lua @@ -0,0 +1,153 @@ +Q = { Range = 750, Delay = 0.35, Speed = 99999, Radius = 145 } +W = { Range = 1050, Delay = 0.5, Speed = 99999, Radius = 200 } +E = { Range = 1050, Delay = 0.25, Speed = 2100, Radius = 80, Collision = true, IsLine = true } +R = { Range = 3520, Delay = 0.5, Speed = 99999, Radius = 200 } +local LocalMathMin = math.min +local LocalTableSort = table.sort + +function LoadScript() + Menu = MenuElement({type = MENU, id = myHero.networkID, name = myHero.charName}) + Menu:MenuElement({id = "Skills", name = "Skills", type = MENU}) + Menu.Skills:MenuElement({id = "Q", name = "[Q] Arcanopulse", type = MENU}) + Menu.Skills.Q:MenuElement({id = "Accuracy", name = "Accuracy", value = 3, min = 1, max = 6, step = 1 }) + Menu.Skills.Q:MenuElement({id = "Targets", name = "Target List", type = MENU}) + for i = 1, LocalGameHeroCount() do + local hero = LocalGameHero(i) + if hero and hero.isEnemy then + Menu.Skills.Q.Targets:MenuElement({id = hero.networkID, name = hero.charName, value = true, toggle = true}) + end + end + + Menu.Skills:MenuElement({id = "W", name = "[W] Eye of Destruction", type = MENU}) + Menu.Skills.W:MenuElement({id = "Accuracy", name = "Combo Accuracy", value = 3, min = 1, max = 6, step = 1 }) + Menu.Skills.W:MenuElement({id = "Auto", name = "Auto Cast On Immobile Targets", value = true, toggle = true }) + Menu.Skills.W:MenuElement({id = "Killsteal", name = "Killsteal", value = true, toggle = true }) + Menu.Skills.W:MenuElement({id = "Mana", name = "Minimum Mana", value = 20, min = 1, max = 100, step = 1 }) + + + Menu.Skills:MenuElement({id = "E", name = "[E] Shocking Orb", type = MENU}) + Menu.Skills.E:MenuElement({id = "Accuracy", name = "Combo Accuracy", value = 3, min = 1, max = 6, step = 1 }) + Menu.Skills.E:MenuElement({id = "Auto", name = "Auto Cast On Immobile Targets", value = true, toggle = true }) + Menu.Skills.E:MenuElement({id = "Mana", name = "Minimum Mana", value = 20, min = 1, max = 100, step = 1 }) + + + Menu.Skills:MenuElement({id = "R", name = "[R] Rite of the Arcane", type = MENU}) + Menu.Skills.R:MenuElement({id = "Auto", name = "Auto Cast", value = true }) + Menu.Skills.R:MenuElement({id = "Accuracy", name = "Accuracy", value = 3, min = 1, max = 6, step = 1 }) + Menu.Skills.R:MenuElement({id = "Frequency", name = "Cast Speed", value = 1, min =.25, max = 3, step = .25 }) + Menu.Skills.R:MenuElement({id = "Killsteal", name = "Killsteal", value = true }) + Menu.Skills.R:MenuElement({id = "Assist", name = "Assist Key",value = false, key = 0x73}) + + Menu.Skills:MenuElement({id = "Combo", name = "Combo Key",value = false, key = string.byte(" ") }) + LocalObjectManager:OnSpellCast(function(spell) OnSpellCast(spell) end) + Callback.Add("Tick", function() Tick() end) +end + +local qStartTime = 0 +function OnSpellCast(spell) + if spell.owner == myHero.networkID then + if spell.data.name == "XerathArcanopulseChargeUp" then + qStartTime = LocalGameTimer() + --Update the range of our ult on use so it will always be correct + elseif spell.data.name == "XerathLocusOfPower2" then + local rData = myHero:GetSpellData(_R) + if rData.level == 3 then R.Range = 6100 + elseif rData.level == 2 then R.Range = 4800 + else R.Range = 3500 end + end + end +end + +function IsQCharging() + return myHero.activeSpell and myHero.activeSpell.valid and myHero.activeSpell.name == "XerathArcanopulseChargeUp" +end + +function IsRActive() + if myHero.activeSpell and myHero.activeSpell.valid and myHero.activeSpell.name == "XerathLocusOfPower2" then + return true + end +end + +local NextTick = LocalGameTimer() +function Tick() + if LocalGameIsChatOpen() then return end + local currentTime = LocalGameTimer() + if NextTick > currentTime then return end + NextTick = LocalGameTimer() + .1 + + if IsQCharging() then + local chargeTime = LocalMathMin(LocalGameTimer() - qStartTime, 2) + local range = 750 + 500* chargeTime + for i = 1, LocalGameHeroCount() do + local hero = LocalGameHero(i) + if CanTarget(hero) and Menu.Skills.Q.Targets[hero.networkID] then + local aimPosition, hitChance = LocalGeometry:GetCastPosition(myHero, hero, range, Q.Delay, Q.Speed, Q.Radius, Q.Collision, Q.IsLine) + if aimPosition and LocalGeometry:IsInRange(myHero.pos, aimPosition, range - 200) then + local thisDmg = LocalDamageManager:CalculateSkillDamage(myHero, hero, "XerathArcanopulseChargeUp") + --We can killsteal the target. Set them as our priority + if thisDmg >= hero.health and Menu.Skills.Q.Killsteal then + CastSpell(HK_Q, aimPosition) + NextTick = LocalGameTimer() + .2 + return + end + + if Menu.Skills.Q.Targets[hero.networkID]:Value() or chargeTime > 1.5 then + if hitChance >= Menu.Skills.Q.Accuracy:Value() then + CastSpell(HK_Q, aimPosition) + NextTick = LocalGameTimer() + .2 + return + end + end + + end + end + end + end + + if IsRActive() and Ready(_R) then + local target = Menu.Skills.R.Assist:Value() and NearestEnemy(mousePos, 800) or Menu.Skills.R.Auto:Value() and GetTarget(R.Range) + if target then + local thisDmg = LocalDamageManager:CalculateSkillDamage(myHero, target, "XerathLocusOfPower2") + local accuracyRequired = Menu.Skills.R.Killsteal:Value() and thisDmg >= target.health and 1 or Menu.Skills.R.Accuracy:Value() + local aimPosition, hitChance = LocalGeometry:GetCastPosition(myHero, target, R.Range, R.Delay,R.Speed, R.Radius, R.Collision, R.IsLine) + if aimPosition and hitChance >= accuracyRequired then + CastSpell(HK_R, aimPosition) + if Menu.Skills.R.Assist:Value() then + NextTick = LocalGameTimer() + .2 + else + NextTick = LocalGameTimer() + Menu.Skills.R.Frequency:Value() + end + end + end + end + + if Ready(_E) and CurrentPctMana(myHero) >= Menu.Skills.W.Mana:Value() then + local target = GetTarget(E.Range) + if CanTarget(target) then + local accuracyRequired = Menu.Skills.Combo:Value() and Menu.Skills.E.Accuracy:Value() or Menu.Skills.E.Auto:Value() and 4 or 6 + local aimPosition, hitChance = LocalGeometry:GetCastPosition(myHero, target, E.Range, E.Delay,E.Speed, E.Radius, E.Collision, E.IsLine) + if aimPosition and hitChance >= accuracyRequired then + CastSpell(HK_E, aimPosition) + NextTick = LocalGameTimer() + .2 + return + end + end + end + + if Ready(_W) and CurrentPctMana(myHero) >= Menu.Skills.W.Mana:Value() then + local target = GetTarget(W.Range) + if CanTarget(target) then + local thisDmg = LocalDamageManager:CalculateSkillDamage(myHero, target, "XerathArcaneBarrage2") + local accuracyRequired = Menu.Skills.W.Killsteal:Value() and thisDmg >= target.health and 2 or Menu.Skills.Combo:Value() and Menu.Skills.W.Accuracy:Value() or Menu.Skills.W.Auto:Value() and 4 or 6 + local aimPosition, hitChance = LocalGeometry:GetCastPosition(myHero, target, W.Range, W.Delay,W.Speed, W.Radius, W.Collision, W.IsLine) + if aimPosition and hitChance >= accuracyRequired then + CastSpell(HK_W, aimPosition) + NextTick = LocalGameTimer() + .2 + return + end + end + end + + + +end \ No newline at end of file diff --git a/Auto/currentVersion.lua b/Auto/currentVersion.lua index c8e3a5d..f6c20ac 100644 --- a/Auto/currentVersion.lua +++ b/Auto/currentVersion.lua @@ -58,6 +58,10 @@ Data = { Changelog = "Karthus Changelog Here", Version = 1, }, + Xerath = { + Changelog = "Xerath Changelog Here", + Version = 1, + }, }, } diff --git a/Auto/newVersion.lua b/Auto/newVersion.lua index 17d380c..81ec369 100644 --- a/Auto/newVersion.lua +++ b/Auto/newVersion.lua @@ -35,6 +35,10 @@ Data = { Changelog = "Taliyah Changelog Here", Version = 1.3, }, + Xerath = { + Changelog = "Xerath Changelog Here", + Version = 1, + }, Ziggs = { Changelog = "Ziggs Changelog Here", Version = 1.1, From 3fad9b98ba1dcd2358dfea467655e84b153a9bd3 Mon Sep 17 00:00:00 2001 From: THEIS Date: Wed, 23 May 2018 22:15:18 +0200 Subject: [PATCH 3/4] Revert "Merge remote-tracking branch 'origin/Drawer' into Drawer" This reverts commit 0527a439bcbc5222955953079d16f4db84ade745. From 94bb339898dc8ff39745edb5de3c3f2be9d36f99 Mon Sep 17 00:00:00 2001 From: THEIS Date: Thu, 24 May 2018 00:42:58 +0200 Subject: [PATCH 4/4] Fix Drawer -Add Champs SkillShoot --- Auto/Drawer.lua | 119 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 119 insertions(+) diff --git a/Auto/Drawer.lua b/Auto/Drawer.lua index de820ab..7ff9a5a 100644 --- a/Auto/Drawer.lua +++ b/Auto/Drawer.lua @@ -16,6 +16,125 @@ function __Drawer:__init() e = true, er = myHero:GetSpellData(_E).range, r = true, rr = myHero:GetSpellData(_R).range } + if myHero.charName == "Aatrox" then + self.spellDraw = { q = true, qr = 650, e = true, er = 1000, r = true, rr = 550 } + elseif myHero.charName == "Ahri" then + self.spellDraw = { q = true, qr = 880, w = true, wr = 700, e = true, er = 975, r = true, rr = 450 } + elseif myHero.charName == "Akali" then + self.spellDraw = { q = true, qr = 600 + 120, w = true, wr = 475, e = true, er = 300, r = true, rr = 700 + 120 } + elseif myHero.charName == "Alistar" then + self.spellDraw = { q = true, qr = 365, w = true, wr = 650 + 120, e = true, er = 350 } + elseif myHero.charName == "Amumu" then + self.spellDraw = { q = true, qr = 1100, w = true, wr = 300, e = true, er = 350, r = true, rr = 550 } + elseif myHero.charName == "Anivia" then + self.spellDraw = { q = true, qr = 1075, w = true, wr = 1000, e = true, er = 650 + 120, r = true, rr = 750 } + elseif myHero.charName == "Annie" then + self.spellDraw = { q = true, qr = 625 + 120, w = true, wr = 625, r = true, rr = 600 } + elseif myHero.charName == "Ashe" then + self.spellDraw = { w = true, wr = 1200 } + elseif myHero.charName == "AurelionSol" then + self.spellDraw = { q = true, qr = 1075, w = true, wr = 600, e = true, ef = function() local eLvl = myHero:GetSpellData(_E).level; if eLvl == 0 then return 3000 else return 2000 + 1000 * eLvl end end, r = true, rr = 1500 } + elseif myHero.charName == "Azir" then + self.spellDraw = { q = true, qr = 740, w = true, wr = 500, e = true, er = 1100, r = true, rr = 250 } + elseif myHero.charName == "Bard" then + self.spellDraw = { q = true, qr = 950, w = true, wr = 800, e = true, er = 900, r = true, rr = 3400 } + elseif myHero.charName == "Blitzcrank" then + self.spellDraw = { q = true, qr = 925, e = true, er = 300, r = true, rr = 600 } + elseif myHero.charName == "Brand" then + self.spellDraw = { q = true, qr = 1050, w = true, wr = 900, e = true, er = 625, r = true, rr = 750 } + elseif myHero.charName == "Braum" then + self.spellDraw = { q = true, qr = 1000, w = true, wr = 650 + 120, r = true, rr = 1250 } + elseif myHero.charName == "Caitlyn" then + self.spellDraw = { q = true, qr = 1250, w = true, wr = 800, e = true, er = 750, r = true, rf = function() local rLvl = myHero:GetSpellData(_R).level; if rLvl == 0 then return 2000 else return 1500 + 500 * rLvl end end } + elseif myHero.charName == "Camille" then + self.spellDraw = { q = true, qr = 325, w = true, wr = 610, e = true, er = 800, r = true, rr = 475 } + elseif myHero.charName == "Cassiopeia" then + self.spellDraw = { q = true, qr = 850, w = true, wr = 800, e = true, er = 700, r = true, rr = 825 } + elseif myHero.charName == "Chogath" then + self.spellDraw = { q = true, qr = 950, w = true, wr = 650, e = true, er = 500, r = true, rr = 175 + 120 } + elseif myHero.charName == "Corki" then + self.spellDraw = { q = true, qr = 825, w = true, wr = 600, r = true, rr = 1225 } + elseif myHero.charName == "Darius" then + self.spellDraw = { q = true, qr = 425, w = true, wr = 300, e = true, er = 535, r = true, rr = 460 + 120 } + elseif myHero.charName == "Diana" then + self.spellDraw = { q = true, qr = 900, w = true, wr = 200, e = true, er = 450, r = true, rr = 825 } + elseif myHero.charName == "DrMundo" then + self.spellDraw = { q = true, qr = 975, w = true, wr = 325 } + elseif myHero.charName == "Draven" then + self.spellDraw = { e = true, er = 1050 } + elseif myHero.charName == "Ekko" then + self.spellDraw = { q = true, qr = 1075, w = true, wr = 1600, e = true, er = 325 } + elseif myHero.charName == "Elise" then + -- self.spellDraw = { need check form buff qHuman = 625, qSpider = 475, wHuman = 950, wSpider = math.huge(none), eHuman = 1075, eSpider = 750 } + elseif myHero.charName == "Evelynn" then + self.spellDraw = { q = true, qr = 800, w = true, wf = function() local wLvl = myHero:GetSpellData(_W).level; if wLvl == 0 then return 1200 else return 1100 + 100 * wLvl end end, e = true, er = 210, r = true, rr = 450 } + elseif myHero.charName == "Ezreal" then + self.spellDraw = { q = true, qr = 1150, w = true, wr = 1000, e = true, er = 475 } + elseif myHero.charName == "Fiddlesticks" then + self.spellDraw = { q = true, qr = 575 + 120, w = true, wr = 650, e = true, er = 750 + 120, r = true, rr = 800 } + elseif myHero.charName == "Fiora" then + self.spellDraw = { q = true, qr = 400, w = true, wr = 750, r = true, rr = 500 + 120 } + elseif myHero.charName == "Fizz" then + self.spellDraw = { q = true, qr = 550 + 120, e = true, er = 400, r = true, rr = 1300 } + elseif myHero.charName == "Galio" then + self.spellDraw = { q = true, qr = 825, w = true, wr = 350, e = true, er = 650, r = true, rf = function() local rLvl = myHero:GetSpellData(_R).level; if rLvl == 0 then return 4000 else return 3250 + 750 * rLvl end end } + elseif myHero.charName == "Gangplank" then + self.spellDraw = { q = true, qr = 625 + 120, w = true, wr = 650, e = true, er = 1000 } + elseif myHero.charName == "Garen" then + self.spellDraw = { e = true, er = 325, r = true, rr = 400 + 120 } + elseif myHero.charName == "Gnar" then + self.spellDraw = { q = true, qr = 1100, r = true, rr = 475, w = false, e = false } -- wr (mega gnar) = 550, er (mini gnar) = 475, er (mega gnar) = 600 + elseif myHero.charName == "Gragas" then + self.spellDraw = { q = true, qr = 850, e = true, er = 600, r = true, rr = 1000 } + elseif myHero.charName == "Graves" then + self.spellDraw = { q = true, qr = 925, w = true, wr = 950, e = true, er = 475, r = true, rr = 1000 } + elseif myHero.charName == "Hecarim" then + self.spellDraw = { q = true, qr = 350, w = true, wr = 575 + 120, r = true, rr = 1000 } + elseif myHero.charName == "Heimerdinger" then + self.spellDraw = { q = false, w = true, wr = 1325, e = true, er = 970 } -- qr (noR) = 350, wr (R) = 450 + elseif myHero.charName == "Illaoi" then + self.spellDraw = { q = true, qr = 850, w = true, wr = 350 + 120, e = true, er = 900, r = true, rr = 450 } + elseif myHero.charName == "Irelia" then + self.spellDraw = { q = true, qr = 625 + 120, w = true, wr = 825, e = true, er = 900, r = true, rr = 1000 } + elseif myHero.charName == "Ivern" then + self.spellDraw = { q = true, qr = 1075, w = true, wr = 1000, e = true, er = 750 + 120 } + elseif myHero.charName == "Janna" then + self.spellDraw = { q = true, qf = function() local qt = GameTimer() - self.LastQk;if qt > 3 then return 1000 end local qrange = qt * 250;if qrange > 1750 then return 1750 end return qrange end, w = true, wr = 550 + 120, e = true, er = 800 + 120, r = true, rr = 725 } + elseif myHero.charName == "JarvanIV" then + self.spellDraw = { q = true, qr = 770, w = true, wr = 625, e = true, er = 860, r = true, rr = 650 + 120 } + elseif myHero.charName == "Jax" then + self.spellDraw = { q = true, qr = 700 + 120, e = true, er = 300 } + elseif myHero.charName == "Jayce" then + --self.spellDraw = { q = true, qr = 700 + 120, e = true, er = 300, r = true } (Mercury Hammer: q=600+120, w=285, e=240+120; Mercury Cannon: q=1050/1470, w=active, e=650 + elseif myHero.charName == "Jhin" then + self.spellDraw = { q = true, qr = 550 + 120, w = true, wr = 3000, e = true, er = 750, r = true, rr = 3500 } + elseif myHero.charName == "Jinx" then + self.spellDraw = { q = true, qf = function() if self:HasBuff(myHero, "jinxq") then return 525 + myHero.boundingRadius + 35 else local qExtra = 25 * myHero:GetSpellData(_Q).level; return 575 + qExtra + myHero.boundingRadius + 35 end end, w = true, wr = 1450, e = true, er = 900 } + elseif myHero.charName == "KogMaw" then + self.spellDraw = { q = true, qr = 1175, e = true, er = 1280, r = true, rf = function() local rlvl = myHero:GetSpellData(_R).level; if rlvl == 0 then return 1200 else return 900 + 300 * rlvl end end } + elseif myHero.charName == "Lucian" then + self.spellDraw = { q = true, qr = 500+120, w = true, wr = 900+350, e = true, er = 425, r = true, rr = 1200 } + elseif myHero.charName == "Morgana" then + self.spellDraw = { q = true, qr = 1175, w = true, wr = 900, e = true, er = 800, r = true, rr = 625 } + elseif myHero.charName == "Nami" then + self.spellDraw = { q = true, qr = 875, w = true, wr = 725, e = true, er = 800, r = true, rr = 2750 } + elseif myHero.charName == "Sivir" then + self.spellDraw = { q = true, qr = 1250, r = true, rr = 1000 } + elseif myHero.charName == "Teemo" then + self.spellDraw = { q = true, qr = 680, r = true, rf = function() local rLvl = myHero:GetSpellData(_R).level; if rLvl == 0 then rLvl = 1 end return 150 + ( 250 * rLvl ) end } + elseif myHero.charName == "Twitch" then + self.spellDraw = { w = true, wr = 950, e = true, er = 1200, r = true, rf = function() return myHero.range + 300 + ( myHero.boundingRadius * 2 ) end } + elseif myHero.charName == "Tristana" then + self.spellDraw = { w = true, wr = 900 } + elseif myHero.charName == "Varus" then + self.spellDraw = { q = true, qr = 1650, e = true, er = 950, r = true, rr = 1075 } + elseif myHero.charName == "Vayne" then + self.spellDraw = { q = true, qr = 300, e = true, er = 550 } + elseif myHero.charName == "Viktor" then + self.spellDraw = { q = true, qr = 600 + 2 * myHero.boundingRadius, w = true, wr = 700, e = true, er = 550 } + elseif myHero.charName == "Xayah" then + self.spellDraw = { q = true, qr = 1100 } + end Menu.drawer = MenuElement({name = "[Drawer]", id = "drawer", type = MENU }) self:Menu() Callback.Add('Draw', function()