本文整理汇总了C#中LeagueSharp.Common.Spell.CastIfHitchanceEquals方法的典型用法代码示例。如果您正苦于以下问题:C# Spell.CastIfHitchanceEquals方法的具体用法?C# Spell.CastIfHitchanceEquals怎么用?C# Spell.CastIfHitchanceEquals使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类LeagueSharp.Common.Spell
的用法示例。
在下文中一共展示了Spell.CastIfHitchanceEquals方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: CastBasicSkillShot
public static void CastBasicSkillShot(Spell spell, float range, TargetSelector.DamageType type, HitChance hitChance, bool towerCheck = false)
{
var target = TargetSelector.GetTarget(range, type);
if (target == null || !spell.IsReady())
return;
if (towerCheck && target.UnderTurret(true))
return;
spell.UpdateSourcePosition();
if (spell.Type == SkillshotType.SkillshotCircle)
{
var pred = Prediction.GetPrediction(target, spell.Delay);
if (pred.Hitchance >= hitChance)
spell.Cast(pred.CastPosition);
}
else
{
spell.CastIfHitchanceEquals(target, hitChance);
}
}
示例2: CastSpell
public static void CastSpell(Spell QWER, Obj_AI_Base target)
{
if (Config.Item("PredictionMODE", true).GetValue<StringList>().SelectedIndex == 1)
{
Core.SkillshotType CoreType2 = Core.SkillshotType.SkillshotLine;
bool aoe2 = false;
if (QWER.Type == SkillshotType.SkillshotCircle)
{
CoreType2 = Core.SkillshotType.SkillshotCircle;
aoe2 = true;
}
if (QWER.Width > 80 && !QWER.Collision)
aoe2 = true;
var predInput2 = new Core.PredictionInput
{
Aoe = aoe2,
Collision = QWER.Collision,
Speed = QWER.Speed,
Delay = QWER.Delay,
Range = QWER.Range,
From = Player.ServerPosition,
Radius = QWER.Width,
Unit = target,
Type = CoreType2
};
var poutput2 = Core.Prediction.GetPrediction(predInput2);
//var poutput2 = QWER.GetPrediction(target);
if (QWER.Speed != float.MaxValue && OktwCommon.CollisionYasuo(Player.ServerPosition, poutput2.CastPosition))
return;
if (Config.Item("HitChance", true).GetValue<StringList>().SelectedIndex == 0)
{
if (poutput2.Hitchance >= Core.HitChance.VeryHigh)
QWER.Cast(poutput2.CastPosition);
else if (predInput2.Aoe && poutput2.AoeTargetsHitCount > 1 && poutput2.Hitchance >= Core.HitChance.High)
{
QWER.Cast(poutput2.CastPosition);
}
}
else if (Config.Item("HitChance", true).GetValue<StringList>().SelectedIndex == 1)
{
if (poutput2.Hitchance >= Core.HitChance.High)
QWER.Cast(poutput2.CastPosition);
}
else if (Config.Item("HitChance", true).GetValue<StringList>().SelectedIndex == 2)
{
if (poutput2.Hitchance >= Core.HitChance.Medium)
QWER.Cast(poutput2.CastPosition);
}
if (Game.Time - DrawSpellTime > 0.5)
{
DrawSpell = QWER;
DrawSpellTime = Game.Time;
}
DrawSpellPos = poutput2;
}
else if (Config.Item("PredictionMODE", true).GetValue<StringList>().SelectedIndex == 0)
{
if (Config.Item("HitChance", true).GetValue<StringList>().SelectedIndex == 0)
{
QWER.CastIfHitchanceEquals(target, HitChance.VeryHigh);
return;
}
else if (Config.Item("HitChance", true).GetValue<StringList>().SelectedIndex == 1)
{
QWER.CastIfHitchanceEquals(target, HitChance.High);
return;
}
else if (Config.Item("HitChance ", true).GetValue<StringList>().SelectedIndex == 2)
{
QWER.CastIfHitchanceEquals(target, HitChance.Medium);
return;
}
}
else if (Config.Item("PredictionMODE", true).GetValue<StringList>().SelectedIndex == 2 )
{
if (target is Obj_AI_Hero && target.IsValid)
{
var t = target as Obj_AI_Hero;
if (Config.Item("HitChance", true).GetValue<StringList>().SelectedIndex == 0)
{
QWER.SPredictionCast(t, HitChance.VeryHigh);
return;
}
else if (Config.Item("HitChance", true).GetValue<StringList>().SelectedIndex == 1)
{
QWER.SPredictionCast(t, HitChance.High);
return;
}
else if (Config.Item("HitChance ", true).GetValue<StringList>().SelectedIndex == 2)
{
QWER.SPredictionCast(t, HitChance.Medium);
return;
}
//.........这里部分代码省略.........
示例3: 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);
}
}
}
}
示例4: CastSpell
private static void CastSpell(Spell QWER, Obj_AI_Hero target, int HitChanceNum)
{
//HitChance 0 - 2
// example CastSpell(Q, ts, 2);
var poutput = QWER.GetPrediction(target);
var col = poutput.CollisionObjects.Count(ColObj => ColObj.IsEnemy && ColObj.IsMinion && !ColObj.IsDead);
if (QWER.Collision && col > 0)
return;
if (HitChanceNum == 0)
QWER.Cast(target, true);
else if (HitChanceNum == 1)
{
if ((int)poutput.Hitchance > 4)
QWER.Cast(poutput.CastPosition);
}
else if (HitChanceNum == 2)
{
if ((target.IsFacing(ObjectManager.Player) && (int)poutput.Hitchance == 5) || (target.Path.Count() == 0 && target.Position == target.ServerPosition))
{
if (ObjectManager.Player.Distance(target.Position) < QWER.Range - ((target.MoveSpeed * QWER.Delay) + (Player.Distance(target.Position) / QWER.Speed) + (target.BoundingRadius * 2)))
{
QWER.Cast(poutput.CastPosition);
}
}
else if ((int)poutput.Hitchance == 5)
{
QWER.Cast(poutput.CastPosition);
}
}
else if (HitChanceNum == 3)
{
List<Vector2> waypoints = target.GetWaypoints();
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) + (target.BoundingRadius * 2)))
QWER.CastIfHitchanceEquals(target, HitChance.High, true);
}
else
{
QWER.CastIfHitchanceEquals(target, HitChance.High, true);
}
}
}
else if (HitChanceNum == 4 && (int)poutput.Hitchance > 4)
{
List<Vector2> waypoints = target.GetWaypoints();
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)
))
{
// max range fix
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) + (target.BoundingRadius * 2)))
QWER.CastIfHitchanceEquals(target, HitChance.High, true);
}
else
{
QWER.CastIfHitchanceEquals(target, HitChance.High, true);
}
}
}
}
示例5: CastSpell
private static void CastSpell(Spell QWER, Obj_AI_Hero target, int HitChanceNum)
{
//HitChance 0 - 2
// example CastSpell(Q, ts, 2);
var poutput = QWER.GetPrediction(target);
var col = poutput.CollisionObjects.Count(ColObj => ColObj.IsEnemy && ColObj.IsMinion && !ColObj.IsDead);
if (target.IsDead || col > 0 || target.Path.Count() > 1)
return;
if ((target.Path.Count() == 0 && target.Position == target.ServerPosition) || target.HasBuff("Recall"))
{
QWER.Cast(poutput.CastPosition);
return;
}
if (HitChanceNum == 0)
QWER.Cast(target, true);
else if (HitChanceNum == 1)
{
if ((int)poutput.Hitchance > 4)
QWER.Cast(poutput.CastPosition);
}
else if (HitChanceNum == 2)
{
List<Vector2> waypoints = target.GetWaypoints();
if (waypoints.Last<Vector2>().To3D().Distance(poutput.CastPosition) > QWER.Width && (int)poutput.Hitchance == 5)
{
if (waypoints.Last<Vector2>().To3D().Distance(Player.Position) <= target.Distance(Player.Position) || (target.Path.Count() == 0 && target.Position == target.ServerPosition))
{
if (Player.Distance(target.ServerPosition) < QWER.Range - (poutput.CastPosition.Distance(target.ServerPosition) + target.BoundingRadius))
{
QWER.Cast(poutput.CastPosition);
}
}
else if ((int)poutput.Hitchance == 5)
{
QWER.Cast(poutput.CastPosition);
}
}
}
else if (HitChanceNum == 3)
{
List<Vector2> waypoints = target.GetWaypoints();
float SiteToSite = ((target.MoveSpeed * QWER.Delay) + (Player.Distance(target.ServerPosition) / QWER.Speed) - QWER.Width) * 6;
float BackToFront = ((target.MoveSpeed * QWER.Delay) + (Player.Distance(target.ServerPosition) / QWER.Speed));
if (Player.Distance(waypoints.Last<Vector2>().To3D()) < SiteToSite || Player.Distance(target.Position) < SiteToSite)
QWER.CastIfHitchanceEquals(target, HitChance.High, true);
else if ((target.ServerPosition.Distance(waypoints.Last<Vector2>().To3D()) > SiteToSite
|| Math.Abs(Player.Distance(waypoints.Last<Vector2>().To3D()) - Player.Distance(target.Position)) > BackToFront))
{
if (waypoints.Last<Vector2>().To3D().Distance(Player.Position) <= target.Distance(Player.Position))
{
if (Player.Distance(target.ServerPosition) < QWER.Range - (poutput.CastPosition.Distance(target.ServerPosition)))
{
QWER.Cast(poutput.CastPosition);
}
}
else
{
QWER.Cast(poutput.CastPosition);
}
}
}
else if (HitChanceNum == 4 && (int)poutput.Hitchance > 4)
{
List<Vector2> waypoints = target.GetWaypoints();
float SiteToSite = ((target.MoveSpeed * QWER.Delay) + (Player.Distance(target.ServerPosition) / QWER.Speed) - QWER.Width) * 6;
float BackToFront = ((target.MoveSpeed * QWER.Delay) + (Player.Distance(target.ServerPosition) / QWER.Speed));
if (Player.Distance(waypoints.Last<Vector2>().To3D()) < SiteToSite || Player.Distance(target.Position) < SiteToSite)
QWER.CastIfHitchanceEquals(target, HitChance.High, true);
else if ((target.ServerPosition.Distance(waypoints.Last<Vector2>().To3D()) > SiteToSite
|| Math.Abs(Player.Distance(waypoints.Last<Vector2>().To3D()) - Player.Distance(target.Position)) > BackToFront))
{
if (waypoints.Last<Vector2>().To3D().Distance(Player.Position) <= target.Distance(Player.Position))
{
if (Player.Distance(target.ServerPosition) < QWER.Range - (poutput.CastPosition.Distance(target.ServerPosition)))
{
QWER.Cast(poutput.CastPosition);
}
}
else
{
QWER.Cast(poutput.CastPosition);
}
}
}
}
示例6: CastSpell
//.........这里部分代码省略.........
DrawSpellPos = poutput2;
return;
}
if (getSliderItem("PredictionMODE") == 2)
{
if (target is AIHeroClient && target.IsValid)
{
var t = target as AIHeroClient;
if (getSliderItem("HitChance") == 0)
{
var pred = QWER.GetSPrediction(t);
if (pred.HitChance >= LeagueSharp.Common.HitChance.VeryHigh)
QWER.Cast(pred.CastPosition);
return;
}
else if (getSliderItem("HitChance") == 1)
{
var pred = QWER.GetSPrediction(t);
if (pred.HitChance >= LeagueSharp.Common.HitChance.High)
QWER.Cast(pred.CastPosition);
return;
}
else if (getSliderItem("HitChance") == 2)
{
var pred = QWER.GetSPrediction(t);
if (pred.HitChance >= LeagueSharp.Common.HitChance.Medium)
QWER.Cast(pred.CastPosition);
return;
}
}
else
{
QWER.CastIfHitchanceEquals(target, LeagueSharp.Common.HitChance.High);
}
return;
}
if (getSliderItem("PredictionMODE") == 3)
{
SebbyLib.Movement.SkillshotType CoreType2 = SebbyLib.Movement.SkillshotType.SkillshotLine;
bool aoe2 = false;
if (QWER.Width > 80 && !QWER.Collision)
aoe2 = true;
var predInput2 = new SebbyLib.Movement.PredictionInput
{
Aoe = aoe2,
Collision = QWER.Collision,
Speed = QWER.Speed,
Delay = QWER.Delay,
Range = QWER.Range,
From = Player.ServerPosition,
Radius = QWER.Width,
Unit = target,
Type = CoreType2
};
var poutput2 = SebbyLib.Movement.Prediction.GetPrediction(predInput2);
if (QWER.Speed != float.MaxValue && OktwCommon.CollisionYasuo(Player.ServerPosition, poutput2.CastPosition))
return;
if (getSliderItem("HitChance") == 0)
{
if (poutput2.Hitchance >= SebbyLib.Movement.HitChance.VeryHigh)
示例7: CastSpell
//.........这里部分代码省略.........
}
else if (Player.Distance(target.ServerPosition) < QWER.Range - fixRange)
{
float BackToFront = ((target.MoveSpeed * QWER.Delay) + (Player.Distance(target.ServerPosition) / QWER.Speed));
float SiteToSite = (BackToFront * 2) - QWER.Width;
if ((target.ServerPosition.Distance(LastWaypiont) > SiteToSite
|| Math.Abs(Player.Distance(LastWaypiont) - Player.Distance(target.ServerPosition)) > BackToFront)
|| Player.Distance(target.ServerPosition) < SiteToSite + target.BoundingRadius * 2
|| Player.Distance(LastWaypiont) < BackToFront)
{
if (FastMode)
QWER.Cast(poutput.CastPosition);
else
QWER.Cast(target);
debug("good 2");
}
else
debug("ignore 2");
}
else
debug("fixed " + fixRange);
}
else if (HitChanceNum == 3)
{
if ((int)poutput.Hitchance < 5)
return;
var fixRange = (target.MoveSpeed * (Player.ServerPosition.Distance(target.ServerPosition) / QWER.Speed + QWER.Delay)) / 2;
if (QWER.Delay < 0.3 && (QWER.Speed > 1500 || QWER.Type == SkillshotType.SkillshotCircle) && (target.IsWindingUp || (int)poutput.Hitchance == 6))
{
if (Player.Distance(target.ServerPosition) < QWER.Range - fixRange)
{
QWER.CastIfHitchanceEquals(target, HitChance.High, true);
}
return;
}
if (target.Path.Count() == 0 && target.Position == target.ServerPosition && !target.IsWindingUp)
{
if (Player.Distance(target.ServerPosition) < QWER.Range - fixRange)
{
QWER.CastIfHitchanceEquals(target, HitChance.High, true);
}
return;
}
var waypoints = target.GetWaypoints().Last<Vector2>().To3D();
float BackToFront = ((target.MoveSpeed * QWER.Delay) + (Player.Distance(target.ServerPosition) / QWER.Speed));
float SiteToSite = (BackToFront * 2) - QWER.Width;
if ((target.ServerPosition.Distance(waypoints) > SiteToSite
|| Math.Abs(Player.Distance(waypoints) - Player.Distance(target.Position)) > BackToFront)
|| Player.Distance(target.Position) < SiteToSite + target.BoundingRadius * 2
|| Player.Distance(waypoints) < BackToFront
)
{
if (waypoints.Distance(Player.Position) <= target.Distance(Player.Position))
{
if (Player.Distance(target.ServerPosition) < QWER.Range - fixRange)
{
QWER.CastIfHitchanceEquals(target, HitChance.High, true);
}
}
else
{
QWER.CastIfHitchanceEquals(target, HitChance.High, true);
}
}
}
else if (HitChanceNum == 0)
QWER.Cast(target, true);
else if (HitChanceNum == 1)
{
if ((int)poutput.Hitchance > 4)
QWER.Cast(poutput.CastPosition);
}
else if (HitChanceNum == 2)
{
List<Vector2> waypoints = target.GetWaypoints();
if (waypoints.Last<Vector2>().To3D().Distance(poutput.CastPosition) > QWER.Width && (int)poutput.Hitchance > 4)
{
if (waypoints.Last<Vector2>().To3D().Distance(Player.Position) <= target.Distance(Player.Position) || (target.Path.Count() == 0 && target.Position == target.ServerPosition))
{
if (Player.Distance(target.ServerPosition) < QWER.Range - (poutput.CastPosition.Distance(target.ServerPosition) + target.BoundingRadius))
{
QWER.Cast(poutput.CastPosition);
}
}
else if ((int)poutput.Hitchance == 5)
{
QWER.Cast(poutput.CastPosition);
}
}
}
}
示例8: CastSpell
private static void CastSpell(Spell QWER, Obj_AI_Base target)
{
if(QWER.Slot == SpellSlot.W)
{
if (Config.Item("Wpred").GetValue<StringList>().SelectedIndex == 0)
QWER.CastIfHitchanceEquals(target, HitChance.VeryHigh);
else
QWER.Cast(target);
}
if (QWER.Slot == SpellSlot.R)
{
if (Config.Item("Rpred").GetValue<StringList>().SelectedIndex == 0)
QWER.CastIfHitchanceEquals(target, HitChance.VeryHigh);
else
QWER.Cast(target);
}
if (QWER.Slot == SpellSlot.E)
{
if (Config.Item("Epred").GetValue<StringList>().SelectedIndex == 0)
QWER.CastIfHitchanceEquals(target, HitChance.VeryHigh);
else
QWER.Cast(target);
}
}