static void CastE(Obj_AI_Base unit) { if (unit != null) { var predPos = DarkPrediction.LinearPrediction(myHero.Position, E.Data, (AIHeroClient)unit); if (predPos != DarkPrediction.empt && !DarkPrediction.CollisionChecker(predPos, myHero.Position, E.Data) && predPos.Distance(myHero) <= E.Data.Range && Game.Time > humanizer) { E.Data.Cast(predPos); humanizer = Game.Time + 0.2f + E.Data.Delay; } } }
static void CastW(Obj_AI_Base unit) { if (unit != null) { var predPos = DarkPrediction.CirclerPrediction(W.Data, (AIHeroClient)unit, 0); if (predPos != DarkPrediction.empt && predPos.Distance(myHero) <= W.Data.Range && Game.Time > humanizer) { W.Data.Cast(predPos); humanizer = Game.Time + 0.2f + W.Data.Delay; } } }
static void CastR(AIHeroClient unit) { int index = 2 + R.Data.Level - RData.Count; if (Game.GameTimeTickCount - RData.Delay[index] > myMenu.Get <MenuSlider>("R" + index.ToString()).CurrentValue&& unit != null) { var predPos = DarkPrediction.CirclerPrediction(R.Data, unit, 1); if (predPos != DarkPrediction.empt && predPos.Distance(myHero) <= R.Data.Range) { R.Data.Cast(predPos); } } }
static void CastQ(Obj_AI_Base unit) { if (unit != null) { if (!QData.Active) { Q.Data.Cast(Game.CursorPosition); } else { var predPos = DarkPrediction.CirclerPrediction(Q.Data, (AIHeroClient)unit, 1); if (predPos != DarkPrediction.empt && myHero.Distance(predPos) <= Q.Data.Range && Game.Time > humanizer) { myHero.Spellbook.UpdateChargedSpell(Q.Data.Slot, predPos, true); humanizer = Game.Time + 0.2f + Q.Data.Delay; } } } }