22 lines
787 B
C#
22 lines
787 B
C#
using UnityEngine;
|
|
using UnityEngine.AI;
|
|
|
|
public abstract class Movement_Base: MonoBehaviour
|
|
{
|
|
// 파생 클래스들이 사용할 수 있도록 protected로 선언
|
|
protected NavMeshAgent _agent;
|
|
protected Rigidbody _rb;
|
|
|
|
protected virtual void Awake()
|
|
{
|
|
// 파생 클래스에서 base.Awake()를 호출할 때 실행될 기본 로직 (비어있어도 됩니다)
|
|
}
|
|
|
|
// 모든 이동 타입이 반드시 구현해야 할 추상 메서드들
|
|
public abstract void SetSpeed(float speed);
|
|
public abstract void SetDestination(Vector3 target);
|
|
public abstract void Stop();
|
|
public abstract float GetCurrentSpeed(); // 애니메이션을 위해 현재 속도 반환
|
|
public abstract bool IsMoving(); // 현재 이동 중인지 여부
|
|
}
|