Advertisement
Cloudhax23

Untitled

Aug 17th, 2015
254
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 36.63 KB | None | 0 0
  1. require('Inspired')
  2.  
  3. DelayAction(function()
  4. if IWalkConfig == nil then
  5. iac = IAC(true)
  6. for _,k in pairs(iac.adcTable) do
  7. if k == myHeroName then
  8. PrintChat("<font color=\"#6699ff\"><b>[Inspireds Auto Carry]: Plugin '"..myHeroName.."' - </b></font> <font color=\"#FFFFFF\">Loaded.</font>")
  9. end
  10. end
  11. end
  12. end, 100)
  13.  
  14. function PredCast(spell, target, speed, delay, range, width, coll)
  15. local Pred = GetPredictionForPlayer(GetMyHeroPos(),target,GetMoveSpeed(target), speed, delay, range, width, coll, true)
  16. if Pred.HitChance >= 1 then
  17. CastSkillShot(spell, Pred.PredPos.x, Pred.PredPos.y, Pred.PredPos.z)
  18. end
  19. end
  20.  
  21. class 'IAC' -- {
  22.  
  23. function IAC:__init(bool)
  24. IWalkTarget = nil
  25. myHero = GetMyHero()
  26. myHeroName = GetObjectName(myHero)
  27. waitTickCount = 0
  28. IWalkConfig = scriptConfig("IAC", "Inspired's Auto Carry")
  29. self.move = true
  30. self.aa = true
  31. self.orbTable = { lastAA = 0, windUp = 13.37, animation = 13.37 }
  32. self.AATable = {}
  33. self.aaResetTable = { ["Diana"] = {_E}, ["Darius"] = {_W}, ["Garen"] = {_Q}, ["Hecarim"] = {_Q}, ["Jax"] = {_W}, ["Jayce"] = {_W}, ["Rengar"] = {_Q}, ["Riven"] = {_W}, ["Sivir"] = {_W}, ["Talon"] = {_Q} }
  34. self.aaResetTable2 = { ["Ashe"] = {_W}, ["Diana"] = {_Q}, ["Graves"] = {_Q}, ["Lucian"] = {_W}, ["Quinn"] = {_Q}, ["Riven"] = {_Q}, ["Talon"] = {_W}, ["Yasuo"] = {_Q} }
  35. self.aaResetTable3 = { ["Jax"] = {_Q}, ["Lucian"] = {_Q}, ["Quinn"] = {_E}, ["Teemo"] = {_Q}, ["Tristana"] = {_E} }
  36. self.aaResetTable4 = { ["Graves"] = {_E}, ["Lucian"] = {_E}, ["Vayne"] = {_Q} }
  37. self.isAAaswellTable = { ["Quinn"] = "QuinnWEnhanced" }
  38. self.adcTable = {"Ashe", "Caitlyn", "Corki", "Draven", "Ezreal", "Graves", "Jinx", "Kalista", "KogMaw", "Lucian", "MissFortune", "Quinn", "Sivir", "Teemo", "Tristana", "Twitch", "Varus", "Vayne"}
  39. self.projectilespeeds = {["Velkoz"]= 2000,["TeemoMushroom"] = math.huge,["TestCubeRender"] = math.huge ,["Xerath"] = 2000.0000 ,["Kassadin"] = math.huge ,["Rengar"] = math.huge ,["Thresh"] = 1000.0000 ,["Ziggs"] = 1500.0000 ,["ZyraPassive"] = 1500.0000 ,["ZyraThornPlant"] = 1500.0000 ,["KogMaw"] = 1800.0000 ,["HeimerTBlue"] = 1599.3999 ,["EliseSpider"] = 500.0000 ,["Skarner"] = 500.0000 ,["ChaosNexus"] = 500.0000 ,["Katarina"] = 467.0000 ,["Riven"] = 347.79999 ,["SightWard"] = 347.79999 ,["HeimerTYellow"] = 1599.3999 ,["Ashe"] = 2000.0000 ,["VisionWard"] = 2000.0000 ,["TT_NGolem2"] = math.huge ,["ThreshLantern"] = math.huge ,["TT_Spiderboss"] = math.huge ,["OrderNexus"] = math.huge ,["Soraka"] = 1000.0000 ,["Jinx"] = 2750.0000 ,["TestCubeRenderwCollision"] = 2750.0000 ,["Red_Minion_Wizard"] = 650.0000 ,["JarvanIV"] = 20.0000 ,["Blue_Minion_Wizard"] = 650.0000 ,["TT_ChaosTurret2"] = 1200.0000 ,["TT_ChaosTurret3"] = 1200.0000 ,["TT_ChaosTurret1"] = 1200.0000 ,["ChaosTurretGiant"] = 1200.0000 ,["Dragon"] = 1200.0000 ,["LuluSnowman"] = 1200.0000 ,["Worm"] = 1200.0000 ,["ChaosTurretWorm"] = 1200.0000 ,["TT_ChaosInhibitor"] = 1200.0000 ,["ChaosTurretNormal"] = 1200.0000 ,["AncientGolem"] = 500.0000 ,["ZyraGraspingPlant"] = 500.0000 ,["HA_AP_OrderTurret3"] = 1200.0000 ,["HA_AP_OrderTurret2"] = 1200.0000 ,["Tryndamere"] = 347.79999 ,["OrderTurretNormal2"] = 1200.0000 ,["Singed"] = 700.0000 ,["OrderInhibitor"] = 700.0000 ,["Diana"] = 347.79999 ,["HA_FB_HealthRelic"] = 347.79999 ,["TT_OrderInhibitor"] = 347.79999 ,["GreatWraith"] = 750.0000 ,["Yasuo"] = 347.79999 ,["OrderTurretDragon"] = 1200.0000 ,["OrderTurretNormal"] = 1200.0000 ,["LizardElder"] = 500.0000 ,["HA_AP_ChaosTurret"] = 1200.0000 ,["Ahri"] = 1750.0000 ,["Lulu"] = 1450.0000 ,["ChaosInhibitor"] = 1450.0000 ,["HA_AP_ChaosTurret3"] = 1200.0000 ,["HA_AP_ChaosTurret2"] = 1200.0000 ,["ChaosTurretWorm2"] = 1200.0000 ,["TT_OrderTurret1"] = 1200.0000 ,["TT_OrderTurret2"] = 1200.0000 ,["TT_OrderTurret3"] = 1200.0000 ,["LuluFaerie"] = 1200.0000 ,["HA_AP_OrderTurret"] = 1200.0000 ,["OrderTurretAngel"] = 1200.0000 ,["YellowTrinketUpgrade"] = 1200.0000 ,["MasterYi"] = math.huge ,["Lissandra"] = 2000.0000 ,["ARAMOrderTurretNexus"] = 1200.0000 ,["Draven"] = 1700.0000 ,["FiddleSticks"] = 1750.0000 ,["SmallGolem"] = math.huge ,["ARAMOrderTurretFront"] = 1200.0000 ,["ChaosTurretTutorial"] = 1200.0000 ,["NasusUlt"] = 1200.0000 ,["Maokai"] = math.huge ,["Wraith"] = 750.0000 ,["Wolf"] = math.huge ,["Sivir"] = 1750.0000 ,["Corki"] = 2000.0000 ,["Janna"] = 1200.0000 ,["Nasus"] = math.huge ,["Golem"] = math.huge ,["ARAMChaosTurretFront"] = 1200.0000 ,["ARAMOrderTurretInhib"] = 1200.0000 ,["LeeSin"] = math.huge ,["HA_AP_ChaosTurretTutorial"] = 1200.0000 ,["GiantWolf"] = math.huge ,["HA_AP_OrderTurretTutorial"] = 1200.0000 ,["YoungLizard"] = 750.0000 ,["Jax"] = 400.0000 ,["LesserWraith"] = math.huge ,["Blitzcrank"] = math.huge ,["ARAMChaosTurretInhib"] = 1200.0000 ,["Shen"] = 400.0000 ,["Nocturne"] = math.huge ,["Sona"] = 1500.0000 ,["ARAMChaosTurretNexus"] = 1200.0000 ,["YellowTrinket"] = 1200.0000 ,["OrderTurretTutorial"] = 1200.0000 ,["Caitlyn"] = 2500.0000 ,["Trundle"] = 347.79999 ,["Malphite"] = 1000.0000 ,["Mordekaiser"] = math.huge ,["ZyraSeed"] = math.huge ,["Vi"] = 1000.0000 ,["Tutorial_Red_Minion_Wizard"] = 650.0000 ,["Renekton"] = math.huge ,["Anivia"] = 1400.0000 ,["Fizz"] = math.huge ,["Heimerdinger"] = 1500.0000 ,["Evelynn"] = 467.0000 ,["Rumble"] = 347.79999 ,["Leblanc"] = 1700.0000 ,["Darius"] = math.huge ,["OlafAxe"] = math.huge ,["Viktor"] = 2300.0000 ,["XinZhao"] = 20.0000 ,["Orianna"] = 1450.0000 ,["Vladimir"] = 1400.0000 ,["Nidalee"] = 1750.0000 ,["Tutorial_Red_Minion_Basic"] = math.huge ,["ZedShadow"] = 467.0000 ,["Syndra"] = 1800.0000 ,["Zac"] = 1000.0000 ,["Olaf"] = 347.79999 ,["Veigar"] = 1100.0000 ,["Twitch"] = 2500.0000 ,["Alistar"] = math.huge ,["Akali"] = 467.0000 ,["Urgot"] = 1300.0000 ,["Leona"] = 347.79999 ,["Talon"] = math.huge ,["Karma"] = 1500.0000 ,["Jayce"] = 347.79999 ,["Galio"] = 1000.0000 ,["Shaco"] = math.huge ,["Taric"] = math.huge ,["TwistedFate"] = 1500.0000 ,["Varus"] = 2000.0000 ,["Garen"] = 347.79999 ,["Swain"] = 1600.0000 ,["Vayne"] = 2000.0000 ,["Fiora"] = 467.0000 ,["Quinn"] = 2000.0000 ,["Kayle"] = math.huge ,["Blue_Minion_Basic"] = math.huge ,["Brand"] = 2000.0000 ,["Teemo"] = 1300.0000 ,["Amumu"] = 500.0000 ,["Annie"] = 1200.0000 ,["Odin_Blue_Minion_caster"] = 1200.0000 ,["Elise"] = 1600.0000 ,["Nami"] = 1500.0000 ,["Poppy"] = 500.0000 ,["AniviaEgg"] = 500.0000 ,["Tristana"] = 2250.0000 ,["Graves"] = 3000.0000 ,["Morgana"] = 1600.0000 ,["Gragas"] = math.huge ,["MissFortune"] = 2000.0000 ,["Warwick"] = math.huge ,["Cassiopeia"] = 1200.0000 ,["Tutorial_Blue_Minion_Wizard"] = 650.0000 ,["DrMundo"] = math.huge ,["Volibear"] = 467.0000 ,["Irelia"] = 467.0000 ,["Odin_Red_Minion_Caster"] = 650.0000 ,["Lucian"] = 2800.0000 ,["Yorick"] = math.huge ,["RammusPB"] = math.huge ,["Red_Minion_Basic"] = math.huge ,["Udyr"] = 467.0000 ,["MonkeyKing"] = 20.0000 ,["Tutorial_Blue_Minion_Basic"] = math.huge ,["Kennen"] = 1600.0000 ,["Nunu"] = 500.0000 ,["Ryze"] = 2400.0000 ,["Zed"] = 467.0000 ,["Nautilus"] = 1000.0000 ,["Gangplank"] = 1000.0000 ,["Lux"] = 1600.0000 ,["Sejuani"] = 500.0000 ,["Ezreal"] = 2000.0000 ,["OdinNeutralGuardian"] = 1800.0000 ,["Khazix"] = 500.0000 ,["Sion"] = math.huge ,["Aatrox"] = 347.79999 ,["Hecarim"] = 500.0000 ,["Pantheon"] = 20.0000 ,["Shyvana"] = 467.0000 ,["Zyra"] = 1700.0000 ,["Karthus"] = 1200.0000 ,["Rammus"] = math.huge ,["Zilean"] = 1200.0000 ,["Chogath"] = 500.0000 ,["Malzahar"] = 2000.0000 ,["YorickRavenousGhoul"] = 347.79999 ,["YorickSpectralGhoul"] = 347.79999 ,["JinxMine"] = 347.79999 ,["YorickDecayedGhoul"] = 347.79999 ,["XerathArcaneBarrageLauncher"] = 347.79999 ,["Odin_SOG_Order_Crystal"] = 347.79999 ,["TestCube"] = 347.79999 ,["ShyvanaDragon"] = math.huge ,["FizzBait"] = math.huge ,["Blue_Minion_MechMelee"] = math.huge ,["OdinQuestBuff"] = math.huge ,["TT_Buffplat_L"] = math.huge ,["TT_Buffplat_R"] = math.huge ,["KogMawDead"] = math.huge ,["TempMovableChar"] = math.huge ,["Lizard"] = 500.0000 ,["GolemOdin"] = math.huge ,["OdinOpeningBarrier"] = math.huge ,["TT_ChaosTurret4"] = 500.0000 ,["TT_Flytrap_A"] = 500.0000 ,["TT_NWolf"] = math.huge ,["OdinShieldRelic"] = math.huge ,["LuluSquill"] = math.huge ,["redDragon"] = math.huge ,["MonkeyKingClone"] = math.huge ,["Odin_skeleton"] = math.huge ,["OdinChaosTurretShrine"] = 500.0000 ,["Cassiopeia_Death"] = 500.0000 ,["OdinCenterRelic"] = 500.0000 ,["OdinRedSuperminion"] = math.huge ,["JarvanIVWall"] = math.huge ,["ARAMOrderNexus"] = math.huge ,["Red_Minion_MechCannon"] = 1200.0000 ,["OdinBlueSuperminion"] = math.huge ,["SyndraOrbs"] = math.huge ,["LuluKitty"] = math.huge ,["SwainNoBird"] = math.huge ,["LuluLadybug"] = math.huge ,["CaitlynTrap"] = math.huge ,["TT_Shroom_A"] = math.huge ,["ARAMChaosTurretShrine"] = 500.0000 ,["Odin_Windmill_Propellers"] = 500.0000 ,["TT_NWolf2"] = math.huge ,["OdinMinionGraveyardPortal"] = math.huge ,["SwainBeam"] = math.huge ,["Summoner_Rider_Order"] = math.huge ,["TT_Relic"] = math.huge ,["odin_lifts_crystal"] = math.huge ,["OdinOrderTurretShrine"] = 500.0000 ,["SpellBook1"] = 500.0000 ,["Blue_Minion_MechCannon"] = 1200.0000 ,["TT_ChaosInhibitor_D"] = 1200.0000 ,["Odin_SoG_Chaos"] = 1200.0000 ,["TrundleWall"] = 1200.0000 ,["HA_AP_HealthRelic"] = 1200.0000 ,["OrderTurretShrine"] = 500.0000 ,["OriannaBall"] = 500.0000 ,["ChaosTurretShrine"] = 500.0000 ,["LuluCupcake"] = 500.0000 ,["HA_AP_ChaosTurretShrine"] = 500.0000 ,["TT_NWraith2"] = 750.0000 ,["TT_Tree_A"] = 750.0000 ,["SummonerBeacon"] = 750.0000 ,["Odin_Drill"] = 750.0000 ,["TT_NGolem"] = math.huge ,["AramSpeedShrine"] = math.huge ,["OriannaNoBall"] = math.huge ,["Odin_Minecart"] = math.huge ,["Summoner_Rider_Chaos"] = math.huge ,["OdinSpeedShrine"] = math.huge ,["TT_SpeedShrine"] = math.huge ,["odin_lifts_buckets"] = math.huge ,["OdinRockSaw"] = math.huge ,["OdinMinionSpawnPortal"] = math.huge ,["SyndraSphere"] = math.huge ,["Red_Minion_MechMelee"] = math.huge ,["SwainRaven"] = math.huge ,["crystal_platform"] = math.huge ,["MaokaiSproutling"] = math.huge ,["Urf"] = math.huge ,["TestCubeRender10Vision"] = math.huge ,["MalzaharVoidling"] = 500.0000 ,["GhostWard"] = 500.0000 ,["MonkeyKingFlying"] = 500.0000 ,["LuluPig"] = 500.0000 ,["AniviaIceBlock"] = 500.0000 ,["TT_OrderInhibitor_D"] = 500.0000 ,["Odin_SoG_Order"] = 500.0000 ,["RammusDBC"] = 500.0000 ,["FizzShark"] = 500.0000 ,["LuluDragon"] = 500.0000 ,["OdinTestCubeRender"] = 500.0000 ,["TT_Tree1"] = 500.0000 ,["ARAMOrderTurretShrine"] = 500.0000 ,["Odin_Windmill_Gears"] = 500.0000 ,["ARAMChaosNexus"] = 500.0000 ,["TT_NWraith"] = 750.0000 ,["TT_OrderTurret4"] = 500.0000 ,["Odin_SOG_Chaos_Crystal"] = 500.0000 ,["OdinQuestIndicator"] = 500.0000 ,["JarvanIVStandard"] = 500.0000 ,["TT_DummyPusher"] = 500.0000 ,["OdinClaw"] = 500.0000 ,["EliseSpiderling"] = 2000.0000 ,["QuinnValor"] = math.huge ,["UdyrTigerUlt"] = math.huge ,["UdyrTurtleUlt"] = math.huge ,["UdyrUlt"] = math.huge ,["UdyrPhoenixUlt"] = math.huge ,["ShacoBox"] = 1500.0000 ,["HA_AP_Poro"] = 1500.0000 ,["AnnieTibbers"] = math.huge ,["UdyrPhoenix"] = math.huge ,["UdyrTurtle"] = math.huge ,["UdyrTiger"] = math.huge ,["HA_AP_OrderShrineTurret"] = 500.0000 ,["HA_AP_Chains_Long"] = 500.0000 ,["HA_AP_BridgeLaneStatue"] = 500.0000 ,["HA_AP_ChaosTurretRubble"] = 500.0000 ,["HA_AP_PoroSpawner"] = 500.0000 ,["HA_AP_Cutaway"] = 500.0000 ,["HA_AP_Chains"] = 500.0000 ,["ChaosInhibitor_D"] = 500.0000 ,["ZacRebirthBloblet"] = 500.0000 ,["OrderInhibitor_D"] = 500.0000 ,["Nidalee_Spear"] = 500.0000 ,["Nidalee_Cougar"] = 500.0000 ,["TT_Buffplat_Chain"] = 500.0000 ,["WriggleLantern"] = 500.0000 ,["TwistedLizardElder"] = 500.0000 ,["RabidWolf"] = math.huge ,["HeimerTGreen"] = 1599.3999 ,["HeimerTRed"] = 1599.3999 ,["ViktorFF"] = 1599.3999 ,["TwistedGolem"] = math.huge ,["TwistedSmallWolf"] = math.huge ,["TwistedGiantWolf"] = math.huge ,["TwistedTinyWraith"] = 750.0000 ,["TwistedBlueWraith"] = 750.0000 ,["TwistedYoungLizard"] = 750.0000 ,["Red_Minion_Melee"] = math.huge ,["Blue_Minion_Melee"] = math.huge ,["Blue_Minion_Healer"] = 1000.0000 ,["Ghast"] = 750.0000 ,["blueDragon"] = 800.0000 ,["Red_Minion_MechRange"] = 3000, ["SRU_OrderMinionRanged"] = 650, ["SRU_ChaosMinionRanged"] = 650, ["SRU_OrderMinionSiege"] = 1200, ["SRU_ChaosMinionSiege"] = 1200, ["SRUAP_Turret_Chaos1"] = 1200, ["SRUAP_Turret_Chaos2"] = 1200, ["SRUAP_Turret_Chaos3"] = 1200, ["SRUAP_Turret_Order1"] = 1200, ["SRUAP_Turret_Order2"] = 1200, ["SRUAP_Turret_Order3"] = 1200, ["SRUAP_Turret_Chaos4"] = 1200, ["SRUAP_Turret_Chaos5"] = 500, ["SRUAP_Turret_Order4"] = 1200, ["SRUAP_Turret_Order5"] = 500 }
  40. self.gapcloserTable = {
  41. ["Akali"] = _R, ["Elise"] = _Q, ["Elise"] = _E, ["Fiora"] = _Q, ["Fizz"] = _Q,
  42. ["Graves"] = _E, ["Irelia"] = _Q, ["JarvanIV"] = _Q, ["Jax"] = _Q, ["Kennen"] = _E,
  43. ["KhaZix"] = _E, ["Lucian"] = _E, ["MasterYi"] = _Q, ["MonkeyKing"] = _E, ["Pantheon"] = _W,
  44. ["Poppy"] = _E, ["RekSai"] = _E, ["Renekton"] = _E, ["Riven"] = _E, ["Sejuani"] = _Q,
  45. ["Shen"] = _E, ["Talon"] = _E, ["Udyr"] = _E, ["Volibear"] = _Q, ["XinZhao"] = _E
  46. }
  47. self.myRange = GetRange(myHero)+GetHitBox(myHero)*2
  48. self:Load(bool)
  49. OnProcessSpell(function(unit, spell) self:ProcessSpell(unit, spell) end)
  50. return self
  51. end
  52.  
  53. function IAC:Load(bool)
  54. DelayAction(function() -- my OnLoad
  55. if not bool then self:OverwriteIACPlugins() end
  56. self:MakeMenu()
  57. OnLoop(function() self:OnLoop() end)
  58. end, 0)
  59. end
  60.  
  61. function IAC:OnLoop()
  62. if IWalkConfig.D then self:DmgCalc() end
  63. if waitTickCount > GetTickCount() then return end
  64. self:DoChampionPlugins2()
  65. self:IWalk()
  66. self:IWalkJ()
  67. end
  68.  
  69. function IAC:DmgCalc()
  70. for _,unit in pairs(GetEnemyHeroes()) do
  71. if ValidTarget(unit) then
  72. local hPos = GetHPBarPos(unit)
  73. DrawText(self:PossibleDmg(unit), 15, hPos.x, hPos.y+20, 0xffffffff)
  74. end
  75. end
  76. end
  77.  
  78. function IAC:PossibleDmg(unit)
  79. local addDamage = GetBonusDmg(myHero)
  80. local TotalDmg = (GetBonusDmg(myHero)+GetBaseDamage(myHero))*(((IWalkConfig.R and (GetCastName(myHero, _R) ~= "RivenFengShuiEngine" or CanUseSpell(myHero, _R)))) and 1.2 or 1)
  81. local dmg = 0
  82. local cthp = GetCurrentHP(unit)
  83. local mthp = GetMaxHP(unit)
  84. if myHeroName == "Riven" then
  85. local dmg = 0
  86. local mlevel = GetLevel(myHero)
  87. local pdmg = CalcDamage(myHero, unit, 5+math.max(5*math.floor((mlevel+2)/3)+10,10*math.floor((mlevel+2)/3)-15)*TotalDmg/100)
  88. if CanUseSpell(myHero, _Q) == READY then
  89. local level = GetCastLevel(myHero, _Q)
  90. dmg = dmg + CalcDamage(myHero, unit, 20*level+(0.35+0.05*level)*TotalDmg-10)*3+CalcDamage(myHero, unit, TotalDmg)*3+pdmg*3
  91. end
  92. if CanUseSpell(myHero, _W) == READY then
  93. local level = GetCastLevel(myHero, _W)
  94. dmg = dmg + CalcDamage(myHero, unit, 20+30*level+TotalDmg)+CalcDamage(myHero, unit, TotalDmg)+pdmg
  95. end
  96. if (CanUseSpell(myHero, _R) == READY or GetCastName(myHero, _R) ~= "RivenFengShuiEngine") and IWalkConfig.R then
  97. local level = GetCastLevel(myHero, _R)
  98. local rdmg = CalcDamage(myHero, unit, (40+40*level+0.6*addDamage)*(math.min(3,math.max(1,4*(mthp-cthp)/mthp))))
  99. if rdmg > cthp and ValidTarget(unit, 800) and GetCastName(myHero, _R) ~= "RivenFengShuiEngine" and IWalkConfig.Combo then
  100. local unitPos = GetOrigin(unit)
  101. CastSkillShot(_R, unitPos.x, unitPos.y, unitPos.z)
  102. end
  103. cthp = cthp - dmg
  104. rdmg = CalcDamage(myHero, unit, (40+40*level+0.6*addDamage)*(math.min(3,math.max(1,4*(mthp-cthp)/mthp))))
  105. dmg = dmg + rdmg
  106. end
  107. return dmg > cthp and "Killable" or math.floor(100*dmg/cthp).."% Dmg"
  108. else
  109. dmg = CalcDamage(myHero, unit, TotalDmg)
  110. return math.ceil(cthp/dmg).." AA"
  111. end
  112. end
  113.  
  114. function IAC:IWalk()
  115. if IWalkConfig.LastHit or IWalkConfig.LaneClear or IWalkConfig.Harass then
  116. for _,k in pairs(GetAllMinions(MINION_ENEMY)) do
  117. local targetPos = GetOrigin(k)
  118. local drawPos = WorldToScreen(1,targetPos.x,targetPos.y,targetPos.z)
  119. local hp = self:PredictHealth(k, self.orbTable.windUp + GetDistance(k)/self:GetProjectileSpeed(myHero) - 0.07)
  120. local dmg = CalcDamage(myHero, k, GetBonusDmg(myHero)+GetBaseDamage(myHero))
  121. if dmg > hp then
  122. if (IWalkConfig.LastHit or IWalkConfig.LaneClear or IWalkConfig.Harass) and IsInDistance(k, self.myRange) and GetTickCount() > self.orbTable.lastAA + self.orbTable.animation then
  123. AttackUnit(k)
  124. return
  125. end
  126. end
  127. end
  128. end
  129. if IWalkConfig.Combo or IWalkConfig.Harass or IWalkConfig.LastHit or IWalkConfig.LaneClear then
  130. self:DoWalk()
  131. end
  132. end
  133.  
  134. function IAC:DoWalk()
  135. self.myRange = GetRange(myHero)+GetHitBox(myHero)+(IWalkTarget and GetHitBox(IWalkTarget) or GetHitBox(myHero))
  136. if IWalkConfig.C then Circle(myHero,self.myRange):draw() end
  137. local addRange = ((self.gapcloserTable[myHeroName] and CanUseSpell(myHero, gapcloserTable[myHeroName]) == READY) and 250 or 0) + (GetObjectName(myHero) == "Jinx" and (GetCastLevel(myHero, _Q)*25+50) or 0)
  138. IWalkTarget = GetTarget(self.myRange + addRange, DAMAGE_PHYSICAL)
  139. if IWalkConfig.LaneClear then
  140. IWalkTarget = GetHighestMinion(GetOrigin(myHero), self.myRange, MINION_ENEMY)
  141. end
  142. local unit = IWalkTarget
  143. if (IWalkConfig.S or IWalkConfig.Combo) and ValidTarget(unit) then self:DoChampionPlugins(unit) end
  144. if ValidTarget(unit, self.myRange) and GetTickCount() > self.orbTable.lastAA + self.orbTable.animation and self.aa then
  145. AttackUnit(unit)
  146. elseif GetTickCount() > self.orbTable.lastAA + self.orbTable.windUp and self.move then
  147. if GetRange(myHero) < 450 and unit and GetObjectType(unit) == GetObjectType(myHero) and ValidTarget(unit, self.myRange) then
  148. local unitPos = GetOrigin(unit)
  149. if GetDistance(unit) > self.myRange/2 then
  150. MoveToXYZ(unitPos.x, unitPos.y, unitPos.z)
  151. end
  152. else
  153. if IWalkConfig.Combo and self.gapcloserTable[myHeroName] and ValidTarget(unit, self.myRange + 250) and IWalkConfig[str[self.gapcloserTable[myHeroName]].."g"] and CanUseSpell(myHero, gapcloserTable[myHeroName]) == READY then
  154. local unitPos = GetOrigin(unit)
  155. CastSkillShot(self.gapcloserTable[myHeroName], unitPos.x, unitPos.y, unitPos.z)
  156. if myHeroName == "Riven" and IWalkConfig["W"] and CanUseSpell(myHero, _W) == READY then
  157. if self:PossibleDmg(unit):find("Killable") and IWalkConfig.R then
  158. DelayAction(function() CastTargetSpell(myHero, _R) end, 137)
  159. else
  160. DelayAction(function() CastTargetSpell(myHero, _W) end, 137)
  161. end
  162. self.orbTable.lastAA = 0
  163. end
  164. else
  165. self:Move()
  166. end
  167. end
  168. end
  169. end
  170. function IAC:IWalkJ()
  171. if IWalkConfig.LastHit or IWalkConfig.JungleClear or IWalkConfig.Harass then
  172. for _,k in pairs(GetAllMinions(MINION_JUNGLE)) do
  173. local targetPos = GetOrigin(k)
  174. local drawPos = WorldToScreen(1,targetPos.x,targetPos.y,targetPos.z)
  175. local hp = self:PredictHealth(k, self.orbTable.windUp + GetDistance(k)/self:GetProjectileSpeed(myHero) - 0.07)
  176. local dmg = CalcDamage(myHero, k, GetBonusDmg(myHero)+GetBaseDamage(myHero))
  177. if dmg > hp then
  178. if (IWalkConfig.LastHit or IWalkConfig.JungleClear or IWalkConfig.Harass) and IsInDistance(k, self.myRange) and GetTickCount() > self.orbTable.lastAA + self.orbTable.animation then
  179. AttackUnit(k)
  180. return
  181. end
  182. end
  183. end
  184. end
  185. if IWalkConfig.Combo or IWalkConfig.Harass or IWalkConfig.LastHit or IWalkConfig.JungleClear then
  186. self:DoWalkJ()
  187. end
  188. end
  189.  
  190. function IAC:DoWalkJ()
  191. self.myRange = GetRange(myHero)+GetHitBox(myHero)+(IWalkTarget and GetHitBox(IWalkTarget) or GetHitBox(myHero))
  192. if IWalkConfig.C then Circle(myHero,self.myRange):draw() end
  193. local addRange = ((self.gapcloserTable[myHeroName] and CanUseSpell(myHero, gapcloserTable[myHeroName]) == READY) and 250 or 0) + (GetObjectName(myHero) == "Jinx" and (GetCastLevel(myHero, _Q)*25+50) or 0)
  194. IWalkTarget = GetTarget(self.myRange + addRange, DAMAGE_PHYSICAL)
  195. if IWalkConfig.JungleClear then
  196. IWalkTarget = GetHighestMinion(GetOrigin(myHero), self.myRange, MINION_JUNGLE)
  197. end
  198. local unit = IWalkTarget
  199. if (IWalkConfig.S or IWalkConfig.Combo) and ValidTarget(unit) then self:DoChampionPlugins(unit) end
  200. if ValidTarget(unit, self.myRange) and GetTickCount() > self.orbTable.lastAA + self.orbTable.animation and self.aa then
  201. AttackUnit(unit)
  202. elseif GetTickCount() > self.orbTable.lastAA + self.orbTable.windUp and self.move then
  203. if GetRange(myHero) < 450 and unit and GetObjectType(unit) == GetObjectType(myHero) and ValidTarget(unit, self.myRange) then
  204. local unitPos = GetOrigin(unit)
  205. if GetDistance(unit) > self.myRange/2 then
  206. MoveToXYZ(unitPos.x, unitPos.y, unitPos.z)
  207. end
  208. else
  209. if IWalkConfig.Combo and self.gapcloserTable[myHeroName] and ValidTarget(unit, self.myRange + 250) and IWalkConfig[str[self.gapcloserTable[myHeroName]].."g"] and CanUseSpell(myHero, gapcloserTable[myHeroName]) == READY then
  210. local unitPos = GetOrigin(unit)
  211. CastSkillShot(self.gapcloserTable[myHeroName], unitPos.x, unitPos.y, unitPos.z)
  212. if myHeroName == "Riven" and IWalkConfig["W"] and CanUseSpell(myHero, _W) == READY then
  213. if self:PossibleDmg(unit):find("Killable") and IWalkConfig.R then
  214. DelayAction(function() CastTargetSpell(myHero, _R) end, 137)
  215. else
  216. DelayAction(function() CastTargetSpell(myHero, _W) end, 137)
  217. end
  218. self.orbTable.lastAA = 0
  219. end
  220. else
  221. self:Move()
  222. end
  223. end
  224. end
  225. end
  226.  
  227. function IAC:Move()
  228. local movePos = GenerateMovePos()
  229. if GetDistance(GetMousePos()) > GetHitBox(myHero) then
  230. MoveToXYZ(movePos.x, GetMyHeroPos().y, movePos.z)
  231. end
  232. end
  233.  
  234. function IAC:GetIWalkTarget()
  235. return IWalkTarget
  236. end
  237.  
  238. function IAC:ProcessSpell(unit, spell)
  239. if unit and spell and spell.name then
  240. if unit == myHero then
  241. if (spell.name:lower():find("attack") or (self.isAAaswellTable[myHeroName] and self.isAAaswellTable[myHeroName] == spell.name)) then
  242. self.orbTable.lastAA = GetTickCount() + GetLatency()
  243. self.orbTable.windUp = myHeroName == "Kalista" and 0 or spell.windUpTime * 1000
  244. self.orbTable.animation = GetAttackSpeed(GetMyHero()) < 2.25 and spell.animationTime * 1000 or 1000 / GetAttackSpeed(GetMyHero())
  245. DelayAction(function()
  246. if (IWalkConfig.S or IWalkConfig.Combo) and ValidTarget(IWalkTarget, self.myRange) then
  247. self:WindUp(IWalkTarget)
  248. end
  249. end, spell.windUpTime * 1000 + GetLatency())
  250. elseif spell.name:lower():find("katarinar") then
  251. waitTickCount = GetTickCount() + 2500
  252. end
  253. end
  254. if spell.target and spell.name:lower():find("attack") and GetObjectType(spell.target) == Obj_AI_Minion then
  255. local timer = 1000*GetDistance(spell.target,unit)/self:GetProjectileSpeed(unit)
  256. local target = spell.target
  257. if not self.AATable[GetNetworkID(target)] then self.AATable[GetNetworkID(target)] = {} end
  258. self.AATable[GetNetworkID(target)][timer] = {source = unit, dmg = CalcDamage(unit, spell.target, GetBonusDmg(unit)+GetBaseDamage(unit)), time = GetTickCount() + timer}
  259. DelayAction(function() self.AATable[GetNetworkID(target)][timer] = nil end, timer)
  260. end
  261. end
  262. end
  263.  
  264. function IAC:GetProjectileSpeed(unit)
  265. return self.projectilespeeds[GetObjectName(unit)] and self.projectilespeeds[GetObjectName(unit)] or math.huge
  266. end
  267.  
  268. function IAC:PredictHealth(unit, time)
  269. if self.AATable[GetNetworkID(unit)] then
  270. local preds = self.AATable[GetNetworkID(unit)]
  271. local health = GetCurrentHP(unit)
  272. if preds then
  273. for _, k in pairs(preds) do
  274. if not k.source.dead and k.time < GetTickCount() + time then
  275. health = health - k.dmg
  276. end
  277. end
  278. end
  279. return health
  280. else
  281. return GetCurrentHP(unit)
  282. end
  283. end
  284.  
  285. function IAC:WindUp(unit)
  286. local str = {[_Q] = "Q", [_W] = "W", [_E] = "E", [_R] = "R"}
  287. if self.aaResetTable4[myHeroName] then
  288. for _,k in pairs(self.aaResetTable4[myHeroName]) do
  289. if CanUseSpell(myHero, k) == READY and IWalkConfig[str[k]] then
  290. self.orbTable.lastAA = 0
  291. local movePos = GenerateMovePos()
  292. CastSkillShot(k, movePos.x, movePos.y, movePos.z)
  293. return true
  294. end
  295. end
  296. end
  297. if self.aaResetTable[myHeroName] then
  298. for _,k in pairs(self.aaResetTable[myHeroName]) do
  299. if CanUseSpell(myHero, k) == READY and IWalkConfig[str[k]] and GetDistanceSqr(GetOrigin(unit)) < self.myRange * self.myRange then
  300. self.orbTable.lastAA = 0
  301. CastSpell(k)
  302. return true
  303. end
  304. end
  305. end
  306. if self.aaResetTable2[myHeroName] then
  307. for _,k in pairs(self.aaResetTable2[myHeroName]) do
  308. if CanUseSpell(myHero, k) == READY and IWalkConfig[str[k]] and GetDistanceSqr(GetOrigin(unit)) < self.myRange * self.myRange and (not myHeroName == "Quinn" or CanUseSpell(myHero, _E) ~= READY) then
  309. local unitPos = GetOrigin(unit)
  310. CastSkillShot(k, unitPos.x, unitPos.y, unitPos.z)
  311. if myHeroName == "Riven" then
  312. local unitPos = GetOrigin(unit)
  313. MoveToXYZ(unitPos.x, unitPos.y, unitPos.z)
  314. end
  315. self.orbTable.lastAA = 0
  316. return true
  317. end
  318. end
  319. end
  320. if self.aaResetTable3[myHeroName] then
  321. for _,k in pairs(self.aaResetTable3[myHeroName]) do
  322. if CanUseSpell(myHero, k) == READY and IWalkConfig[str[k]] and GetDistanceSqr(GetOrigin(unit)) < self.myRange * self.myRange then
  323. if myHeroName ~= "Quinn" or GotBuff(unit, "QuinnW") < 1 then
  324. self.orbTable.lastAA = 0
  325. CastTargetSpell(unit, k)
  326. end
  327. return true
  328. end
  329. end
  330. end
  331. return IWalkConfig.I and CastOffensiveItems(unit)
  332. end
  333.  
  334. function IAC:MakeMenu()
  335. str = {[_Q] = "Q", [_W] = "W", [_E] = "E", [_R] = "R"}
  336. if self.aaResetTable3[myHeroName] then
  337. for _,k in pairs(self.aaResetTable3[myHeroName]) do
  338. IWalkConfig.addParam(str[k], "AA Reset with "..str[k], SCRIPT_PARAM_ONOFF, not inbuiltOverwritten)
  339. end
  340. end
  341. if self.aaResetTable2[myHeroName] then
  342. for _,k in pairs(self.aaResetTable2[myHeroName]) do
  343. IWalkConfig.addParam(str[k], "AA Reset with "..str[k], SCRIPT_PARAM_ONOFF, not inbuiltOverwritten)
  344. end
  345. end
  346. if self.aaResetTable[myHeroName] then
  347. for _,k in pairs(self.aaResetTable[myHeroName]) do
  348. IWalkConfig.addParam(str[k], "AA Reset with "..str[k], SCRIPT_PARAM_ONOFF, not inbuiltOverwritten)
  349. end
  350. end
  351. if self.aaResetTable4[myHeroName] then
  352. for _,k in pairs(self.aaResetTable4[myHeroName]) do
  353. IWalkConfig.addParam(str[k], "AA Reset with "..str[k], SCRIPT_PARAM_ONOFF, not inbuiltOverwritten)
  354. end
  355. end
  356. if self.gapcloserTable[myHeroName] then
  357. k = self.gapcloserTable[myHeroName]
  358. if type(k) == "number" then
  359. IWalkConfig.addParam(str[k].."g", "Gapclose with "..str[k], SCRIPT_PARAM_ONOFF, not inbuiltOverwritten)
  360. end
  361. end
  362. if not inbuiltOverwritten then
  363. self:DoChampionPluginMenu()
  364. IWalkConfig.addParam("S", "Skillfarm", SCRIPT_PARAM_ONOFF, true)
  365. end
  366. IWalkConfig.addParam("I", "Cast Items", SCRIPT_PARAM_ONOFF, true)
  367. IWalkConfig.addParam("D", "Damage Calc", SCRIPT_PARAM_ONOFF, true)
  368. IWalkConfig.addParam("C", "AA Range Circle", SCRIPT_PARAM_ONOFF, true)
  369.  
  370. IWalkConfig.addParam("LastHit", "LastHit", SCRIPT_PARAM_KEYDOWN, string.byte("X"))
  371. IWalkConfig.addParam("Harass", "Harass", SCRIPT_PARAM_KEYDOWN, string.byte("C"))
  372. IWalkConfig.addParam("LaneClear", "LaneClear", SCRIPT_PARAM_KEYDOWN, string.byte("V"))
  373. IWalkConfig.addParam("JungleClear", "JungleClear", SCRIPT_PARAM_KEYDOWN, string.byte("J"))
  374. IWalkConfig.addParam("Combo", "Combo", SCRIPT_PARAM_KEYDOWN, string.byte(" "))
  375. end
  376.  
  377. function IAC:DoChampionPluginMenu()
  378. local manaPerc = Get
  379. if myHeroName == "Ashe" then
  380. IWalkConfig.addParam("Q", "Use Q (5 stacks)", SCRIPT_PARAM_ONOFF, true)
  381. IWalkConfig.addParam("W", "Use W", SCRIPT_PARAM_ONOFF, true)
  382. IWalkConfig.addParam("R", "Use R (execute)", SCRIPT_PARAM_ONOFF, true)
  383. elseif myHeroName == "Caitlyn" then
  384. IWalkConfig.addParam("Q", "Use Q", SCRIPT_PARAM_ONOFF, true)
  385. IWalkConfig.addParam("R", "Use R (execute)", SCRIPT_PARAM_ONOFF, true)
  386. elseif myHeroName == "Corki" then
  387. elseif myHeroName == "Draven" then
  388. elseif myHeroName == "Ezreal" then
  389. IWalkConfig.addParam("Q", "Use Q", SCRIPT_PARAM_ONOFF, true)
  390. IWalkConfig.addParam("W", "Use W", SCRIPT_PARAM_ONOFF, true)
  391. IWalkConfig.addParam("R", "Use R (execute)", SCRIPT_PARAM_ONOFF, true)
  392. elseif myHeroName == "Graves" then
  393. elseif myHeroName == "Jinx" then
  394. IWalkConfig.addParam("Q", "Use Q", SCRIPT_PARAM_ONOFF, true)
  395. IWalkConfig.addParam("W", "Use W", SCRIPT_PARAM_ONOFF, true)
  396. IWalkConfig.addParam("E", "Use E", SCRIPT_PARAM_ONOFF, true)
  397. IWalkConfig.addParam("R", "Use R (execute)", SCRIPT_PARAM_ONOFF, true)
  398. elseif myHeroName == "Kalista" then
  399. IWalkConfig.addParam("Q", "Use Q", SCRIPT_PARAM_ONOFF, true)
  400. IWalkConfig.addParam("E", "Use E", SCRIPT_PARAM_ONOFF, true)
  401. elseif myHeroName == "KogMaw" then
  402. elseif myHeroName == "Lucian" then
  403. elseif myHeroName == "MissFortune" then
  404. elseif myHeroName == "Quinn" then
  405. elseif myHeroName == "Riven" then
  406. IWalkConfig.addParam("R", "Use R if Kill", SCRIPT_PARAM_ONOFF, true)
  407. elseif myHeroName == "Sivir" then
  408. elseif myHeroName == "Teemo" then
  409. elseif myHeroName == "Tristana" then
  410. elseif myHeroName == "Twitch" then
  411. elseif myHeroName == "Varus" then
  412. elseif myHeroName == "Vayne" then
  413. IWalkConfig.addParam("E", "Use E (stun)", SCRIPT_PARAM_ONOFF, true)
  414. end
  415. end
  416.  
  417. function IAC:DoChampionPlugins(unit)
  418. if myHeroName == "Ashe" then
  419. if CanUseSpell(myHero, _Q) == READY and GotBuff(myHero, "asheqcastready") > 0 and IWalkConfig.Q then
  420. CastSpell(_Q)
  421. end
  422. if CanUseSpell(myHero, _W) == READY and IWalkConfig.W then
  423. local unitPos = GetOrigin(unit)
  424. CastSkillShot(_W, unitPos.x, unitPos.y, unitPos.z)
  425. end
  426. elseif myHeroName == "Corki" then
  427. elseif myHeroName == "Draven" then
  428. elseif myHeroName == "Graves" then
  429. elseif myHeroName == "Jinx" then
  430. if CanUseSpell(myHero, _Q) == READY and IWalkConfig.Q and GetTickCount() > self.orbTable.lastAA + self.orbTable.windUp then
  431. if GetRange(myHero) == 525 and GetDistance(unit) > 525 then
  432. CastSpell(_Q)
  433. elseif GetRange(myHero) > 525 and GetDistance(unit) < 525 + GetHitBox(myHero) + GetHitBox(unit) then
  434. CastSpell(_Q)
  435. end
  436. end
  437. elseif myHeroName == "KogMaw" then
  438. elseif myHeroName == "Lucian" then
  439. elseif myHeroName == "MissFortune" then
  440. elseif myHeroName == "Quinn" then
  441. elseif myHeroName == "Sivir" then
  442. elseif myHeroName == "Teemo" then
  443. elseif myHeroName == "Tristana" then
  444. if CanUseSpell(myHero, _Q) == READY and IWalkConfig.Q then
  445. CastSpell(_Q)
  446. end
  447. if CanUseSpell(myHero, _E) == READY and IWalkConfig.E then
  448. CastSpell(_E)
  449. end
  450. elseif myHeroName == "Twitch" then
  451. elseif myHeroName == "Varus" then
  452. elseif myHeroName == "Vayne" then
  453. if IWalkConfig.E and CanUseSpell(myHero, _E) == READY then
  454. local Pred = GetPredictionForPlayer(GetMyHeroPos(),unit,GetMoveSpeed(unit), 2000, 0.25, 1000, 1, false, true)
  455. for _=0,450,GetHitBox(unit) do
  456. local tPos = Vector(Pred.PredPos)+Vector(Vector(Pred.PredPos)-Vector(myHero)):normalized()*_
  457. if IsWall(tPos) then
  458. CastTargetSpell(unit, _E)
  459. end
  460. end
  461. end
  462. end
  463. end
  464.  
  465. function IAC:DoChampionPlugins2()
  466. if myHeroName == "Ashe" then
  467. for _, unit in pairs(GetEnemyHeroes()) do
  468. if ValidTarget(unit, 3500) and CanUseSpell(myHero, _R) == READY and IWalkConfig.R then
  469. if CalcDamage(myHero, unit, 0, 75 + 175*GetCastLevel(myHero,_R) + GetBonusAP(myHero)) >= GetCurrentHP(unit) then
  470. PredCast(_R, unit, 1600, 250, 20000, 130, false)
  471. end
  472. end
  473. end
  474. elseif myHeroName == "Caitlyn" then
  475. for _, unit in pairs(GetEnemyHeroes()) do
  476. if ValidTarget(unit, GetCastRange(myHero, _R)) and CanUseSpell(myHero, _R) == READY and IWalkConfig.R then
  477. if CalcDamage(myHero, unit, 25+225*GetCastLevel(myHero, _R)+GetBonusDmg(myHero)*2) >= GetCurrentHP(unit) then
  478. CastTargetSpell(unit, _R)
  479. end
  480. end
  481. end
  482. local unit = GetTarget(1300, DAMAGE_PHYSICAL)
  483. if unit and CanUseSpell(myHero, _Q) == READY and IWalkConfig.Q and IWalkConfig.Combo then
  484. PredCast(_Q, unit, 2200, 625, 1300, 90, false)
  485. end
  486. elseif myHeroName == "Ezreal" then
  487. for _, unit in pairs(GetEnemyHeroes()) do
  488. if ValidTarget(unit, 3500) and CanUseSpell(myHero, _R) == READY and IWalkConfig.R then
  489. if CalcDamage(myHero, unit, 0, 200 + 150*GetCastLevel(myHero,_R) + .9*GetBonusAP(myHero)+GetBonusDmg(myHero)) >= GetCurrentHP(unit) then
  490. PredCast(_R, unit, 2000, 1000, 20000, 160, false)
  491. end
  492. end
  493. end
  494. local unit = GetTarget(1200, DAMAGE_PHYSICAL)
  495. if unit and CanUseSpell(myHero, _Q) == READY and IWalkConfig.Q and IWalkConfig.Combo then
  496. PredCast(_Q, unit, 2000, 250, 1200, 60, false)
  497. end
  498. local unit = GetTarget(1050, DAMAGE_PHYSICAL)
  499. if unit and CanUseSpell(myHero, _W) == READY and IWalkConfig.W and IWalkConfig.Combo then
  500. PredCast(_W, unit, 1600, 250, 1050, 80, false)
  501. end
  502. elseif myHeroName == "Graves" then
  503. for _, unit in pairs(GetEnemyHeroes()) do
  504. if ValidTarget(unit, 1100) and CanUseSpell(myHero, _R) == READY and IWalkConfig.R then
  505. if CalcDamage(myHero, unit, 100+150*GetCastLevel(myHero, _R)+GetBonusDmg(myHero)*1.5) >= GetCurrentHP(unit) then
  506. PredCast(_R, unit, 2100, 250, 1100, 100, false)
  507. end
  508. end
  509. end
  510. elseif myHeroName == "Jinx" then
  511. for _, unit in pairs(GetEnemyHeroes()) do
  512. if ValidTarget(unit, 3500) and CanUseSpell(myHero, _R) == READY and IWalkConfig.R then
  513. if CalcDamage(myHero, unit, (GetMaxHP(unit)-GetCurrentHP(unit))*(0.2+0.05*GetCastLevel(myHero, _R))+(150+100*GetCastLevel(myHero, _R)+GetBonusDmg(myHero))*math.max(0.1, math.min(1, GetDistance(unit)/1700))) >= GetCurrentHP(unit) then
  514. PredCast(_R, unit, 2300, 600, 20000, 140, false)
  515. end
  516. end
  517. end
  518. local unit = GetTarget(1500, DAMAGE_PHYSICAL)
  519. if unit and CanUseSpell(myHero, _W) == READY and IWalkConfig.W and IWalkConfig.Combo then
  520. PredCast(_W, unit, 3300, 600, 1500, 60, true)
  521. end
  522. elseif myHeroName == "Kalista" then
  523. local function kalE(x) if x <= 1 then return 10 else return kalE(x-1) + 2 + x end end
  524. for _,unit in pairs(GetEnemyHeroes()) do
  525. local TotalDmg = GetBonusDmg(myHero)+GetBaseDamage(myHero)
  526. local dmgE = (GotBuff(unit,"kalistaexpungemarker") > 0 and (10 + (10 * GetCastLevel(myHero,_E)) + (TotalDmg * 0.6)) + (GotBuff(unit,"kalistaexpungemarker")-1) * (kalE(GetCastLevel(myHero,_E)) + (0.175 + 0.025 * GetCastLevel(myHero,_E))*TotalDmg) or 0)
  527. local dmg = CalcDamage(myHero, unit, dmgE)
  528. local hp = GetCurrentHP(unit)
  529. local targetPos = GetOrigin(unit)
  530. local drawPos = WorldToScreen(1,targetPos.x,targetPos.y,targetPos.z)
  531. if dmg > 0 then
  532. DrawText(math.floor(dmg/hp*100).."%",20,drawPos.x,drawPos.y,0xffffffff)
  533. if hp > 0 and dmg >= hp and ValidTarget(unit, 1000) and IWalkConfig.E then
  534. CastTargetSpell(myHero, _E)
  535. end
  536. end
  537. end
  538. local unit = GetTarget(1150, DAMAGE_PHYSICAL)
  539. if unit and CanUseSpell(myHero, _Q) == READY and IWalkConfig.Q and IWalkConfig.Combo then
  540. PredCast(_Q, unit, 1750, 250, 1150, 70, true)
  541. end
  542. end
  543. end
  544.  
  545. function IAC:OverwriteIACPlugins()
  546. inbuiltOverwritten = true
  547. end
  548.  
  549. function IAC:IsWindingUp()
  550. return GetTickCount() <= self.orbTable.lastAA + self.orbTable.windUp
  551. end
  552.  
  553. function IAC:SetMove(bool)
  554. self.move = bool
  555. end
  556.  
  557. function IAC:SetAA(bool)
  558. self.aa = bool
  559. end
  560.  
  561. function IAC:SetOrb(bool)
  562. self.aa = bool
  563. self.move = bool
  564. end
  565.  
  566. -- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement