扇形攻击范围
/// <summary>
/// 伞形攻击范围
/// </summary>
/// <param name="attacker">攻击方</param>
/// <param name="attacked">被攻击方</param>
/// <param name="angle">伞形角度</param>
/// <param name="radius">伞形半径</param>
/// <returns></returns>
public bool UmbrellaAttact( Transform attacker ,Transform attacked ,float angle, float radius)
{
Vector3 deltaA = attacked.position - attacker.position;
float tmpAngle = Mathf.Acos(Vector3.Dot(deltaA.normalized, attacker.forward)) * Mathf.Rad2Deg;
if (tmpAngle < angle * 0.5f && deltaA.magnitude < radius)
{
return true;
}
return false;
}
圆形攻击范围
圆形攻击范围有两种,以玩着荣耀的王昭君大招为例子,
第一种是制定位置