Advertisement
Morness

Rivelina v2

Aug 1st, 2014
383
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 17.19 KB | None | 0 0
  1. --[[
  2. Rivelina [Riven] By
  3. _____ _____ __ .__ ____ .____ .__.__ .__ .__ .__
  4. / \_______ / _ \________/ |_|__| ____ __ __ ____ ____ / _ \ | | |__| | | | ____ _________ | | |__| ____
  5. / \ / \_ __ \ / /_\ \_ __ \ __\ |/ ___\| | \/ \ / _ \ > _ </\ | | | | | | | / ___\ / _ \__ \ | | | |/ __ \
  6. / Y \ | \/ / | \ | \/| | | \ \___| | / | ( <_> ) / <_\ \/ | |___| | |_| |__/ /_/ > <_> ) __ \| |_| \ ___/
  7. \____|__ /__| \____|__ /__| |__| |__|\___ >____/|___| /\____/ \_____\ \ |_______ \__|____/____/\___ / \____(____ /____/__|\___ >
  8. \/ \/ \/ \/ \/ \/ /_____/ \/ \/
  9.  
  10. ]]
  11.  
  12. if myHero.charName~="Riven"then return end local a=.86 local t=true local e="Rivelina"local l="https://raw.github.com/TheRealSource/public/master/common/SourceLib.lua"local n=LIB_PATH.."SourceLib.lua"if FileExist(n)then require("SourceLib")else DOWNLOADING_SOURCELIB=true DownloadFile(l,n,function()print("Required libraries downloaded successfully, please reload")end)end if DOWNLOADING_SOURCELIB then print("Downloading required libraries, please wait...")return end if t then SourceUpdater(e,a,"raw.github.com","/gmlyra/BolScripts/master/"..e..".lua",SCRIPT_PATH..GetCurrentEnv().FILE_NAME,"/gmlyra/BolScripts/master/VersionFiles/"..e..".version"):CheckUpdate()end local e=Require("SourceLib")e:Add("vPrediction","https://raw.github.com/Hellsing/BoL/master/common/VPrediction.lua")e:Add("SOW","https://raw.github.com/Hellsing/BoL/master/common/SOW.lua")e:Check()if e.downloadNeeded==true then return end require'VPrediction'require'SOW'local e,e,e,e=false,false,false,false local i,y=nil,nil local o=nil local n=nil local D,b,N,T=0,0,0,0 local g={1,2,3,1,1,4,1,3,1,3,4,3,3,2,2,4,2,2}local e={Q=260+100,W=250,E=325,R=880,AA=250}local u={[1]=function()myHero:MoveTo(mousePos.x,mousePos.z)end,[2]=function()SendChat('/l')end,[3]=function()SendChat('/d')end,[4]=function()SendChat('/t')end,[5]=function()SendChat('/j')end,[6]=function()end,}local l,r,a,s=false,false,false,false local f,A,C,R,d,m,M,t=nil,nil,nil,nil,nil,nil,nil,nil local h,P,_,E,c,S,I,t=false,false,false,false,false,false,false,false local t=0 local t=false ToInterrupt={}InteruptionSpells={{charName="FiddleSticks",spellName="Crowstorm"},{charName="MissFortune",spellName="MissFortuneBulletTime"},{charName="Nunu",spellName="AbsoluteZero"},{charName="Caitlyn",spellName="CaitlynAceintheHole"},{charName="Katarina",spellName="KatarinaR"},{charName="Karthus",spellName="FallenOne"},{charName="Malzahar",spellName="AlZaharNetherGrasp"},{charName="Galio",spellName="GalioIdolOfDurand"},{charName="Darius",spellName="DariusExecute"},{charName="MonkeyKing",spellName="MonkeyKingSpinToWin"},{charName="Vi",spellName="ViR"},{charName="Shen",spellName="ShenStandUnited"},{charName="Urgot",spellName="UrgotSwap2"},{charName="Pantheon",spellName="Pantheon_GrandSkyfall_Jump"},{charName="Lucian",spellName="LucianR"},{charName="Braum",spellName="BraumR"},}function OnLoad()initComponents()AddInteruptMenu()PrintChat("<font color = \"#4693e0\">Sponsored by www.RefsPlea.se</font> <font color = \"#d6ebff\"> - A League of Legends Referrals service. Get RP cheaper!</font>") end function initComponents()n=VPrediction()Orbwalker=SOW(n)o=TargetSelector(TARGET_NEAR_MOUSE,900)Menu=scriptConfig("Rivelina by Lillgoalie & Mr Articuno","RivenBLMA")Menu:addSubMenu("["..myHero.charName.." - Orbwalker]","SOWorb")Orbwalker:LoadToMenu(Menu.SOWorb)Menu:addSubMenu("["..myHero.charName.." - Combo]","RivenCombo")Menu.RivenCombo:addParam("combo","Combo mode",SCRIPT_PARAM_ONKEYDOWN,false,32)Menu.RivenCombo:addSubMenu("Q Settings","qSet")Menu.RivenCombo.qSet:addParam("useQ","Use Q in combo",SCRIPT_PARAM_ONOFF,true)Menu.RivenCombo:addSubMenu("W Settings","wSet")Menu.RivenCombo.wSet:addParam("useW","Use W in combo",SCRIPT_PARAM_ONOFF,true)Menu.RivenCombo:addSubMenu("E Settings","eSet")Menu.RivenCombo.eSet:addParam("useE","Use E in combo",SCRIPT_PARAM_ONOFF,true)Menu.RivenCombo:addSubMenu("R Settings","rSet")Menu.RivenCombo.rSet:addParam("useWeaving","Use R on Q>AA",SCRIPT_PARAM_ONOFF,true)Menu.RivenCombo.rSet:addParam("useR","Use R in Combo",SCRIPT_PARAM_LIST,1,{"ALWAYS","KILLABLE","NEVER"})Menu.RivenCombo.rSet:addParam("rRange","Maximum range to cast R",SCRIPT_PARAM_SLICE,850,400,900,0)Menu:addSubMenu("["..myHero.charName.." - Harass]","Harass")Menu.Harass:addParam("harass","Harass",SCRIPT_PARAM_ONKEYDOWN,false,string.byte("G"))Menu.Harass:addParam("useQ","Use Q in Harass",SCRIPT_PARAM_ONOFF,true)Menu.Harass:addParam("useW","Use W in Harass",SCRIPT_PARAM_ONOFF,true)Menu.Harass:addParam("useE","Use E in Harass",SCRIPT_PARAM_ONOFF,true)Menu:addSubMenu("["..myHero.charName.." - Laneclear]","Laneclear")Menu.Laneclear:addParam("lclr","Laneclear Key",SCRIPT_PARAM_ONKEYDOWN,false,string.byte("V"))Menu.Laneclear:addParam("useClearQ","Use Q in Laneclear",SCRIPT_PARAM_ONOFF,true)Menu.Laneclear:addParam("useClearW","Use W in Laneclear",SCRIPT_PARAM_ONOFF,true)Menu.Laneclear:addParam("useClearE","Use E in Laneclear",SCRIPT_PARAM_ONOFF,true)Menu:addSubMenu("["..myHero.charName.." - Jungleclear]","Jungleclear")Menu.Jungleclear:addParam("jclr","Jungleclear Key",SCRIPT_PARAM_ONKEYDOWN,false,string.byte("V"))Menu.Jungleclear:addParam("useClearQ","Use Q in Jungleclear",SCRIPT_PARAM_ONOFF,true)Menu.Jungleclear:addParam("useClearW","Use W in Jungleclear",SCRIPT_PARAM_ONOFF,true)Menu.Jungleclear:addParam("useClearE","Use E in Jungleclear",SCRIPT_PARAM_ONOFF,true)Menu:addSubMenu("["..myHero.charName.." - Additionals]","Ads")Menu.Ads:addParam("cancel","Animation Cancel",SCRIPT_PARAM_LIST,1,{"Move","Laugh","Dance","Taunt","joke","Nothing"})AddProcessSpellCallback(function(e,n)animationCancel(e,n)end)Menu.Ads:addParam("autoLevel","Auto-Level Spells",SCRIPT_PARAM_ONOFF,false)Menu.Ads:addSubMenu("Escape","escapeMenu")Menu.Ads.escapeMenu:addParam("escapeKey","Escape Key",SCRIPT_PARAM_ONKEYDOWN,false,string.byte("C"))Menu.Ads:addParam("weaving","Q>AA",SCRIPT_PARAM_ONOFF,true)Menu.Ads:addParam("qDelay","Q Delay",SCRIPT_PARAM_SLICE,40,0,100,0)Menu.Ads:addParam("hitOnly","Only Q if hits",SCRIPT_PARAM_ONOFF,true)Menu.Ads:addSubMenu("Killsteal","KS")Menu.Ads.KS:addParam("useR","Use Ultimate",SCRIPT_PARAM_ONOFF,true)Menu.Ads.KS:addParam("ignite","Use Ignite",SCRIPT_PARAM_ONOFF,false)Menu.Ads.KS:addParam("igniteRange","Minimum range to cast Ignite",SCRIPT_PARAM_SLICE,470,0,600,0)Menu.Ads:addSubMenu("VIP","VIP")Menu.Ads.VIP:addParam("spellCast","Spell by Packet",SCRIPT_PARAM_ONOFF,true)Menu.Ads.VIP:addParam("skin","Use custom skin (Requires Reload)",SCRIPT_PARAM_ONOFF,false)Menu.Ads.VIP:addParam("skin1","Skin changer",SCRIPT_PARAM_SLICE,1,1,5)Menu:addSubMenu("["..myHero.charName.." - Target Selector]","targetSelector")Menu.targetSelector:addTS(o)o.name="Focus"Menu:addSubMenu("["..myHero.charName.." - Drawings]","drawings")local n=DrawManager()n:CreateCircle(myHero,e.AA,1,{255,0,255,0}):AddToMenu(Menu.drawings,"AA range",true,true,true)n:CreateCircle(myHero,e.Q,1,{255,0,255,0}):AddToMenu(Menu.drawings,"Q range",true,true,true)n:CreateCircle(myHero,e.W,1,{255,0,255,0}):AddToMenu(Menu.drawings,"W range",true,true,true)n:CreateCircle(myHero,e.E,1,{255,0,255,0}):AddToMenu(Menu.drawings,"E range",true,true,true)n:CreateCircle(myHero,e.R,1,{255,0,255,0}):AddToMenu(Menu.drawings,"R range",true,true,true)enemyMinions=minionManager(MINION_ENEMY,360,myHero,MINION_SORT_MAXHEALTH_DEC)allyMinions=minionManager(MINION_ALLY,360,myHero,MINION_SORT_MAXHEALTH_DEC)jungleMinions=minionManager(MINION_JUNGLE,360,myHero,MINION_SORT_MAXHEALTH_DEC)if Menu.Ads.VIP.skin and VIP_USER then GenModelPacket("Riven",Menu.Ads.VIP.skin1)end PrintChat('<font color = "#33CCCC">Rivelina by</font> <font color = "#fff8e7">Lillgoalie</font> <font color = "#33CCCC">&</font> <font color = "#fff8e7">Mr Articuno</font>')end function OnTick()o:update()enemyMinions:update()allyMinions:update()jungleMinions:update()CDHandler()KillSteal()A,C,R,SheenSlot,TrinitySlot,LichBaneSlot,f,d,m,M,STDSlot=GetInventorySlotItem(3128),GetInventorySlotItem(3146),GetInventorySlotItem(3144),GetInventorySlotItem(3057),GetInventorySlotItem(3078),GetInventorySlotItem(3100),GetInventorySlotItem(3153),GetInventorySlotItem(3077),GetInventorySlotItem(3074),GetInventorySlotItem(3143),GetInventorySlotItem(3131)l=(myHero:CanUseSpell(_Q)==READY)r=(myHero:CanUseSpell(_W)==READY)a=(myHero:CanUseSpell(_E)==READY)s=(myHero:CanUseSpell(_R)==READY)P=(A~=nil and myHero:CanUseSpell(A)==READY)_=(C~=nil and myHero:CanUseSpell(C)==READY)E=(R~=nil and myHero:CanUseSpell(R)==READY)h=(f~=nil and myHero:CanUseSpell(f)==READY)c=(d~=nil and myHero:CanUseSpell(d)==READY)S=(m~=nil and myHero:CanUseSpell(m)==READY)I=(M~=nil and myHero:CanUseSpell(M)==READY)STDREADY=(STDSlot~=nil and myHero:CanUseSpell(STDSlot)==READY)IREADY=(i~=nil and myHero:CanUseSpell(i)==READY)if Menu.Ads.autoLevel then AutoLevel()end if Menu.Ads.escapeMenu.escapeKey then EscapeMode()end if Menu.RivenCombo.combo then Combo()end if Menu.Harass.harass then Harass()end if Menu.Laneclear.lclr then LaneClear()end if Menu.Jungleclear.jclr then JungleClear()end end function CDHandler()l=(myHero:CanUseSpell(_Q)==READY)r=(myHero:CanUseSpell(_W)==READY)a=(myHero:CanUseSpell(_E)==READY)s=(myHero:CanUseSpell(_R)==READY)tiamatSlot=GetInventorySlotItem(3077)hydraSlot=GetInventorySlotItem(3074)youmuuSlot=GetInventorySlotItem(3142)bilgeSlot=GetInventorySlotItem(3144)bladeSlot=GetInventorySlotItem(3153)tiamatReady=(tiamatSlot~=nil and myHero:CanUseSpell(tiamatSlot)==READY)hydraReady=(hydraSlot~=nil and myHero:CanUseSpell(hydraSlot)==READY)youmuuReady=(youmuuSlot~=nil and myHero:CanUseSpell(youmuuSlot)==READY)bilgeReady=(bilgeSlot~=nil and myHero:CanUseSpell(bilgeSlot)==READY)bladeReady=(bladeSlot~=nil and myHero:CanUseSpell(bladeSlot)==READY)if myHero:GetSpellData(SUMMONER_1).name:find("SummonerDot")then i=SUMMONER_1 elseif myHero:GetSpellData(SUMMONER_2).name:find("SummonerDot")then i=SUMMONER_2 end y=(i~=nil and myHero:CanUseSpell(i)==READY)end function Harass()local n=o.target if n~=nil and ValidTarget(n)then if Menu.Harass.useE and a then CastSpell(_E,n.x,n.z)end if Menu.Harass.useQ and l then if Menu.Ads.weaving and GetDistance(n)<=e.Q+e.AA then if not t then CastSpell(_Q,n.x,n.z)t=true else Orbwalker:Attack(n)end end end if Menu.Harass.useW and ValidTarget(n,e.W)and GetDistance(n.visionPos,myHero.visionPos)<e.W and r then CastSpell(_W)ItemUsage(n)end end end function Combo()local e=0 if o.target~=nil then AllInCombo(o.target,0)end end function AllInCombo(n,i)if n~=nil and i==0 then if ValidTarget(n,e.W-20)and GetDistance(n.visionPos,myHero.visionPos)<e.W and r then CastSpell(_W)if ValidTarget(n,e.W)then ItemUsage(n)end end if l and Menu.RivenCombo.qSet.useQ then if not Menu.Ads.hitOnly and GetDistance(n)>=e.Q then CastSpell(_Q,n.x,n.z)end if Menu.Ads.weaving and GetDistance(n)<=e.Q+e.AA then if not t then CastSpell(_Q,n.x,n.z)t=true end end end if ValidTarget(n,900)and Menu.RivenCombo.eSet.useE and a then CastSpell(_E,n.x,n.z)end if s and myHero:GetSpellData(_R).name=='RivenFengShuiEngine'and ValidTarget(n,360)then if Menu.RivenCombo.rSet.useR==1 then CastSpell(_R)end if Menu.RivenCombo.rSet.useR==2 then CastSpell(_R)end end if ValidTarget(n,e.W)and GetDistance(n.visionPos,myHero.visionPos)<e.W and r and Menu.RivenCombo.wSet.useW then CastSpell(_W)if ValidTarget(n,e.W)then ItemUsage(n)end elseif ValidTarget(n,e.E+e.W)and GetDistance(n.visionPos,myHero.visionPos)<e.W+e.E and a and Menu.RivenCombo.eSet.useE then CastSpell(_E,n.x,n.z)if ValidTarget(n,e.W)then ItemUsage(n)end CastSpell(_W)end if ValidTarget(n,Menu.RivenCombo.rSet.rRange)and s and myHero:GetSpellData(_R).name=='rivenizunablade'then if Menu.RivenCombo.rSet.useR==1 and n~=nil and ValidTarget(n,Menu.RivenCombo.rSet.rRange)then CastSpell(_R,n.x,n.z)end if Menu.RivenCombo.rSet.useR==2 then for n,e in ipairs(GetEnemyHeroes())do rDmg=getDmg("R",e,myHero)if e~=nil and ValidTarget(e,Menu.RivenCombo.rSet.rRange)and e.health<rDmg then CastSpell(_R,e.x,e.z)end end end end end end function LaneClear()for i,n in pairs(enemyMinions.objects)do if Menu.Laneclear.useClearE and a and ValidTarget(n,e.E)then ItemUsage(n)CastSpell(_E,n.x,n.z)end if l and Menu.Laneclear.useClearQ then if not Menu.Ads.hitOnly and GetDistance(n)>=e.Q then CastSpell(_Q,n.x,n.z)end if Menu.Ads.weaving and GetDistance(n)<=e.Q+e.AA then if not t then CastSpell(_Q,n.x,n.z)t=true end end end if Menu.Laneclear.useClearW and r and ValidTarget(n,e.W)and GetDistance(n.visionPos,myHero.visionPos)<e.W then ItemUsage(n)CastSpell(_W)end end end function JungleClear()for i,n in pairs(jungleMinions.objects)do if n~=nil then if Menu.Jungleclear.useClearE and a then CastSpell(_E,n.x,n.z)end if l and Menu.Jungleclear.useClearQ then if not Menu.Ads.hitOnly and GetDistance(n)>=e.Q then CastSpell(_Q,n.x,n.z)end if Menu.Ads.weaving and GetDistance(n)<=e.Q+e.AA then if not t then CastSpell(_Q,n.x,n.z)t=true end end end if Menu.Jungleclear.useClearW and r and ValidTarget(n,e.W)and GetDistance(n)<=e.W then ItemUsage(n)CastSpell(_W)end end end end function AutoLevel()local a,t,n,l=player:GetSpellData(_Q).level+D,player:GetSpellData(_W).level+b,player:GetSpellData(_E).level+N,player:GetSpellData(_R).level+T if a+t+n+l<player.level then local r={SPELL_1,SPELL_2,SPELL_3,SPELL_4,}local e={0,0,0,0}for n=1,player.level,1 do e[g[n]]=e[g[n]]+1 end for n,a in ipairs({a,t,n,l})do if a<e[n]then LevelSpell(r[n])end end end end function KillSteal()if Menu.Ads.KS.useR then KSR()end if Menu.Ads.KS.ignite then IgniteKS()end end function KSR()for n,e in ipairs(GetEnemyHeroes())do rDmg=getDmg("R",e,myHero)if s and e~=nil and ValidTarget(e,Menu.RivenCombo.rSet.rRange)and e.health<rDmg then if myHero:GetSpellData(_R).name=='RivenFengShuiEngine'then CastSpell(_R)end if myHero:GetSpellData(_R).name=='rivenizunablade'then CastSpell(_R,e.x,e.z)end end end end function IgniteKS()if y then local e=GetEnemyHeroes()for n,e in ipairs(e)do if ValidTarget(e,600)then if getDmg("IGNITE",e,myHero)>e.health and RReady~=true and GetDistance(e)>=Menu.Ads.KS.igniteRange then CastSpell(i,e)end end end end end function EscapeMode()myHero:MoveTo(mousePos.x,mousePos.z)for a,n in ipairs(GetEnemyHeroes())do if n~=nil and ValidTarget(n,e.W)and GetDistance(n.visionPos,myHero.visionPos)<e.W and r then CastSpell(_W)end end if a and l then DelayAction(function()CastSpell(_Q,mousePos.x,mousePos.z)end,8-GetLatency())elseif a and not l then DelayAction(function()CastSpell(_E,mousePos.x,mousePos.z)end,15-GetLatency())elseif not a and l then DelayAction(function()CastSpell(_Q,mousePos.x,mousePos.z)end,8-GetLatency())end end function HealthCheck(e,n)if e.health>(e.maxHealth*(n/100))then return true else return false end end function animationCancel(n,e)if not n.isMe then return end if e.name=='RivenTriCleave'then u[Menu.Ads.cancel]()DelayAction(function()Orbwalker:resetAA()end,e.windUpTime)else if e.name=='RivenMartyr'then u[Menu.Ads.cancel]()else if e.name=='RivenFeint'then u[Menu.Ads.cancel]()else if e.name=='RivenFengShuiEngine'then u[Menu.Ads.cancel]()else if e.name=='rivenizunablade'then u[Menu.Ads.cancel]()end end end end end end function ItemUsage(e)if P then CastSpell(A,e)end if _ then CastSpell(C,e)end if E then CastSpell(R,e)end if h then CastSpell(f,e)end if c and GetDistance(e)<385 then CastSpell(d)end if S and GetDistance(e)<385 then CastSpell(m)end if I and GetDistance(e)<385 then CastSpell(M)end end function AddInteruptMenu()Menu:addSubMenu('Interuptions','inter')Menu.inter:addParam("inter1","Interupt skills",SCRIPT_PARAM_ONOFF,false)Menu.inter:addParam("inter2","_____________________________",SCRIPT_PARAM_INFO,"")for e,n in ipairs(GetEnemyHeroes())do for a,e in pairs(InteruptionSpells)do if n.charName==e.charName then table.insert(ToInterrupt,{charName=e.charName,spellName=e.spellName})end end end if#ToInterrupt>0 then for n,e in pairs(ToInterrupt)do Menu.inter:addParam(e.spellName,"Stop "..e.charName.." "..e.spellName,SCRIPT_PARAM_ONOFF,true)end else Menu.inter:addParam("bilbao","No supported skills to interupt.",SCRIPT_PARAM_INFO,"")end end function OnProcessSpell(a,n)if Menu.inter.inter1 and myHero:CanUseSpell(_W)==READY then if#ToInterrupt>0 then for l,t in pairs(ToInterrupt)do if n.name==t.spellName and a.team~=myHero.team then if Menu.inter[t.spellName]then if ValidTarget(a,e.W)and GetDistance(a.visionPos,myHero.visionPos)<e.W then CastSpell(_W)end end end end end end if Menu.Laneclear.lclr or Menu.Jungleclear.jclr or Menu.Harass.harass or Menu.RivenCombo.combo then if Menu.Ads.weaving then if a.isMe and n and n.target and ValidTarget(n.target,400)and n.name:lower():find("attack")then DelayAction(function()if ValidTarget(n.target,400)and(c or S)then if c then CastSpell(d)elseif S then CastSpell(m)end end if myHero:CanUseSpell(_Q)==READY and ValidTarget(n.target,e.Q*3)then t=false end end,n.windUpTime)end else if ValidTarget(n.target,(myHero.range+GetDistance(myHero.minBBox)))then CastSpell(_Q,n.target.x,n.target.z)end end end end function GenModelPacket(e,n)p=CLoLPacket(151)p:EncodeF(myHero.networkID)p.pos=1 t1=p:Decode1()t2=p:Decode1()t3=p:Decode1()t4=p:Decode1()p:Encode1(t1)p:Encode1(t2)p:Encode1(t3)p:Encode1(bit32.band(t4,11))p:Encode1(1)p:Encode4(n)for n=1,#e do p:Encode1(string.byte(e:sub(n,n)))end for e=#e+1,64 do p:Encode1(0)end p:Hide()RecvPacket(p)end function OnDraw()end
  13.  
  14. -- End of Rivelina --
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement