Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- require 'Utils'
- require 'winapi'
- require 'SKeys'
- require 'spell_damage'
- local Q,W,E,R = 'Q','W','E','R'
- local send = require 'SendInputScheduled'
- local uiconfig = require 'uiconfig'
- local version = '1.8 by Val'
- ------------------------------------------------------------------------------
- local skillingOrder = {Karma =
- -- SKILLORDER FOR AUTOLEVEL: --
- {Q,W,E,Q,Q,R,Q,E,Q,E,R,E,E,W,W,R,W,W},}
- ------------------------------------------------------------------------------
- -- DON'T CHANGE ANYTHING BELOW THIS LINE UNLESS YOU KNOW WHAT YOU ARE DOING --
- ------------------------------------------------------------------------------
- local metakey = SKeys.Control
- local attempts = 0
- local lastAttempt = 0
- ------------------------------------------------------------------------------
- local ls = 0
- local timer = 0
- local target,target2,target3
- ------------------------------------------------------------------------------
- local spellShot = {shot = false, radius = 0, time = 0, shotX = 0, shotZ = 0, shotY = 0, safeX = 0, safeY = 0, safeZ = 0, isline = false}
- local startPos = {x=0, y=0, z=0}
- local endPos = {x=0, y=0, z=0}
- local shotMe = false
- ------------------------------------------------------------------------------
- local wUsedAt = 0
- local vUsedAt = 0
- local mUsedAt = 0
- local timer = os.clock()
- local bluePill = nil
- ------------------------------------------------------------------------------
- local skillshotArray = {}
- local xa = 50/1920*GetScreenX()
- local xb = 1870/1920*GetScreenX()
- local ya = 50/1080*GetScreenY()
- local yb = 1030/1080*GetScreenY()
- local cc = 0
- ------------------------------------------------------------------------------
- function Main()
- if IsLolActive() then
- SetVariables()
- GetWeakAlly()
- Items()
- ResetTimer()
- SkillshotMainFunc()
- if KarmaSettings.AutoRQ then AutoRQ() end
- if KarmaSettings.Killsteal then Killsteal() end
- if KarmaSettings.Killnotes then Killnotes() end
- if KarmaHotkeys.QSpell then Qspell() end
- if KarmaHotkeys.Wspell then Wspell() end
- if KarmaHotkeys.Espell then Espell() end
- if KarmaHotkeys.ult then Rspell() end
- if KarmaSettings.Autolevel then Autolevel() end
- if KarmaPotions.AutoPotions then AutoPotions() end
- end
- end
- KarmaHotkeys, menu = uiconfig.add_menu('1.) Karma Hotkeys', 250)
- menu.keydown('QSpell', 'QSpell', Keys.Y)
- menu.keydown('Wspell', 'Wspell', Keys.X)
- menu.keydown('ult', 'Rspell', Keys.X)
- menu.checkbutton('Espell', 'Rapidfire', Keys.E)
- menu.permashow('QSpell')
- menu.permashow('Wspell')
- menu.permashow('Espell')
- KarmaSettings, menu = uiconfig.add_menu('2.) Karma Settings', 250)
- menu.checkbutton('AutoRQ', 'Auto-RQ', true)
- menu.checkbutton('drawcircles', 'Draw Circles', true)
- menu.checkbutton('Killsteal', 'Killsteal', true)
- menu.checkbutton('Killnotes', 'Killsteal notifications', true)
- menu.checkbutton('AutoShield', 'AutoShield', true)
- menu.checkbutton('Autolevel', 'Autolevel', false)
- menu.checkbutton('AutoZonyas', 'Auto Zonyas', true)
- menu.slider('ZhonyasValue', 'Zhonya Hourglass Value', 0, 100, 20, nil, true)
- DodgeConfig, menu = uiconfig.add_menu('3.) DodgeSkillshot Config', 250)
- menu.checkbutton('DrawSkillShots', 'Draw Skillshots', true)
- menu.checkbutton('DodgeSkillShots', 'Dodge Skillshots', true)
- menu.checkbutton('DodgeSkillShotsAOE', 'Dodge Skillshots for AOE', true)
- menu.slider('BlockSettings', 'Block user input', 1, 2, 1, {'FixBlock','NoBlock'})
- menu.slider('BlockSettingsAOE', 'Block user input for AOE', 1, 2, 2, {'FixBlock','NoBlock'})
- menu.slider('BlockTime', 'Block imput time', 0, 1000, 750)
- KarmaPotions, menu = uiconfig.add_menu('4.) AutoPotion', 250)
- menu.checkbutton('AutoPotions', 'Master Switch: Potions', true)
- menu.checkbutton('Health_Potion_ONOFF', 'Health Potions', true)
- menu.checkbutton('Mana_Potion_ONOFF', 'Mana Potions', true)
- menu.checkbutton('Chrystalline_Flask_ONOFF', 'Chrystalline Flask', true)
- menu.checkbutton('Elixir_of_Fortitude_ONOFF', 'Elixir of Fortitude', true)
- menu.checkbutton('Biscuit_ONOFF', 'Biscuit', true)
- menu.slider('Health_Potion_Value', 'Health Potion Value', 0, 100, 75, nil, true)
- menu.slider('Mana_Potion_Value', 'Mana Potion Value', 0, 100, 75, nil, true)
- menu.slider('Chrystalline_Flask_Value', 'Chrystalline Flask Value', 0, 100, 75, nil, true)
- menu.slider('Elixir_of_Fortitude_Value', 'Elixir of Fortitude Value', 0, 100, 30, nil, true)
- menu.slider('Biscuit_Value', 'Biscuit Value', 0, 100, 60, nil, true)
- ------------------------------------------------------------------------------------------------
- ------------------------------------------- MAIN SCRIPT ----------------------------------------
- ------------------------------------------------------------------------------------------------
- function SetVariables()
- target2 = GetWeakEnemy('MAGIC',650)
- target3 = GetWeakEnemy('MAGIC',950)
- if myHero.SpellTimeQ>1 and GetSpellLevel('Q')>0 and myHero.mana>=(45+(myHero.SpellLevelQ*5)) then QRDY = 1
- else QRDY = 0 end
- if myHero.SpellTimeW>1 and GetSpellLevel('W')>0 and myHero.mana>=(65+(myHero.SpellLevelW*5)) then WRDY = 1
- else WRDY = 0 end
- if myHero.SpellTimeE>1 and GetSpellLevel('E')>0 and myHero.mana>=(50+(myHero.SpellLevelE*10)) then ERDY = 1
- else ERDY = 0 end
- if myHero.SpellTimeR>1 then RRDY = 1
- else RRDY = 0 end
- if QRDY==0 or (CCenemy~=nil and CreepBlock(GetFireahead(CCenemy,1.6,17,100))==1) then CCenemy=nil end
- if QRDY==0 or RRDY==0 then ls = 0 end
- if CCenemy~=nil then DrawTextObject("CCenemy", CCenemy, Color.Yellow) end
- end
- function Qspell()
- SpellPred(Q,QRDY,myHero,target3,950,1.6,17,1,100)
- end
- function Wspell()
- SpellTarget(W,WRDY,myHero,target3,650)
- end
- function Espell()
- if GetDistance(mousePos)<250 then CastSpellTarget('E',myHero)
- else CastSpellTarget('E',myHero)
- end
- end
- function Rspell()
- if RRDY == 1 then
- CastSpellTarget('R',myHero)
- end
- end
- function AutoRQ()
- if Kenemy~=nil then
- local root = (750+(myHero.SpellLevelW*250))
- local Qcast = ((1.6*100)+(distXYZ(myHero.x,myHero.z,Kenemy.x,Kenemy.z)/(17/10)))+1500
- local duration = 2000+root-Qcast
- if timer~=0 and QRDY==1 and RRDY==0 then
- SpellPred(Q,QRDY,myHero,Kenemy,900,1.6,17,1,100)
- elseif timer~=0 and GetTickCount()>timer+duration then
- if QRDY==1 and RRDY==1 then
- SpellPred(R,RRDY*QRDY,myHero,Kenemy,900,1.6,17,1,100)
- SpellPred(Q,QRDY,myHero,Kenemy,900,1.6,17,1,100)
- end
- end
- if timer~=0 and QRDY==0 and RRDY==0 then
- timer = 0
- end
- if timer~=0 and GetTickCount()>timer+3000 then
- timer=0
- end
- if myHero.dead==1 then
- timer=0
- end
- end
- if CCenemy~=nil then
- SpellXYZ(R,QRDY*RRDY,myHero,myHero,100,myHero.x,myHero.z)
- SpellPred(Q,QRDY*ls,myHero,CCenemy,900,1.6,17,1,100)
- end
- end
- function OnCreateObj(obj)
- if obj~=nil then
- if obj.charName=='tempkarma_mantraactivate_aura.troy' and GetDistance(obj)<50 then
- ls = 1
- end
- -- Cait E
- -- Elise E
- -- Fizz R (lockon)
- for i = 1, objManager:GetMaxHeroes() do
- local enemy = objManager:GetHero(i)
- if (enemy~=nil and enemy.team~=myHero.team and enemy.visible==1 and enemy.invulnerable==0 and enemy.dead==0 and GetDistance(myHero,enemy)<950) then
- if obj.charName=='LOC_Stun.troy' and GetDistance(enemy,obj)<50 then CCenemy = enemy
- elseif obj.charName=='LOC_Suppress.troy' and GetDistance(enemy,obj)<50 then CCenemy = enemy
- elseif obj.charName=='LOC_Taunt.troy' and GetDistance(enemy,obj)<50 then CCenemy = enemy
- elseif obj.charName=='LOC_fear.troy' and GetDistance(enemy,obj)<50 then CCenemy = enemy
- elseif obj.charName=='Global_Stun.troy' and GetDistance(enemy,obj)<50 then CCenemy = enemy
- elseif obj.charName=='Ahri_Charm_buf.troy' and GetDistance(enemy,obj)<50 then CCenemy = enemy
- elseif obj.charName=='CurseBandages.troy' and GetDistance(enemy,obj)<50 then CCenemy = enemy
- elseif obj.charName=='Powerfist_tar.troy' and GetDistance(enemy,obj)<50 then CCenemy = enemy
- elseif obj.charName=='JarvanCataclysm_tar.troy' and GetDistance(enemy,obj)<50 then CCenemy = enemy
- elseif obj.charName=='leBlanc_shackle_tar_blood.troy' and GetDistance(enemy,obj)<50 then CCenemy = enemy
- elseif obj.charName=='LuxLightBinding.troy' and GetDistance(enemy,obj)<50 then CCenemy = enemy
- elseif obj.charName=='DarkBinding_tar.troy' and GetDistance(enemy,obj)<50 then CCenemy = enemy
- elseif obj.charName=='RengarEMax_tar.troy' and GetDistance(enemy,obj)<50 then CCenemy = enemy
- elseif obj.charName=='RunePrison.troy' and GetDistance(enemy,obj)<50 then CCenemy = enemy
- elseif obj.charName=='Vi_R_land.troy' and GetDistance(enemy,obj)<50 then CCenemy = enemy
- elseif obj.charName=='UnstoppableForce_stun.troy' and GetDistance(enemy,obj)<50 then CCenemy = enemy
- elseif obj.charName=='Zyra_E_sequence_root.troy' and GetDistance(enemy,obj)<50 then CCenemy = enemy
- elseif obj.charName=='monkey_king_ult_unit_tar_02.troy' and GetDistance(enemy,obj)<50 then CCenemy = enemy
- elseif obj.charName=='xenZiou_ChainAttack_03.troy' and GetDistance(enemy,obj)<50 then CCenemy = enemy
- elseif obj.charName=='VarusRHit.troy' and GetDistance(enemy,obj)<50 then CCenemy = enemy
- end
- end
- end
- end
- end
- function Killsteal()
- for i = 1, objManager:GetMaxHeroes() do
- local enemy = objManager:GetHero(i)
- if (enemy ~= nil and enemy.team ~= myHero.team and enemy.visible == 1 and enemy.invulnerable==0 and enemy.dead==0 and GetDistance(myHero,enemy)<850) then
- local Qdam = getDmg("Q",enemy,myHero,1)*QRDY
- local QRdam = (getDmg("Q",enemy,myHero,1)+getDmg("Q",enemy,myHero,2))*QRDY*RRDY
- local Wdam = getDmg("W",enemy,myHero,1)*WRDY/3
- local WRdam = (getDmg("W",enemy,myHero,1)+getDmg("W",enemy,myHero,2))*WRDY*RRDY/3
- local ERdam = getDmg("E",enemy,myHero)*ERDY
- if enemy.health < Wdam then
- SpellTarget(W,WRDY,myHero,enemy,650)
- elseif enemy.health < Qdam then
- SpellPred(Q,QRDY,myHero,enemy,850,1.6,17,1,100)
- elseif enemy.health < ERdam then
- SpellTarget(R,RRDY*ERDY,myHero,enemy,600)
- SpellTarget(E,ERDY*ls,myHero,enemy,600)
- elseif enemy.health < Qdam+Wdam then
- SpellTarget(W,WRDY,myHero,enemy,650)
- SpellPred(Q,QRDY,myHero,enemy,850,1.6,17,1,100)
- elseif enemy.health < WRdam then
- SpellTarget(R,RRDY*WRDY,myHero,enemy,650)
- SpellTarget(W,WRDY*ls,myHero,enemy,650)
- elseif enemy.health < QRdam then
- SpellPred(R,RRDY*QRDY,myHero,enemy,850,1.6,17,1,100)
- SpellPred(Q,QRDY*ls,myHero,enemy,850,1.6,17,1,100)
- elseif enemy.health < QRdam+Wdam and CreepBlock(GetFireahead(enemy,1.6,17,100)) == 0 then
- SpellTarget(W,WRDY,myHero,enemy,650)
- SpellPred(R,RRDY*QRDY,myHero,enemy,850,1.6,17,1,100)
- SpellPred(Q,QRDY*ls,myHero,enemy,850,1.6,17,1,100)
- elseif enemy.health < Wdam+ERdam then
- SpellTarget(W,WRDY,myHero,enemy,600)
- SpellTarget(R,RRDY*ERDY,myHero,enemy,600)
- SpellTarget(E,ERDY*ls,myHero,enemy,600)
- elseif enemy.health < Qdam+ERdam and CreepBlock(GetFireahead(enemy,1.6,17,100)) == 0 then
- SpellTarget(R,RRDY*ERDY,myHero,enemy,600)
- SpellTarget(E,ERDY*ls,myHero,enemy,600)
- SpellPred(Q,QRDY,myHero,enemy,850,1.6,17,1,100)
- elseif enemy.health < Qdam+WRdam and CreepBlock(GetFireahead(enemy,1.6,17,100)) == 0 then
- SpellTarget(R,RRDY*WRDY,myHero,enemy,650)
- SpellTarget(W,WRDY*ls,myHero,enemy,650)
- SpellPred(Q,QRDY,myHero,enemy,850,1.6,17,1,100)
- elseif GetDistance(myHero,enemy) < 600 and enemy.health < Qdam+Wdam+ERdam and CreepBlock(GetFireahead(enemy,1.6,17,100)) == 0 then
- SpellTarget(R,RRDY*ERDY,myHero,enemy,600)
- SpellTarget(E,ERDY*ls,myHero,enemy,600)
- SpellTarget(W,WRDY,myHero,enemy,600)
- SpellPred(Q,QRDY,myHero,enemy,850,1.6,17,1,100)
- end
- end
- end
- end
- function Killnotes()
- for i = 1, objManager:GetMaxHeroes() do
- local enemy = objManager:GetHero(i)
- if (enemy ~= nil and enemy.team ~= myHero.team and enemy.visible == 1 and enemy.invulnerable==0 and enemy.dead==0) then
- local Q = getDmg("Q",enemy,myHero,1)*QRDY
- local QR = (getDmg("Q",enemy,myHero,1)+getDmg("Q",enemy,myHero,2))*QRDY*RRDY
- local W = getDmg("W",enemy,myHero,1)*WRDY/3
- local WR = (getDmg("W",enemy,myHero,1)+getDmg("W",enemy,myHero,2))*WRDY*RRDY/3
- local ER = getDmg("E",enemy,myHero)*ERDY
- if enemy.health < W and WRDY==1 then
- DrawTextObject("KILL W", enemy, Color.Yellow)
- elseif enemy.health < Q and QRDY==1 then
- DrawTextObject("KILL Q", enemy, Color.Yellow)
- elseif enemy.health < ER and ERDY==1 and RRDY==1 then
- DrawTextObject("KILL ER", enemy, Color.Yellow)
- elseif enemy.health < Q+W and QRDY==1 and WRDY==1 then
- DrawTextObject("KILL Q+W", enemy, Color.Yellow)
- elseif enemy.health < WR and WRDY==1 and RRDY==1 then
- DrawTextObject("KILL WR", enemy, Color.Yellow)
- elseif enemy.health < QR and QRDY==1 and RRDY==1 then
- DrawTextObject("KILL QR", enemy, Color.Yellow)
- elseif enemy.health < QR+W and QRDY==1 and RRDY==1 and WRDY==1 then
- DrawTextObject("KILL QR+W", enemy, Color.Yellow)
- elseif enemy.health < W+ER and WRDY==1 and ERDY==1 and RRDY==1 then
- DrawTextObject("KILL W+ER", enemy, Color.Yellow)
- elseif enemy.health < Q+ER and QRDY==1 and ERDY==1 and RRDY==1 then
- DrawTextObject("KILL Q+ER", enemy, Color.Yellow)
- elseif enemy.health < Q+WR and QRDY==1 and WRDY==1 and RRDY==1 then
- DrawTextObject("KILL Q+WR", enemy, Color.Yellow)
- elseif enemy.health < Q+W+ER and QRDY==1 and WRDY==1 and ERDY==1 and RRDY==1 then
- DrawTextObject("KILL Q+W+ER", enemy, Color.Yellow)
- end
- end
- end
- end
- function OnDraw()
- if myHero.dead==0 then
- if KarmaSettings.drawcircles then
- if QRDY == 1 then
- CustomCircle(900,1,2,myHero)
- end
- if myHero.SpellTimeW > 1.0 then
- CustomCircle(650,1,3,myHero)
- elseif myHero.SpellTimeW > ((((16-myHero.SpellLevelW)-(((16-myHero.SpellLevelW)*myHero.cdr)/100))*-1)+2) then
- CustomCircle(800,1,5,myHero)
- end
- if target3 ~= nil then
- CustomCircle(100,10,2,target3)
- end
- if target3 ~= nil then
- CustomCircle(75,5,5,target3)
- end
- end
- if spellShot.shot then
- if spellShot.isline then
- local angle = GetAngle(endPos, startPos)
- DrawLine(startPos.x, startPos.y, startPos.z, GetDistance(startPos, endPos)+spellShot.radius, 1, angle, spellShot.radius)
- else
- CustomCircle(spellShot.radius,1,3,"",endPos.x,endPos.y,endPos.z)
- end
- if shotMe then
- CustomCircle(100,4,5,"",spellShot.safeX,spellShot.safeY,spellShot.safeZ)
- end
- end
- end
- end
- ------------------------------------------------------------------------------------------------
- -------------------------------------------- AUTOSHIELD ----------------------------------------
- ------------------------------------------------------------------------------------------------
- function GetWeakAlly()
- local maxHealth = 9999
- target = nil
- for i=1, objManager:GetMaxHeroes(), 1 do
- local object = objManager:GetHero(i)
- if object ~= nil and object.team == myHero.team and GetDistance(object) < 800 and object.charName ~= myHero.charName then
- if object.health < maxHealth then
- maxHealth = object.health
- target = object
- end
- end
- end
- end
- local spells = {
- Ahri = {
- {name= "AhriOrbofDeception", radius = 80, time = 1, isline = true},
- {name= "AhriSeduce", radius = 80, time = 1, isline = true},
- },
- Amumu = {
- {name= "BandageToss", radius = 80, time = 1, isline = true},
- },
- Anivia = {
- {name= "FlashFrostSpell", radius = 90, time = 2, isline = true},
- },
- Ashe = {
- {name= "EnchantedCrystalArrow", radius = 120, time = 4, isline = true},
- },
- Blitzcrank = {
- {name= "RocketGrabMissile", radius = 80, time = 1, isline = true},
- },
- Brand = {
- {name= "BrandBlazeMissile", radius = 70, time = 1, isline = true},
- {name= "BrandFissure", radius = 250, time = 4, isline = false},
- },
- Cassiopeia = {
- {name= "CassiopeiaMiasma", radius = 175, time = 1, isline = false},
- {name= "CassiopeiaNoxiousBlast", radius = 75, time = 1, isline = false},
- },
- Caitlyn = {
- {name= "CaitlynEntrapmentMissile", radius = 50, time = 1, isline = true},
- {name= "CaitlynPiltoverPeacemaker", radius = 80, time = 1, isline = true},
- },
- Corki = {
- {name= "MissileBarrageMissile", radius = 80, time = 1, isline = true},
- {name= "MissileBarrageMissile2", radius = 100, time = 1, isline = true},
- {name= "CarpetBomb", radius = 150, time = 1, isline = true},
- },
- Chogath = {
- {name= "Rupture", radius = 275, time = 1, isline = false},
- },
- Diana = {
- {name= "DianaArc", radius = 205, time = 1, isline = true},
- },
- DrMundo = {
- {name= "InfectedCleaverMissile", radius = 80, time = 1, isline = true},
- },
- Draven = {
- {name= "DravenDoubleShot", radius = 125, time = 1, isline = true},
- {name= "DravenRCast", radius = 100, time = 4, isline = true},
- },
- Elise = {
- {name= "EliseHumanE", radius = 100, time = 1, isline = true},
- },
- Ezreal = {
- {name= "EzrealEssenceFluxMissile", radius = 100, time = 1, isline = true},
- {name= "EzrealMysticShotMissile", radius = 80, time = 1, isline = true},
- {name= "EzrealEssenceFluxMissile", radius = 150, time = 4, isline = true},
- {name= "EzrealArcaneShift", radius = 100, time = 1, isline = true},
- },
- Fizz = {
- {name= "FizzMarinerDoom", radius = 100, time = 1.5, isline = true},
- },
- FiddleSticks = {
- {name= "Crowstorm", radius = 600, time = 1.5, isline = false},
- },
- Karthus = {
- {name= "LayWaste", radius = 150, time = 1, isline = false},
- },
- Galio = {
- {name= "GalioResoluteSmite", radius = 200, time = 1.5, isline = false},
- {name= "GalioRighteousGust", radius = 120, time = 1.5, isline = true},
- },
- Graves = {
- {name= "GravesChargeShot", radius = 110, time = 1, isline = true},
- {name= "GalioRighteousGust", radius = 50, time = 1, isline = true},
- {name= "GalioRighteousGust", radius = 275, time = 1.5, isline = false},
- },
- Gragas = {
- {name= "GragasBarrelRoll", radius = 320, time = 2.5, isline = false},
- {name= "GragasBodySlam", radius = 60, time = 1.5, isline = true},
- {name= "GragasExplosiveCask", radius = 400, time = 1.5, isline = false},
- },
- Heimerdinger = {
- {name= "CH1ConcussionGrenade", radius = 225, time = 1.5, isline = true},
- },
- Irelia = {
- {name= "IreliaTranscendentBlades", radius = 80, time = 0.8, isline = true},
- },
- Janna = {
- {name= "HowlingGale", radius = 100, time = 2, isline = true},
- },
- JarvanIV = {
- {name= "JarvanIVDemacianStandard", radius = 150, time = 2, isline = false},
- {name= "JarvanIVDragonStrike", radius = 70, time = 1, isline = true},
- {name= "JarvanIVCataclysm", radius = 300, time = 1.5, isline = false},
- },
- Kassadin = {
- {name= "RiftWalk", radius = 150, time = 1, isline = false},
- },
- Katarina = {
- {name= "ShadowStep", radius = 75, time = 1, isline = false},
- },
- Kennen = {
- {name= "KennenShurikenHurlMissile1", radius = 75, time = 1, isline = true},
- },
- Khazix = {
- {name= "KhazixE", radius = 200, time = 1, isline = false},
- {name= "KhazixW", radius = 120, time = 0.5, isline = true},
- {name= "khazixwlong", radius = 80, time = 1, isline = true},
- {name= "khazixelong", radius = 200, time = 1, isline = false},
- },
- KogMaw = {
- {name= "KogMawVoidOozeMissile", radius = 100, time = 1, isline = true},
- {name= "KogMawLivingArtillery", radius = 200, time = 1.5, isline = false},
- },
- Leblanc = {
- {name= "LeblancSoulShackle", radius = 80, time = 1, isline = true},
- {name= "LeblancSoulShackleM", radius = 80, time = 1, isline = true},
- {name= "LeblancSlide", radius = 250, time = 1, isline = false},
- {name= "LeblancSlideM", radius = 250, time = 1, isline = false},
- {name= "leblancslidereturn", radius = 50, time = 1, isline = false},
- {name= "leblancslidereturnm", radius = 50, time = 1, isline = false},
- },
- LeeSin = {
- {name= "BlindMonkQOne", radius = 80, time = 1, isline = true},
- {name= "BlindMonkRKick", radius = 100, time = 1.5, isline = true},
- },
- LeeSin = {
- {name= "BlindMonkQOne", radius = 80, time = 1, isline = true},
- {name= "BlindMonkRKick", radius = 100, time = 1, isline = true},
- },
- Leona = {
- {name= "LeonaZenithBladeMissile", radius = 80, time = 1, isline = true},
- },
- Lux = {
- {name= "LuxLightBinding", radius = 150, time = 1, isline = true},
- {name= "LuxLightStrikeKugel", radius = 300, time = 2.5, isline = false},
- {name= "LuxMaliceCannon", radius = 180, time = 1.5, isline = true},
- },
- Lulu = {
- {name= "LuluQ", radius = 50, time = 1, isline = true},
- },
- Maokai = {
- {name= "MaokaiTrunkLineMissile", radius = 100, time = 1, isline = true},
- {name= "MaokaiSapling2", radius = 350, time = 1, isline = false},
- },
- Malphite = {
- {name= "UFSlash", radius = 325, time = 1, isline = false},
- },
- Malzahar = {
- {name= "AlZaharCalloftheVoid", radius = 100, time = 1, isline = false},
- {name= "AlZaharNullZone", radius = 250, time = 1, isline = false},
- },
- MissFortune = {
- {name= "MissFortuneScattershot", radius = 400, time = 3, isline = false},
- },
- Morgana = {
- {name= "DarkBindingMissile", radius = 90, time = 1.5, isline = true},
- {name= "TormentedSoil", radius = 300, time = 1.5, isline = false},
- },
- Nautilus = {
- {name= "NautilusAnchorDrag", radius = 80, time = 1.5, isline = true},
- },
- Nidalee = {
- {name= "JavelinToss", radius = 80, time = 1.5, isline = true},
- },
- Nocturne = {
- {name= "NocturneDuskbringer", radius = 80, time = 1.5, isline = true},
- },
- Olaf = {
- {name= "OlafAxeThrow", radius = 100, time = 1.5, isline = true},
- },
- Orianna = {
- {name= "OrianaIzunaCommand", radius = 150, time = 1.5, isline = false},
- },
- Quinn = {
- {name= "QuinnQMissile", radius = 40, time = 1, isline = true},
- },
- Renekton = {
- {name= "RenektonSliceAndDice", radius = 80, time = 1, isline = true},
- {name= "renektondice", radius = 80, time = 1, isline = true},
- },
- Rumble = {
- {name= "RumbleGrenadeMissile", radius = 100, time = 1.5, isline = true},
- {name= "renektondice", radius = 100, time = 1.5, isline = true},
- },
- Sivir = {
- {name= "SpiralBlade", radius = 100, time = 1, isline = true},
- },
- Singed = {
- {name= "MegaAdhesive", radius = 350, time = 1.5, isline = false},
- },
- Singed = {
- {name= "ShenShadowDash", radius = 80, time = 1, isline = true},
- },
- Shaco = {
- {name= "Deceive", radius = 100, time = 3.5, isline = false},
- },
- Shyvana = {
- {name= "ShyvanaTransformLeap", radius = 80, time = 1.5, isline = true},
- {name= "ShyvanaFireballMissile", radius = 80, time = 1, isline = true},
- },
- Skarner = {
- {name= "SkarnerFracture", radius = 100, time = 1, isline = true},
- },
- Sona = {
- {name= "SonaCrescendo", radius = 150, time = 1, isline = true},
- },
- Sejuani = {
- {name= "SejuaniGlacialPrison", radius = 180, time = 1, isline = true},
- },
- Swain = {
- {name= "SwainShadowGrasp", radius = 265, time = 1.5, isline = false},
- },
- Syndra = {
- {name= "SyndraQ", radius = 200, time = 1, isline = false},
- {name= "SyndraE", radius = 100, time = 0.5, isline = true},
- {name= "syndrawcast", radius = 200, time = 1, isline = false},
- },
- Tryndamere = {
- {name= "Slash", radius = 100, time = 1, isline = true},
- },
- Tristana = {
- {name= "RocketJump", radius = 200, time = 1, isline = false},
- },
- TwistedFate = {
- {name= "WildCards", radius = 80, time = 1, isline = true},
- },
- Urgot = {
- {name= "UrgotHeatseekingLineMissile", radius = 80, time = 0.8, isline = true},
- {name= "UrgotPlasmaGrenade", radius = 300, time = 1, isline = false},
- },
- Vayne = {
- {name= "VayneTumble", radius = 100, time = 1, isline = false},
- },
- Varus = {
- --{name= "VarusQ", radius = 50, time = 1, isline = true},
- {name= "VarusR", radius = 80, time = 1.5, isline = true},
- },
- Veigar = {
- {name= "VeigarDarkMatter", radius = 225, time = 2, isline = false},
- },
- Viktor = {
- --{name= "ViktorDeathRay", radius = 80, time = 2, isline = true},
- },
- Xerath = {
- {name= "xeratharcanopulsedamage", radius = 80, time = 1, isline = true},
- {name= "xeratharcanopulsedamageextended", radius = 80, time = 1, isline = true},
- {name= "xeratharcanebarragewrapper", radius = 250, time = 1, isline = false},
- {name= "xeratharcanebarragewrapperext", radius = 250, time = 1, isline = false},
- },
- Zed = {
- {name= "ZedShuriken", radius = 100, time = 1, isline = true},
- {name= "ZedShadowDash", radius = 150, time = 1, isline = false},
- {name= "zedw2", radius = 150, time = 0.5, isline = false},
- },
- Ziggs = {
- {name= "ZiggsQ", radius = 160, time = 1, isline = true},
- {name= "ZiggsW", radius = 225, time = 1, isline = false},
- {name= "ZiggsE", radius = 250, time = 1, isline = false},
- {name= "ZiggsR", radius = 550, time = 3, isline = false},
- },
- Zyra = {
- {name= "ZyraQFissure", radius = 275, time = 1.5, isline = true},
- {name= "ZyraGraspingRoots", radius = 90, time = 2, isline = true},
- },
- }
- function OnProcessSpell(unit,spell)
- if unit ~= nil and spell ~= nil and unit.team == myHero.team then
- for i = 1, objManager:GetMaxHeroes() do
- local enemy = objManager:GetHero(i)
- if (enemy~=nil and enemy.team~=myHero.team and enemy.visible==1 and enemy.invulnerable==0 and enemy.dead==0 and GetDistance(myHero,enemy)<950 and CreepBlock(GetFireahead(enemy,1.6,17,100))==0) then
- if unit.name=='Aatrox' and spell.name == unit.SpellNameQ and distXYZ(enemy.x,enemy.z,spell.endPos.x,spell.endPos.z)<200 then CCenemy = enemy
- elseif unit.name=='Alistar' and spell.name == unit.SpellNameQ and distXYZ(enemy.x,enemy.z,spell.endPos.x,spell.endPos.z)<375 then CCenemy = enemy
- elseif unit.name=='Chogath' and spell.name == unit.SpellNameR and distXYZ(enemy.x,enemy.z,spell.endPos.x,spell.endPos.z)<850 then CCenemy = enemy
- elseif unit.name=='Darius' and spell.name == unit.SpellNameE and distXYZ(enemy.x,enemy.z,spell.endPos.x,spell.endPos.z)<475 then CCenemy = enemy
- elseif unit.name=='Diana' and spell.name == unit.SpellNameE and distXYZ(enemy.x,enemy.z,spell.endPos.x,spell.endPos.z)<250 then CCenemy = enemy
- elseif unit.name=='Galio' and spell.name == unit.SpellNameR and distXYZ(enemy.x,enemy.z,spell.endPos.x,spell.endPos.z)<600 then CCenemy = enemy
- elseif unit.name=='Karma' and spell.name == unit.SpellNameW and spell.target~=nil and spell.target.name == enemy.name then
- Kenemy = enemy
- timer = GetTickCount()
- elseif unit.name=='Lulu' and spell.name == unit.SpellNameW and spell.target~=nil and spell.target.name == enemy.name then CCenemy = enemy
- elseif unit.name=='Malphite' and spell.name == unit.SpellNameR and distXYZ(enemy.x,enemy.z,spell.endPos.x,spell.endPos.z)<1000 then CCenemy = enemy
- end
- end
- end
- end
- if unit ~= nil and spell ~= nil and unit.team ~= myHero.team and IsHero(unit) then
- startPos = spell.startPos
- endPos = spell.endPos
- if spell.target ~= nil then
- local targetSpell = spell.target
- if target ~= nil and target.charName == targetSpell.charName then
- target2 = unit
- autoShield(target)
- end
- if myHero.charName == targetSpell.charName then
- target2 = unit
- autoShield(myHero)
- end
- end
- if target ~= nil then
- local shot = SpellShotTarget(unit, spell, target)
- if shot ~= nil then
- spellShot = shot
- if spellShot.shot then
- target2 = unit
- autoShield(target)
- end
- end
- end
- local shot = SpellShotTarget(unit, spell, myHero)
- if shot ~= nil then
- spellShot = shot
- if spellShot.shot then
- shotMe = true
- target2 = unit
- autoShield(myHero)
- end
- end
- end
- if unit ~= nil and spell ~= nil and unit.team ~= myHero.team then
- if (unit.name == 'Akali' and spell.name == unit.SpellNameQ) or
- (unit.name == 'Akali' and spell.name == unit.SpellNameR) or
- (unit.name == 'Alistar' and spell.name == unit.SpellNameW) or
- (unit.name == 'Anivia' and spell.name == unit.SpellNameE) or
- (unit.name == 'Annie' and spell.name == unit.SpellNameQ) or
- (unit.name == 'Brand' and spell.name == unit.SpellNameW) or
- (unit.name == 'Brand' and spell.name == unit.SpellNameR) or
- (unit.name == 'Caitlyn' and spell.name == unit.SpellNameR) or
- (unit.name == 'Cassiopeia' and spell.name == unit.SpellNameE) or
- (unit.name == 'Chogath' and spell.name == unit.SpellNameR) or
- (unit.name == 'Darius' and spell.name == unit.SpellNameR) or
- (unit.name == 'Diana' and spell.name == unit.SpellNameR) or
- (unit.name == 'Elise' and spell.name == unit.SpellNameQ) or
- (unit.name == 'Evelynn' and spell.name == unit.SpellNameQ) or
- (unit.name == 'Evelynn' and spell.name == unit.SpellNameW) or
- (unit.name == 'FiddleSticks' and spell.name == unit.SpellNameW) or
- (unit.name == 'FiddleSticks' and spell.name == unit.SpellNameE) or
- (unit.name == 'Fiora' and spell.name == unit.SpellNameQ) or
- (unit.name == 'Fiora' and spell.name == unit.SpellNameR) or
- (unit.name == 'Gangplank' and spell.name == unit.SpellNameQ) or
- (unit.name == 'Garen' and spell.name == unit.SpellNameR) or
- (unit.name == 'Irelia' and spell.name == unit.SpellNameQ) or
- (unit.name == 'Irelia' and spell.name == unit.SpellNameE) or
- (unit.name == 'Janna' and spell.name == unit.SpellNameW) or
- (unit.name == 'Jarvan' and spell.name == unit.SpellNameR) or
- (unit.name == 'Jax' and spell.name == unit.SpellNameQ) or
- (unit.name == 'Karma' and spell.name == unit.SpellNameW) or
- (unit.name == 'Kassadin' and spell.name == unit.SpellNameQ) or
- (unit.name == 'Katarina' and spell.name == unit.SpellNameQ) or
- (unit.name == 'Katarina' and spell.name == unit.SpellNameE) or
- (unit.name == 'Kayle' and spell.name == unit.SpellNameQ) or
- (unit.name == 'Khazix' and spell.name == unit.SpellNameQ) or
- (unit.name == 'Kogmaw' and spell.name == unit.SpellNameQ) or
- (unit.name == 'Leblanc' and spell.name == unit.SpellNameQ) or
- (unit.name == 'LeeSin' and spell.name == unit.SpellNameR) or
- (unit.name == 'Lulu' and spell.name == unit.SpellNameE) or
- (unit.name == 'Malphite' and spell.name == unit.SpellNameQ) or
- (unit.name == 'Malzahar' and spell.name == unit.SpellNameE) or
- (unit.name == 'Malzahar' and spell.name == unit.SpellNameR) or
- (unit.name == 'Maokai' and spell.name == unit.SpellNameW) or
- (unit.name == 'MasterYi' and spell.name == unit.SpellNameQ) or
- (unit.name == 'MissFortune' and spell.name == unit.SpellNameQ) or
- (unit.name == 'Mordekaiser' and spell.name == unit.SpellNameR) or
- (unit.name == 'Nami' and spell.name == unit.SpellNameW) or
- (unit.name == 'Nautilus' and spell.name == unit.SpellNameR) or
- (unit.name == 'Nocturne' and spell.name == unit.SpellNameE) or
- (unit.name == 'Nocturne' and spell.name == unit.SpellNameR) or
- (unit.name == 'Nunu' and spell.name == unit.SpellNameE) or
- (unit.name == 'Olaf' and spell.name == unit.SpellNameE) or
- (unit.name == 'Pantheon' and spell.name == unit.SpellNameQ) or
- (unit.name == 'Pantheon' and spell.name == unit.SpellNameW) or
- (unit.name == 'Poppy' and spell.name == unit.SpellNameE) or
- (unit.name == 'Rammus' and spell.name == unit.SpellNameE) or
- (unit.name == 'Rengar' and spell.name == unit.SpellNameW) or
- (unit.name == 'Ryze' and spell.name == unit.SpellNameQ) or
- (unit.name == 'Ryze' and spell.name == unit.SpellNameW) or
- (unit.name == 'Ryze' and spell.name == unit.SpellNameE) or
- (unit.name == 'Shaco' and spell.name == unit.SpellNameE) or
- (unit.name == 'Shen' and spell.name == unit.SpellNameQ) or
- (unit.name == 'Singed' and spell.name == unit.SpellNameE) or
- (unit.name == 'Sion' and spell.name == unit.SpellNameQ) or
- (unit.name == 'Skarner' and spell.name == unit.SpellNameR) or
- (unit.name == 'Soraka' and spell.name == unit.SpellNameE) or
- (unit.name == 'Swain' and spell.name == unit.SpellNameE) or
- (unit.name == 'Syndra' and spell.name == unit.SpellNameR) or
- (unit.name == 'Talon' and spell.name == unit.SpellNameE) or
- (unit.name == 'Taric' and spell.name == unit.SpellNameE) or
- (unit.name == 'Teemo' and spell.name == unit.SpellNameQ) or
- (unit.name == 'Tristana' and spell.name == unit.SpellNameE) or
- (unit.name == 'Tristana' and spell.name == unit.SpellNameR) or
- (unit.name == 'Trundle' and spell.name == unit.SpellNameR) or
- (unit.name == 'Vayne' and spell.name == unit.SpellNameE) or
- (unit.name == 'Veigar' and spell.name == unit.SpellNameQ) or
- (unit.name == 'Veigar' and spell.name == unit.SpellNameR) or
- (unit.name == 'Vi' and spell.name == unit.SpellNameR) or
- (unit.name == 'Victor' and spell.name == unit.SpellNameQ) or
- (unit.name == 'Vladimir' and spell.name == unit.SpellNameQ) or
- (unit.name == 'Volibaer' and spell.name == unit.SpellNameW) or
- (unit.name == 'Warwick' and spell.name == unit.SpellNameQ) or
- (unit.name == 'Warwick' and spell.name == unit.SpellNameR) or
- (unit.name == 'MonkeyKing' and spell.name == unit.SpellNameE) or
- (unit.name == 'Xerath' and spell.name == unit.SpellNameE) or
- (unit.name == 'XinZhao' and spell.name == unit.SpellNameE) or
- (unit.name == 'Yasuo' and spell.name == unit.SpellNameE) or
- (unit.name == 'Yasuo' and spell.name == unit.SpellNameR) or
- (unit.name == 'Yorick' and spell.name == unit.SpellNameE) or
- (unit.name == 'Zed' and spell.name == unit.SpellNameR) or
- (unit.name == 'Zilean' and spell.name == unit.SpellNameQ) or
- (unit.name == 'Jayce' and spell.name == 'JayceToTheSkies') or
- (unit.name == 'Jayce' and spell.name == 'JayceThunderingBlow') or
- (unit.name == 'Leblanc' and spell.name == 'LeblancChaosOrbM') or
- (unit.name == 'LeeSin' and spell.name == 'blindmonkqtwo') then
- for i=1, objManager:GetMaxHeroes(), 1 do
- local ally = objManager:GetHero(i)
- if ally ~= nil and ally.team == myHero.team and GetDistance(ally) < 800 and ally.visible == 1 and ally.invulnerable and ally.dead == 0 then
- if spell.target~=nil and spell.target.name == ally.name then
- autoShield(ally)
- elseif spell.target~=nil and spell.target.name == myHero.name then
- autoShield(myHero)
- end
- end
- end
- end
- end
- local P1 = spell.startPos
- local P2 = spell.endPos
- local calc = (math.floor(math.sqrt((P2.x-unit.x)^2 + (P2.z-unit.z)^2)))
- if string.find(unit.name,"Minion_") == nil and string.find(unit.name,"Turret_") == nil then
- if (unit.team ~= myHero.team or (show_allies==1)) and string.find(spell.name,"Basic") == nil then
- for i=1, #skillshotArray, 1 do
- local maxdist
- local dodgeradius
- dodgeradius = skillshotArray[i].radius
- maxdist = skillshotArray[i].maxdistance
- if spell.name == skillshotArray[i].name then
- skillshotArray[i].shot = 1
- skillshotArray[i].lastshot = os.clock()
- if skillshotArray[i].type == 1 then
- skillshotArray[i].p1x = unit.x
- skillshotArray[i].p1y = unit.y
- skillshotArray[i].p1z = unit.z
- skillshotArray[i].p2x = unit.x + (maxdist)/calc*(P2.x-unit.x)
- skillshotArray[i].p2y = P2.y
- skillshotArray[i].p2z = unit.z + (maxdist)/calc*(P2.z-unit.z)
- dodgelinepass(unit, P2, dodgeradius, maxdist)
- elseif skillshotArray[i].type == 2 then
- skillshotArray[i].px = P2.x
- skillshotArray[i].py = P2.y
- skillshotArray[i].pz = P2.z
- dodgelinepoint(unit, P2, dodgeradius)
- elseif skillshotArray[i].type == 3 then
- skillshotArray[i].skillshotpoint = calculateLineaoe(unit, P2, maxdist)
- if skillshotArray[i].name ~= "SummonerClairvoyance" then
- dodgeaoe(unit, P2, dodgeradius)
- end
- elseif skillshotArray[i].type == 4 then
- skillshotArray[i].px = unit.x + (maxdist)/calc*(P2.x-unit.x)
- skillshotArray[i].py = P2.y
- skillshotArray[i].py = P2.y
- skillshotArray[i].pz = unit.z + (maxdist)/calc*(P2.z-unit.z)
- dodgelinepass(unit, P2, dodgeradius, maxdist)
- elseif skillshotArray[i].type == 5 then
- skillshotArray[i].skillshotpoint = calculateLineaoe2(unit, P2, maxdist)
- dodgeaoe(unit, P2, dodgeradius)
- end
- end
- end
- end
- end
- end
- function ResetTimer()
- if GetTickCount() - spellShot.time > 0 then
- spellShot.shot = false
- spellShot.time = 0
- shotMe = false
- end
- end
- function IsHero(unit)
- for i=1, objManager:GetMaxHeroes(), 1 do
- local object = objManager:GetHero(i)
- if object ~= nil and object.charName == unit.charName then
- return true
- end
- end
- return false
- end
- function autoShield(target)
- if KarmaSettings.AutoShield and ERDY==1 then
- CastSpellTarget("E",target)
- end
- end
- function GetAngle(p1, p2)
- local a = p1.x - p2.x
- local b = p1.z - p2.z
- local angle = math.atan(a/b)
- if b < 0 then
- angle = angle+math.pi
- end
- return angle
- end
- function GetLinePoint(pos,angle,distance)
- local ret = {x = 0, y = 0, z = 0}
- ret.x = pos.x - distance*math.sin(angle)
- ret.z = pos.z - distance*math.cos(angle)
- return ret
- end
- function GetSpellShot(name,spellName)
- local spellTable = spells[name]
- if spellTable ~= nil then
- for i=1, #spellTable, 1 do
- if spellName == spellTable[i].name then
- local ret = spellTable[i]
- return ret
- end
- end
- end
- return nil
- end
- function SpellShotTarget(unit,spell,target)
- if unit ~= nil and unit.team ~= target.team and spell ~= nil then
- local spellShot = GetSpellShot(unit.name, spell.name)
- if spellShot ~= nil then
- if spellShot.isline then
- local angle = GetAngle(spell.startPos, spell.endPos)
- local d1 = GetDistance(spell.startPos, spell.endPos)
- local d2 = GetDistance(spell.startPos, target)
- if d2 < d1 + spellShot.radius then
- local point = GetLinePoint(spell.startPos, angle, d2)
- local d3 = GetDistance(target, point)
- if d3 <= spellShot.radius then
- local angle = GetAngle(point, target)
- local safePoint = GetLinePoint(point, angle, spellShot.radius*1.2)
- if IsWall(safePoint.x, safePoint.y, safePoint.z) == 1 then
- angle = GetAngle(safePoint, point)
- safePoint = GetLinePoint(safePoint, angle, spellShot.radius*1.2*2)
- if IsWall(safePoint.x, safePoint.y, safePoint.z) == 1 then
- return nil
- end
- end
- local ret = {shot = false, radius = 0, time = 0, shotX = 0, shotZ = 0, shotY = 0, safeX = 0, safeY = 0, safeZ = 0, isline = false}
- ret.shot = true
- ret.radius = spellShot.radius
- ret.time = GetClock()+spellShot.time*1000
- ret.shotX = point.x
- ret.shotY = point.y
- ret.shotZ = point.z
- ret.safeX = safePoint.x
- ret.safeY = safePoint.y
- ret.safeZ = safePoint.z
- ret.isline = true
- return ret
- end
- end
- else
- local d1 = GetDistance(target, spell.endPos)
- if d1 <= spellShot.radius then
- local angle = GetAngle(spell.startPos, spell.endPos)
- local d2 = GetDistance(spell.startPos, target)
- local point = GetLinePoint(spell.startPos, angle, d2)
- angle = GetAngle(point, target)
- local safePoint = GetLinePoint(point, angle, spellShot.radius*1.2)
- if IsWall(safePoint.x, safePoint.y, safePoint.z) == 1 then
- return nil
- end
- local ret = {shot = false, radius = 0, time = 0, shotX = 0, shotZ = 0, shotY = 0, safeX = 0, safeY = 0, safeZ = 0, isline = false}
- ret.shot = true
- ret.radius = spellShot.radius
- ret.time = GetClock()+spellShot.time*1000
- ret.shotX = spell.endPos.x
- ret.shotY = spell.endPos.y
- ret.shotZ = spell.endPos.z
- ret.safeX = safePoint.x
- ret.safeY = safePoint.y
- ret.safeZ = safePoint.z
- ret.isline = false
- return ret
- end
- end
- end
- end
- return nil
- end
- ------------------------------------------------------------------------------------------------
- -------------------------------------------- AUTOLEVEL -----------------------------------------
- ------------------------------------------------------------------------------------------------
- function Level_Spell(letter)
- if letter == Q then send.key_press(0x69)
- elseif letter == W then send.key_press(0x6a)
- elseif letter == E then send.key_press(0x6b)
- elseif letter == R then send.key_press(0x6c) end
- end
- function Autolevel()
- if IsLolActive() then
- spellLevelSum = (GetSpellLevel(Q) + GetSpellLevel(W) + GetSpellLevel(E) + GetSpellLevel(R))-1
- if attempts <= 10 or (attempts > 10 and GetTickCount() > lastAttempt+1500) then
- if spellLevelSum < myHero.selflevel then
- if lastSpellLevelSum ~= spellLevelSum then attempts = 0 end
- letter = skillingOrder[myHero.name][spellLevelSum+1]
- Level_Spell(letter, spellLevelSum)
- attempts = attempts+1
- lastAttempt = GetTickCount()
- lastSpellLevelSum = spellLevelSum
- else
- attempts = 0
- end
- end
- end
- send.tick()
- end
- ------------------------------------------------------------------------------------------------
- ------------------------------------------- AUTOITEMS ----------------------------------------
- ------------------------------------------------------------------------------------------------
- function Items()
- if KarmaSettings.AutoZonyas then
- local target = GetWeakEnemy('MAGIC',1100)
- if target ~= nil then
- if myHero.health < myHero.maxHealth*(KarmaSettings.ZhonyasValue/100) then
- useZhonyas()
- useWoogletsWitchcap()
- end
- end
- end
- end
- function useZhonyas()
- GetInventorySlot(3157)
- UseItemOnTarget(3157,myHero)
- end
- function useWoogletsWitchcap()
- GetInventorySlot(3090)
- UseItemOnTarget(3090,myHero)
- end
- ------------------------------------------------------------------------------------------------
- ------------------------------------------- AUTOPOTIONS ----------------------------------------
- ------------------------------------------------------------------------------------------------
- function AutoPotions()
- if bluePill == nil then
- if myHero.health < myHero.maxHealth * (KarmaPotions.Health_Potion_Value / 100) and GetClock() > wUsedAt + 15000 then
- usePotion()
- useBiscuit()
- wUsedAt = GetTick()
- elseif myHero.health < myHero.maxHealth * (KarmaPotions.Chrystalline_Flask_Value / 100) and GetClock() > vUsedAt + 10000 then
- useFlask()
- vUsedAt = GetTick()
- elseif myHero.health < myHero.maxHealth * (KarmaPotions.Biscuit_Value / 100) then
- useBiscuit()
- elseif myHero.health < myHero.maxHealth * (KarmaPotions.Elixir_of_Fortitude_Value / 100) then
- useElixir()
- end
- if myHero.mana < myHero.maxMana * (KarmaPotions.Mana_Potion_Value / 100) and GetClock() > mUsedAt + 15000 then
- useManaPot()
- mUsedAt = GetTick()
- end
- end
- if (os.clock() < timer + 5000) then
- bluePill = nil
- end
- end
- function OnCreateObj(object)
- if (GetDistance(myHero, object)) < 100 then
- if string.find(object.charName,"FountainHeal") then
- timer=os.clock()
- bluePill = object
- end
- end
- end
- function usePotion()
- GetInventorySlot(2003)
- UseItemOnTarget(2003,myHero)
- end
- function useBiscuit()
- GetInventorySlot(2009)
- UseItemOnTarget(2009,myHero)
- end
- function useFlask()
- GetInventorySlot(2041)
- UseItemOnTarget(2041,myHero)
- end
- function useBiscuit()
- GetInventorySlot(2009)
- UseItemOnTarget(2009,myHero)
- end
- function useElixir()
- GetInventorySlot(2037)
- UseItemOnTarget(2037,myHero)
- end
- function useManaPot()
- GetInventorySlot(2004)
- UseItemOnTarget(2004,myHero)
- end
- function GetTick()
- return GetClock()
- end
- ------------------------------------------------------------------------------------------------
- ------------------------------------------- SKILLSHOTS -----------------------------------------
- ------------------------------------------------------------------------------------------------
- function Skillshots()
- if DodgeConfig.DrawSkillShots == true then
- for i=1, #skillshotArray, 1 do
- if skillshotArray[i].shot == 1 then
- local radius = skillshotArray[i].radius
- local color = skillshotArray[i].color
- if skillshotArray[i].isline == false then
- for number, point in pairs(skillshotArray[i].skillshotpoint) do
- DrawCircle(point.x, point.y, point.z, radius, color)
- end
- else
- startVector = Vector(skillshotArray[i].p1x,skillshotArray[i].p1y,skillshotArray[i].p1z)
- endVector = Vector(skillshotArray[i].p2x,skillshotArray[i].p2y,skillshotArray[i].p2z)
- directionVector = (endVector-startVector):normalized()
- local angle=0
- if (math.abs(directionVector.x)<.00001) then
- if directionVector.z > 0 then angle=90
- elseif directionVector.z < 0 then angle=270
- else angle=0
- end
- else
- local theta = math.deg(math.atan(directionVector.z / directionVector.x))
- if directionVector.x < 0 then theta = theta + 180 end
- if theta < 0 then theta = theta + 360 end
- angle=theta
- end
- angle=((90-angle)*2*math.pi)/360
- DrawLine(startVector.x, startVector.y, startVector.z, GetDistance(startVector, endVector)+170, 1,angle,radius)
- end
- end
- end
- end
- end
- function SkillshotMainFunc()
- send.tick()
- cc=cc+1
- if cc==30 then LoadTable() end
- for i=1, #skillshotArray, 1 do
- if os.clock() > (skillshotArray[i].lastshot + skillshotArray[i].time) then
- skillshotArray[i].shot = 0
- end
- end
- Skillshots()
- end
- function MakeStateMatch(changes)
- for scode,flag in pairs(changes) do
- local vk = winapi.map_virtual_key(scode, 3)
- local is_down = winapi.get_async_key_state(vk)
- if flag then
- if is_down then
- send.wait(60)
- send.key_down(scode)
- send.wait(60)
- else
- end
- else
- if is_down then
- else
- send.wait(60)
- send.key_up(scode)
- send.wait(60)
- end
- end
- end
- end
- function dodgeaoe(pos1, pos2, radius)
- local calc = (math.floor(math.sqrt((pos2.x-myHero.x)^2 + (pos2.z-myHero.z)^2)))
- local dodgex
- local dodgez
- dodgex = pos2.x + ((radius+50)/calc)*(myHero.x-pos2.x)
- dodgez = pos2.z + ((radius+50)/calc)*(myHero.z-pos2.z)
- if calc < radius and DodgeConfig.DodgeSkillShotsAOE == true and GetCursorX() > xa and GetCursorX() < xb and GetCursorY() > ya and GetCursorY() < yb then
- if DodgeConfig.BlockSettingsAOE == 1 then
- if KarmaHotkeys.QSpell==false and KarmaHotkeys.Wspell==false and KarmaHotkeys.Espell==false then
- send.block_input(true,DodgeConfig.BlockTime)
- MoveToXYZ(dodgex,0,dodgez)
- end
- elseif DodgeConfig.BlockSettingsAOE == 2 or (DodgeConfig.BlockSettingsAOE == 1 and (KarmaHotkeys.QSpell or KarmaHotkeys.Wspell or KarmaHotkeys.Espell)) then
- MoveToXYZ(dodgex,0,dodgez)
- end
- end
- end
- function dodgelinepoint(pos1, pos2, radius)
- local calc1 = (math.floor(math.sqrt((pos2.x-myHero.x)^2 + (pos2.z-myHero.z)^2)))
- local calc2 = (math.floor(math.sqrt((pos1.x-myHero.x)^2 + (pos1.z-myHero.z)^2)))
- local calc4 = (math.floor(math.sqrt((pos1.x-pos2.x)^2 + (pos1.z-pos2.z)^2)))
- local calc3
- local perpendicular
- local k
- local x4
- local z4
- local dodgex
- local dodgez
- perpendicular = (math.floor((math.abs((pos2.x-pos1.x)*(pos1.z-myHero.z)-(pos1.x-myHero.x)*(pos2.z-pos1.z)))/(math.sqrt((pos2.x-pos1.x)^2 + (pos2.z-pos1.z)^2))))
- k = ((pos2.z-pos1.z)*(myHero.x-pos1.x) - (pos2.x-pos1.x)*(myHero.z-pos1.z)) / ((pos2.z-pos1.z)^2 + (pos2.x-pos1.x)^2)
- x4 = myHero.x - k * (pos2.z-pos1.z)
- z4 = myHero.z + k * (pos2.x-pos1.x)
- calc3 = (math.floor(math.sqrt((x4-myHero.x)^2 + (z4-myHero.z)^2)))
- dodgex = x4 + ((radius+150)/calc3)*(myHero.x-x4)
- dodgez = z4 + ((radius+150)/calc3)*(myHero.z-z4)
- if perpendicular < radius and calc1 < calc4 and calc2 < calc4 and DodgeConfig.DodgeSkillShots == true and GetCursorX() > xa and GetCursorX() < xb and GetCursorY() > ya and GetCursorY() < yb then
- if DodgeConfig.BlockSettings == 1 then
- if KarmaHotkeys.QSpell==false and KarmaHotkeys.Wspell==false and KarmaHotkeys.Espell==false then
- send.block_input(true,DodgeConfig.BlockTime)
- MoveToXYZ(dodgex,0,dodgez)
- end
- elseif DodgeConfig.BlockSettings == 2 or (DodgeConfig.BlockSettings == 1 and (KarmaHotkeys.QSpell or KarmaHotkeys.Wspell or KarmaHotkeys.Espell)) then
- MoveToXYZ(dodgex,0,dodgez)
- end
- end
- end
- function dodgelinepass(pos1, pos2, radius, maxDist)
- local pm2x = pos1.x + (maxDist)/(math.floor(math.sqrt((pos1.x-pos2.x)^2 + (pos1.z-pos2.z)^2)))*(pos2.x-pos1.x)
- local pm2z = pos1.z + (maxDist)/(math.floor(math.sqrt((pos1.x-pos2.x)^2 + (pos1.z-pos2.z)^2)))*(pos2.z-pos1.z)
- local calc1 = (math.floor(math.sqrt((pm2x-myHero.x)^2 + (pm2z-myHero.z)^2)))
- local calc2 = (math.floor(math.sqrt((pos1.x-myHero.x)^2 + (pos1.z-myHero.z)^2)))
- local calc3
- local calc4 = (math.floor(math.sqrt((pos1.x-pm2x)^2 + (pos1.z-pm2z)^2)))
- local perpendicular
- local k
- local x4
- local z4
- local dodgex
- local dodgez
- perpendicular = (math.floor((math.abs((pm2x-pos1.x)*(pos1.z-myHero.z)-(pos1.x-myHero.x)*(pm2z-pos1.z)))/(math.sqrt((pm2x-pos1.x)^2 + (pm2z-pos1.z)^2))))
- k = ((pm2z-pos1.z)*(myHero.x-pos1.x) - (pm2x-pos1.x)*(myHero.z-pos1.z)) / ((pm2z-pos1.z)^2 + (pm2x-pos1.x)^2)
- x4 = myHero.x - k * (pm2z-pos1.z)
- z4 = myHero.z + k * (pm2x-pos1.x)
- calc3 = (math.floor(math.sqrt((x4-myHero.x)^2 + (z4-myHero.z)^2)))
- dodgex = x4 + ((radius+150)/calc3)*(myHero.x-x4)
- dodgez = z4 + ((radius+150)/calc3)*(myHero.z-z4)
- if perpendicular < radius and calc1 < calc4 and calc2 < calc4 and DodgeConfig.DodgeSkillShots == true and GetCursorX() > xa and GetCursorX() < xb and GetCursorY() > ya and GetCursorY() < yb then
- if DodgeConfig.BlockSettings == 1 then
- if KarmaHotkeys.QSpell==false and KarmaHotkeys.Wspell==false and KarmaHotkeys.Espell==false then
- send.block_input(true,DodgeConfig.BlockTime)
- MoveToXYZ(dodgex,0,dodgez)
- end
- elseif DodgeConfig.BlockSettings == 2 or (DodgeConfig.BlockSettings == 1 and (KarmaHotkeys.QSpell or KarmaHotkeys.Wspell or KarmaHotkeys.Espell)) then
- MoveToXYZ(dodgex,0,dodgez)
- end
- end
- end
- function calculateLinepass(pos1, pos2, spacing, maxDist)
- local calc = (math.floor(math.sqrt((pos2.x-pos1.x)^2 + (pos2.z-pos1.z)^2)))
- local line = {}
- local point1 = {}
- point1.x = pos1.x
- point1.y = pos1.y
- point1.z = pos1.z
- local point2 = {}
- point1.x = pos1.x + (maxDist)/calc*(pos2.x-pos1.x)
- point1.y = pos2.y
- point1.z = pos1.z + (maxDist)/calc*(pos2.z-pos1.z)
- table.insert(line, point2)
- table.insert(line, point1)
- return line
- end
- function calculateLineaoe(pos1, pos2, maxDist)
- local line = {}
- local point = {}
- point.x = pos2.x
- point.y = pos2.y
- point.z = pos2.z
- table.insert(line, point)
- return line
- end
- function calculateLineaoe2(pos1, pos2, maxDist)
- local calc = (math.floor(math.sqrt((pos2.x-pos1.x)^2 + (pos2.z-pos1.z)^2)))
- local line = {}
- local point = {}
- if calc < maxDist then
- point.x = pos2.x
- point.y = pos2.y
- point.z = pos2.z
- table.insert(line, point)
- else
- point.x = pos1.x + maxDist/calc*(pos2.x-pos1.x)
- point.z = pos1.z + maxDist/calc*(pos2.z-pos1.z)
- point.y = pos2.y
- table.insert(line, point)
- end
- return line
- end
- function calculateLinepoint(pos1, pos2, spacing, maxDist)
- local line = {}
- local point1 = {}
- point1.x = pos1.x
- point1.y = pos1.y
- point1.z = pos1.z
- local point2 = {}
- point1.x = pos2.x
- point1.y = pos2.y
- point1.z = pos2.z
- table.insert(line, point2)
- table.insert(line, point1)
- return line
- end
- ------------------------------------------------------------------------------------------------
- --------------------------------------------- MISC ---------------------------------------------
- ------------------------------------------------------------------------------------------------
- function SpellTarget(spell,cd,a,b,range)
- if a ~= nil and b ~= nil then
- if (cd == 1 or cd) and GetDistance(a,b) < range then
- CastSpellTarget(spell,b)
- end
- end
- end
- function SpellXYZ(spell,cd,a,b,range,x,z)
- if a ~= nil and b ~= nil then
- local y = 0
- if (cd == 1 or cd) and x ~= nil and z ~= nil and GetDistance(a,b) < range then
- CastSpellXYZ(spell,x,y,z)
- end
- end
- end
- function SpellPred(spell,cd,a,b,range,delay,speed,block,blockradius)
- if (cd == 1 or cd) and a ~= nil and b ~= nil and delay ~= nil and speed ~= nil and GetDistance(a,b)<range then
- local FX,FY,FZ = GetFireahead(b,delay,speed)
- if distXYZ(a.x,a.z,FX,FZ)<range then
- if block == 1 and blockradius==nil then
- if CreepBlock(a.x,a.y,a.z,FX,FY,FZ) == 0 then
- CastSpellXYZ(spell,FX,FY,FZ)
- end
- elseif block == 1 and blockradius~=nil then
- if CreepBlock(a.x,a.y,a.z,FX,FY,FZ,blockradius) == 0 then
- CastSpellXYZ(spell,FX,FY,FZ)
- end
- else CastSpellXYZ(spell,FX,FY,FZ)
- end
- end
- end
- end
- function SpellPredSimple(spell,cd,a,b,range,delay,speed,block)
- if (cd == 1 or cd) and a ~= nil and b ~= nil and delay ~= nil and speed ~= nil and GetDistance(a,b)<range then
- local FX,FY,FZ = GetFireahead(b,delay,speed)
- if block == 1 then
- if CreepBlock(a.x,a.y,a.z,FX,FY,FZ) == 0 then
- CastSpellXYZ(spell,FX,FY,FZ)
- end
- else CastSpellXYZ(spell,FX,FY,FZ)
- end
- end
- end
- function distXYZ(a1,a2,b1,b2)
- if b1 == nil or b2 == nil then
- b1 = myHero.x
- b2 = myHero.z
- end
- if a2 ~= nil and b2 ~= nil and a1~=nil and b1~=nil then
- a = (b1-a1)
- b = (b2-a2)
- if a~=nil and b~=nil then
- a2=a*a
- b2=b*b
- if a2~=nil and b2~=nil then
- return math.sqrt(a2+b2)
- else
- return 99999
- end
- else
- return 99999
- end
- end
- end
- function IsLolActive()
- return tostring(winapi.get_foreground_window()) == "League of Legends (TM) Client" and IsChatOpen() == 0
- end
- function IsBuffed(target,name)
- for i = 1, objManager:GetMaxObjects(), 1 do
- obj = objManager:GetObject(i)
- if obj~=nil and target~=nil and string.find(obj.charName,name) and GetDistance(obj, target) < 100 then
- return true
- end
- end
- end
- ------------------------------------------------------------------------------------------------
- -------------------------------------------- Table ---------------------------------------------
- ------------------------------------------------------------------------------------------------
- function LoadTable()
- for i = 1, objManager:GetMaxHeroes() do
- local enemy = objManager:GetHero(i)
- if (enemy ~= nil and enemy.team ~= myHero.team) then
- if enemy.name == 'Aatrox' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 650, type = 3, radius = 225, color= 0x0000FFFF, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0})
- table.insert(skillshotArray,{name= enemy.SpellNameE, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1000, type = 1, radius = 125, color= 0x0000FFFF, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0})
- end
- if enemy.name == 'Ahri' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 880, type = 1, radius = 80, color= 0x0000FFFF, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0})
- table.insert(skillshotArray,{name= enemy.SpellNameE, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 975, type = 1, radius = 80, color= 0x0000FFFF, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0})
- end
- if enemy.name == 'Alistar' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 50, type = 3, radius = 200, color= 0x0000FFFF, time = 0.5, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0})
- end
- if enemy.name == 'Amumu' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1100, type = 1, radius = 80, color= 0x0000FFFF, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0})
- end
- if enemy.name == 'Anivia' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1100, type = 1, radius = 90, color= 0x0000FFFF, time = 2, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0})
- end
- if enemy.name == 'Annie' then
- table.insert(skillshotArray,{name= enemy.SpellNameR, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 600, type = 3, radius = 300, color= 0x0000FFFF, time = 1, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0})
- end
- if enemy.name == 'Ashe' then
- table.insert(skillshotArray,{name= enemy.SpellNameR, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 50000, type = 4, radius = 120, color= 0x0000FFFF, time = 4, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0})
- end
- if enemy.name == 'Blitzcrank' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 925, type = 1, radius = 120, color= 0x0000FFFF, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0})
- end
- if enemy.name == 'Brand' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1050, type = 1, radius = 50, color= 0x0000FFFF, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0})
- table.insert(skillshotArray,{name= enemy.SpellNameW, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 900, type = 3, radius = 250, color= 0xFFFFFF00, time = 1, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Cassiopeia' then
- table.insert(skillshotArray,{name= enemy.SpellNameW, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 850, type = 3, radius = 175, color= 0xFFFFFF00, time = 1, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 850, type = 3, radius = 125, color= 0xFFFFFF00, time = 1, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Caitlyn' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1000, type = 1, radius = 50, color= 0x0000FFFF, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Corki' then
- table.insert(skillshotArray,{name= enemy.SpellNameR, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1225, type = 1, radius = 100, color= 0x0000FFFF, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 800, type = 2, radius = 150, color= 0x0000FFFF, time = 1, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Chogath' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 950, type = 3, radius = 275, color= 0xFFFFFF00, time = 1.5, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Darius' then
- table.insert(skillshotArray,{name= enemy.SpellNameE, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 540, type = 1, radius = 125, color= 0x0000FFFF, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Diana' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 900, type = 1, radius = 205, color= 0xFFFFFF00, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Draven' then
- table.insert(skillshotArray,{name= enemy.SpellNameE, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1050, type = 1, radius = 125, color= 0x0000FFFF, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameR, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 5000, type = 1, radius = 100, color= 0x0000FFFF, time = 4, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'DrMundo' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1000, type = 1, radius = 80, color= 0x0000FFFF, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Elise' and enemy.range>300 then
- table.insert(skillshotArray,{name= enemy.SpellNameE, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1075, type = 1, radius = 80, color= 0x0000FFFF, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Ezreal' then
- table.insert(skillshotArray,{name= enemy.SpellNameWe, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1100, type = 1, radius = 80, color= 0x0000FFFF, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1100, type = 1, radius = 80, color= 0x0000FFFF, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameR, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 5000, type = 4, radius = 150, color= 0x0000FFFF, time = 4, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'FiddleSticks' then
- table.insert(skillshotArray,{name= enemy.SpellNameR, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 800, type = 3, radius = 600, color= 0xFFFFFF00, time = 1.5, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Fizz' then
- table.insert(skillshotArray,{name= enemy.SpellNameE, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 400, type = 3, radius = 300, color= 0xFFFFFF00, time = 1.5, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 550, type = 1, radius = 100, color= 0x0000FFFF, time = 1.5, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameR, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1275, type = 2, radius = 100, color= 0x0000FFFF, time = 1.5, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Galio' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 905, type = 3, radius = 200, color= 0xFFFFFF00, time = 1.5, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameE, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1000, type = 1, radius = 120, color= 0x0000FFFF, time = 1.5, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Gragas' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1100, type = 3, radius = 320, color= 0xFFFFFF00, time = 2.5, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameE, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 650, type = 2, radius = 60, color= 0x0000FFFF, time = 1.5, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameR, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1050, type = 3, radius = 400, color= 0xFFFFFF00, time = 1.5, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Graves' then
- table.insert(skillshotArray,{name= enemy.SpellNameR, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1000, type = 1, radius = 110, color= 0x0000FFFF, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 750, type = 1, radius = 50, color= 0x0000FFFF, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameW, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 700, type = 3, radius = 275, color= 0xFFFFFF00, time = 1.5, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Hecarim' then
- table.insert(skillshotArray,{name= enemy.SpellNameR, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1000, type = 1, radius = 125, color= 0x0000FFFF, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Heimerdinger' then
- table.insert(skillshotArray,{name= enemy.SpellNameW, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1100, type = 1, radius = 100, color= 0xFFFFFF00, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameE, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 950, type = 3, radius = 225, color= 0xFFFFFF00, time = 1.5, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- --[[if enemy.name == 'Irelia' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1200, type = 1, radius = 80, color= 0x0000FFFF, time = 0.8, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end]]
- if enemy.name == 'Janna' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1700, type = 1, radius = 100, color= 0x0000FFFF, time = 2, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'JarvanIV' then
- table.insert(skillshotArray,{name= enemy.SpellNameW, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 830, type = 3, radius = 150, color= 0xFFFFFF00, time = 2, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 770, type = 1, radius = 70, color= 0x0000FFFF, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Jayce' and enemy.range>300 then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1500, type = 1, radius = 125, color= 0x0000FFFF, time = 1.5, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Jinx' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 700, type = 1, radius = 100, color= 0xFFFFFF00, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameW, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1500, type = 1.5, radius = 100, color= 0xFFFFFF00, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameR, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 5000, type = 3, radius = 225, color= 0xFFFFFF00, time = 1, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Karma' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 950, type = 1, radius = 100, color= 0xFFFFFF00, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Karthus' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 875, type = 3, radius = 150, color= 0xFFFFFF00, time = 1, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Kassadin' then
- table.insert(skillshotArray,{name= enemy.SpellNameR, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 700, type = 5, radius = 150, color= 0xFF00FF00, time = 1, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Kennen' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1050, type = 1, radius = 75, color= 0x0000FFFF, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Khazix' then
- table.insert(skillshotArray,{name= enemy.SpellNameW, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1000, type = 1, radius = 75, color= 0xFFFFFF00, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameE, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 900, type = 3, radius = 310, color= 0xFFFFFF00, time = 1, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'KogMaw' then
- table.insert(skillshotArray,{name= enemy.SpellNameE, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1115, type = 1, radius = 100, color= 0x0000FFFF, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameR, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 2200, type = 3, radius = 200, color= 0xFFFFFF00, time = 1.5, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Leblanc' then
- table.insert(skillshotArray,{name= enemy.SpellNameE, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1000, type = 1, radius = 80, color= 0x0000FFFF, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameW, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 600, type = 3, radius = 250, color= 0xFFFFFF00, time = 1, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'LeeSin' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 975, type = 1, radius = 80, color= 0x0000FFFF, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Leona' then
- table.insert(skillshotArray,{name= enemy.SpellNameR, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 700, type = 1, radius = 160, color= 0x0000FFFF, time = 1, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameE, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 700, type = 1, radius = 100, color= 0x0000FFFF, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Lissandra' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 725, type = 1, radius = 100, color= 0xFFFFFF00, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameE, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1050, type = 1, radius = 120, color= 0xFFFFFF00, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Lucian' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1100, type = 1, radius = 100, color= 0x0000FFFF, time = 0.75, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameW, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1000, type = 1, radius = 150, color= 0x0000FFFF, time = 1.5, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Lulu' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 925, type = 1, radius = 50, color= 0x0000FFFF, time = 1, isline = true, px =0, py =0 , pz =0, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Lux' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1175, type = 1, radius = 80, color= 0x0000FFFF, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameE, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1100, type = 3, radius = 300, color= 0xFFFFFF00, time = 2.5, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameR, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 3000, type = 1, radius = 80, color= 0x0000FFFF, time = 1.5, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Malphite' then
- table.insert(skillshotArray,{name= enemy.SpellNameR, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1000, type = 3, radius = 325, color= 0xFFFFFF00, time = 1, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Malzahar' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 900, type = 3, radius = 100 , color= 0xFFFFFF00, time = 1, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameW, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 800, type = 3, radius = 250 , color= 0xFFFFFF00, time = 1, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Maokai' then
- table.insert(skillshotArray,{name= 'MaokaiTrunkLineMissile', shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 600, type = 1, radius = 100, color= 0x0000FFFF, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameE, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1100, type = 3, radius = 350 , color= 0xFFFFFF00, time = 1, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'MissFortune' then
- table.insert(skillshotArray,{name= enemy.SpellNameR, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 800, type = 3, radius = 400, color= 0xFFFFFF00, time = 1, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Morgana' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1300, type = 1, radius = 100, color= 0x0000FFFF, time = 1.5, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameW, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 900, type = 3, radius = 350, color= 0xFFFFFF00, time = 1.5, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Nami' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 875, type = 3, radius = 210, color= 0xFFFFFF00, time = 1, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameR, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 2750, type = 1, radius = 335, color= 0xFFFFFF00, time = 3, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Nautilus' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 950, type = 1, radius = 80, color= 0x0000FFFF, time = 1.5, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Nidalee' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1500, type = 1, radius = 80, color= 0x0000FFFF, time = 1.5, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Nocturne' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1200, type = 1, radius = 80, color= 0x0000FFFF, time = 1.5, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Olaf' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1000, type = 2, radius = 100, color= 0x0000FFFF, time = 1.5, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Orianna' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 825, type = 3, radius = 150, color= 0xFFFFFF00, time = 1.5, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Quinn' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1025, type = 1, radius = 150, color= 0xFFFFFF00, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Renekton' then
- table.insert(skillshotArray,{name= enemy.SpellNameE, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 450, type = 1, radius = 80, color= 0x0000FFFF, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Rumble' then
- table.insert(skillshotArray,{name= enemy.SpellNameE, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1000, type = 1, radius = 100, color= 0x0000FFFF, time = 1.5, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameR, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1700, type = 1, radius = 100, color= 0xFFFFFF00, time = 1.5, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Sejuani' then
- table.insert(skillshotArray,{name= enemy.SpellNameR, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1150, type = 1, radius = 80, color= 0x0000FFFF, time = 1, isline = f, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Shen' then
- table.insert(skillshotArray,{name= enemy.SpellNameE, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 600, type = 2, radius = 80, color= 0x0000FFFF, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Shyvana' then
- table.insert(skillshotArray,{name= enemy.SpellNameR, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 925, type = 1, radius = 80, color= 0x0000FFFF, time = 1.5, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameE, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1000, type = 1, radius = 80, color= 0x0000FFFF, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Sivir' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1100, type = 1, radius = 100, color= 0x0000FFFF, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Skarner' then
- table.insert(skillshotArray,{name= enemy.SpellNameE, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 600, type = 1, radius = 100, color= 0x0000FFFF, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Sona' then
- table.insert(skillshotArray,{name= enemy.SpellNameR, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1000, type = 1, radius = 150, color= 0x0000FFFF, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Swain' then
- table.insert(skillshotArray,{name= enemy.SpellNameW, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 900, type = 3, radius = 265 , color= 0xFFFFFF00, time = 1.5, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Syndra' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 800, type = 3, radius = 250, color= 0xFFFFFF00, time = 1, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameE, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 650, type = 1, radius = 100, color= 0xFFFFFF00, time = 0.5, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameW, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 950, type = 3, radius = 210, color= 0x0000FFFF, time = 1, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Thresh' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1075, type = 1, radius = 160, color= 0xFFFFFF00, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Tristana' then
- table.insert(skillshotArray,{name= enemy.SpellNameW, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 900, type = 3, radius = 200, color= 0xFFFFFF00, time = 1, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Tryndamere' then
- table.insert(skillshotArray,{name= enemy.SpellNameE, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 600, type = 2, radius = 100, color= 0x0000FFFF, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'TwistedFate' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1450, type = 1, radius = 100, color= 0x0000FFFF, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Urgot' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1000, type = 1, radius = 80, color= 0x0000FFFF, time = 0.8, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameE, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 950, type = 3, radius = 300, color= 0xFFFFFF00, time = 1, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Varus' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1475, type = 1, radius = 50, color= 0xFFFFFF00, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameR, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1075, type = 1, radius = 80, color= 0x0000FFFF, time = 1.5, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Veigar' then
- table.insert(skillshotArray,{name= enemy.SpellNameW, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 900, type = 3, radius = 225, color= 0xFFFFFF00, time = 2, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Vi' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 725, type = 1, radius = 75, color= 0xFFFFFF00, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Viktor' then
- table.insert(skillshotArray,{name= enemy.SpellNameE, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 700, type = 1, radius = 80, color= 0xFFFFFF00, time = 2})
- end
- if enemy.name == 'Xerath' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1450, type = 1, radius = 125, color= 0xFFFFFF00, time = 2, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameW, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1450, type = 3, radius = 225, color= 0xFFFFFF00, time = 0.8, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameE, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 950, type = 1, radius = 100, color= 0xFFFFFF00, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= xerathrmissilewrapper, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 2000+(enemy.SpellLevelR+1200), type = 3, radius = 75, color= 0xFFFFFF00, time = 0.5, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Yasuo' then
- table.insert(skillshotArray,{name= 'yasuoq3w', shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 900, type = 1, radius = 125, color= 0xFFFFFF00, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Zac' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 550, type = 1, radius = 100, color= 0xFFFFFF00, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameE, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1550, type = 5, radius = 200, color= 0xFFFFFF00, time = 1, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Zed' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 900, type = 1, radius = 55, color= 0xFFFFFF00, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Ziggs' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 850, type = 3, radius = 160, color= 0xFFFFFF00, time = 1, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameW, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1000, type = 3, radius = 225 , color= 0xFFFFFF00, time = 1, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameE, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 900, type = 3, radius = 250, color= 0xFFFFFF00, time = 1, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameR, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 5300, type = 3, radius = 550, color= 0xFFFFFF00, time = 3, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- if enemy.name == 'Zyra' then
- table.insert(skillshotArray,{name= enemy.SpellNameQ, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 825, type = 3, radius = 275, color= 0xFFFFFF00, time = 1.5, isline = false, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- table.insert(skillshotArray,{name= enemy.SpellNameE, shot=0, lastshot = 0, skillshotpoint = {}, maxdistance = 1100, type = 1, radius = 90, color= 0x0000FFFF, time = 2, isline = true, p1x =0, p1y =0 , p1z =0 , p2x =0, p2y =0 , p2z =0 })
- end
- end
- end
- end
- SetTimerCallback("Main")
Advertisement
Add Comment
Please, Sign In to add comment