本文整理汇总了C#中Spell.Targeted.IsReady方法的典型用法代码示例。如果您正苦于以下问题:C# Spell.Targeted.IsReady方法的具体用法?C# Spell.Targeted.IsReady怎么用?C# Spell.Targeted.IsReady使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Spell.Targeted
的用法示例。
在下文中一共展示了Spell.Targeted.IsReady方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Combo
public static void Combo()
{
var target = TargetSelector2.GetTarget(GetDynamicRange() + 100, DamageType.Magical);
var t = TargetSelector2.GetTarget(Program.R.Range, DamageType.Magical);
var summonerIgnite = Player.Spells.FirstOrDefault(o => o.SData.Name == "summonerdot"); // Thanks finn
if (target == null) return;
var manaPre = _Player.ManaPercent > Program.MinNumberManaC;
if (!manaPre)
{
return;
}
if (summonerIgnite != null)
{
SpellSlot igSlot = extent.GetSpellSlotFromName(_Player, "summonerdot");
ignite = new Spell.Targeted(igSlot, 600);
if (Program.ComboMenu["igniteKill"].Cast<CheckBox>().CurrentValue && ignite.IsReady())
{
if (getIgniteDamage() >= target.Health - 5) //-5 on enemy health for safecheck & HP regen
{
ignite.Cast(target);
}
}
else if (Program.ComboMenu["igniteAlways"].Cast<CheckBox>().CurrentValue && ignite.IsReady())
{
ignite.Cast(target);
}
}
if (Program.ComboMenu["useRCombo"].Cast<CheckBox>().CurrentValue && Program.R.IsReady() && target.IsValidTarget(Program.R.Range))
{
Program.R.Cast(target);
}
if (Program.ComboMenu["useECombo"].Cast<CheckBox>().CurrentValue && Program.E.IsReady() && target.IsValidTarget(Program.E.Range))
{
Program.E.Cast(target);
if (_Player.Spellbook.GetSpell(SpellSlot.E).Name == "fizzjumptwo")
{
EloBuddy.SDK.Core.DelayAction(() => { Program.E.Cast(target); }, 50);
}
}
if (Program.ComboMenu["useWCombo"].Cast<CheckBox>().CurrentValue && Program.W.IsReady())
{
Program.W.Cast();
}
if (Program.ComboMenu["useQCombo"].Cast<CheckBox>().CurrentValue && Program.Q.IsReady())
{
Program.Q.Cast(target);
}
}
示例2: UseIgnite
public static void UseIgnite(List<Obj_AI_Base> enemies, bool ks)
{
Spell.Targeted ignite = new Spell.Targeted(Vi.GetSpellSlotFromName("SummonerDot"), 600, DamageType.True);
if (ignite.Slot == SpellSlot.Unknown || !ignite.IsReady())
return;
Obj_AI_Base unit = enemies.Where(a =>
a.IsInRange(Vi, ignite.Range)
&& (!ks || Calculations.Ignite(a) >= a.Health)
&& a.MeetsCriteria()).FirstOrDefault();
if (unit != null)
hasDoneActionThisTick = ignite.Cast(unit);
}
示例3: UseSmite
public static void UseSmite(List<Obj_AI_Base> enemies, bool ks)
{
Spell.Targeted blueSmite = new Spell.Targeted(Vi.GetSpellSlotFromName("S5_SummonerSmitePlayerGanker"), 500, DamageType.True);
Spell.Targeted redSmite = new Spell.Targeted(Vi.GetSpellSlotFromName("S5_SummonerSmiteDuel"), 500, DamageType.True);
if (blueSmite.Slot != SpellSlot.Unknown && blueSmite.IsReady())
{
var target = enemies.Where(a => a.MeetsCriteria() && a.IsTargetable && a.IsInRange(Vi, blueSmite.Range) && (!ks || (a.Type == GameObjectType.AIHeroClient && a.Health <= 54 + 6 * Vi.Level) || (a.Type != GameObjectType.AIHeroClient && a.Health <= Calculations.Smite()))).FirstOrDefault();
if(target != null)
blueSmite.Cast(target);
}
if (redSmite.Slot != SpellSlot.Unknown && redSmite.IsReady())
{
var target = enemies.Where(a => a.MeetsCriteria() && a.IsTargetable && a.IsInRange(Vi, redSmite.Range) && a.IsInRange(Vi, Vi.GetAutoAttackRange()) && (!ks || (a.Type == GameObjectType.AIHeroClient && a.Health <= 54 + 6 * Vi.Level) || (a.Type != GameObjectType.AIHeroClient && a.Health <= Calculations.Smite()))).FirstOrDefault();
if (target != null)
redSmite.Cast(target);
}
}
示例4: Game_OnUpdate
private static void Game_OnUpdate(EventArgs args)
{
if (MobsToSmite["killsmite"].Cast<CheckBox>().CurrentValue)
{
var KillEnemy =
EntityManager.Heroes.Enemies.FirstOrDefault(hero => hero.IsValidTarget(500f)
&& SmiteChampDamage() >= hero.Health);
if (KillEnemy != null)
Player.CastSpell(Smite.Slot, KillEnemy);
}
if (SmiteGHMenu["active"].Cast<CheckBox>().CurrentValue || SmiteGHMenu["activekey"].Cast<KeyBind>().CurrentValue)
{
double SpellDamage = 0;
Monster = GetNearest(ObjectManager.Player.ServerPosition);
if (Monster != null && MobsToSmite[Monster.BaseSkinName].Cast<CheckBox>().CurrentValue)
{
if (SupportedChampions.Contains(ObjectManager.Player.ChampionName))
{
if (SmiteGHMenu["disable"].Cast<CheckBox>().CurrentValue)
{
switch (ObjectManager.Player.ChampionName)
{
#region Diana
case "Diana":
{
Spell.Skillshot Q = new Spell.Skillshot(SpellSlot.Q, (uint)895, SkillShotType.Circular);
Spell.Targeted R = new Spell.Targeted(SpellSlot.R, (uint)825);
//Smite and Spell ==> OKAY
if (Smite.IsReady() && Q.IsReady() && Vector3.Distance(ObjectManager.Player.ServerPosition, Monster.ServerPosition) < Q.Range
&& Vector3.Distance(ObjectManager.Player.ServerPosition, Monster.ServerPosition) < Smite.Range)
{
SpellDamage = GetDamages.DianaQ(Q.Level) + GetDamages.DianaR(R.Level);
TotalDamage = SpellDamage + GetSmiteDamage();
if (Monster.Health <= TotalDamage)
{
Q.Cast(Monster.ServerPosition);
//Smite.Cast(Monster);
}
}
else if (Smite.IsReady() && R.IsReady() && Vector3.Distance(ObjectManager.Player.ServerPosition, Monster.ServerPosition) < R.Range
&& Vector3.Distance(ObjectManager.Player.ServerPosition, Monster.ServerPosition) < Smite.Range && GetDamages.HasBuffs(Monster, "dianamoonlight"))
{
SpellDamage = GetDamages.DianaR(R.Level);
TotalDamage = SpellDamage + GetSmiteDamage();
if (Monster.Health <= TotalDamage)
{
R.Cast(Monster);
//Smite.Cast(Monster);
}
}
//If Spell is busy, Go Smite only! ^_^
else if (Smite.IsReady() && Vector3.Distance(ObjectManager.Player.ServerPosition, Monster.ServerPosition) < Smite.Range)
{
if (Monster.Health <= GetSmiteDamage())
{
Smite.Cast(Monster);
}
TotalDamage = 0;
}
break;
}
#endregion
#region Evelynn
case "Evelynn":
{
Spell.Targeted E = new Spell.Targeted(SpellSlot.E, (uint)(225f + 2 * 65f));
//Smite and Spell ==> OKAY
if (Smite.IsReady() && E.IsReady() && Vector3.Distance(ObjectManager.Player.ServerPosition, Monster.ServerPosition) < E.Range
&& Vector3.Distance(ObjectManager.Player.ServerPosition, Monster.ServerPosition) < Smite.Range)
{
SpellDamage = GetDamages.Evelynn(E.Level);
TotalDamage = SpellDamage + GetSmiteDamage();
if (Monster.Health <= TotalDamage)
{
E.Cast(Monster);
//Smite.Cast(Monster);
}
}
//If Spell is busy, Go Smite only! ^_^
else if (Smite.IsReady() && Vector3.Distance(ObjectManager.Player.ServerPosition, Monster.ServerPosition) < Smite.Range)
{
if (Monster.Health <= GetSmiteDamage())
{
Smite.Cast(Monster);
}
TotalDamage = 0;
}
break;
}
#endregion
#region Irelia
case "Irelia":
{
Spell.Targeted Q = new Spell.Targeted(SpellSlot.Q, (uint)650f + 20);
//Smite and Spell ==> OKAY
if (Smite.IsReady() && Q.IsReady() && Vector3.Distance(ObjectManager.Player.ServerPosition, Monster.ServerPosition) < Q.Range
&& Vector3.Distance(ObjectManager.Player.ServerPosition, Monster.ServerPosition) < Smite.Range)
{
SpellDamage = GetDamages.Irelia(Q.Level);
//.........这里部分代码省略.........
示例5: HandleIgnite
/// <summary>
/// Handles ignite (doesn't work always/buggy?)
/// </summary>
/// <param name="target"></param>
private static void HandleIgnite()
{
if(!KillStealMenu["useignite"].Cast<CheckBox>().CurrentValue) return;
var ignite = new Spell.Targeted(IgniteSlot, 600);
if(ignite.IsReady() && ignite.IsInRange(target) && target != null) ignite.Cast(target);
}
示例6: KS
public static void KS()
{
var target = TargetSelector2.GetTarget(GetDynamicRange() + 100, DamageType.Magical);
float qdmg = EloBuddy.SDK.DamageLibrary.GetSpellDamage(_Player, target, EloBuddy.SpellSlot.Q); // damage of cho Q
float wdmg = EloBuddy.SDK.DamageLibrary.GetSpellDamage(_Player, target, EloBuddy.SpellSlot.W); // damage of cho W
float rdmg = EloBuddy.SDK.DamageLibrary.GetSpellDamage(_Player, target, EloBuddy.SpellSlot.R); // damage of cho R
var summonerIgnite = Player.Spells.FirstOrDefault(o => o.SData.Name == "summonerdot"); // Thanks finn
if (summonerIgnite != null)
{
SpellSlot igSlot = extent.GetSpellSlotFromName(_Player, "summonerdot");
ignite = new Spell.Targeted(igSlot, 600);
if (Program.KSMenu["igniteKill"].Cast<CheckBox>().CurrentValue && ignite.IsReady())
{
if (getIgniteDamage() > target.Health - 10) //-10 on enemy health for safecheck
{
ignite.Cast(target);
}
}
}
if (Program.KSMenu["qKS"].Cast<CheckBox>().CurrentValue && qdmg >= target.Health - 10 && Program.Q.IsReady() && target.IsValidTarget(Program.Q.Range))
{
var qPred = Program.Q.GetPrediction(target);
if (qPred.HitChance >= HitChance.High)
{
Program.Q.Cast(target);
}
}
else if (Program.KSMenu["wKS"].Cast<CheckBox>().CurrentValue && wdmg >= target.Health - 10 && Program.W.IsReady() && target.IsValidTarget(Program.W.Range))
{
Program.W.Cast(target);
}
else if (Program.KSMenu["rKS"].Cast<CheckBox>().CurrentValue && rdmg >= target.Health - 10 && Program.R.IsReady() && target.IsValidTarget(Program.R.Range))
{
Program.R.Cast(target);
}
}