Advertisement
samipote

Untitled

Apr 23rd, 2014
138
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 18.45 KB | None | 0 0
  1. require "Utils"
  2. require 'SKeys'
  3. require "spell_damage"
  4. local uiconfig = require 'uiconfig'
  5. local targetignite
  6. local target
  7. local PassiveStun=0
  8. local _registry = {}
  9. Annie, menu = uiconfig.add_menu('Annie',200)
  10. menu.keydown('Combo','Combo', Keys.X)
  11. menu.keytoggle('ComboR', 'R in Combo', Keys.Z, false)
  12. menu.keydown('Farm','Farm', Keys.C)
  13. menu.checkbutton('autoignite', 'Ignite-ks',true)
  14. menu.checkbutton('Killsteal','Killsteal',true)
  15. menu.checkbutton('useAutoMECR', 'use Auto MEC R', true)
  16. menu.slider('valMECR', 'Minimum MEC Value', 1, 5, 3, {1,2,3,4,5})
  17. menu.checkbutton('AutoZonyas', 'AutoZonyas', true)
  18. menu.slider('Zhonyas_Hourglass_Value', 'Zhonya Hourglass Value', 0, 100, 15, nil, true)
  19. function Main()
  20. GetCD()
  21. Items()
  22. ignite()
  23. StunEvolution()
  24. target = GetBestEnemy("MAGIC", 625, "NEARMOUSE")
  25. if target==nil then
  26. target = GetWeakEnemy("MAGIC", 625)
  27. end
  28. targetignite = GetBestEnemy('TRUE',600)
  29. if Annie.Combo then Combo() end
  30. if Annie.Farm then Farm() end
  31. if Annie.Killsteal then Killsteal() end
  32. if Annie.autoignite then ignite() end
  33. if Annie.useAutoMECR then mecStunULT(Annie.valMECR) end
  34. end
  35. function Combo()
  36.  for i = 1, objManager:GetMaxHeroes() do
  37.  local hero = objManager:GetHero(i)
  38. if target~= nil and CountEnemyHeroInRange(625, myHero)>2 then
  39. if GetDistance(myHero,target) <600 and WRDY==1 and StunCheck() then
  40. CastSpellTarget('W',target)
  41. elseif GetDistance(myHero,target) <625 and WRDY==1 and not runningAway(target) and StunCheck() then
  42. CastSpellTarget('W',target)
  43. elseif GetDistance(myHero,target) <625 and QRDY==1 and not StunCheck() then
  44. CastSpellTarget('Q',target)
  45. end
  46. if GetDistance(myHero,target) <600 and Annie.ComboR and RRDY==1 and StunCheck() then
  47. CastSpellTarget('R',target)
  48. elseif GetDistance(myHero,target) <600 and Annie.ComboR and RRDY==1 and target.health<target.health*0.50 then
  49. CastSpellTarget('R',target)
  50. end
  51. if PassiveStun==1 and QRDY==1 and ERDY==1 and GetDistance(myHero,target)<620 then
  52. CastSpellTarget('Q',target)
  53. CastSpellTarget('E',myHero)
  54. end
  55. if PassiveStun==2 and QRDY==1 and GetDistance(myHero,target)<620 then
  56. CastSpellTarget('Q',target)
  57. end
  58. if PassiveStun==3 and QRDY==1 and GetDistance(myHero,target)<620 then
  59. CastSpellTarget('Q',target)
  60. end
  61. if StunCheck() and WRDY==1 and QRDY==0 and RRDY==0 and GetDistance(myHero,target)<600 then
  62. CastSpellTarget('W',target)
  63. elseif StunCheck() and RRDY==1 and GetDistance(myHero,target)<600 then
  64. CastSpellTarget('R',target)
  65. end
  66. if ERDY==1 and GetDistance(myHero,target)<=500 then
  67. CastSpellTarget('E',myHero)
  68. if PassiveStun==1 and WRDY==1 and GetDistance(myHero,target)<600 then
  69. CastSpellTarget('W',target)
  70. end
  71. if PassiveStun==2 and WRDY==1 and GetDistance(myHero,target)<600 then
  72. CastSpellTarget('W',target)
  73. end
  74. if PassiveStun==3 and WRDY==1 and GetDistance(myHero,target)<600 then
  75. CastSpellTarget('W',target)
  76. elseif StunCheck() and QRDY==1 and WRDY==0 then
  77. CastSpellTarget('Q',target)
  78. elseif StunCheck() and WRDY==1 and QRDY==0 then
  79. CastSpellTarget('W',target)
  80. else
  81. CastSpellTarget('W',target)
  82. CastSpellTarget('E',myHero)
  83. end
  84. if GetDistance(myHero,target)<400 then
  85. UseAllItems(target)
  86. end
  87. if  QRDY==1 and GetDistance(myHero,target)<600 then
  88. CastSpellTarget('Q',target)
  89. end
  90. if ERDY==1 and GetDistance(myHero,target)<=500 then
  91. CastSpellTarget('E',myHero)
  92. elseif myHero.health<=myHero.health*0.2 and ERDY==1 then
  93. CastSpellTarget('E',myHero)
  94. end
  95. end
  96. if target~= nil and CountEnemyHeroInRange(625, myHero)<=2 then
  97. if GetDistance(myHero,target)<625 then
  98. if PassiveStun==1 and WRDY==1 and GetDistance(myHero,target)<600 then
  99. CastSpellTarget('W',target)
  100. end
  101. if PassiveStun==2 and WRDY==1 and GetDistance(myHero,target)<600 then
  102. CastSpellTarget('W',target)
  103. end
  104. if PassiveStun==3 and WRDY==1 and GetDistance(myHero,target)<600 then
  105. CastSpellTarget('W',target)
  106. elseif StunCheck() and QRDY==1 and WRDY==0 then
  107. CastSpellTarget('Q',target)
  108. CastSpellTarget('W',target)
  109. end
  110. if PassiveStun==1 and QRDY==1  then
  111. CastSpellTarget('Q',target)
  112. end
  113. if PassiveStun==2 and QRDY==1  then
  114. CastSpellTarget('Q',target)
  115. end
  116. elseif PassiveStun==3 and QRDY==1 then
  117. CastSpellTarget('Q',target)
  118. elseif StunCheck() and RRDY==1 and not runningAway(hero) and QRDY==0 then
  119. CastSpellTarget('R',target)
  120. else
  121. CastSpellTarget('W',target)
  122. CastSpellTarget('E',myHero)
  123. end
  124. if PassiveStun==1 and ERDY==1 then
  125. CastSpellTarget('E',myHero)
  126. if PassiveStun==2 and ERDY==1 then
  127. CastSpellTarget('E',myHero)
  128. if PassiveStun==3 and ERDY==1 then
  129. CastSpellTarget('E',myHero)
  130. end
  131. if RRDY==1 and Annie.ComboR and target.health<target.health*0.50 and StunCheck() then
  132. CastSpellTarget('R',target)
  133. end
  134. if PassiveStun==3 and RRDY==1 and Annie.ComboR then
  135. CastSpellTarget('R',target)
  136. if StunCheck() and RRDY==0 then
  137. CastSpellTarget('Q',target)
  138. UseAllItems(target)
  139. end
  140. end
  141. UseAllItems(target)
  142. end
  143. end
  144. end
  145. end
  146. end
  147. end
  148. function Items()
  149.     if Annie.AutoZonyas and myHero.health < myHero.maxHealth*(Annie.Zhonyas_Hourglass_Value/100) then
  150.         UseItemOnTarget(3157,myHero)
  151.         UseItemOnTarget(3090,myHero)
  152.     end
  153. end
  154. function runningAway(slowtarget)
  155.    local d1 = GetD(slowtarget)
  156.    local x, y, z = GetFireahead(slowtarget,2,0)
  157.    local d2 = GetD({x=x, y=y, z=z})
  158.    local d3 = GetD({x=x, y=y, z=z},slowtarget)
  159.    local angle = math.acos((d2*d2-d3*d3-d1*d1)/(-2*d3*d1))
  160.    
  161.    return angle%(2*math.pi)>math.pi/2 and angle%(2*math.pi)<math.pi*3/2
  162.  
  163. end
  164. function GetD(p1, p2)
  165. if p2 == nil then p2 = myHero end
  166. if (p1.z == nil or p2.z == nil) and p1.x~=nil and p1.y ~=nil and p2.x~=nil and p2.y~=nil then
  167. px=p1.x-p2.x
  168. py=p1.y-p2.y
  169. if px~=nil and py~=nil then
  170. px2=px*px
  171. py2=py*py
  172. if px2~=nil and py2~=nil then
  173. return math.sqrt(px2+py2)
  174. else
  175. return 99999
  176. end
  177. else
  178. return 99999
  179. end
  180.  
  181. elseif p1.x~=nil and p1.z ~=nil and p2.x~=nil and p2.z~=nil then
  182. px=p1.x-p2.x
  183. pz=p1.z-p2.z
  184. if px~=nil and pz~=nil then
  185. px2=px*px
  186. pz2=pz*pz
  187. if px2~=nil and pz2~=nil then
  188. return math.sqrt(px2+pz2)
  189. else
  190. return 99999
  191. end
  192. else    
  193. return 99999
  194. end
  195.  
  196. else
  197. return 99999
  198. end
  199. end
  200. function Killsteal()
  201. if GetInventorySlot(3001)~=nil then TrueMG = 1
  202. else TrueMG = 0 end
  203. for i = 1, objManager:GetMaxHeroes() do
  204. local enemy = objManager:GetHero(i)
  205. if enemy~=nil and enemy.team~=myHero.team and enemy.visible==1 and enemy.invulnerable==0 and enemy.dead==0 then
  206. local xQ = (45+(myHero.SpellLevelQ*35)+(myHero.ap*.80))*QRDY
  207. local xW = (25+(myHero.SpellLevelW*45)+(myHero.ap*.85))*WRDY
  208. local xR = (50+(myHero.SpellLevelR*125)+(myHero.ap*.80))*RRDY
  209. local effh = (enemy.health)*(1+((((enemy.magicArmor-(20*TrueMG))*myHero.magicPenPercent)-myHero.magicPen)/100))
  210. local ignitedamage = (myHero.selflevel*20)+50
  211. if effh<xQ and GetDistance(myHero,enemy)<625 then
  212. CastSpellTarget('Q', enemy)
  213. end
  214. if effh<xW and GetDistance(myHero,enemy)<625  then
  215. CastSpellTarget('W',enemy)
  216. end
  217. if effh<xR and GetDistance(myHero,enemy)<600 then
  218. CastSpellTarget('R',enemy)
  219. end
  220. if effh<xQ+xW and StunCheck() and  GetDistance(myHero,enemy)<625 then
  221. CastSpellTarget('Q', enemy)
  222. CastSpellTarget('W',enemy)
  223. CastIgnite(enemy)
  224. end
  225. if effh<xQ+xW+ignitedamage and GetDistance(myHero,enemy)<600 then
  226. CastSpellTarget('W',enemy)
  227. CastIgnite(enemy)
  228. CastSpellTarget('Q', enemy)
  229. end
  230. if effh<xQ+xR and GetDistance(myHero,enemy)<600 then
  231. CastSpellTarget('R',enemy)
  232. CastIgnite(enemy)
  233. CastSpellTarget('Q', enemy)
  234. end
  235. end
  236. end
  237. end
  238. function ignite()
  239.     local damage = (myHero.selflevel*20)+50
  240.     if targetignite ~= nil then
  241.         if myHero.SummonerD == "SummonerDot" then
  242.             if targetignite.health < damage then
  243.                 CastSpellTarget("D",targetignite)
  244.             end
  245.         end
  246.         if myHero.SummonerF == "SummonerDot" then
  247.             if targetignite.health < damage then
  248.                 CastSpellTarget("F",targetignite)
  249.             end
  250.         end
  251.     end
  252. end
  253. function CastIgnite(enemy)
  254. for i = 1, objManager:GetMaxHeroes() do
  255. local enemy = objManager:GetHero(i)
  256. if enemy~=nil and enemy.team~=myHero.team and enemy.visible==1 and enemy.invulnerable==0 and enemy.dead==0 then
  257.         if myHero.SummonerD == "SummonerDot" then
  258.                 CastSpellTarget("D",enemy)
  259.             end
  260.         if myHero.SummonerF == "SummonerDot" then
  261.                 CastSpellTarget("F",enemy)
  262.             end
  263.     end
  264. end
  265. end
  266. function Farm()
  267. local myQ = math.floor(((GetSpellLevel("Q")-1)*40) + 85 + (myHero.ap * .8))
  268. local minion = GetLowestHealthEnemyMinion(600)
  269. if minion then
  270. DrawCircle(minion.x, minion.y, minion.z, 100, Color.Red) end
  271. if minion ~= nil and minion.health <= CalcMagicDamage(minion, myQ) then
  272. CastSpellTarget("Q", minion)
  273. end
  274. end
  275. local StatusReturn={}
  276. function getStatus(target)
  277.     StatusReturn=nil
  278.     for i=1, objManager:GetMaxObjects(), 1 do
  279.             local object = objManager:GetObject(i)
  280.             if object ~= nil then
  281.                     if string.find(object.charName,"eyeforaneye") ~= nil and GetDistance(target,object) <= 20 then return {status = 1, name = 'Intervention', amount = 0, type = 'ALL'}
  282.                     elseif string.find(object.charName,"nickoftime") ~= nil and GetDistance(target,object) <= 20 then return {status = 4, name = 'Chrono Shift', amount = 0, type = 'REVIVE'}
  283.                     elseif target.name == 'Poppy' and string.find(object.charName,"DiplomaticImmunity_tar") ~= nil and GetDistance(myHero,object) > 20 then
  284.                             for i=1, objManager:GetMaxObjects(), 1 do
  285.                                     local diObject = objManager:GetObject(i)
  286.                                     if diObject ~= nil and string.find(diObject.charName,"DiplomaticImmunity_buf") ~= nil and GetDistance(target,diObject) <= 20 then return {status = 1, name = 'Diplomatic Immunity', amount = 0, type = 'ALL'} end
  287.                             end
  288.                     elseif target.name == 'Vladimir' and string.find(object.charName,"VladSanguinePool_buf") ~= nil and GetDistance(myHero,object) <= 20 then return {status = 1, name = 'Sanguine Pool', amount = 0, type = 'ALL'}
  289. --                                      elseif string.find(object.charName,"Summoner_Barrier") ~= nil and GetDistance(target,object) <= 20 then return 2--, 'NONE'
  290.                     elseif (string.find(object.charName,"Global_Spellimmunity") ~= nil or string.find(object.charName,"Morgana_Blackthorn_Blackshield") ~= nil) and GetDistance(target,object) <= 20 then
  291.                             local amount = 0
  292.                             for i= 1,objManager:GetMaxHeroes(),1 do
  293.                                     local hero=objManager:GetHero(i)
  294.                                     if hero.team == target.team and hero.name == 'Morgana' then
  295.                                             amount = 30+(65*hero.SpellLevelE)+(hero.ap*0.7)
  296.                                             return {status = 2, name = 'Black Shield', amount = amount, type = 'MAGIC'}
  297.                                     end
  298.                             end
  299.                     elseif string.find(object.charName,"bansheesveil_buf") ~= nil and GetDistance(target,object) <= 20 then return {status = 2, name = 'Banshees Veil', amount = 0, type = 'SPELL'}
  300.                     elseif target.name == 'Sivir' and string.find(object.charName,"Sivir_Base_E_shield") ~= nil and GetDistance(target,object) <= 20 then return {status = 2, name = 'Spell Shield', amount = 0, type = 'SPELL'}
  301.                     elseif target.name == 'Nocturne' and string.find(object.charName,"nocturne_shroudofDarkness_shield") ~= nil and GetDistance(target,object) <= 20 then return {status = 2, name = 'Shroud of Darkness', amount = 0, type = 'SPELL'}
  302.                     elseif target.name == 'Tryndamere' and string.find(object.charName,"UndyingRage_buf") ~= nil and GetDistance(target,object) <= 20 then return {status = 4, name = 'Undying Rage', amount = 0, type = 'NONE'}
  303.                     elseif string.find(object.charName,"rebirthready") ~= nil and GetDistance(target,object) <= 20 then return {status = 3, name = 'Guardian Angel', amount = 0, type = 'REVIVE'}
  304. --                                      elseif string.find(object.charName,"GLOBAL_Item_FoM_Shield") ~= nil and GetDistance(target,object) <= 30 then return 2--, 'NONE'
  305. --                                      elseif target.name == 'Nautilus' and string.find(object.charName,"Nautilus_W_shield_cas") ~= nil and GetDistance(target,object) <= 20 then return 2--, 'NONE'
  306.                     end
  307.             end
  308.     end
  309. end
  310. function IsInvulnerable(target)
  311.         if target ~= nil and target.dead == 0 then
  312.                 if target.invulnerable == 1 then return {status = 1, name = nil, amount = nil, type = nil}
  313.                 else
  314.                     StatusReturn=run_every(0.3,getStatus,target)
  315.                     if StatusReturn~=nil then
  316.                         return  StatusReturn
  317.                     end
  318.                 end
  319.         end
  320.         return {status = 0, name = nil, amount = nil, type = nil}
  321. end
  322. function run_every(interval, fn, ...)
  323.     return internal_run({fn=fn, interval=interval}, ...)
  324. end
  325.  
  326. function internal_run(t, ...)    
  327.     local fn = t.fn
  328.     local key = t.key or fn
  329.    
  330.     local now = os.clock()
  331.     local data = _registry[key]
  332.        
  333.     if data == nil or t.reset then
  334.         local args = {}
  335.         local n = select('#', ...)
  336.         local v
  337.         for i=1,n do
  338.             v = select(i, ...)
  339.             table.insert(args, v)
  340.         end  
  341.         -- the first t and args are stored in registry        
  342.         data = {count=0, last=0, complete=false, t=t, args=args}
  343.         _registry[key] = data
  344.     end
  345.        
  346.     --assert(data~=nil, 'data==nil')
  347.     --assert(data.count~=nil, 'data.count==nil')
  348.     --assert(now~=nil, 'now==nil')
  349.     --assert(data.t~=nil, 'data.t==nil')
  350.     --assert(data.t.start~=nil, 'data.t.start==nil')
  351.     --assert(data.last~=nil, 'data.last==nil')
  352.     -- run
  353.     local countCheck = (t.count==nil or data.count < t.count)
  354.     local startCheck = (data.t.start==nil or now >= data.t.start)
  355.     local intervalCheck = (t.interval==nil or now-data.last >= t.interval)
  356.     --print('', 'countCheck', tostring(countCheck))
  357.     --print('', 'startCheck', tostring(startCheck))
  358.     --print('', 'intervalCheck', tostring(intervalCheck))
  359.     --print('')
  360.     if not data.complete and countCheck and startCheck and intervalCheck then                
  361.         if t.count ~= nil then -- only increment count if count matters
  362.             data.count = data.count + 1
  363.         end
  364.         data.last = now        
  365.        
  366.         if t._while==nil and t._until==nil then
  367.             return fn(...)
  368.         else
  369.             -- while/until handling
  370.             local signal = t._until ~= nil
  371.             local checker = t._while or t._until
  372.             local result
  373.             if fn == checker then            
  374.                 result = fn(...)
  375.                 if result == signal then
  376.                     data.complete = true
  377.                 end
  378.                 return result
  379.             else
  380.                 result = checker(...)
  381.                 if result == signal then
  382.                     data.complete = true
  383.                 else
  384.                     return fn(...)
  385.                 end
  386.             end            
  387.         end
  388.     end    
  389. end
  390. function GetTeamSize()
  391.     return math.floor(objManager:GetMaxHeroes()/2)
  392. end
  393. function GetBestEnemy(damage_type, range, tag)
  394.     if tag == nil then tag = "BASIC" end
  395.     local QDMG=0
  396.     local WDMG=0
  397.     local EDMG=0
  398.     local RDMG=0
  399.     local ADMG=0
  400.     local enemy, prospect
  401.     for i=1,GetTeamSize() do    
  402.         prospect = GetWeakEnemy(damage_type, range, tag, i)
  403.         if prospect == nil then
  404.             -- pass        
  405.         else
  406.             if spellDmg[myHero.name] then
  407.                 if QRDY==1 and getDmg("Q",prospect,myHero)~=nil then
  408.                     QDMG=getDmg("Q",prospect,myHero)
  409.                 else
  410.                     QDMG=0
  411.                 end
  412.                 if WRDY==1 and getDmg("W",prospect,myHero)~=nil then
  413.                     WDMG=getDmg("W",prospect,myHero)
  414.                 else
  415.                     WDMG=0
  416.                 end
  417.                 if ERDY==1 and getDmg("E",prospect,myHero)~=nil then
  418.                     EDMG=getDmg("E",prospect,myHero)
  419.                 else
  420.                     EDMG=0
  421.                 end
  422.                 if RRDY==1 and getDmg("R",prospect,myHero)~=nil then
  423.                     RDMG=getDmg("R",prospect,myHero)
  424.                 else
  425.                     RDMG=0
  426.                 end
  427.                 if getDmg("AD",prospect,myHero)~=nil then
  428.                     ADMG=getDmg("AD",prospect,myHero)
  429.                 else
  430.                     ADMG=0
  431.                 end
  432.            
  433.             end
  434.            
  435.             local invul=IsInvulnerable(prospect).status
  436.             if invul==1 or (invul==4 and QDMG+WDMG+EDMG+RDMG+ADMG>prospect.health) then
  437.                 local msg = "*** target invulnerable, cycling ***"
  438.                 print(msg)
  439.                 DrawTextObject(msg,myHero,0xFFFF0000)
  440.             else
  441.                 enemy = prospect
  442.                 break -- <-------- *** important ***
  443.             end
  444.         end
  445.     end
  446.     -- we should return nil if everyone is invuln, same as the original api when no enemies are in range
  447.     --if target == nil then
  448.     --    target = GetWeakEnemy(damage_type, range, tag)
  449.     --end
  450.     return enemy
  451. end
  452. function mecStunULT(Value)
  453.     for i = 1, objManager:GetMaxHeroes()  do
  454.         local enemy = objManager:GetHero(i)
  455.         if (enemy ~= nil and enemy.team ~= myHero.team and enemy.visible == 1 and enemy.invulnerable == 0 and enemy.dead == 0) then
  456.             ultPos = GetMEC(400, 615, enemy)
  457.             if ultPos and GetDistance(ultPos) < 615 and CountUnit(ultPos,230) >= Value then
  458.                 if  myHero.SpellLevelR >= 1 and RRDY==1 and myHero.mana >= 100 then
  459.                     CastSpellXYZ('R', ultPos.x, 0, ultPos.z)
  460.                 end
  461.             end
  462.         end
  463.     end
  464. end
  465. function StunCheck()
  466.     for i = 1, objManager:GetMaxObjects(), 1 do
  467.         obj = objManager:GetObject(i)
  468.         if obj~=nil and target~=nil then
  469.                         if (obj.charName:find("StunReady")) and GetDistance(obj, myHero) < 100 then
  470.                 return true
  471.             end
  472.         end
  473.     end
  474. end
  475. function StunEvolution()
  476. if myHero.name =="Annie" and myHero.dead ==0 then
  477. if StunCheck() then
  478. PassiveStun=0
  479. if QRDY==0 then
  480. PassiveStun=PassiveStun+1
  481. end
  482. if WRDY==0 then
  483. PassiveStun=PassiveStun+1
  484. end
  485. if ERDY==0 then
  486. PassiveStun=PassiveStun+1
  487. end
  488. if RRDY==0 then
  489. PassiveStun=PassiveStun+1
  490. end
  491. end
  492. end
  493. end
  494. function CountUnit(Center,Radius)
  495.     local UnitCount = 0
  496.     for i = 1, objManager:GetMaxHeroes()  do
  497.         local enemy = objManager:GetHero(i)
  498.         if (enemy ~= nil and enemy.team ~= myHero.team and enemy.visible == 1 and enemy.invulnerable == 0 and enemy.dead == 0) then
  499.             if GetDistance(enemy,Center) < Radius then
  500.                 UnitCount = UnitCount + 1
  501.             end
  502.         end
  503.     end
  504.     return UnitCount
  505. end
  506. function CountEnemyHeroInRange(range, object)
  507.     object = object or myHero
  508.     range = range and range * range or myHero.range * myHero.range
  509.     local enemyInRange = 0
  510.     for i = 1, objManager:GetMaxHeroes() do
  511.         local hero = objManager:GetHero(i)
  512.         if (hero~=nil and hero.team~=myHero.team and hero.dead==0) and GetD(object, hero) <= range then
  513.             enemyInRange = enemyInRange + 1
  514.         end
  515.     end
  516.     return enemyInRange
  517. end
  518. function GetCD()
  519.     if myHero.SpellTimeQ > 1 and GetSpellLevel('Q') > 0 then
  520.         QRDY = 1
  521.         else QRDY = 0
  522.     end
  523.     if myHero.SpellTimeW > 1 and GetSpellLevel('W') > 0 then
  524.         WRDY = 1
  525.         else WRDY = 0
  526.     end
  527.     if myHero.SpellTimeE > 1 and GetSpellLevel('E') > 0 then
  528.         ERDY = 1
  529.         else ERDY = 0
  530.     end
  531.     if myHero.SpellTimeR > 1 and GetSpellLevel('R') > 0 then
  532.         RRDY = 1
  533.     else RRDY = 0 end
  534. end
  535.  
  536. SetTimerCallback("Main")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement