fiore 39379da300 DEG-95 [Fix] 팔라딘 몬스터 폭탄 던지는 애니메이션 누락 수정
- 공격 패턴 순차 실행 -> 랜덤 실행으로 변경
2025-04-25 15:46:54 +09:00

45 lines
1.3 KiB
C#

using UnityEngine;
public class EnemyStateFlee :IEnemyState
{
private EnemyController _enemyController;
private Transform _detectPlayerTransform;
private const float MaxDetectPlayerInCircleWaitTime = 0.2f;
private float _detectPlayerInCircleWaitTime = 0f;
private float _fleeDistance = 5f; // 도망치는 거리
private float _attackRange = 7f; // 공격 범위
public void Enter(EnemyController enemyController)
{
_enemyController = enemyController;
Debug.Log("## Flee 상태 진입");
_detectPlayerTransform = _enemyController.TraceTargetTransform;
if (!_detectPlayerTransform)
{
_enemyController.SetState(EnemyState.Idle);
return;
}
}
public void Update()
{
// 도망치는 방향 계산
Vector3 fleeDirection = (_enemyController.transform.position - _detectPlayerTransform.position).normalized;
Vector3 fleeTarget = _enemyController.transform.position + fleeDirection * _fleeDistance;
_enemyController.Agent.SetDestination(fleeTarget);
float distance = Vector3.Distance(_enemyController.transform.position, _detectPlayerTransform.position);
_enemyController.BattleSequence();
}
public void Exit()
{
_detectPlayerTransform = null;
_enemyController = null;
}
}