本文整理汇总了C#中System.Objects.Offset方法的典型用法代码示例。如果您正苦于以下问题:C# Objects.Offset方法的具体用法?C# Objects.Offset怎么用?C# Objects.Offset使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Objects
的用法示例。
在下文中一共展示了Objects.Offset方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: IsInAreaEffect
/// <summary>
/// Checks whether this location is inside a pre-defined area.
/// </summary>
/// <param name="areaEffect">The area effect used.</param>
/// <param name="location">The center of the area.</param>
/// <param name="direction">The direction of the area effect used.</param>
/// <returns></returns>
public bool IsInAreaEffect(Objects.AreaEffect areaEffect, Objects.Location location,
Enums.Direction direction)
{
ushort y = 0;
Objects.Location currentLoc = this.Clone();
byte dir = areaEffect.Type == AreaEffect.EffectType.Spell ? (byte)direction : (byte)1;
foreach (byte[] row in areaEffect.GetArea())
{
int center = row.Length / 2;
for (int i = 0; i < row.Length; i++)
{
if (row[i] != dir) continue;
if (location.Offset(i - center, y, 0) == currentLoc) return true;
}
y++;
}
return false;
}