적 보스의 체력바를 간단히 구현해 볼 것이다.
위젯 블프를 만들어 위와 같이 ProgressBar를 이용하여 화면 위쪽에 생성하고 색을 빨강으로 조정한다.
ProgressBar 옆의 변수체크를 꼭 해준다.
UpdateHealthPercentage 함수를 만들고 SetPercent 함수로 CurrentHealth를 MaxHealth로 나눈 값을 입력하도록 한다.
이는 남은 체력 비중을 SetPercent 함수에 넣어 Progress바에 표시되도록 하는 과정이다.
적 블프에서 CreateWidget 함수로 시작시 체력바 위젯을 포함하도록 하고 변수로 승격한다.
데미지를 입었을 때 DoOnce로 한번만 AddVieport를 실행하도록 하고 이후 데미지를 입을 때마다 UpdateHealthPercentage를 실행하도록 한다.
OnDeath 이벤트에서 죽었을 시 마지막으로 HealthBar를 업데이트하고 캐릭터가 사라지는 5초의 딜레이 뒤에 RemoveFromParent 함수로 HealthBar를 지운다.
잘 동작하는 것을 볼 수 있다.
'언리얼 - 게임 개발' 카테고리의 다른 글
첫 게임 개발 (20) _ CoyoteTime, JumpBuffering 구현 (0) | 2024.06.30 |
---|---|
첫 게임 개발(19) _ 적의 랜덤 연속 투사체 공격 구현 (0) | 2024.06.28 |
첫 게임 개발(17) _ 플레이어 에너지 시스템, 적 Blocking과 순간이동 구현 (0) | 2024.06.28 |
첫 게임 개발(16) _ 적 강공격 및 투사체 구현 (0) | 2024.06.26 |
첫 게임 개발(15) _ EQS 기초 (0) | 2024.06.24 |