OldBlueWater/BlueWater/Assets/02.Scripts/Interface/IAiView.cs

30 lines
1.0 KiB
C#
Raw Normal View History

using UnityEngine;
using UnityEngine.AI;
// ReSharper disable once CheckNamespace
namespace BlueWaterProject
{
public interface IAiView
{
NavMeshAgent Agent { get; set; }
float ViewRadius { get; set; }
float AtkRange { get; set; }
Vector3 DefensePos { get; set; }
bool IsRandomMove { get; set; }
float RandomMoveRange { get; set; }
Collider[] Targets { get; set; }
Collider Target { get; set; }
LayerMask TargetLayer { get; set; }
/// <summary>
/// 가장 가까운 타겟을 찾아 Target에 적용
/// </summary>
/// <param name="targetIsTrigger">IsTrigger Collider를 대상으로 삼을지 확인</param>
public void FindNearestTargetInRange(bool targetIsTrigger = true);
public void SetTarget(Collider value);
public bool IsTargetWithinRange();
public bool GoOutOfBounds();
public void MoveTarget(Vector3 targetPos, ESpeedType speedType, float stopDistance);
}
}