Advertisement
Cloudhax23

Untitled

Aug 26th, 2015
128
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 34.24 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 = menu.addItem(SubMenu.new("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 DmgCalc.getValue() then self:DmgCalc() end
  63. if waitTickCount > GetTickCount() then return end
  64. self:DoChampionPlugins2()
  65. self:IWalk()
  66. end
  67.  
  68. function IAC:DmgCalc()
  69. for _,unit in pairs(GetEnemyHeroes()) do
  70. if ValidTarget(unit) then
  71. local hPos = GetHPBarPos(unit)
  72. DrawText(self:PossibleDmg(unit), 15, hPos.x, hPos.y+20, 0xffffffff)
  73. end
  74. end
  75. end
  76.  
  77. function IAC:PossibleDmg(unit)
  78. local addDamage = GetBonusDmg(myHero)
  79. local TotalDmg = (GetBonusDmg(myHero)+GetBaseDamage(myHero))*(((IWalkConfig.R and (GetCastName(myHero, _R) ~= "RivenFengShuiEngine" or CanUseSpell(myHero, _R)))) and 1.2 or 1)
  80. local dmg = 0
  81. local cthp = GetCurrentHP(unit)
  82. local mthp = GetMaxHP(unit)
  83. if myHeroName == "Riven" then
  84. local dmg = 0
  85. local mlevel = GetLevel(myHero)
  86. local pdmg = CalcDamage(myHero, unit, 5+math.max(5*math.floor((mlevel+2)/3)+10,10*math.floor((mlevel+2)/3)-15)*TotalDmg/100)
  87. if CanUseSpell(myHero, _Q) == READY then
  88. local level = GetCastLevel(myHero, _Q)
  89. dmg = dmg + CalcDamage(myHero, unit, 20*level+(0.35+0.05*level)*TotalDmg-10)*3+CalcDamage(myHero, unit, TotalDmg)*3+pdmg*3
  90. end
  91. if CanUseSpell(myHero, _W) == READY then
  92. local level = GetCastLevel(myHero, _W)
  93. dmg = dmg + CalcDamage(myHero, unit, 20+30*level+TotalDmg)+CalcDamage(myHero, unit, TotalDmg)+pdmg
  94. end
  95. if (CanUseSpell(myHero, _R) == READY or GetCastName(myHero, _R) ~= "RivenFengShuiEngine") and IWalkConfig.R then
  96. local level = GetCastLevel(myHero, _R)
  97. local rdmg = CalcDamage(myHero, unit, (40+40*level+0.6*addDamage)*(math.min(3,math.max(1,4*(mthp-cthp)/mthp))))
  98. if rdmg > cthp and ValidTarget(unit, 800) and GetCastName(myHero, _R) ~= "RivenFengShuiEngine" and Combo.getValue() then
  99. local unitPos = GetOrigin(unit)
  100. CastSkillShot(_R, unitPos.x, unitPos.y, unitPos.z)
  101. end
  102. cthp = cthp - dmg
  103. rdmg = CalcDamage(myHero, unit, (40+40*level+0.6*addDamage)*(math.min(3,math.max(1,4*(mthp-cthp)/mthp))))
  104. dmg = dmg + rdmg
  105. end
  106. return dmg > cthp and "Killable" or math.floor(100*dmg/cthp).."% Dmg"
  107. else
  108. dmg = CalcDamage(myHero, unit, TotalDmg)
  109. return math.ceil(cthp/dmg).." AA"
  110. end
  111. end
  112.  
  113. function IAC:IWalk()
  114. if LastHit.getValue() or LaneClear.getValue() or Harass.getValue() then
  115. for _,k in pairs(GetAllMinions(MINION_ENEMY)) do
  116. local targetPos = GetOrigin(k)
  117. local drawPos = WorldToScreen(1,targetPos.x,targetPos.y,targetPos.z)
  118. local hp = self:PredictHealth(k, self.orbTable.windUp + GetDistance(k)/self:GetProjectileSpeed(myHero) - 0.07)
  119. local dmg = CalcDamage(myHero, k, GetBonusDmg(myHero)+GetBaseDamage(myHero))
  120. if dmg > hp then
  121. if (LastHit.getValue() or LaneClear.getValue() or Harass.getValue()) and IsInDistance(k, self.myRange) and GetTickCount() > self.orbTable.lastAA + self.orbTable.animation then
  122. AttackUnit(k)
  123. return
  124. end
  125. end
  126. end
  127. end
  128. if Combo.getValue() or Harass.getValue() or LastHit.getValue() or LaneClear.getValue() then
  129. self:DoWalk()
  130. end
  131. end
  132.  
  133. function IAC:DoWalk()
  134. self.myRange = GetRange(myHero)+GetHitBox(myHero)+(IWalkTarget and GetHitBox(IWalkTarget) or GetHitBox(myHero))
  135. if AAR.getValue() then Circle(myHero,self.myRange):draw() end
  136. 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)
  137. IWalkTarget = GetTarget(self.myRange + addRange, DAMAGE_PHYSICAL)
  138. if LaneClear.getValue() then
  139. IWalkTarget = GetHighestMinion(GetOrigin(myHero), self.myRange, MINION_JUNGLE) or GetHighestMinion(GetOrigin(myHero), self.myRange, MINION_ENEMY)
  140. end
  141. local unit = IWalkTarget
  142. if (Farm.getValue() or Combo.getValue()) and ValidTarget(unit) then self:DoChampionPlugins(unit) end
  143. if not LastHit.getValue() and ValidTarget(unit, self.myRange) and GetTickCount() > self.orbTable.lastAA + self.orbTable.animation and self.aa then
  144. AttackUnit(unit)
  145. elseif GetTickCount() > self.orbTable.lastAA + self.orbTable.windUp and self.move then
  146. if GetRange(myHero) < 450 and IWalkConfig.wtt and unit and GetObjectType(unit) == GetObjectType(myHero) and ValidTarget(unit, self.myRange) then
  147. local unitPos = GetOrigin(unit)
  148. if GetDistance(unit) > self.myRange/2 then
  149. MoveToXYZ(unitPos.x, unitPos.y, unitPos.z)
  150. end
  151. else
  152. if Combo.getValue() and self.gapcloserTable[myHeroName] and ValidTarget(unit, self.myRange + 250) and IWalkConfig[str[self.gapcloserTable[myHeroName]].."g"] and CanUseSpell(myHero, gapcloserTable[myHeroName]) == READY then
  153. local unitPos = GetOrigin(unit)
  154. CastSkillShot(self.gapcloserTable[myHeroName], unitPos.x, unitPos.y, unitPos.z)
  155. if myHeroName == "Riven" and IWalkConfig["W"] and CanUseSpell(myHero, _W) == READY then
  156. if self:PossibleDmg(unit):find("Killable") and IWalkConfig.R then
  157. DelayAction(function() CastTargetSpell(myHero, _R) end, 137)
  158. else
  159. DelayAction(function() CastTargetSpell(myHero, _W) end, 137)
  160. end
  161. self.orbTable.lastAA = 0
  162. end
  163. else
  164. self:Move()
  165. end
  166. end
  167. end
  168. end
  169.  
  170. function IAC:Move()
  171. local movePos = GenerateMovePos()
  172. if GetDistance(GetMousePos()) > GetHitBox(myHero) then
  173. MoveToXYZ(movePos.x, GetMyHeroPos().y, movePos.z)
  174. end
  175. end
  176.  
  177. function IAC:GetIWalkTarget()
  178. return IWalkTarget
  179. end
  180.  
  181. function IAC:ProcessSpell(unit, spell)
  182. if unit and spell and spell.name then
  183. if unit == myHero then
  184. if (spell.name:lower():find("attack") or (self.isAAaswellTable[myHeroName] and self.isAAaswellTable[myHeroName] == spell.name)) then
  185. self.orbTable.lastAA = GetTickCount() + GetLatency()
  186. self.orbTable.windUp = myHeroName == "Kalista" and 0 or spell.windUpTime * 1000
  187. self.orbTable.animation = GetAttackSpeed(GetMyHero()) < 2.25 and spell.animationTime * 1000 or 1000 / GetAttackSpeed(GetMyHero())
  188. DelayAction(function()
  189. if (Farm.getValue() or Combo.getValue()) and ValidTarget(IWalkTarget, self.myRange) then
  190. self:WindUp(IWalkTarget)
  191. end
  192. end, spell.windUpTime * 1000 + GetLatency())
  193. elseif spell.name:lower():find("katarinar") then
  194. waitTickCount = GetTickCount() + 2500
  195. end
  196. end
  197. if spell.target and spell.name:lower():find("attack") and GetObjectType(spell.target) == Obj_AI_Minion then
  198. local timer = 1000*GetDistance(spell.target,unit)/self:GetProjectileSpeed(unit)
  199. local target = spell.target
  200. if not self.AATable[GetNetworkID(target)] then self.AATable[GetNetworkID(target)] = {} end
  201. self.AATable[GetNetworkID(target)][timer] = {source = unit, dmg = CalcDamage(unit, spell.target, GetBonusDmg(unit)+GetBaseDamage(unit)), time = GetTickCount() + timer}
  202. DelayAction(function() self.AATable[GetNetworkID(target)][timer] = nil end, timer)
  203. end
  204. end
  205. end
  206.  
  207. function IAC:GetProjectileSpeed(unit)
  208. return self.projectilespeeds[GetObjectName(unit)] and self.projectilespeeds[GetObjectName(unit)] or math.huge
  209. end
  210.  
  211. function IAC:PredictHealth(unit, time)
  212. if self.AATable[GetNetworkID(unit)] then
  213. local preds = self.AATable[GetNetworkID(unit)]
  214. local health = GetCurrentHP(unit)
  215. if preds then
  216. for _, k in pairs(preds) do
  217. if not k.source.dead and k.time < GetTickCount() + time then
  218. health = health - k.dmg
  219. end
  220. end
  221. end
  222. return health
  223. else
  224. return GetCurrentHP(unit)
  225. end
  226. end
  227.  
  228. function IAC:WindUp(unit)
  229. local str = {[_Q] = "Q", [_W] = "W", [_E] = "E", [_R] = "R"}
  230. if self.aaResetTable4[myHeroName] then
  231. for _,k in pairs(self.aaResetTable4[myHeroName]) do
  232. if CanUseSpell(myHero, k) == READY and IWalkConfig[str[k]] then
  233. self.orbTable.lastAA = 0
  234. local movePos = GenerateMovePos()
  235. CastSkillShot(k, movePos.x, movePos.y, movePos.z)
  236. return true
  237. end
  238. end
  239. end
  240. if self.aaResetTable[myHeroName] then
  241. for _,k in pairs(self.aaResetTable[myHeroName]) do
  242. if CanUseSpell(myHero, k) == READY and IWalkConfig[str[k]] and GetDistanceSqr(GetOrigin(unit)) < self.myRange * self.myRange then
  243. self.orbTable.lastAA = 0
  244. CastSpell(k)
  245. return true
  246. end
  247. end
  248. end
  249. if self.aaResetTable2[myHeroName] then
  250. for _,k in pairs(self.aaResetTable2[myHeroName]) do
  251. 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
  252. local unitPos = GetOrigin(unit)
  253. CastSkillShot(k, unitPos.x, unitPos.y, unitPos.z)
  254. if myHeroName == "Riven" then
  255. local unitPos = GetOrigin(unit)
  256. MoveToXYZ(unitPos.x, unitPos.y, unitPos.z)
  257. end
  258. self.orbTable.lastAA = 0
  259. return true
  260. end
  261. end
  262. end
  263. if self.aaResetTable3[myHeroName] then
  264. for _,k in pairs(self.aaResetTable3[myHeroName]) do
  265. if CanUseSpell(myHero, k) == READY and IWalkConfig[str[k]] and GetDistanceSqr(GetOrigin(unit)) < self.myRange * self.myRange then
  266. if myHeroName ~= "Quinn" or GotBuff(unit, "QuinnW") < 1 then
  267. self.orbTable.lastAA = 0
  268. CastTargetSpell(unit, k)
  269. end
  270. return true
  271. end
  272. end
  273. end
  274. return Items.getValue() and CastOffensiveItems(unit)
  275. end
  276.  
  277. function IAC:MakeMenu()
  278. str = {[_Q] = "Q", [_W] = "W", [_E] = "E", [_R] = "R"}
  279. if self.aaResetTable3[myHeroName] then
  280. for _,k in pairs(self.aaResetTable3[myHeroName]) do
  281. IWalkConfig.addParam(str[k], "AA Reset with "..str[k], SCRIPT_PARAM_ONOFF, not inbuiltOverwritten)
  282. end
  283. end
  284. if self.aaResetTable2[myHeroName] then
  285. for _,k in pairs(self.aaResetTable2[myHeroName]) do
  286. IWalkConfig.addParam(str[k], "AA Reset with "..str[k], SCRIPT_PARAM_ONOFF, not inbuiltOverwritten)
  287. end
  288. end
  289. if self.aaResetTable[myHeroName] then
  290. for _,k in pairs(self.aaResetTable[myHeroName]) do
  291. IWalkConfig.addParam(str[k], "AA Reset with "..str[k], SCRIPT_PARAM_ONOFF, not inbuiltOverwritten)
  292. end
  293. end
  294. if self.aaResetTable4[myHeroName] then
  295. for _,k in pairs(self.aaResetTable4[myHeroName]) do
  296. IWalkConfig.addParam(str[k], "AA Reset with "..str[k], SCRIPT_PARAM_ONOFF, not inbuiltOverwritten)
  297. end
  298. end
  299. if self.gapcloserTable[myHeroName] then
  300. k = self.gapcloserTable[myHeroName]
  301. if type(k) == "number" then
  302. IWalkConfig.addParam(str[k].."g", "Gapclose with "..str[k], SCRIPT_PARAM_ONOFF, not inbuiltOverwritten)
  303. end
  304. end
  305. if not inbuiltOverwritten then
  306. self:DoChampionPluginMenu()
  307. Farm = IWalkConfig.addItem(MenuBool.new("SkillFarm", true))
  308. end
  309. Items = IWalkConfig.addItem(MenuBool.new("Use Items", true))
  310. if GetRange(myHero) < 450 or myHeroName == "Rengar" then
  311. IWalkConfig.addParam("wtt", "Walk To Target", SCRIPT_PARAM_ONOFF, true)
  312. end
  313. DmgCalc = IWalkConfig.addItem(MenuBool.new("Damage Calc", true))
  314. AAR = IWalkConfig.addItem(MenuBool.new("AA Range Circle", true))
  315.  
  316. LastHit = IWalkConfig.addItem(MenuKeyBind.new("LastHit", 88))
  317. Harass = IWalkConfig.addItem(MenuKeyBind.new("Harass", 67))
  318. LaneClear = IWalkConfig.addItem(MenuKeyBind.new("LaneClear", 86))
  319. Combo = IWalkConfig.addItem(MenuKeyBind.new("Combo", 32))
  320. end
  321.  
  322. function IAC:DoChampionPluginMenu()
  323. local manaPerc = Get
  324. if myHeroName == "Ashe" then
  325. IWalkConfig.addParam("Q", "Use Q (5 stacks)", SCRIPT_PARAM_ONOFF, true)
  326. IWalkConfig.addParam("W", "Use W", SCRIPT_PARAM_ONOFF, true)
  327. IWalkConfig.addParam("R", "Use R (execute)", SCRIPT_PARAM_ONOFF, true)
  328. elseif myHeroName == "Caitlyn" then
  329. IWalkConfig.addParam("Q", "Use Q", SCRIPT_PARAM_ONOFF, true)
  330. IWalkConfig.addParam("R", "Use R (execute)", SCRIPT_PARAM_ONOFF, true)
  331. elseif myHeroName == "Corki" then
  332. elseif myHeroName == "Draven" then
  333. elseif myHeroName == "Ezreal" then
  334. IWalkConfig.addParam("Q", "Use Q", SCRIPT_PARAM_ONOFF, true)
  335. IWalkConfig.addParam("W", "Use W", SCRIPT_PARAM_ONOFF, true)
  336. IWalkConfig.addParam("R", "Use R (execute)", SCRIPT_PARAM_ONOFF, true)
  337. elseif myHeroName == "Graves" then
  338. elseif myHeroName == "Jinx" then
  339. IWalkConfig.addParam("Q", "Use Q", SCRIPT_PARAM_ONOFF, true)
  340. IWalkConfig.addParam("W", "Use W", SCRIPT_PARAM_ONOFF, true)
  341. IWalkConfig.addParam("E", "Use E", SCRIPT_PARAM_ONOFF, true)
  342. IWalkConfig.addParam("R", "Use R (execute)", SCRIPT_PARAM_ONOFF, true)
  343. elseif myHeroName == "Kalista" then
  344. IWalkConfig.addParam("Q", "Use Q", SCRIPT_PARAM_ONOFF, true)
  345. IWalkConfig.addParam("E", "Use E", SCRIPT_PARAM_ONOFF, true)
  346. elseif myHeroName == "KogMaw" then
  347. elseif myHeroName == "Lucian" then
  348. elseif myHeroName == "MissFortune" then
  349. elseif myHeroName == "Quinn" then
  350. elseif myHeroName == "Riven" then
  351. IWalkConfig.addParam("R", "Use R if Kill", SCRIPT_PARAM_ONOFF, true)
  352. elseif myHeroName == "Sivir" then
  353. elseif myHeroName == "Teemo" then
  354. elseif myHeroName == "Tristana" then
  355. elseif myHeroName == "Twitch" then
  356. elseif myHeroName == "Varus" then
  357. elseif myHeroName == "Vayne" then
  358. IWalkConfig.addParam("E", "Use E (stun)", SCRIPT_PARAM_ONOFF, true)
  359. end
  360. end
  361.  
  362. function IAC:DoChampionPlugins(unit)
  363. if myHeroName == "Ashe" then
  364. if CanUseSpell(myHero, _Q) == READY and GotBuff(myHero, "asheqcastready") > 0 and IWalkConfig.Q then
  365. CastSpell(_Q)
  366. end
  367. if CanUseSpell(myHero, _W) == READY and IWalkConfig.W then
  368. local unitPos = GetOrigin(unit)
  369. CastSkillShot(_W, unitPos.x, unitPos.y, unitPos.z)
  370. end
  371. elseif myHeroName == "Corki" then
  372. elseif myHeroName == "Draven" then
  373. elseif myHeroName == "Graves" then
  374. elseif myHeroName == "Jinx" then
  375. if CanUseSpell(myHero, _Q) == READY and IWalkConfig.Q and GetTickCount() > self.orbTable.lastAA + self.orbTable.windUp then
  376. if GetRange(myHero) == 525 and GetDistance(unit) > 525 then
  377. CastSpell(_Q)
  378. elseif GetRange(myHero) > 525 and GetDistance(unit) < 525 + GetHitBox(myHero) + GetHitBox(unit) then
  379. CastSpell(_Q)
  380. end
  381. end
  382. elseif myHeroName == "KogMaw" then
  383. elseif myHeroName == "Lucian" then
  384. elseif myHeroName == "MissFortune" then
  385. elseif myHeroName == "Quinn" then
  386. elseif myHeroName == "Sivir" then
  387. elseif myHeroName == "Teemo" then
  388. elseif myHeroName == "Tristana" then
  389. if CanUseSpell(myHero, _Q) == READY and IWalkConfig.Q then
  390. CastSpell(_Q)
  391. end
  392. if CanUseSpell(myHero, _E) == READY and IWalkConfig.E then
  393. CastSpell(_E)
  394. end
  395. elseif myHeroName == "Twitch" then
  396. elseif myHeroName == "Varus" then
  397. elseif myHeroName == "Vayne" then
  398. if IWalkConfig.E and CanUseSpell(myHero, _E) == READY then
  399. local Pred = GetPredictionForPlayer(GetMyHeroPos(),unit,GetMoveSpeed(unit), 2000, 0.25, 1000, 1, false, true)
  400. for _=0,450,GetHitBox(unit) do
  401. local tPos = Vector(Pred.PredPos)+Vector(Vector(Pred.PredPos)-Vector(myHero)):normalized()*_
  402. if IsWall(tPos) then
  403. CastTargetSpell(unit, _E)
  404. end
  405. end
  406. end
  407. end
  408. end
  409.  
  410. function IAC:DoChampionPlugins2()
  411. if myHeroName == "Ashe" then
  412. for _, unit in pairs(GetEnemyHeroes()) do
  413. if ValidTarget(unit, 3500) and CanUseSpell(myHero, _R) == READY and IWalkConfig.R then
  414. if CalcDamage(myHero, unit, 0, 75 + 175*GetCastLevel(myHero,_R) + GetBonusAP(myHero)) >= GetCurrentHP(unit) then
  415. PredCast(_R, unit, 1600, 250, 20000, 130, false)
  416. end
  417. end
  418. end
  419. elseif myHeroName == "Caitlyn" then
  420. for _, unit in pairs(GetEnemyHeroes()) do
  421. if ValidTarget(unit, GetCastRange(myHero, _R)) and CanUseSpell(myHero, _R) == READY and IWalkConfig.R then
  422. if CalcDamage(myHero, unit, 25+225*GetCastLevel(myHero, _R)+GetBonusDmg(myHero)*2) >= GetCurrentHP(unit) then
  423. CastTargetSpell(unit, _R)
  424. end
  425. end
  426. end
  427. local unit = GetTarget(1300, DAMAGE_PHYSICAL)
  428. if unit and CanUseSpell(myHero, _Q) == READY and IWalkConfig.Q and Combo.getValue() then
  429. PredCast(_Q, unit, 2200, 625, 1300, 90, false)
  430. end
  431. elseif myHeroName == "Ezreal" then
  432. for _, unit in pairs(GetEnemyHeroes()) do
  433. if ValidTarget(unit, 3500) and CanUseSpell(myHero, _R) == READY and IWalkConfig.R then
  434. if CalcDamage(myHero, unit, 0, 200 + 150*GetCastLevel(myHero,_R) + .9*GetBonusAP(myHero)+GetBonusDmg(myHero)) >= GetCurrentHP(unit) then
  435. PredCast(_R, unit, 2000, 1000, 20000, 160, false)
  436. end
  437. end
  438. end
  439. local unit = GetTarget(1200, DAMAGE_PHYSICAL)
  440. if unit and CanUseSpell(myHero, _Q) == READY and IWalkConfig.Q and Combo.getValue() then
  441. PredCast(_Q, unit, 2000, 250, 1200, 60, false)
  442. end
  443. local unit = GetTarget(1050, DAMAGE_PHYSICAL)
  444. if unit and CanUseSpell(myHero, _W) == READY and IWalkConfig.W and Combo.getValue() then
  445. PredCast(_W, unit, 1600, 250, 1050, 80, false)
  446. end
  447. elseif myHeroName == "Graves" then
  448. for _, unit in pairs(GetEnemyHeroes()) do
  449. if ValidTarget(unit, 1100) and CanUseSpell(myHero, _R) == READY and IWalkConfig.R then
  450. if CalcDamage(myHero, unit, 100+150*GetCastLevel(myHero, _R)+GetBonusDmg(myHero)*1.5) >= GetCurrentHP(unit) then
  451. PredCast(_R, unit, 2100, 250, 1100, 100, false)
  452. end
  453. end
  454. end
  455. elseif myHeroName == "Jinx" then
  456. for _, unit in pairs(GetEnemyHeroes()) do
  457. if ValidTarget(unit, 3500) and CanUseSpell(myHero, _R) == READY and IWalkConfig.R then
  458. 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
  459. PredCast(_R, unit, 2300, 600, 20000, 140, false)
  460. end
  461. end
  462. end
  463. local unit = GetTarget(1500, DAMAGE_PHYSICAL)
  464. if unit and CanUseSpell(myHero, _W) == READY and IWalkConfig.W and Combo.getValue() then
  465. PredCast(_W, unit, 3300, 600, 1500, 60, true)
  466. end
  467. elseif myHeroName == "Kalista" then
  468. local function kalE(x) if x <= 1 then return 10 else return kalE(x-1) + 2 + x end end
  469. for _,unit in pairs(GetEnemyHeroes()) do
  470. local TotalDmg = GetBonusDmg(myHero)+GetBaseDamage(myHero)
  471. 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)
  472. local dmg = CalcDamage(myHero, unit, dmgE)
  473. local hp = GetCurrentHP(unit)
  474. local targetPos = GetOrigin(unit)
  475. local drawPos = WorldToScreen(1,targetPos.x,targetPos.y,targetPos.z)
  476. if dmg > 0 then
  477. DrawText(math.floor(dmg/hp*100).."%",20,drawPos.x,drawPos.y,0xffffffff)
  478. if hp > 0 and dmg >= hp and ValidTarget(unit, 1000) and IWalkConfig.E then
  479. CastSpell(_E)
  480. end
  481. end
  482. end
  483. if IWalkTarget then
  484. local TotalDmg = GetBonusDmg(myHero)+GetBaseDamage(myHero)
  485. local dmgE = (GotBuff(IWalkTarget,"kalistaexpungemarker") > 0 and (10 + (10 * GetCastLevel(myHero,_E)) + (TotalDmg * 0.6)) + (GotBuff(IWalkTarget,"kalistaexpungemarker")-1) * (kalE(GetCastLevel(myHero,_E)) + (0.175 + 0.025 * GetCastLevel(myHero,_E))*TotalDmg) or 0)
  486. local dmg = CalcDamage(myHero, IWalkTarget, dmgE)
  487. if dmg > 0 then
  488. if hp > 0 and dmg >= hp and ValidTarget(unit, 1000) and IWalkConfig.E then
  489. CastSpell(_E)
  490. end
  491. end
  492. end
  493. local unit = GetTarget(1150, DAMAGE_PHYSICAL)
  494. if unit and CanUseSpell(myHero, _Q) == READY and IWalkConfig.Q and Combo.getValue() then
  495. PredCast(_Q, unit, 1750, 250, 1150, 70, true)
  496. end
  497. end
  498. end
  499.  
  500. function IAC:OverwriteIACPlugins()
  501. inbuiltOverwritten = true
  502. end
  503.  
  504. function IAC:IsWindingUp()
  505. return GetTickCount() <= self.orbTable.lastAA + self.orbTable.windUp
  506. end
  507.  
  508. function IAC:SetMove(bool)
  509. self.move = bool
  510. end
  511.  
  512. function IAC:SetAA(bool)
  513. self.aa = bool
  514. end
  515.  
  516. function IAC:SetOrb(bool)
  517. self.aa = bool
  518. self.move = bool
  519. end
  520.  
  521. -- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement