本文整理汇总了C#中LeagueSharp.Common.Spell.CastIfWillHit方法的典型用法代码示例。如果您正苦于以下问题:C# Spell.CastIfWillHit方法的具体用法?C# Spell.CastIfWillHit怎么用?C# Spell.CastIfWillHit使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类LeagueSharp.Common.Spell
的用法示例。
在下文中一共展示了Spell.CastIfWillHit方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: CastSpell
private static void CastSpell(Spell QWER, Obj_AI_Hero target, int HitChanceNum)
{
//HitChance 0 - 2
// example CastSpell(Q, ts, 2);
if (HitChanceNum == 0)
QWER.Cast(target, true);
else if (HitChanceNum == 1)
QWER.CastIfHitchanceEquals(target, HitChance.VeryHigh, true);
else if (HitChanceNum == 2)
{
if (QWER.Delay < 0.3)
QWER.CastIfHitchanceEquals(target, HitChance.Dashing, true);
QWER.CastIfHitchanceEquals(target, HitChance.Immobile, true);
QWER.CastIfWillHit(target, 2, true);
if (target.Path.Count() < 2)
QWER.CastIfHitchanceEquals(target, HitChance.VeryHigh, true);
}
else if (HitChanceNum == 3)
{
List<Vector2> waypoints = target.GetWaypoints();
//debug("" + target.Path.Count() + " " + (target.Position == target.ServerPosition) + (waypoints.Last<Vector2>().To3D() == target.ServerPosition));
if (QWER.Delay < 0.3)
QWER.CastIfHitchanceEquals(target, HitChance.Dashing, true);
QWER.CastIfHitchanceEquals(target, HitChance.Immobile, true);
QWER.CastIfWillHit(target, 2, true);
float SiteToSite = ((target.MoveSpeed * QWER.Delay) + (Player.Distance(target.ServerPosition) / QWER.Speed)) * 6 - QWER.Width;
float BackToFront = ((target.MoveSpeed * QWER.Delay) + (Player.Distance(target.ServerPosition) / QWER.Speed));
if (ObjectManager.Player.Distance(waypoints.Last<Vector2>().To3D()) < SiteToSite || ObjectManager.Player.Distance(target.Position) < SiteToSite)
QWER.CastIfHitchanceEquals(target, HitChance.High, true);
else if (target.Path.Count() < 2
&& (target.ServerPosition.Distance(waypoints.Last<Vector2>().To3D()) > SiteToSite
|| Math.Abs(ObjectManager.Player.Distance(waypoints.Last<Vector2>().To3D()) - ObjectManager.Player.Distance(target.Position)) > BackToFront
|| target.HasBuffOfType(BuffType.Slow) || target.HasBuff("Recall")
|| (target.Path.Count() == 0 && target.Position == target.ServerPosition)
))
{
if (target.IsFacing(ObjectManager.Player) || target.Path.Count() == 0)
{
if (ObjectManager.Player.Distance(target.Position) < QWER.Range - ((target.MoveSpeed * QWER.Delay) + (Player.Distance(target.Position) / QWER.Speed)))
QWER.CastIfHitchanceEquals(target, HitChance.High, true);
}
else
{
QWER.CastIfHitchanceEquals(target, HitChance.High, true);
}
}
}
else if (HitChanceNum == 4 && (int)QWER.GetPrediction(target).Hitchance > 4)
{
List<Vector2> waypoints = target.GetWaypoints();
//debug("" + target.Path.Count() + " " + (target.Position == target.ServerPosition) + (waypoints.Last<Vector2>().To3D() == target.ServerPosition));
if (QWER.Delay < 0.3)
QWER.CastIfHitchanceEquals(target, HitChance.Dashing, true);
QWER.CastIfHitchanceEquals(target, HitChance.Immobile, true);
QWER.CastIfWillHit(target, 2, true);
float SiteToSite = ((target.MoveSpeed * QWER.Delay) + (Player.Distance(target.ServerPosition) / QWER.Speed)) * 6 - QWER.Width;
float BackToFront = ((target.MoveSpeed * QWER.Delay) + (Player.Distance(target.ServerPosition) / QWER.Speed));
if (ObjectManager.Player.Distance(waypoints.Last<Vector2>().To3D()) < SiteToSite || ObjectManager.Player.Distance(target.Position) < SiteToSite)
QWER.CastIfHitchanceEquals(target, HitChance.High, true);
else if (target.Path.Count() < 2
&& (target.ServerPosition.Distance(waypoints.Last<Vector2>().To3D()) > SiteToSite
|| Math.Abs(ObjectManager.Player.Distance(waypoints.Last<Vector2>().To3D()) - ObjectManager.Player.Distance(target.Position)) > BackToFront
|| target.HasBuffOfType(BuffType.Slow) || target.HasBuff("Recall")
|| (target.Path.Count() == 0 && target.Position == target.ServerPosition)
))
{
if (target.IsFacing(ObjectManager.Player) || target.Path.Count() == 0)
{
if (ObjectManager.Player.Distance(target.Position) < QWER.Range - ((target.MoveSpeed * QWER.Delay) + (Player.Distance(target.Position) / QWER.Speed)))
QWER.CastIfHitchanceEquals(target, HitChance.High, true);
}
else
{
QWER.CastIfHitchanceEquals(target, HitChance.High, true);
}
}
}
}