Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --[[
- AutoSmiteee v1.7
- Credits to Zynox for original AutoSmite v1.2
- Mod by Manciuszz
- Modified by Mariopart for BoL
- v1.0 : First release
- v1.1 : Update for new Animation Lib v0.3
- v1.2 : Added Nunu Q-Consume and ChoGath's R-Feast.
- : Will now attempt to use Q + Smite for Nunu and Smite + R for ChoGath
- : Will load the script on Nunu and ChoGath without Smite.
- v1.3 : Edited slightly and Modified for BoL Studio by eXtragoZ
- 1) Hotkey for switching AutoSmite On/Off (by default: N). Remember that AutoSmite is OFF until you switch it.
- 2) Hold-Hotkey for using AutoSmite (by default: ALT) if you want to use it in this way.
- ]]
- --[[ Config ]]
- local range = 800 -- Range of smite (~800)
- local switcher = 78 -- Let's you to switches AutoSmite ON/OFF by pressing this hotkey (N)
- local hold = 12 -- Let's you to AutoSmite even if it's OFF by holding this hotkey (ALT by default). Set it to nil if you don't want to use this feature.
- local scanInterval = 10 -- Interval for Smite part of the script. Recommended to set from 10 to 500. If it drops FPS hard for you then try to set it to 500. (default: 50 ms)
- --[[ Globals ]]
- local sleepTick = 0
- local scanTick = 0
- local activated = 0
- local holding = 0
- local holdingshift = false
- local smiteSlot = nil
- local ASminionTable = {}
- --[[ Code ]]
- function OnWndMsg(msg,wParam)
- if wParam ~= switcher and wParam ~= hold then return end
- if wParam == switcher and msg == KEY_DOWN then
- if activated == 0 then
- activated = 1
- holding = 0
- PrintChat("<font color='#7CFC00'> >> AutoSmite: ON</font>")
- else
- activated = 0
- holding = 0
- PrintChat("<font color='#FF4500'> >> AutoSmite: OFF</font>")
- end
- end
- if wParam == hold then
- if msg == KEY_DOWN and activated == 0 and holding == 0 then
- activated = 1
- holding = 1
- PrintChat("<font color='#7CFC00'> >> AutoSmite: ON</font>")
- end
- if msg == KEY_UP and activated == 1 and holding == 1 or holdingshift == false then
- activated = 0
- holding = 0
- PrintChat("<font color='#FF4500'> >> AutoSmite: OFF</font>")
- end
- end
- end
- function OnTick()
- local tick = GetTickCount()
- if GetTickCount()-scanTick < scanInterval and GetTickCount()<sleepTick then return end
- scanTick = GetTickCount()
- if activated == 1 and not myHero.dead then
- local canusesmite = false
- if smiteSlot ~= nil then
- if myHero:CanUseSpell(smiteSlot) == READY then
- canusesmite = true
- end
- end
- if myHero.charName == "Nunu" and myHero:CanUseSpell(_Q) == READY then
- local qDamage = 400 + 100 * myHero:GetSpellData(_Q).level
- local smiteDamage = 420 + 25 * myHero.level
- local mixDamage = qDamage + smiteDamage
- for i,object in ipairs(ASminionTable) do
- if object ~= nil and myHero:GetDistance(object) < myHero:GetSpellData(_Q).range+200 then
- if canusesmite and object.health <= mixDamage then
- CastSpell(_Q, object)
- CastSpell(smiteSlot, object)
- Sleep(1000)
- return
- elseif not canusesmite and object.health <= qDamage then
- CastSpell(_Q, object)
- Sleep(1000)
- return
- end
- end
- end
- end
- if myHero.charName == "Chogath" and myHero:CanUseSpell(_R) == READY then
- local rDamage = 1000
- local smiteDamage = 420 + 25 * myHero.level
- local mixdDamage = rDamage + smiteDamage
- for i,object in ipairs(ASminionTable) do
- if object ~= nil and myHero:GetDistance(object) < myHero:GetSpellData(_R).range+200 then
- if canusesmite and object.health <= mixdDamage then
- CastSpell(_R, object)
- CastSpell(smiteSlot, object)
- Sleep(1000)
- return
- elseif not canusesmite and object.health <= rDamage then
- CastSpell(_R, object)
- Sleep(1000)
- return
- end
- end
- end
- end
- if canusesmite then
- local smiteDamage = 420 + 25 * myHero.level
- for i,object in ipairs(ASminionTable) do
- if object ~= nil and myHero:GetDistance(object) < range and object.health <= smiteDamage then
- CastSpell(smiteSlot, object)
- Sleep(1000)
- return
- end
- end
- end
- end
- end
- function OnCreateObj(obj)
- if obj ~= nil and (string.find(obj.name,"Worm12.1.1") ~= nil or string.find(obj.name,"Dragon6.1.1") ~= nil or string.find(obj.name,"TwistedLizardElder8$1") ~= nil or string.find(obj.name,"blueDragon7$1") ~= nil or string.find(obj.name,"AncientGolem1.1.1") ~= nil or string.find(obj.name,"AncientGolem7.1.1") ~= nil or string.find(obj.name,"LizardElder4.1.1") ~= nil or string.find(obj.name,"LizardElder10.1.1") ~= nil) then
- table.insert(ASminionTable, obj)
- end
- end
- function OnDeleteObj(obj)
- for i,v in ipairs(ASminionTable) do
- if string.find(obj.name, v.name) then
- table.remove(ASminionTable,i)
- end
- end
- end
- function LoadMinions()
- for i = 1, objManager.maxObjects do
- local object = objManager:getObject(i)
- if object ~= nil and object.team == TEAM_NEUTRAL and object.dead == false and (string.find(object.name,"Worm12.1.1") ~= nil or string.find(object.name,"Dragon6.1.1") ~= nil or string.find(object.name,"TwistedLizardElder8$1") ~= nil or string.find(object.name,"blueDragon7$1") ~= nil or string.find(object.name,"AncientGolem1.1.1") ~= nil or string.find(object.name,"AncientGolem7.1.1") ~= nil or string.find(object.name,"LizardElder4.1.1") ~= nil or string.find(object.name,"LizardElder10.1.1") ~= nil) then
- table.insert(ASminionTable, object)
- end
- end
- end
- function Sleep( ms )
- sleepTick = GetTickCount() + ms
- end
- function OnLoad()
- if string.find(myHero:GetSpellData(SUMMONER_1).name, "Smite") ~= nil then
- smiteSlot = SUMMONER_1
- LoadMinions()
- PrintChat(" >> AutoSmiteee v1.7 loaded!")
- elseif string.find(myHero:GetSpellData(SUMMONER_2).name, "Smite") ~= nil then
- smiteSlot = SUMMONER_2
- LoadMinions()
- PrintChat(" >> AutoSmiteee v1.7 loaded!")
- elseif myHero.charName == "Nunu" and myHero:GetSpellData(SUMMONER_1).name:find("Smite") == nil then
- smiteSlot = nil
- LoadMinions()
- PrintChat(" >> AutoSmiteee v1.7 loaded!")
- elseif myHero.charName == "Chogath" and myHero:GetSpellData(SUMMONER_1).name:find("Smite") == nil then
- smiteSlot = nil
- LoadMinions()
- PrintChat(" >> AutoSmiteee v1.7 loaded!")
- else
- smiteSlot = nil
- end
- end
Add Comment
Please, Sign In to add comment