本文整理汇总了C#中Server.MirObjects.MapObject.Pushed方法的典型用法代码示例。如果您正苦于以下问题:C# MapObject.Pushed方法的具体用法?C# MapObject.Pushed怎么用?C# MapObject.Pushed使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Server.MirObjects.MapObject
的用法示例。
在下文中一共展示了MapObject.Pushed方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: DoKnockback
public void DoKnockback(MapObject target, UserMagic magic)//ElementalShot - knockback
{
Cell cell = CurrentMap.GetCell(target.CurrentLocation);
if (!cell.Valid || cell.Objects == null) return;
if (target.CurrentLocation.Y < 0 || target.CurrentLocation.Y >= CurrentMap.Height || target.CurrentLocation.X < 0 || target.CurrentLocation.X >= CurrentMap.Height) return;
if (target.Race != ObjectType.Monster && target.Race != ObjectType.Player) return;
if (!target.IsAttackTarget(this) || target.Level >= Level) return;
if (Envir.Random.Next(20) >= 6 + magic.Level * 3 + ElementsLevel + Level - target.Level) return;
int distance = 1 + Math.Max(0, magic.Level - 1) + Envir.Random.Next(2);
MirDirection dir = Functions.DirectionFromPoint(CurrentLocation, target.CurrentLocation);
target.Pushed(this, dir, distance);
}