Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --PlatyAIO
- myHero = GetMyHero()
- myIAC = IAC()
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- ------------------------------------------------------------------------------ANNIE-------------------------------------------------------------------------------------------------------------------------------------------
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- class "Annie"
- function Annie:__init()
- OnLoop(function(myHero) self:Loop(myHero) end)
- self.spellData =
- {
- [_Q] = {dmg = function () return 45 + 35*GetCastLevel(myHero,_Q) + 0.8*GetBonusAP(myHero) end, range = 625, mana = function () return 55 + 5*GetCastLevel(myHero,_Q) end},
- [_W] = {dmg = function () return 25 + 45*GetCastLevel(myHero,_W) + 0.85*GetBonusAP(myHero) end , range = 625, mana = function () return 60 + 10*GetCastLevel(myHero,_W) end},
- [_E] = {dmg = function () return 10 + 10*GetCastLevel(myHero,_E) + 0.2*GetBonusAP(myHero) end , mana = 20 },
- [_R] = {dmg = function () return 50 + 125*GetCastLevel(myHero,_R) + 0.8*GetBonusAP(myHero) end, range = 600, radius = 250, mana = 100 },
- }
- self.Config = scriptConfig("PAnnie", "PlatyAnnie")
- self.Config.addParam("Q","Use Q", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("W","Use W", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("E","Use E", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("R","Use R", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("Draw","Draws", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("KS","Killsteal", SCRIPT_PARAM_ONOFF, true)
- end
- function Annie:Loop(myHero)
- self:Checks()
- if self.Config.Draw then
- self:Draws()
- end
- if _G.IWalkConfig.Combo then
- self:Combo()
- end
- if _G.IWalkConfig.Harass then
- self:Harass()
- end
- if self.Config.KS then
- self:Killsteal()
- end
- end
- function Annie:Combo()
- if ValidTarget(self.target,625) then
- if self.RREADY and GotBuff(myHero,"pyromania_particle") == 1 and IsInDistance(self.target,600) then
- self:CastR(self.target)
- elseif self.WREADY and GotBuff(myHero,"pyromania_particle") == 1 and not self.RREADY then
- self:CastW(self.target)
- elseif self.WREADY then
- self:CastW(self.target)
- elseif self.QREADY then
- self:CastQ(self.target)
- elseif self.EREADY then
- self:CastE()
- elseif self.RREADY then
- self:CastR(self.target)
- end
- end
- end
- function Annie:Harass()
- if ValidTarget(self.target, 625) then
- if self.WREADY then
- self:CastW(self.target)
- elseif self.QREADY then
- self:CastQ(self.target)
- end
- end
- end
- function Annie:Draws()
- if ValidTarget(self.target,1000) and self.RREADY then
- DrawDmgOverHpBar(self.target,GetCurrentHP(self.target),0,CalcDamage(myHero, self.target, 0, self.spellData[_Q].dmg() + self.spellData[_W].dmg() + self.spellData[_R].dmg()),0xffffffff)
- elseif ValidTarget(self.target,1000) and not self.RREADY then
- DrawDmgOverHpBar(self.target,GetCurrentHP(self.target),0,CalcDamage(myHero, self.target, 0, self.spellData[_Q].dmg() + self.spellData[_W].dmg()),0xffffffff)
- end
- if self.QREADY then
- DrawCircle(myHeroPos.x,myHeroPos.y,myHeroPos.z,self.spellData[_Q].range,3,100,0xffff9999)
- end
- if self.WREADY then
- DrawCircle(myHeroPos.x,myHeroPos.y,myHeroPos.z,self.spellData[_W].range,3,100,0xffff9999)
- end
- if self.RREADY then
- DrawCircle(myHeroPos.x,myHeroPos.y,myHeroPos.z,self.spellData[_R].range,3,100,0xffff9999)
- end
- end
- function Annie:Checks()
- self.QREADY = CanUseSpell(myHero,_Q) == READY
- self.WREADY = CanUseSpell(myHero,_W) == READY
- self.EREADY = CanUseSpell(myHero,_E) == READY
- self.RREADY = CanUseSpell(myHero,_R) == READY and GetCastName(myHero,_R) == "InfernalGuardian"
- self.target = GetTarget(650, DAMAGE_MAGIC)
- self.targetPos = GetOrigin(self.target)
- myHeroPos = GetOrigin(myHero)
- end
- function Annie:CastQ(unit)
- if ValidTarget(unit,self.spellData[_Q].range) and self.QREADY and self.Config.Q then
- CastTargetSpell(unit,_Q)
- end
- end
- function Annie:CastW(unit)
- local unitPos = GetOrigin(unit)
- if ValidTarget(unit,self.spellData[_W].range) and self.WREADY and self.Config.W then
- CastSkillShot(_W,unitPos.x,unitPos.y,unitPos.z)
- end
- end
- function Annie:CastE()
- if self.EREADY and self.Config.E then
- CastTargetSpell(myHero,_E)
- end
- end
- function Annie:CastR(unit)
- local unitPos = GetOrigin(unit)
- if self.RREADY and self.Config.R then
- CastSkillShot(_R,unitPos.x,unitPos.y,unitPos.z)
- end
- end
- --[[function CastR(unit)
- local unitPos = GetOrigin(unit)
- if IsInDistance(unit,800) then
- CastSkillShot(_R,unitPos.x,unitPos.y,unitPos.z)
- local RPred = GetPredictionForPlayer(myHeroPos,unit,GetMoveSpeed(unit),math.huge,250,600,250,false,true)
- -- GetPredictionForPlayer(startPosition, targetUnit, targetUnitMoveSpeed, spellTravelSpeed, spellDelay, spellRange, spellWidth, collision, addHitBox
- if CanUseSpell(myHero, _R) == READY and RPred.HitChance == 1 then
- CastSkillShot(_R,RPred.PredPos.x,RPred.PredPos.y,RPred.PredPos.z)
- end
- end
- end]]
- function Annie:Killsteal()
- for i,enemy in pairs(GetEnemyHeroes()) do
- local enemyhp = GetCurrentHP(enemy)
- if ValidTarget(enemy,self.spellData[_Q].range) and enemyhp < CalcDamage(myHero, enemy, 0, self.spellData[_Q].dmg()) then
- self:CastQ(enemy)
- elseif ValidTarget(enemy,self.spellData[_W].range) and enemyhp < CalcDamage(myHero, enemy, 0, self.spellData[_W].dmg()) then
- self:CastW(enemy)
- elseif ValidTarget(enemy,self.spellData[_R].range) and enemyhp < CalcDamage(myHero, enemy, 0, self.spellData[_R].dmg()) then
- self:CastR(enemy)
- elseif ValidTarget(enemy,self.spellData[_W].range) and enemyhp < CalcDamage(myHero, enemy, 0, self.spellData[_W].dmg() + self.spellData[_Q].dmg()) and GetCurrentMana(myHero) > (self.spellData[_W].mana() + self.spellData[_Q].mana()) then
- self:CastW(enemy) DelayAction(function() self:CastQ(enemy) end, 125)
- elseif ValidTarget(enemy,self.spellData[_R].range) and enemyhp < CalcDamage(myHero, enemy, 0,self.spellData[_W].dmg() + self.spellData[_Q].dmg() + self.spellData[_R].dmg()) and GetCurrentMana(myHero) > (self.spellData[_W].mana() + self.spellData[_Q].mana() + self.spellData[_R].mana)then
- self:CastW(enemy) DelayAction(function() self:CastR(enemy) DelayAction(function() self:CastQ(enemy) end, 125) end, 250)
- end
- end
- end
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- ---------------------------------------------------------------------------------------------------------------RYZE-----------------------------------------------------------------------------------------------------------
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- class "Ryze"
- function Ryze:__init()
- OnLoop(function(myHero) self:Loop(myHero) end)
- self.spellData =
- {
- [_Q] = {dmg = function () return 35 + 25*GetCastLevel(myHero,_Q) + 0.55*GetBonusAP(myHero) + 0.015*GetMaxMana(myHero) + 0.005*GetCastLevel(myHero,_Q)*GetMaxMana(myHero) end,
- range = 900,
- mana = 40,
- speed = 1875,
- width = 55,
- delay = 250},
- [_W] = {dmg = function () return 60 + 20*GetCastLevel(myHero,_W) + 0.4*GetBonusAP(myHero) + 0.025*GetMaxMana(myHero) end,
- range = 600,
- mana = function () return 50 + 10*GetCastLevel(myHero,_W) end},
- [_E] = {dmg = function () return 20 + 16*GetCastLevel(myHero,_E) + 0.2*GetBonusAP(myHero) + 0.02*GetMaxMana(myHero) end ,
- range = 600,
- mana = function () return 70 + 10*GetCastLevel(myHero,_E) end},
- }
- self.Config = scriptConfig("PRyze", "PlatyRyze")
- self.Config.addParam("Q","Use Q", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("W","Use W", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("E","Use E", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("R","Use R", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("Draw","Draws", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("KS","Killsteal", SCRIPT_PARAM_ONOFF, true)
- end
- function Ryze:Loop(myHero)
- self:Checks()
- if self.Config.Draw then
- self:Draws()
- end
- if self.Config.KS then
- self:Killsteal()
- end
- if _G.IWalkConfig.Combo then
- self:Combo()
- end
- if _G.IWalkConfig.Harass then
- self:Harass()
- end
- end
- function Ryze:Draws()
- if self.QREADY then
- DrawCircle(myHeroPos.x,myHeroPos.y,myHeroPos.z,self.spellData[_Q].range,3,100,0xffff9999)
- end
- if self.WREADY then
- DrawCircle(myHeroPos.x,myHeroPos.y,myHeroPos.z,self.spellData[_W].range,3,100,0xffff9999)
- end
- if self.EREADY then
- DrawCircle(myHeroPos.x,myHeroPos.y,myHeroPos.z,self.spellData[_E].range,3,100,0xffff9999)
- end
- if self.RREADY then
- DrawCircle(myHeroPos.x,myHeroPos.y,myHeroPos.z,200,3,100,0xffff9999)
- end
- end
- function Ryze:Checks()
- self.QREADY = CanUseSpell(myHero,_Q) == READY
- self.WREADY = CanUseSpell(myHero,_W) == READY
- self.EREADY = CanUseSpell(myHero,_E) == READY
- self.RREADY = CanUseSpell(myHero,_R) == READY
- self.target = GetTarget(900, DAMAGE_MAGIC)
- self.targetPos = GetOrigin(self.target)
- myHeroPos = GetOrigin(myHero)
- self.stacks = GotBuff(myHero,"ryzepassivestack")
- self.charged = GotBuff(myHero,"ryzepassivecharged") == 1
- self.rooted = GotBuff(self.target,"RyzeW") == 1
- end
- function Ryze:CastRootQ(unit)
- local unitPos = GetOrigin(unit)
- if self.QREADY and self.Config.Q then
- CastSkillShot(_Q,unitPos.x,unitPos.y,unitPos.z)
- end
- end
- function Ryze:CastNoColQ(unit)
- local unitPos = GetOrigin(unit)
- if ValidTarget(unit,self.spellData[_Q].range) and self.Config.Q then
- local QPred = GetPredictionForPlayer(myHeroPos,unit,GetMoveSpeed(unit), self.spellData[_Q].speed, self.spellData[_Q].delay, self.spellData[_Q].range, self.spellData[_Q].width, false, true)
- if self.QREADY and QPred.HitChance == 1 then
- CastSkillShot(_Q,QPred.PredPos.x,QPred.PredPos.y,QPred.PredPos.z)
- end
- end
- end
- function Ryze:CastPredQ(unit)
- local unitPos = GetOrigin(unit)
- if ValidTarget(unit,self.spellData[_Q].range) and self.Config.Q then
- local QPred = GetPredictionForPlayer(myHeroPos,unit,GetMoveSpeed(unit), self.spellData[_Q].speed, self.spellData[_Q].delay, self.spellData[_Q].range, self.spellData[_Q].width, true, true)
- if self.QREADY and QPred.HitChance == 1 then
- CastSkillShot(_Q,QPred.PredPos.x,QPred.PredPos.y,QPred.PredPos.z)
- end
- end
- end
- function Ryze:CastW(unit)
- if self.WREADY and self.Config.W then
- CastTargetSpell(unit,_W)
- end
- end
- function Ryze:CastE(unit)
- if self.EREADY and self.Config.E then
- CastTargetSpell(unit,_E)
- end
- end
- function Ryze:CastR()
- if self.RREADY and self.Config.R then
- CastSpell(_R)
- end
- end
- function Ryze:Combo()
- if ValidTarget(self.target, self.spellData[_Q].range) then
- if self.charged and self.RREADY and self.QREADY then
- self:CastPredQ(self.target) DelayAction(function() self:CastR()end,150)
- elseif self.stacks == 4 and self.QRREADY and not self.EREADY and not self.WREADY and self.RREADY then
- self.CastR()
- elseif self.charged and self.RREADY and self.EREADY then
- self:CastE(self.target) DelayAction(function() self:CastR()end,150)
- elseif self.charget and self.RREADY and self.WREADY then
- self:CastW(self.target) DelayAction(function() self:CastR()end,150)
- elseif self.stacks == 4 and self.QREADY then
- self:CastPredQ(self.target)
- elseif self.charged and self.QREADY and self.rooted then
- self:CastRootQ(self.target)
- elseif self.QREADY and self.rooted then
- self:CastRootQ(self.target)
- elseif self.charged and self.QREADY and not self.rooted then
- self:CastNoColQ(self.target)
- elseif self.stacks <= 3 and self.QREADY and not self.rooted then
- self:CastPredQ(self.target)
- elseif self.WREADY and ValidTarget(self.target,self.spellData[_W].range) and not self.QREADY then
- self:CastW(self.target)
- elseif self.EREADY and ValidTarget(self.target,self.spellData[_E].range) and not self.QREADY then
- self:CastE(self.target)
- end
- end
- end
- function Ryze:Harass()
- if ValidTarget(self.target, self.spellData[_Q].range) then
- self:CastPredQ(self.target)
- end
- end
- function Ryze:Killsteal()
- for i,enemy in pairs(GetEnemyHeroes()) do
- local enemyhp = GetCurrentHP(enemy)
- if ValidTarget(enemy,self.spellData[_Q].range) and enemyhp < CalcDamage(myHero, enemy, 0, self.spellData[_Q].dmg()) then
- self:CastPredQ(enemy)
- elseif ValidTarget(enemy, self.spellData[_W].range) and enemyhp < CalcDamage(myHero, enemy, 0, self.spellData[_W].dmg()) then
- self:CastW(enemy)
- elseif ValidTarget(enemy, self.spellData[_E].range) and enemyhp < CalcDamage(myHero, enemy, 0, self.spellData[_E].dmg()) then
- self:CastE(enemy)
- elseif ValidTarget(enemy, self.spellData[_W].range) and enemyhp < CalcDamage(myHero, enemy, 0, self.spellData[_W].dmg() + self.spellData[_Q].dmg()) and GetCurrentMana(myHero) > (self.spellData[_W].mana() + self.spellData[_Q].mana) then
- self:CastW(enemy) DelayAction(function() self:CastRootQ(enemy) end, 200)
- elseif ValidTarget(enemy, self.spellData[_W].range) and enemyhp < CalcDamage(myHero, enemy, 0, self.spellData[_W].dmg() + self.spellData[_Q].dmg() + self.spellData[_E].dmg()) and GetCurrentMana(myHero) > (self.spellData[_W].mana() + self.spellData[_Q].mana + self.spellData[_E].mana()) then
- self:CastW(enemy) DelayAction(function() self:CastRootQ(enemy) DelayAction(function() self:CastE(enemy) end, 0.200) end, 0.200)
- end
- end
- end
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- ---------------------------------------------------------------------------------------------------------------PHYTE----------------------------------------------------------------------------------------------------------
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- class "Malphite"
- function Malphite:__init()
- OnLoop(function(myHero) self:Loop(myHero) end)
- self.spellData = {
- [_Q] = { --[[speed = 1800,]]
- delay = 0.2, range = 620,
- dmg = function() return 20 + 50*GetCastLevel(myHero,_Q) + 0.6*GetBonusAP(myHero) end,
- mana = function () return 65 + 5*GetCastLevel(myHero,_Q) end},
- [_W] = {range = GetRange(myHero) + GetHitBox(myHero)*2,
- splash = 225,
- mana = 25,
- dmg = function() return 15*GetCastLevel(myHero,_W) + 0.1*GetBonusAP(myHero) + 0.1*GetArmor(myHero) + GetBonusDmg(myHero) + GetBaseDamage(myHero) end},
- [_E] = {range = 400,
- delay = 0.15,
- mana = function () return 45 + 5*GetCastLevel(myHero,_E) end,
- dmg = function() return 20+40*GetCastLevel(myHero,_E) + 0.2*GetBonusAP(myHero) + 0.3*GetArmor(myHero) end},
- [_R] = {speed = 1500+GetMoveSpeed(myHero),
- delay = 0.5,
- range = 900,
- mana = 100,
- width = 540,
- dmg = function() return 100 + 100*GetCastLevel(myHero,_R) + GetBonusAP(myHero) end}
- }
- self.Config = scriptConfig("PMalph", "PlatyMalphite")
- self.Config.addParam("Q","Use Q", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("W","Use W", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("E","Use E", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("R","Use R", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("Draw","Draws", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("KS","Killsteal", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("AllIn","All In", SCRIPT_PARAM_KEYDOWN, string.byte("T"))
- end
- function Malphite:Loop(myHero)
- self:Checks()
- if self.Config.Draw then
- self:Draws()
- end
- if self.Config.KS then
- self:Killsteal()
- end
- if _G.IWalkConfig.Combo then
- self:Combo()
- end
- if self.Config.AllIn then
- self:AllIn()
- end
- if _G.IWalkConfig.Harass then
- self:Harass()
- end
- end
- function Malphite:Draws()
- if ValidTarget(self.target,1500) and self.RREADY and self.QREADY and self.EREADY then
- DrawDmgOverHpBar(self.target,GetCurrentHP(self.target),0,CalcDamage(myHero, self.target, 0, self.spellData[_Q].dmg() + self.spellData[_E].dmg() + self.spellData[_R].dmg()),0xffffffff)
- elseif ValidTarget(self.target,1500) and not self.RREADY and self.QREADY and self.EREADY then
- DrawDmgOverHpBar(self.target,GetCurrentHP(self.target),0,CalcDamage(myHero, self.target, 0, self.spellData[_Q].dmg() + self.spellData[_E].dmg()),0xffffffff)
- elseif ValidTarget(self.target,1500) and not self.EREADY and self.QREADY and self.RREADY then
- DrawDmgOverHpBar(self.target,GetCurrentHP(self.target),0,CalcDamage(myHero, self.target, 0, self.spellData[_Q].dmg() + self.spellData[_R].dmg()),0xffffffff)
- elseif ValidTarget(self.target,1500) and not self.QREADY and self.RREADY and self.EREADY then
- DrawDmgOverHpBar(self.target,GetCurrentHP(self.target),0,CalcDamage(myHero, self.target, 0, self.spellData[_E].dmg() + self.spellData[_R].dmg()),0xffffffff)
- elseif ValidTarget(self.target,1500) and not self.QREADY and not self.EREADY and self.RREADY then
- DrawDmgOverHpBar(self.target,GetCurrentHP(self.target),0,CalcDamage(myHero, self.target, 0, self.spellData[_R].dmg()),0xffffffff)
- elseif ValidTarget(self.target,1500) and not self.QREADY and not self.RREADY and self.EREADY then
- DrawDmgOverHpBar(self.target,GetCurrentHP(self.target),0,CalcDamage(myHero, self.target, 0, self.spellData[_E].dmg()),0xffffffff)
- elseif ValidTarget(self.target,1500) and not self.EREADY and not self.RREADY and self.QREADY then
- DrawDmgOverHpBar(self.target,GetCurrentHP(self.target),0,CalcDamage(myHero, self.target, 0, self.spellData[_Q].dmg()),0xffffffff)
- elseif ValidTarget(self.target,1500) and not self.QREADY and not self.RREADY and not self.EREADY then
- DrawDmgOverHpBar(self.target,GetCurrentHP(self.target),0,CalcDamage(myHero, self.target, 0, 0),0xffffffff)
- end
- if self.QREADY then
- DrawCircle(myHeroPos.x,myHeroPos.y,myHeroPos.z, self.spellData[_Q].range,3,100,ARGB(0xff,255,247,0))
- end
- if self.WREADY then
- DrawCircle(myHeroPos.x,myHeroPos.y,myHeroPos.z, self.spellData[_W].range,3,100,ARGB(0xff,255,247,0))
- end
- if self.EREADY then
- DrawCircle(myHeroPos.x,myHeroPos.y,myHeroPos.z, self.spellData[_E].range,3,100,ARGB(0xff,255,247,0))
- end
- if self.RREADY then
- DrawCircle(myHeroPos.x,myHeroPos.y,myHeroPos.z, self.spellData[_R].range,3,100,ARGB(0xff,255,247,0))
- end
- end
- function Malphite:Checks()
- self.QREADY = CanUseSpell(myHero,_Q) == READY
- self.WREADY = CanUseSpell(myHero,_W) == READY
- self.EREADY = CanUseSpell(myHero,_E) == READY
- self.RREADY = CanUseSpell(myHero,_R) == READY
- self.IREADY = CanUseSpell(myHero, Ignite) == READY
- self.target = GetTarget(1000, DAMAGE_MAGIC)
- self.targetPos = GetOrigin(target)
- myHeroPos = GetOrigin(myHero)
- end
- function Malphite:CastQ(unit)
- if self.QREADY and self.Config.Q then
- CastTargetSpell(unit,_Q)
- end
- end
- function Malphite:CastW()
- if self.WREADY and self.Config.W then
- CastTargetSpell(myHero,_W)
- end
- end
- function Malphite:CastE()
- if self.EREADY and self.Config.E then
- CastTargetSpell(myHero,_E)
- end
- end
- function Malphite:CastR(unit)
- local unitPos = GetOrigin(unit)
- if ValidTarget(unit,self.spellData[_R].range+50) and self.Config.R then
- local RPred = GetPredictionForPlayer(myHeroPos,unit,GetMoveSpeed(unit), self.spellData[_R].speed, self.spellData[_R].delay, self.spellData[_R].range, self.spellData[_R].width/2, false, true)
- if self.RREADY and RPred.HitChance == 1 then
- CastSkillShot(_R,RPred.PredPos.x,RPred.PredPos.y,RPred.PredPos.z)
- end
- end
- end
- function Malphite:Combo()
- if ValidTarget(self.target, self.spellData[_Q].range) then
- if self.QREADY then
- self:CastQ(self.target)
- elseif self.EREADY and ValidTarget(self.target, self.spellData[_E].range) then
- self:CastE()
- elseif self.WREADY and ValidTarget(self.target, self.spellData[_W].range) then
- self:CastW()
- end
- end
- end
- function Malphite:AllIn()
- if ValidTarget(self.target, self.spellData[_R].range+50) then
- if self.RREADY then
- self:CastR(self.target)
- elseif self.QREADY and ValidTarget(self.target, self.spellData[_Q].range) then
- self:CastQ(self.target)
- elseif self.WREADY and ValidTarget(self.target, self.spellData[_W].range) then
- self:CastW()
- elseif self.EREADY and ValidTarget(self.target, self.spellData[_E].range) then
- self:CastE()
- end
- end
- end
- function Malphite:Harass()
- if ValidTarget(self.target, self.spellData[_E].range) then
- self:CastE()
- elseif ValidTarget(self.target, self.spellData[_Q].range) then
- self:CastQ(target)
- end
- end
- function Malphite:Killsteal()
- for i,enemy in pairs(GetEnemyHeroes()) do
- local QDmg = self.QREADY and self.spellData[_Q].dmg() or 0
- local WDmg = self.WREADY and self.spellData[_W].dmg() or 0
- local EDmg = self.EREADY and self.spellData[_E].dmg() or 0
- local RDmg = self.RREADY and self.spellData[_R].dmg() or 0
- local IDmg = self.IREADY and 50+20*GetLevel(myHero) or 0
- local enemyhp = GetCurrentHP(enemy)
- if ValidTarget(self.enemy, self.spellData[_Q].range) and enemyhp < CalcDamage(myHero, enemy, 0, QDmg) then
- self:CastQ(enemy)
- elseif ValidTarget(enemy, self.spellData[_E].range) and enemyhp < CalcDamage(myHero, enemy, 0, EDmg) then
- self:CastE()
- elseif ValidTarget(enemy, self.spellData[_E].range) and enemyhp < CalcDamage(myHero, enemy, 0, EDmg + QDmg) and GetCurrentMana(myHero) > (self.spellData[_Q].mana() + self.spellData[_E].mana()) then
- self:CastE() DelayAction(function() self:CastQ(enemy) end, 150)
- elseif ValidTarget(enemy, self.spellData[_R].range) and enemyhp < CalcDamage(myHero, enemy, 0, RDmg + QDmg) and GetCurrentMana(myHero) > (self.spellData[_Q].mana() + self.spellData[_R].mana) then
- self:CastR(enemy) DelayAction(function() self:CastQ(enemy) end,150)
- elseif ValidTarget(enemy, self.spellData[_R].range) and enemyhp < CalcDamage(myHero, enemy, 0, QDmg + EDmg + RDmg) and GetCurrentMana(myHero) > (self.spellData[_Q].mana() + self.spellData[_E].mana() + self.spellData[_R].mana) then
- self:CastR(enemy) DelayAction(function() self:CastW() DelayAction(function() self:CastE() DelayAction(function() self:CastQ(enemy) end, 250) end, 75) end, 250)
- elseif ValidTarget(enemy, self.spellData[_R].range) and (self.IReady or GotBuff(enemy, "summonerdot")) and enemyhp < CalcDamage(myHero, enemy, 0, IDmg+RDmg + QDmg + WDmg + EDmg) and GetCurrentMana(myHero) > (self.spellData[_W].mana + self.spellData[_Q].mana() + self.spellData[_E].mana() + self.spellData[_R].mana) then
- self:CastR(enemy) DelayAction(function() self:CastW() DelayAction(function() self:CastE() DelayAction(function() self:CastQ(enemy) end, 250) end, 75) end, 250)
- end
- end
- end
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- ---------------------------------------------------------------------------------------------------------------Jayce----------------------------------------------------------------------------------------------------------
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- class "Jayce"
- function Jayce:__init()
- OnLoop(function(myHero) self:Loop(myHero) end)
- OnProcessSpell(function(unit,spell) self:ProcessSpell(unit,spell) end)
- self.spellData =
- {
- QG ={name = "jayceshockblast",
- windup = 0.214,
- dmg = function () return 20 + 50*GetCastLevel(myHero,_Q) + 1.2*GetBonusDmg(myHero) end,
- range = 1100,
- rangeAcc = 1750,
- mana = function () return 50 + 5*GetCastLevel(myHero,_Q) end,
- speed = 1450,
- speedAcc = 2350,
- width = 70,
- CD = function () return 8000 * (1+GetCDR(myHero)) end,
- up = 0},
- WG ={name = "jaycehypercharge",
- windup = 0.125,
- windup2 = 0.080,
- dmg = function () return 0.6*(GetBaseDamage(myHero)+GetBonusDmg(myHero)) + 0.08*GetCastLevel(myHero,_W)*(GetBaseDamage(myHero)+GetBonusDmg(myHero)) end,
- range = 500,
- mana = 40,
- CD = function () return (13000 - 1600*GetCastLevel(myHero,_W)) * (1+GetCDR(myHero)) end,
- up = 0},
- EG ={name = "jayceaccelerationgate",
- windup = 0.250,
- range = 0,
- mana = 30,
- CD = function () return 16000 * (1+GetCDR(myHero)) end,
- up = 0},
- RG ={name = "jaycestancegth",
- windup = 0.125,
- CD = function () return 6000 * (1+GetCDR(myHero))end,
- up = 0},
- QH ={name = "JayceToTheSkies",
- windup = 0.125,
- dmg = function () return 40*GetCastLevel(myHero,_Q) + GetBonusDmg(myHero) - 10 end,
- mana = function () return 40 + 5*GetCastLevel(myHero,_Q) end,
- range = 600,
- CD = function () return (18000 - 2000*GetCastLevel(myHero,_Q)) * (1+GetCDR(myHero)) end,
- up = 0},
- WH ={name = "JayceStaticField",
- windup = 0,
- dmg = function () return 40 + 60*GetCastLevel(myHero,_Q) + GetBonusAP(myHero) end,
- mana = 40,
- range = 300,
- CD = function () return 10000 * (1+GetCDR(myHero)) end,
- up = 0},
- EH = {name = "JayceThunderingBlow",
- windup = 0.250,
- dmg = function (unit) return 10 + 30*GetCastLevel(myHero,_Q) + GetBonusDmg(myHero) + 0.2*GetMaxHP(unit)end,
- mana = 40,
- range = 300,
- knockback = 250,
- CD = function () return (16000 - 1000*GetCastLevel(myHero,_E)) * (1+GetCDR(myHero)) end,
- up = 0},
- RH ={name = "JayceStanceHtG",
- windup = 0.125,
- CD = function () return 6000 * (1+GetCDR(myHero)) end,
- up = 0},
- PH ={dmg = function () return 40*GetCastLevel(myHero,_R)-20 end,
- up = 0}
- }
- self.Config = scriptConfig("PJayce", "PlatyJayce")
- self.Config.addParam("QG","Use Gun-Q", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("QH","Use Hammer-Q", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("WG","Use Gun-W", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("WH","Use Hammer-W", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("EG","Use Gun-E", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("EH","Use Hammer-E", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("RG","Use Gun-R", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("RH","Use Hammer-R", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("Draw","Draws", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("KS","Killsteal", SCRIPT_PARAM_ONOFF, true)
- --self.Config.addParam("Flee","Flee", SCRIPT_PARAM_KEYDOWN, string.byte("Y"))
- end
- function Jayce:Loop(myHero)
- self:Checks()
- if self.Config.Draw then
- self:Draws()
- end
- if self.Config.KS then
- self:Killsteal()
- end
- if _G.IWalkConfig.Combo then
- self:Combo()
- end
- if _G.IWalkConfig.Harass then
- self:Harass()
- end
- end
- function Jayce:Checks()
- self.QREADY = CanUseSpell(myHero,_Q) == READY
- self.WREADY = CanUseSpell(myHero,_W) == READY
- self.EREADY = CanUseSpell(myHero,_E) == READY
- self.RREADY = CanUseSpell(myHero,_R) == READY
- self.target = GetTarget(self.spellData.QG.rangeAcc, DAMAGE_PHYSICAL)
- self.targetPos = GetOrigin(self.target)
- myHeroPos = GetOrigin(myHero)
- self.rangedPassive = GotBuff(myHero,"jaycepassiverangedattack")
- self.meleePassive = GotBuff(myHero,"jaycepassivemeleeattack")
- self.HammerTime = GetCastName(myHero,_R) == "JayceStanceHtG"
- end
- function Jayce:Draws()
- --CD
- local c = 0
- for _, d in pairs(self.spellData) do
- local rcd = (d.up-GetTickCount())/1000
- local rcd = rcd > 0 and rcd or 0
- DrawText(_..": "..math.ceil(rcd),10,750,600+c*25,0xffff9999)
- c = c + 1
- end
- --Q
- if self.QREADY and self.HammerTime then
- DrawCircle(myHeroPos.x,myHeroPos.y,myHeroPos.z,self.spellData.QH.range,1,150,ARGB(0xff,255,247,0))
- DrawCircle(myHeroPos.x,myHeroPos.y,myHeroPos.z,self.spellData.QG.range,0,150,ARGB(50,200,200,255))
- DrawCircle(myHeroPos.x,myHeroPos.y,myHeroPos.z,self.spellData.QG.rangeAcc,0,150,ARGB(50,200,200,255))
- elseif self.QREADY and not self.HammerTime then
- DrawCircle(myHeroPos.x,myHeroPos.y,myHeroPos.z,self.spellData.QG.range,1,150,ARGB(0xff,200,200,255))
- if self.EREADY then
- DrawCircle(myHeroPos.x,myHeroPos.y,myHeroPos.z,self.spellData.QG.rangeAcc,1,150,ARGB(0xff,200,200,255))
- end
- DrawCircle(myHeroPos.x,myHeroPos.y,myHeroPos.z,self.spellData.QH.range,0,150,ARGB(50,255,247,0))
- end
- --W
- if self.WREADY and self.HammerTime then
- DrawCircle(myHeroPos.x,myHeroPos.y,myHeroPos.z,self.spellData.WH.range,1,150,ARGB(0xff,255,247,0))
- DrawCircle(myHeroPos.x,myHeroPos.y,myHeroPos.z,self.spellData.WG.range,0,150,ARGB(50,200,200,255))
- elseif self.WREADY and not self.HammerTime then
- DrawCircle(myHeroPos.x,myHeroPos.y,myHeroPos.z,self.spellData.WH.range,1,150,ARGB(50,255,247,0))
- DrawCircle(myHeroPos.x,myHeroPos.y,myHeroPos.z,self.spellData.WG.range,0,150,ARGB(0xff,200,200,255))
- end
- --E
- if self.EREADY and self.HammerTime then
- DrawCircle(myHeroPos.x,myHeroPos.y,myHeroPos.z,self.spellData.EH.range,1,150,ARGB(0xff,255,247,0))
- DrawCircle(myHeroPos.x,myHeroPos.y,myHeroPos.z,self.spellData.EG.range,0,150,ARGB(50,200,200,255))
- elseif self.EREADY and not self.HammerTime then
- DrawCircle(myHeroPos.x,myHeroPos.y,myHeroPos.z,self.spellData.EH.range,0,150,ARGB(50,255,247,0))
- DrawCircle(myHeroPos.x,myHeroPos.y,myHeroPos.z,self.spellData.EG.range,1,150,ARGB(0xff,200,200,255))
- end
- end
- function Jayce:CastQH(unit)
- if self.HammerTime and self.QREADY then
- CastTargetSpell(unit,_Q)
- end
- end
- function Jayce:CastQGAcc(unit)
- if not self.HammerTime and self.QREADY and self.Config.QG then
- local unitPos = GetOrigin(unit)
- if ValidTarget(unit,self.spellData.QG.rangeAcc) and self.EREADY and self.Config.QG then
- local QAccPred = GetPredictionForPlayer(myHeroPos,unit,GetMoveSpeed(unit),self.spellData.QG.speedAcc,self.spellData.QG.windup,self.spellData.QG.rangeAcc, self.spellData.QG.width, true, true)
- if self.QREADY and QAccPred.HitChance == 1 then
- CastSkillShot(_Q,QAccPred.PredPos.x,QAccPred.PredPos.y,QAccPred.PredPos.z)
- return true
- end
- return false
- end
- end
- end
- function Jayce:CastQG(unit)
- if not self.HammerTime and self.spellData.QG.up <= GetTickCount() and self.Config.QG then
- local unitPos = GetOrigin(unit)
- if ValidTarget(unit,self.spellData.QG.range) and self.spellData.EG.up >= GetTickCount() and self.Config.QG then
- local QPred = GetPredictionForPlayer(myHeroPos,unit,GetMoveSpeed(unit),self.spellData.QG.speed,self.spellData.QG.windup,self.spellData.QG.range, self.spellData.QG.width, true, true)
- if self.QREADY and QPred.HitChance == 1 then
- CastSkillShot(_Q,QPred.PredPos.x,QPred.PredPos.y,QPred.PredPos.z)
- end
- end
- end
- end
- function Jayce:CastKnockQ(unit)
- local unitPos = GetOrigin(unit)
- CastSkillShot(_Q,unitPos.x,unitPos.y,unitPos.z)
- end
- function Jayce:CastQGEG(unit)
- if ValidTarget(unit,self.spellData.QG.rangeAcc) and self.QREADY and self.EREADY and not self.HammerTime then
- if self:CastQGAcc(unit) then
- DelayAction(function() self:CastEG(unit) end,250)
- end
- end
- end
- function Jayce:CastEHRHQGEG(unit)
- if ValidTarget(unit,self.spellData.EH.range) and self.QREADY and self.EREADY and self.RREADY and self.HammerTime then
- self:CastEH(unit) DelayAction(function() self:CastRH() DelayAction(function() self:CastEG(unit) DelayAction(function() self:CastKnockQ(unit) end, 250) end, 125) end, 125)
- end
- end
- function Jayce:CastWH()
- if self.HammerTime and self.WREADY and self.Config.WH then
- CastSpell(_W)
- end
- end
- function Jayce:CastWG()
- if not self.HammerTime and self.WREADY and self.Config.WG then
- CastSpell(_W)
- end
- end
- function Jayce:CastEH(unit)
- if self.HammerTime and self.EREADY and self.Config.EH then
- CastTargetSpell(unit,_E)
- return true
- end
- return false
- end
- function Jayce:CastEG(unit)
- if not self.HammerTime and self.EREADY and self.Config.EG then
- local eVector = Vector(myHero)+Vector(Vector(unit)-Vector(myHero)):normalized()*50+Vector(Vector(unit)-Vector(myHero)):normalized():perpendicular()*100
- CastSkillShot(_E,eVector.x,eVector.y,eVector.z)
- end
- end
- function Jayce:CastRH()
- CastSpell(_R)
- end
- function Jayce:CastRG()
- CastSpell(_R)
- end
- function Jayce:Combo()
- local QHup = self.spellData.QH.up <= GetTickCount()
- local WHup = self.spellData.WH.up <= GetTickCount()
- local EHup = self.spellData.EH.up <= GetTickCount()
- local RHup = self.spellData.RH.up <= GetTickCount()
- local QGup = self.spellData.QG.up <= GetTickCount()
- local WGup = self.spellData.WG.up <= GetTickCount()
- local EGup = self.spellData.EG.up <= GetTickCount()
- local RGup = self.spellData.RG.up <= GetTickCount()
- --Guncombos
- if not self.HammerTime then
- if ValidTarget(self.target,self.spellData.QG.rangeAcc) and QGup and EGup then
- self:CastQGEG(self.target)
- elseif ValidTarget(self.target, self.spellData.QG.range) and QGup and not EGup then
- self:CastQG(self.target)
- elseif ValidTarget(self.target, self.spellData.QH.range) and WGup and RGup then
- self:CastWG()
- elseif ValidTarget(self.target, self.spellData.WG.range) and WGup then
- self:CastWG()
- elseif ValidTarget(self.target, self.spellData.QH.range) and not QGup and not EGup and not WGup and QHup and EHup then
- self:CastRG()
- end
- --Hammercombos
- elseif self.HammerTime then
- if ValidTarget(self.target, self.spellData.EH.range) and EHup and QHup then
- if self:CastEH(self.target) then
- DelayAction(function() self:CastQH(self.target) end, 250)
- end
- elseif ValidTarget(self.target, self.spellData.WH.range) and WHup then
- self:CastWH()
- elseif ValidTarget(self.target, self.spellData.QH.range) and QHup then
- self:CastQH(self.target)
- elseif ValidTarget(self.target, self.spellData.EH.range) and EHup and RHup then
- if self:CastEH(self.target) then
- DelayAction(function() self:CastRH() end, 250)
- end
- elseif ValidTarget(self.target, self.spellData.QH.range) and RHup and not QHup then
- self:CastRH()
- end
- end
- end
- function Jayce:Harass()
- if ValidTarget(self.target,self.spellData.QG.rangeAcc) and self.spellData.EG.up <= GetTickCount() and self.spellData.QG.up <= GetTickCount() and not self.HammerTime then
- self:CastQGEG(self.target)
- elseif ValidTarget(self.target,self.spellData.QG.range) and self.spellData.EG.up >= GetTickCount() and self.spellData.QG.up <= GetTickCount() and not self.HammerTime then
- self:CastQG(self.target)
- end
- end
- function Jayce:Killsteal()
- for i,enemy in pairs(GetEnemyHeroes()) do
- local enemyhp = GetCurrentHP(enemy)
- if self.HammerTime then
- if ValidTarget(enemy,self.spellData.QH.range) and enemyhp < CalcDamage(myHero, enemy, self.spellData.QH.dmg(),0) and self.QREADY then
- self:CastQH(enemy)
- elseif ValidTarget(enemy,self.spellData.EH.range) and enemyhp < CalcDamage(myHero, enemy, 0, self.spellData.EH.dmg(enemy)) and self.EREADY then
- self:CastEH(enemy)
- elseif ValidTarget(enemy,self.spellData.WH.range) and enemyhp < CalcDamage(myHero, enemy, 0, self.spellData.WH.dmg()/8) and self.WREADY then
- self:CastWH()
- elseif ValidTarget(enemy,self.spellData.QH.range) and enemyhp < CalcDamage(myHero, enemy, self.spellData.QH.dmg(), self.spellData.EH.dmg(enemy)) and self.QREADY and self.EREADY then
- self:CastQH(enemy) DelayAction(function() self:CastEH(enemy)end, 250)
- end
- elseif not self.HammerTime then
- if ValidTarget(enemy,self.spellData.QG.range) and enemyhp < CalcDamage(myHero, enemy, self.spellData.QG.dmg(), 0) and self.QREADY then
- self:CastQG(self.target)
- elseif ValidTarget(enemy, self.spellData.QG.rangeAcc) and enemyhp < CalcDamage(myHero, enemy, self.spellData.QG.dmg()*1.4, 0) and self.QREADY and self.EREADY then
- self:CastQGEG(self.target)
- end
- end
- end
- end
- function Jayce:ProcessSpell(unit,spell)
- if unit and unit == myHero then
- for _, d in pairs(self.spellData) do
- if spell.name == d.name then
- d.up = d.CD() + GetTickCount() + spell.windUpTime*1000
- end
- end
- end
- end
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- ---------------------------------------------------------------------------------------------------------------Syndra----------------------------------------------------------------------------------------------------------
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- --[[class "Syndra"
- function Syndra:__init()
- OnLoop(function(myHero) self:Loop(myHero) end)
- --OnProcessSpell(function(unit,spell) self:ProcessSpell(unit,spell) end)
- self.spellData =
- {
- Q ={name = "SyndraQ",
- dmg = function () return 5 + 45*GetCastLevel(myHero,_Q) + 0*6*GetBonusAP(myHero) end,
- range = 790,
- width = 125,
- delay = 0.6,
- speed = math.huge,
- mana = function () return 50 + 5*GetCastLevel(myHero,_Q) end},
- W ={name = "SyndraW",
- dmg = function () return 40 + 40*GetCastLevel(myHero,_W) + 0.7*GetBonusAP(myHero) end,
- range = 925,
- width = 190,
- delay = 0.8,
- speed = math.huge,
- mana = function () return 50 + 5*GetCastLevel(myHero,_W) end},
- E ={name = "SyndraE",
- dmg = function () return 25 + 45*GetCastLevel(myHero,_E) + 0.4*GetBonusAP(myHero) end,
- range = 730,
- width = 45,
- delay = 0.25,
- speed = 2500,
- mana = 50},
- R ={name = "SyndraR",
- dmg = function () return 45 + 45*GetCastLevel(myHero,_R) + 0.2*GetBonusAP(myHero) end,
- range = 675,
- rangeEX = 750,
- delay = 0.25,
- mana = 100},
- QE={range = 1280,
- width = 60,
- delay = 0,
- speed = 1600}
- }
- self.Config = scriptConfig("PSyndra", "PlatySyndra")
- self.Config.addParam("Q","Use Q", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("W","Use W", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("E","Use E", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("R","Use R", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("Draw","Draws", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("KS","Killsteal", SCRIPT_PARAM_ONOFF, true)
- end
- end
- function Syndra:Loop(myHero)
- --SyndraSphere
- end
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- ---------------------------------------------------------------------------------------------------------------Fiora----------------------------------------------------------------------------------------------------------
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- class "Fiora"
- function Fiora:__init()
- OnLoop(function(myHero) self:Loop(myHero) end)
- self.spellData =
- {
- Q ={name = "FioraQ",
- dmg = function () return 55 + 10*GetCastLevel(myHero,_Q) + ((0.15*GetCastLevel(myHero,_Q))*GetBonusDmg(myHero)) + 0.4*GetBonusDmg(myHero) end,
- range = 400,
- width = 125,
- delay = 0.6,
- speed = math.huge,
- mana = function () return 20 + 5*GetCastLevel(myHero,_Q) end},
- W ={name = "FioraW",
- dmg = function () return 50 + 40*GetCastLevel(myHero,_W) + GetBonusAP(myHero) end,
- range = 750,
- width = 190,
- delay = 0.75,
- speed = math.huge,
- mana = 50},
- E ={name = "FioraE",
- speed = 2500,
- mana = function () return 35 + 5*GetCastLevel(myHero,_E) end},
- R ={name = "FioraR",
- dmg = function () return 45 + 45*GetCastLevel(myHero,_R) + 0.2*GetBonusAP(myHero) end,
- range = 500,
- mana = 100},
- P={dmg = function () return 0.03 + 0.045*(GetBonusDmg(myHero) + GetBaseDamage(myHero)) - 0.028 end}
- }
- self.Config = scriptConfig("PFiora", "PlatyFiora")
- self.Config.addParam("Q","Use Q", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("W","Use W", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("E","Use E", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("R","Use R", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("Draw","Draws", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("KS","Killsteal", SCRIPT_PARAM_ONOFF, true)
- --AABuff FioraE
- --Riposte FioraW
- end
- function Fiora:Loop(myHero)
- self:Checks()
- if self.Config.Draw then
- self:Draws()
- end
- if self.Config.KS then
- -- self:Killsteal()
- end
- if _G.IWalkConfig.Combo then
- -- self:Combo()
- end
- if _G.IWalkConfig.Harass then
- -- self:Harass()
- end
- end
- function Fiora:Checks()
- self.QREADY = CanUseSpell(myHero,_Q) == READY
- self.WREADY = CanUseSpell(myHero,_W) == READY
- self.EREADY = CanUseSpell(myHero,_E) == READY
- self.RREADY = CanUseSpell(myHero,_R) == READY
- self.target = GetTarget(self.spellData.Q.range, DAMAGE_PHYSICAL)
- self.targetPos = GetOrigin(self.target)
- myHeroPos = GetOrigin(myHero)
- end
- function Fiora:Draws()
- if self.QREADY then
- DrawCircle(myHeroPos.x,myHeroPos.y,myHeroPos.z,self.spellData.Q.range,3,100,0xffff9999)
- end
- if self.WREADY then
- DrawCircle(myHeroPos.x,myHeroPos.y,myHeroPos.z,self.spellData.W.range,3,100,0xffff9999)
- end
- if self.RREADY then
- DrawCircle(myHeroPos.x,myHeroPos.y,myHeroPos.z,self.spellData.R.range,3,100,0xffff9999)
- end
- end
- function Fiora:Combo()
- --if ValidTarget(self.target,self.spellData.Q.range) then
- --end
- end
- ]]
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- ---------------------------------------------------------------------------------------------------------------Fiora----------------------------------------------------------------------------------------------------------
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- class "Katarina"
- function Katarina:__init()
- OnLoop(function(myHero) self:Loop(myHero) end)
- OnProcessSpell(function(unit,spell) self:ProcessSpell(unit,spell) end)
- self.Config = scriptConfig("PKatarina", "PlatyKatarina")
- self.Config.addParam("Q", "Use Q", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("W", "Use W", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("E", "Use E", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("R", "Use R", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("Draw","Draws", SCRIPT_PARAM_ONOFF, true)
- self.Config.addParam("KS","Killsteal", SCRIPT_PARAM_ONOFF, true)
- end
- function Katarina:Loop(myHero)
- if waitTickCount > GetTickCount() then return end
- local unit = GetTarget((CanUseSpell(myHero, _E) == READY and 700 or CanUseSpell(myHero, _Q) == READY and 675 or 375), DAMAGE_MAGIC)
- if unit then
- local dmg = 0
- local hp = GetCurrentHP(unit)
- local AP = GetBonusAP(myHero)
- local TotalDmg = GetBonusDmg(myHero)+GetBaseDamage(myHero)
- local targetPos = GetOrigin(unit)
- local drawPos = WorldToScreen(1,targetPos.x,targetPos.y,targetPos.z)
- if CanUseSpell(myHero, _Q) == READY then
- dmg = dmg + CalcDamage(myHero, unit, 0, 35+25*GetCastLevel(myHero,_Q)+0.45*AP) * 1.25
- end
- if CanUseSpell(myHero, _W) == READY then
- dmg = dmg + CalcDamage(myHero, unit, 0, 5+35*GetCastLevel(myHero,_W)+0.25*AP+0.6*TotalDmg)
- end
- if CanUseSpell(myHero, _E) == READY then
- dmg = dmg + CalcDamage(myHero, unit, 0, 10+30*GetCastLevel(myHero,_E)+0.25*AP)
- end
- if CanUseSpell(myHero, _R) ~= ONCOOLDOWN and GetCastLevel(myHero,_R) > 0 then
- dmg = dmg + CalcDamage(myHero, unit, 0, 30+10*GetCastLevel(myHero,_R)+0.2*AP+0.3*GetBonusDmg(myHero)) * 10
- end
- if dmg > hp then
- DrawText("Killable",20,drawPos.x,drawPos.y,0xffffffff)
- DrawDmgOverHpBar(unit,hp,0,hp,0xffffffff)
- else
- DrawText(math.floor(100 * dmg / hp).."%",20,drawPos.x,drawPos.y,0xffffffff)
- DrawDmgOverHpBar(unit,hp,0,dmg,0xffffffff)
- end
- if not IWalkConfig.Combo then return end
- if IsInDistance(unit, 675) and CanUseSpell(myHero, _Q) == READY and self.Config.Q then
- CastTargetSpell(unit, _Q)
- elseif IsInDistance(unit, 375) and CanUseSpell(myHero, _W) == READY and self.Config.W then
- CastTargetSpell(myHero, _W)
- elseif IsInDistance(unit, 700) and CanUseSpell(myHero, _E) == READY and self.Config.E then
- CastTargetSpell(unit, _E)
- elseif IsInDistance(unit, 550) and CanUseSpell(myHero, _Q) ~= READY and self.Config.R and CanUseSpell(myHero, _W) ~= READY and CanUseSpell(myHero, _E) ~= READY and CanUseSpell(myHero, _R) ~= ONCOOLDOWN and GetCastLevel(myHero,_R) > 0 then
- HoldPosition()
- waitTickCount = GetTickCount() + 50
- CastTargetSpell(myHero, _R)
- end
- lastTargetName = GetObjectName(unit)
- end
- end
- function Katarina:ProcessSpell(unit, spell)
- if unit and unit == myHero and spell then
- if spell.name:lower():find("katarinar") then
- waitTickCount = GetTickCount() + 2500
- end
- end
- end
- supportedHero = {["Annie"] = true,["Jayce"] = true,["Malphite"] = true,["Ryze"] = true,["Syndra"] = true}
- if _G[GetObjectName(myHero)] then
- _G[GetObjectName(myHero)]()
- end
- --Evelynn
- if GetObjectName(GetMyHero()) == "Evelynn" then
- --Menu
- Config = scriptConfig("Evelynn", "Evelynn")
- Config.addParam("Q", "Use Q", SCRIPT_PARAM_ONOFF, true)
- Config.addParam("W", "Use W", SCRIPT_PARAM_ONOFF, true)
- Config.addParam("E", "Use E", SCRIPT_PARAM_ONOFF, true)
- Config.addParam("R", "Use R", SCRIPT_PARAM_ONOFF, true)
- --Start
- OnLoop(function(myHero)
- AutoIgnite()
- if IWalkConfig.Combo then
- local unit = GetCurrentTarget()
- if ValidTarget(unit, 1550) then
- -- Evelynn W
- if Config.W then
- if GetCastName(myHero, _W) == "EvelynnW" then
- if CanUseSpell(myHero, _W) == READY then
- CastTargetSpell(myHero,_W)
- end
- end
- end
- -- Evelynn Q
- if Config.Q then
- if GetCastName(myHero, _Q) == "EvelynnQ" then
- if CanUseSpell(myHero, _Q) == READY then
- CastTargetSpell(myHero,_Q)
- end
- end
- end
- -- Evelynn E
- if Config.E then
- if GetCastName(myHero, _E) == "EvelynnE" then
- if CanUseSpell(myHero, _E) == READY then
- CastTargetSpell(unit,_E)
- end
- end
- end
- -- Evelynn R
- if Config.R then
- if GetCastName(myHero, _R) == "EvelynnR" then
- local RPred = GetPredictionForPlayer(GetMyHeroPos(),unit,GetMoveSpeed(unit),1600,250,650,55,false,true)
- if CanUseSpell(myHero, _R) == READY and IsInDistance(unit, 1550) then
- CastSkillShot(_R,RPred.PredPos.x,RPred.PredPos.y,RPred.PredPos.z)
- end
- end
- end
- end
- end
- end)
- end
- --Akali
- if GetObjectName(GetMyHero()) == "Akali" then
- --Menu
- Config = scriptConfig("Akali", "Akali")
- Config.addParam("Q", "Use Q", SCRIPT_PARAM_ONOFF, true)
- Config.addParam("W", "Use W", SCRIPT_PARAM_ONOFF, true)
- Config.addParam("E", "Use E", SCRIPT_PARAM_ONOFF, true)
- Config.addParam("R", "Use R", SCRIPT_PARAM_ONOFF, true)
- --Start
- OnLoop(function(myHero)
- AutoIgnite()
- if IWalkConfig.Combo then
- local unit = GetCurrentTarget()
- if ValidTarget(unit, 1550) then
- if Config.Q then
- if GetCastName(myHero, _Q) == "AkaliMota" then
- if CanUseSpell(myHero, _Q) == READY then
- CastTargetSpell(unit,_Q)
- end
- end
- end
- -- Akali E
- if Config.E then
- if GetCastName(myHero, _E) == "AkaliShadowSwipe" then
- local EPred = GetPredictionForPlayer(GetMyHeroPos(),unit,GetMoveSpeed(unit),1600,250,325,55,false,true)
- if CanUseSpell(myHero, _E) == READY and IsInDistance(unit, 325) then
- CastSkillShot(_E,EPred.PredPos.x,EPred.PredPos.y,EPred.PredPos.z)
- end
- end
- -- Akali W
- if Config.W then
- if GetCastName(myHero, _W) == "AkaliSmokeBomb" then
- if CanUseSpell(myHero, _W) == READY then
- CastTargetSpell(unit,_W)
- end
- end
- end
- -- Akali R
- if Config.R then
- if GetCastName(myHero, _R) == "AkaliShadowDance" then
- if CanUseSpell(myHero, _R) == READY then
- CastTargetSpell(unit,_R)
- end
- end
- end
- end
- end
- end
- end)
- end
- --Menu
- if GetObjectName(GetMyHero()) == "Azir" then
- --Azir
- Config = scriptConfig("Azir", "Azir")
- Config.addParam("Q", "Use Q", SCRIPT_PARAM_ONOFF, true)
- Config.addParam("W", "Use W", SCRIPT_PARAM_ONOFF, true)
- Config.addParam("E", "Use E", SCRIPT_PARAM_ONOFF, true)
- Config.addParam("R", "Use R", SCRIPT_PARAM_ONOFF, true)
- --Start
- OnLoop(function(myHero)
- AutoIgnite()
- if IWalkConfig.Combo then
- local unit = GetCurrentTarget()
- if ValidTarget(unit, 1550) then
- -- Azir W
- if Config.W then
- if GetCastName(myHero, _W) == "AzirW" then
- local WPred = GetPredictionForPlayer(GetMyHeroPos(),unit,GetMoveSpeed(unit),1600,250,850,55,false,true)
- if CanUseSpell(myHero, _W) == READY and WPred.HitChance == 1 then
- CastSkillShot(_W,WPred.PredPos.x,WPred.PredPos.y,WPred.PredPos.z)
- end
- end
- end
- -- Azir Q
- if Config.Q then
- if GetCastName(myHero, _Q) == "AzirQ" then
- local QPred = GetPredictionForPlayer(GetMyHeroPos(),unit,GetMoveSpeed(unit),1600,250,1500,55,false,true)
- if CanUseSpell(myHero, _Q) == READY and QPred.HitChance == 1 then
- CastSkillShot(_Q,QPred.PredPos.x,QPred.PredPos.y,QPred.PredPos.z)
- end
- end
- end
- -- Azir E
- if Config.E then
- if GetCastName(myHero, _E) == "AzirE" then
- local EPred = GetPredictionForPlayer(GetMyHeroPos(),unit,GetMoveSpeed(unit),1700,250,850,50,false,true)
- if CanUseSpell(myHero, _E) == READY and EPred.HitChance == 1 then
- CastSkillShot(_E,EPred.PredPos.x,EPred.PredPos.y,EPred.PredPos.z)
- end
- end
- end
- -- Azir R
- if Config.R then
- if GetCastName(myHero, _R) == "AzirR" then
- local RPred = GetPredictionForPlayer(GetMyHeroPos(),unit,GetMoveSpeed(unit),1600,250,250,55,false,true)
- if CanUseSpell(myHero, _R) == READY and IsInDistance(unit, 1550) then
- CastSkillShot(_R,RPred.PredPos.x,RPred.PredPos.y,RPred.PredPos.z)
- end
- end
- end
- end
- end
- end)
- end
- --Viktor
- if GetObjectName(GetMyHero()) == "Viktor" then
- --Menu
- Config = scriptConfig("Viktor", "Viktor")
- Config.addParam("Q", "Use Q", SCRIPT_PARAM_ONOFF, true)
- Config.addParam("W", "Use W", SCRIPT_PARAM_ONOFF, true)
- Config.addParam("E", "Use E", SCRIPT_PARAM_ONOFF, true)
- Config.addParam("R", "Use R", SCRIPT_PARAM_ONOFF, true)
- --Start
- OnLoop(function(myHero)
- AutoIgnite()
- if IWalkConfig.Combo then
- local unit = GetCurrentTarget()
- if ValidTarget(unit, 1550) then
- -- Viktor W
- if Config.W then
- if GetCastName(myHero, _W) == "ViktorGravitonField" then
- local WPred = GetPredictionForPlayer(GetMyHeroPos(),unit,GetMoveSpeed(unit),1600,250,700,55,false,true)
- if CanUseSpell(myHero, _W) == READY and WPred.HitChance == 1 then
- CastSkillShot(_W,WPred.PredPos.x,WPred.PredPos.y,WPred.PredPos.z)
- end
- end
- end
- -- Viktor Q
- if Config.Q then
- if GetCastName(myHero, _Q) == "ViktorPowerTransfer" then
- if CanUseSpell(myHero, _Q) == READY then
- CastTargetSpell(unit,_Q)
- end
- end
- end
- -- Viktor E
- local myorigin = GetOrigin(unit)
- local mymouse = GetMousePos()
- if Config.E then
- if GetCastName(myHero, _E) == "ViktorDeathRay" then
- local EPred = GetPredictionForPlayer(GetMyHeroPos(),unit,GetMoveSpeed(unit),1600,250,525,55,false,true)
- if CanUseSpell(myHero, _E) == READY then
- CastSkillShot3(_E,myorigin,mymouse)
- end
- end
- end
- -- Viktor R
- if Config.R then
- if GetCastName(myHero, _R) == "ViktorChaosStorm" then
- local RPred = GetPredictionForPlayer(GetMyHeroPos(),unit,GetMoveSpeed(unit),1600,250,700,55,false,true)
- if CanUseSpell(myHero, _R) == READY and IsInDistance(unit, 1550) then
- CastSkillShot(_R,RPred.PredPos.x,RPred.PredPos.y,RPred.PredPos.z)
- end
- end
- end
- end
- end
- end)
- end
- -- VelKoz
- if GetObjectName(GetMyHero()) == "Velkoz" then
- --Menu
- Config = scriptConfig("VelKoz", "VelKoz")
- Config.addParam("Q", "Use Q", SCRIPT_PARAM_ONOFF, true)
- Config.addParam("W", "Use W", SCRIPT_PARAM_ONOFF, true)
- Config.addParam("E", "Use E", SCRIPT_PARAM_ONOFF, true)
- Config.addParam("R", "Use R", SCRIPT_PARAM_ONOFF, true)
- --Start
- OnLoop(function(myHero)
- AutoIgnite()
- if IWalkConfig.Combo then
- local unit = GetCurrentTarget()
- if ValidTarget(unit, 1550) then
- -- Velkoz E
- if Config.E then
- if GetCastName(myHero, _E) == "VelkozE" then
- local EPred = GetPredictionForPlayer(GetMyHeroPos(),unit,GetMoveSpeed(unit),1700,250,850,50,false,true)
- if CanUseSpell(myHero, _E) == READY and EPred.HitChance == 1 then
- CastSkillShot(_E,EPred.PredPos.x,EPred.PredPos.y,EPred.PredPos.z)
- end
- end
- end
- -- Velkoz W
- if Config.W then
- if GetCastName(myHero, _W) == "VelkozW" then
- local WPred = GetPredictionForPlayer(GetMyHeroPos(),unit,GetMoveSpeed(unit),1600,250,1500,55,false,true)
- if CanUseSpell(myHero, _W) == READY and WPred.HitChance == 1 then
- CastSkillShot(_W,WPred.PredPos.x,WPred.PredPos.y,WPred.PredPos.z)
- end
- end
- end
- -- Velkoz Q
- if Config.Q then
- if GetCastName(myHero, _Q) == "VelkozQ" then
- local QPred = GetPredictionForPlayer(GetMyHeroPos(),unit,GetMoveSpeed(unit),1600,250,1050,55,true,true)
- if CanUseSpell(myHero, _Q) == READY and QPred.HitChance == 1 then
- CastSkillShot(_Q,QPred.PredPos.x,QPred.PredPos.y,QPred.PredPos.z)
- end
- end
- end
- -- Velkoz R
- if Config.R then
- if GetCastName(myHero, _R) == "VelkozR" then
- local RPred = GetPredictionForPlayer(GetMyHeroPos(),unit,GetMoveSpeed(unit),1600,250,1500,55,false,true)
- if CanUseSpell(myHero, _R) == READY and IsInDistance(unit, 1550) then
- CastSkillShot(_R,RPred.PredPos.x,RPred.PredPos.y,RPred.PredPos.z)
- end
- end
- end
- end
- end
- end)
- end
- if GetObjectName(GetMyHero()) == "Syndra" then
- --Menu
- Config = scriptConfig("Syndra", "Syndra")
- Config.addParam("Q", "Use Q", SCRIPT_PARAM_ONOFF, true)
- Config.addParam("W", "Use W", SCRIPT_PARAM_ONOFF, true)
- Config.addParam("E", "Use E", SCRIPT_PARAM_ONOFF, true)
- Config.addParam("R", "Use R", SCRIPT_PARAM_ONOFF, true)
- Config.addParam("Stun", "Press to Stun", SCRIPT_PARAM_KEYDOWN, string.byte("T")) --Maxxel logic
- --Start
- OnLoop(function(myHero)
- AutoIgnite()
- if IWalkConfig.Combo then
- local unit = GetCurrentTarget()
- if ValidTarget(unit, 1200) then
- -- Syndra Q cast
- if GetCastName(myHero, _Q) == "SyndraQ" then
- local QPred = GetPredictionForPlayer(GetMyHeroPos(),unit,GetMoveSpeed(unit),1700,250,800,50,true,true)
- if Config.Q then
- if CanUseSpell(myHero, _Q) == READY and QPred.HitChance == 1 then
- CastSkillShot(_Q,QPred.PredPos.x,QPred.PredPos.y,QPred.PredPos.z)
- end
- end
- end
- -- Syndra cast W on Minion
- if GetCastName(myHero, _W) == "SyndraW" then
- if Config.W then
- if CanUseSpell(myHero, _W) == READY then
- CastTargetSpell(Obj_AI_Minion, _W)
- end
- end
- end
- -- Syndra cast W at Enemy
- if GetCastName(myHero, _W) == "SyndraW" then
- local WPred = GetPredictionForPlayer(GetMyHeroPos(),unit,GetMoveSpeed(unit),1700,250,925,50,true,true)
- if Config.W then
- if CanUseSpell(myHero, _W) == READY and WPred.HitChance == 1 then
- CastSkillShot(_W,WPred.PredPos.x,WPred.PredPos.y,WPred.PredPos.z)
- end
- end
- end
- -- Syndra PUSH
- if GetCastName(myHero, _E) == "SyndraE" then
- local EPred = GetPredictionForPlayer(GetMyHeroPos(),unit,GetMoveSpeed(unit),1700,250,700,50,true,true)
- if Config.E then
- if CanUseSpell(myHero, _E) == READY and EPred.HitChance == 1 then
- CastSkillShot(_E,EPred.PredPos.x,EPred.PredPos.y,EPred.PredPos.z)
- end
- end
- end
- -- Syndra Ultimate
- if GetCastName(myHero, _R) == "SyndraR" then
- if Config.R then
- if unit ~= nil then
- if CanUseSpell(myHero, _R) == READY and IsInDistance(unit, 675) then
- CastTargetSpell(unit, _R)
- end
- end
- end
- end
- local unit = GetCurrentTarget() --Maxxxel logic
- local myHeroPos = GetOrigin(myHero)
- DrawCircle(myHeroPos.x,myHeroPos.y,myHeroPos.z,1200,2,0,0xffff0000)
- if Config.Stun then
- if ValidTarget(unit,1200) then
- local timea
- local distanceStun=0
- if timea~=nil and CanUseSpell(myHero, _Q) ~= READY and CanUseSpell(myHero, _E) ~= READY then
- timea=nil
- end
- ---Values---
- local enemyposition = GetPredictionForPlayer(GetMyHeroPos(),unit,GetMoveSpeed(unit),1700,250,1200,50,true,true)
- enemyposx=enemyposition.PredPos.x
- enemyposy=enemyposition.PredPos.y
- enemyposz=enemyposition.PredPos.z
- local TargetPos = Vector(enemyposx,enemyposy,enemyposz)
- if GetDistance(unit)>=700 then
- distanceStun=GetDistance(unit)-700
- end
- if GetDistance(unit)<700 then
- distanceStun=0
- end
- local firePos = TargetPos-(TargetPos-myHeroPos)*(distanceStun/GetDistance(unit))
- local dPredict = GetDistance(myHero,firePosPoint)
- ---Values end---
- if CanUseSpell(myHero, _Q) == READY and CanUseSpell(myHero, _E) == READY and timea==nil then
- if dPredict < 1200 then
- CastSkillShot(_Q,firePos.x,0,firePos.z)
- timea = GetTickCount()
- end
- end
- if CanUseSpell(myHero, _E) == READY and timea~=GetTickCount() then
- CastSkillShot(_E,firePos.x,0,firePos.z)
- end
- end
- Move()
- end
- function Move()
- local movePos = GenerateMovePos()
- if GetDistance(GetMousePos()) > GetHitBox(myHero) then
- MoveToXYZ(movePos.x, 0, movePos.z)
- end
- end
- end
- end
- end)
- end
- -- Ekko
- if GetObjectName(GetMyHero()) == "Ekko" then
- --Menu
- Config = scriptConfig("Ekko", "Ekko")
- Config.addParam("Q", "Use Q", SCRIPT_PARAM_ONOFF, true)
- Config.addParam("W", "Use W", SCRIPT_PARAM_ONOFF, true)
- Config.addParam("E", "Use E", SCRIPT_PARAM_ONOFF, true)
- Config.addParam("R", "Use R", SCRIPT_PARAM_ONOFF, true)
- --Start
- OnLoop(function(myHero)
- if GetCastName(myHero, _R) == "EkkoR" then
- if Config.R then
- if (GetCurrentHP(myHero)/GetMaxHP(myHero))<0.2 and
- CanUseSpell(myHero, _R) == READY and IsObjectAlive(myHero) then
- CastTargetSpell(myHero,_R)
- end
- end
- end
- AutoIgnite()
- if IWalkConfig.Combo then
- local unit = GetCurrentTarget()
- if ValidTarget(unit, 1200) then
- -- Q cast
- if GetCastName(myHero, _Q) == "EkkoQ" then
- local QPred = GetPredictionForPlayer(GetMyHeroPos(),unit,GetMoveSpeed(unit),1700,250,1075,50,true,true)
- if Config.Q then
- if CanUseSpell(myHero, _Q) == READY and QPred.HitChance == 1 then
- CastSkillShot(_Q,QPred.PredPos.x,QPred.PredPos.y,QPred.PredPos.z)
- end
- end
- end
- -- W Cast
- if GetCastName(myHero, _W) == "EkkoW" then
- local WPred = GetPredictionForPlayer(GetMyHeroPos(),unit,GetMoveSpeed(unit),1700,250,1600,50,false,true)
- if Config.W then
- if CanUseSpell(myHero, _W) == READY and WPred.HitChance == 1 then
- CastSkillShot(_W,WPred.PredPos.x,WPred.PredPos.y,WPred.PredPos.z)
- end
- end
- end
- -- E Cast Will cast E and if im correct then GoS will click champ and Ekko will blink Cast = 325 range Blink= 425
- if GetCastName(myHero, _E) == "EkkoE" then
- local EPred = GetPredictionForPlayer(GetMyHeroPos(),unit,GetMoveSpeed(unit),1700,250,750,50,false,true)
- if Config.E then
- if CanUseSpell(myHero, _E) == READY and EPred.HitChance == 1 then
- CastSkillShot(_E,EPred.PredPos.x,EPred.PredPos.y,EPred.PredPos.z)
- end
- end
- end
- -- R Cast Disabled till i manage how to Use R when low --THANKS SNOWBALL
- if GetCastName(myHero, _R) == "EkkoR" then
- if Config.R then
- CastTargetSpell(myHero,_R)
- end
- end
- end
- end
- end)
- end
- --Nidalee
- if GetObjectName(GetMyHero()) == "Nidalee" then
- --Menu
- Config = scriptConfig("Nidalee", "Nidalee")
- Config.addParam("Q", "Use Q", SCRIPT_PARAM_ONOFF, true)
- Config.addParam("W", "Use W", SCRIPT_PARAM_ONOFF, true)
- Config.addParam("E", "Use E", SCRIPT_PARAM_ONOFF, true)
- Config.addParam("R", "Use R", SCRIPT_PARAM_ONOFF, true)
- Config.addParam("Q2", "Use Q2", SCRIPT_PARAM_ONOFF, true)
- Config.addParam("W2", "Use W2", SCRIPT_PARAM_ONOFF, true)
- Config.addParam("E2", "Use E2", SCRIPT_PARAM_ONOFF, true)
- --Start
- OnLoop(function(myHero)
- -- Nidalee human heal --THANKS SNOWBALL
- if GetCastName(myHero, _E) == "PrimalSurge" then
- if Config.E then
- if (GetCurrentHP(myHero)/GetMaxHP(myHero))<0.2 and
- CanUseSpell(myHero, _E) == READY and IsObjectAlive(myHero) then
- CastTargetSpell(myHero,_E)
- end
- end
- end
- AutoIgnite()
- if IWalkConfig.Combo then
- local unit = GetCurrentTarget()
- if ValidTarget(unit, 1500) then
- -- Nidalee Human Trap
- if GetCastName(myHero, _W) == "Bushwhack" then
- local WPred = GetPredictionForPlayer(GetMyHeroPos(),unit,GetMoveSpeed(unit),1700,250,900,50,true,true)
- if Config.W then
- if CanUseSpell(myHero, _W) == READY and WPred.HitChance == 1 then
- CastSkillShot(_W,WPred.PredPos.x,WPred.PredPos.y,WPred.PredPos.z)
- end
- end
- end
- -- Nidalee human spear
- if GetCastName(myHero, _Q) == "JavelinToss"then
- -- GetPredictionForPlayer(startPosition, targetUnit, targetUnitMoveSpeed, spellTravelSpeed, spellDelay, spellRange, spellWidth, collision, addHitBox)
- local QPred = GetPredictionForPlayer(GetMyHeroPos(),unit,GetMoveSpeed(unit),1600,250,1500,55,true,true)
- if Config.Q then
- if CanUseSpell(myHero, _Q) == READY and QPred.HitChance == 1 then
- CastSkillShot(_Q,QPred.PredPos.x,QPred.PredPos.y,QPred.PredPos.z)
- end
- end
- end
- -- Tansform to cougar
- if GetCastName(myHero, _R) == "AspectOfTheCougar" then
- if Config.R then
- if unit ~= nil then
- if CanUseSpell(myHero, _R) == READY and CanUseSpell(myHero, _W) == READY and CanUseSpell(myHero, _Q) ~= READY and IsInDistance(unit, 750) and GotBuff(unit, "Hunted") then
- CastTargetSpell(myHero, _R)
- end
- end
- end
- end
- -- Cougar attack Q
- if GetCastName(myHero, _Q) == "Takedown" then
- if Config.Q2 then
- if CanUseSpell(myHero, _Q) == READY and IsInDistance(unit, 475) then
- CastTargetSpell(unit, _Q)
- end
- end
- end
- -- Cougar pounce W
- if GetCastName(myHero, _W) == "Pounce" then
- if Config.W2 then
- if CanUseSpell(myHero, _W) == READY and IsInDistance(unit, 375) then
- CastTargetSpell(unit, _W)
- end
- end
- end
- -- E cast in cougar form
- if GetCastName(myHero, _E) == "Swipe" then
- if Config.E2 then
- if CanUseSpell(myHero, _E) == READY and IsInDistance(unit, 300) then
- CastTargetSpell(unit, _E)
- end
- end
- end
- -- Transform back
- if GetCastName(myHero, _R) == "AspectOfTheCougar" then
- if Config.R then
- if unit ~= nil then
- if CanUseSpell(myHero, _R) == READY and CanUseSpell(myHero, _W) ~= READY and CanUseSpell(myHero, _Q) ~= READY then
- CastSpell(_R)
- end
- end
- end
- end
- end
- end
- end)
- end
- -- Graves
- if GetObjectName(GetMyHero()) == "Graves" then
- --Menu
- Config = scriptConfig("Graves", "Graves")
- Config.addParam("Q", "Use Q", SCRIPT_PARAM_ONOFF, true)
- Config.addParam("W", "Use W", SCRIPT_PARAM_ONOFF, true)
- Config.addParam("E", "Use E", SCRIPT_PARAM_ONOFF, true)
- Config.addParam("R", "Use R", SCRIPT_PARAM_ONOFF, true)
- --Start
- OnLoop(function(myHero)
- local target = GetCurrentTarget()
- if ValidTarget(target, math.huge) then
- if KeyIsDown(32) then
- castE(target)
- castQ(target)
- castW(target)
- castR(target)
- end
- end
- end
- -- End
- -- W cast
- )function castW( target )
- if Config.W then
- pred = GetPredictionForPlayer(GetOrigin(target),target,GetMoveSpeed(target),math.huge,500,GetCastRange(myHero,_W),900,false,true)
- if IsInDistance(target, GetCastRange(myHero,_W)) and CanUseSpell(myHero,_W) == READY and pred.HitChance == 1 then
- CastSkillShot(_W,pred.PredPos.x,pred.PredPos.y,pred.PredPos.z)
- end
- end
- -- Q cast
- function castQ( target )
- if Config.Q then
- pred = GetPredictionForPlayer(GetOrigin(target),target,GetMoveSpeed(target),math.huge,500,GetCastRange(myHero,_Q),900,false,true)
- if IsInDistance(target, GetCastRange(myHero,_Q)) and CanUseSpell(myHero,_Q) == READY and pred.HitChance == 1 then
- CastSkillShot(_Q,pred.PredPos.x,pred.PredPos.y,pred.PredPos.z)
- end
- end
- -- E cast
- end
- function castE( target )
- if Config.E then
- if IsInDistance(target, GetCastRange(myHero,_E)) and CanUseSpell(myHero,_E) == READY then
- CastSkillShot(_E, GetMousePos().x, GetMousePos().y, GetMousePos().z)
- end
- end
- -- R cast
- -- R cast
- function castR( target )
- pred = GetPredictionForPlayer(GetOrigin(target),target,GetMoveSpeed(target),math.huge,500,GetCastRange(myHero,_R),950,false,true)
- if CanUseSpell(myHero_R) == READY and pred.HitChance == 1 and IsInDistance(target, GetCastRange(myHero,_R)) and Config.R and CalcDamage(myHero, target, (150*GetCastLevel(myHero,_R)+100+1.5*GetBonusDmg(myHero)), 0) > GetCurrentHP(target) then
- CastSkillShot(_R,pred.PredPos.x,pred.PredPos.y,pred.PredPos.z)
- end
- end
- end
- end
- end
- PrintChat(string.format("<font color='#1244EA'>[CloudAIO]</font> <font color='#FFFFFF'>and</font> <font color='#1244EA'>[PlatyAIO]</font> <font color='#FFFFFF'>Loaded</font> "))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement