本文整理汇总了C#中PlayerIssueOrderEventArgs类的典型用法代码示例。如果您正苦于以下问题:C# PlayerIssueOrderEventArgs类的具体用法?C# PlayerIssueOrderEventArgs怎么用?C# PlayerIssueOrderEventArgs使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
PlayerIssueOrderEventArgs类属于命名空间,在下文中一共展示了PlayerIssueOrderEventArgs类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: UltimateTargetingOnIssue
private static void UltimateTargetingOnIssue(Obj_AI_Base sender, PlayerIssueOrderEventArgs args)
{
var target = args.Target as AIHeroClient;
var ultTarget = GetUltimateTarget();
if (!target.IsValid() || !ultTarget.IsValidTarget() || target.NetworkId != ultTarget.NetworkId)
args.Process = false;
}
示例2: Player_OnIssueOrder
private static void Player_OnIssueOrder(Obj_AI_Base sender, PlayerIssueOrderEventArgs args)
{
if (sender.IsMe && args.Order == GameObjectOrder.AttackUnit && player.HasBuff("KhazixRStealth")
&& menu.Combo["NoAA"].Cast<CheckBox>().CurrentValue)
{
args.Process = false;
}
}
示例3: Player_OnIssueOrder
private static void Player_OnIssueOrder(Obj_AI_Base sender, PlayerIssueOrderEventArgs args)
{
if (!sender.IsMe
|| !Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.Combo)
|| !args.Order.HasFlag(GameObjectOrder.AttackUnit)
|| !Player.HasBuff("RengarR")
|| args.Target == null || !args.Target.IsValid || !(args.Target is AIHeroClient))
return;
UltimateTargetingOnIssue(sender, args);
}
示例4: Player_OnIssueOrder
public static void Player_OnIssueOrder(Obj_AI_Base sender, PlayerIssueOrderEventArgs args)
{
/// <summary>
/// Stop movement commands while channeling E.
/// </summary>
if (GameObjects.Player.HasBuff("pantheonesound"))
{
args.Process = false;
}
}
示例5: Player_OnIssueOrder
public static void Player_OnIssueOrder(Obj_AI_Base sender, PlayerIssueOrderEventArgs args)
{
if (sender.IsMe && !args.IsAttackMove)
{
if (args.Order == GameObjectOrder.AttackUnit ||
args.Order == GameObjectOrder.AttackTo &&
!_menu["Attacks"].Cast<CheckBox>().CurrentValue)
return;
}
_movementhavebeenrandomized = false;
}
示例6: Obj_AI_Base_OnIssueOrder
private static void Obj_AI_Base_OnIssueOrder(Obj_AI_Base sender, PlayerIssueOrderEventArgs args)
{
if (!OrbwalkLastClickActive)
return;
if (!sender.IsMe)
return;
if (args.Order != GameObjectOrder.MoveTo)
return;
if (!Orbwalker.CanMove || Player.IsCastingInterruptableSpell())
args.Process = false;
}
示例7: IssueOrder
void IssueOrder(Obj_AI_Base sender, PlayerIssueOrderEventArgs args)
{
if (sender.IsMe && ShouldGetExecuted()
&& (args.Order == GameObjectOrder.AttackUnit || args.Order == GameObjectOrder.AttackTo)
&&
(Variables._Player.CountEnemiesInRange(1000f) >
Manager.MenuManager.RNoAASlider)
&& Variables.UltActive() || Variables._Player.HasBuffOfType(BuffType.Invisibility)
&& Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.Combo))
{
args.Process = false;
}
}
示例8: Player_OnIssueOrder
private static void Player_OnIssueOrder(Obj_AI_Base sender, PlayerIssueOrderEventArgs args)
{
if (LastMove.Any(m => m.Order == args.Order && args.TargetPosition == m.Pos && DateTime.Now - m.Time < TimeSpan.FromSeconds(0.1)))
{
args.Process = false;
}
else if (LastMove.Any(m => m.Order == args.Order))
{
LastMove.Remove(LastMove.Find(m => m.Order == args.Order));
LastMove.Add(new IssueOrder(DateTime.Now, args.TargetPosition, args.Order));
}
else
{
LastMove.Add(new IssueOrder(DateTime.Now, args.TargetPosition, args.Order));
}
}
示例9: IssueOrder
public static void IssueOrder(Obj_AI_Base sender, PlayerIssueOrderEventArgs args)
{
if (sender.IsMe && args.Order.HasFlag(GameObjectOrder.AttackUnit))
{
Variables.lastaaclick = Game.Time * 1000;
}
if (sender.IsMe
&& (args.Order == GameObjectOrder.AttackUnit || args.Order == GameObjectOrder.AttackTo)
&&
(MenuManager.ComboMenu["RnoAA"].Cast<CheckBox>().CurrentValue &&
Variables._Player.CountEnemiesInRange(1000f) >
MenuManager.ComboMenu["RnoAAs"].Cast<Slider>().CurrentValue)
&& Functions.Events._player.UltActive() || Variables._Player.HasBuffOfType(BuffType.Invisibility)
&& Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.Combo))
{
args.Process = false;
}
}
示例10: OnIssueOrder
private static void OnIssueOrder(Obj_AI_Base sender, PlayerIssueOrderEventArgs args)
{
if (sender.IsMe &&
(args.Order == GameObjectOrder.MoveTo || args.Order == GameObjectOrder.AttackUnit ||
args.Order == GameObjectOrder.AttackTo) &&
lastclick + r.NextFloat(0.2f, 0.2f + .2f) < Game.Time)
{
var clickpos = args.TargetPosition;
if (args.Order == GameObjectOrder.AttackUnit || args.Order == GameObjectOrder.AttackTo)
{
ShowClick(Randomize(clickpos), ClickType.Attack);
}
else
{
ShowClick(clickpos, ClickType.Move);
}
lastclick = Game.Time;
}
}
示例11: PlayerOnIssueOrder
private void PlayerOnIssueOrder(Obj_AI_Base sender, PlayerIssueOrderEventArgs args)
{
if (!sender.IsMe)
{
return;
}
if (args.Order == GameObjectOrder.AttackUnit)
{
LastIssueOrderPos =
(Player.Instance.Distance(args.Target, true) >
Player.Instance.GetAutoAttackRange(args.Target as AttackableUnit).Pow()
? args.Target.Position
: Player.Instance.Position).To2D();
}
else
{
LastIssueOrderPos = (args.Target != null ? args.Target.Position : args.TargetPosition).To2D();
}
CacheSkillshots();
switch (args.Order)
{
case GameObjectOrder.Stop:
if (DoEvade(null, args))
{
args.Process = false;
}
break;
case GameObjectOrder.HoldPosition:
if (DoEvade(null, args))
{
args.Process = false;
}
break;
case GameObjectOrder.AttackUnit:
if (DoEvade(null, args))
{
args.Process = false;
}
break;
default:
if (DoEvade(Player.Instance.GetPath(LastIssueOrderPos.To3DWorld(), true), args))
{
args.Process = false;
}
break;
}
}
示例12: DoEvade
public bool DoEvade(Vector3[] desiredPath = null, PlayerIssueOrderEventArgs args = null)
{
if (!EvadeEnabled || Player.Instance.IsDead || Player.Instance.IsDashing())
{
LastEvadeResult = null;
AutoPathing.StopPath();
return false;
}
var hero = Player.Instance;
if (args != null && args.Order == GameObjectOrder.AttackUnit)
{
if (!hero.IsInAutoAttackRange((AttackableUnit)args.Target))
{
desiredPath = hero.GetPath(args.Target.Position, true);
}
}
if (IsHeroInDanger(hero))
{
if (LastEvadeResult != null && (!IsPointSafe(LastEvadeResult.EvadePoint) || LastEvadeResult.Expired()))
{
// LastEvadeResult = null;
}
var evade = CalculateEvade(LastIssueOrderPos);
if (evade.IsValid && evade.EnoughTime)
{
if (LastEvadeResult == null ||
(LastEvadeResult.EvadePoint.Distance(evade.EvadePoint, true) > 500.Pow() &&
AllowRecalculateEvade))
{
LastEvadeResult = evade;
}
}
else
{
if (!evade.EnoughTime && LastEvadeResult == null && !IsHeroPathSafe(evade, desiredPath))
{
return EvadeSpellManager.ProcessFlash(this);
}
}
if (LastEvadeResult != null) //&& LastEvadeResult.EvadePoint.Distance(hero) > hero.HitBoxRadius()
{
var isPathSafe = IsHeroPathSafe(evade, desiredPath);
if (!hero.IsMovingTowards(LastEvadeResult.WalkPoint) || !isPathSafe)
{
AutoPathing.StopPath();
MoveTo(LastEvadeResult.WalkPoint, false);
}
return true;
}
}
else if (!IsPathSafe(hero.RealPath()) || (desiredPath != null && !IsPathSafe(desiredPath)))
{
var path = PathFinding.GetPath(hero.Position.To2D(), LastIssueOrderPos);
var evade = CalculateEvade(LastIssueOrderPos);
if (evade.IsValid)
{
path = new[] {evade.EvadePoint}.Concat(path).ToArray();
}
if (path.Length > 0 && AutoPathing.Destination.Distance(path.Last(), true) > 50.Pow())
{
AutoPathing.DoPath(path);
}
LastEvadeResult = null;
return desiredPath != null;
}
else
{
AutoPathing.StopPath();
LastEvadeResult = null;
}
return false;
}
示例13: Obj_AI_Base_OnIssueOrder
private static void Obj_AI_Base_OnIssueOrder(Obj_AI_Base sender, PlayerIssueOrderEventArgs args)
{
if (args.Order == GameObjectOrder.AttackUnit && Q.IsCharging)
{
Program.debug("BADDDD");
EloBuddy.Player.IssueOrder(GameObjectOrder.MoveTo, Game.CursorPos);
args.Process = false;
}
}
示例14: Player_OnIssueOrder
public static void Player_OnIssueOrder(Obj_AI_Base sender, PlayerIssueOrderEventArgs args)
{
_player.IssueOrder(sender, args);
}
示例15: Obj_AI_Base_OnIssueOrder
private void Obj_AI_Base_OnIssueOrder(Obj_AI_Base sender, PlayerIssueOrderEventArgs args)
{
if (getCheckBoxItem(rMenu, "RMovement") && sender.IsMe && ObjectManager.Player.IsChannelingImportantSpell())
{
args.Process = false;
}
}