목차
- 에너미가 피해를 입으면 반응하기
1. 에너미가 피해를 입으면 반응하기
에너미가 피해를 입었을때 플레이어가 추격 사거리 안에 있으면 플레이어를 쫒아가게 할 것이다. 에너미의 상태 열거형이 존재하고 이에 따른 반응도 구현하였기 때문에 이를 구현하는 것은 매우 간단한 작업이 될 것이다.
float AEnemy::TakeDamage(float DamageAmount, FDamageEvent const& DamageEvent, AController* EventInstigator, AActor* DamageCauser)
{
if (Attributes && HealthBarWidget)
{
Attributes->ReceiveDamage(DamageAmount);
HealthBarWidget->SetHealthPercent(Attributes->GetHealthPercent());
}
CombatTarget = EventInstigator->GetPawn();
// 이 아래로 추가
EnemyState = EEnemyState::EES_Chasing;
GetCharacterMovement()->MaxWalkSpeed = 300.f;
MoveToTarget(CombatTarget);
return DamageAmount;
}
에너미의 상태를 추격으로 바꾸고 속도를 올린뒤 타겟에게 이동시키면 된다.
이제 에너미의 추격반응을 만들었으니 에너미가 공격할 차례이다. 에너미에게 무기를 쥐어준 후 공격 로직을 만들어보고자 한다.
'게임프로그래밍 > 실습1' 카테고리의 다른 글
[언리얼 실습] 64. 에너미에게 무기 쥐어주기 (0) | 2024.11.06 |
---|---|
[언리얼 실습] 63. 자식 에너미 클래스 만들기 (0) | 2024.11.06 |
[언리얼 실습] 61. 공격 사거리 안으로 들어오면 공격상태로 만들기 (0) | 2024.11.05 |
[언리얼 실습] 60. 에너미의 순찰, 추격, 공격 상태 구분하기 (0) | 2024.11.05 |
[언리얼 실습] 59. 에너미가 플레이어 발견시 반응하기 (0) | 2024.11.05 |