UE 5 스터디/Gameplay Ability System(GAS)
32-12. 로그 라이크 - (6) 보스 - (2) 보스 체력 바
Crat3
2025. 6. 19. 17:24
0. 개요
보스 전용 체력 바를 만들고, 전투가 활성화되면 보스의 체력 바를 생성하고 업데이트한다.
1. 보스 체력 바
(1) WBP_EnemyBoss_ProgressBar 생성
기존의 WBP_ProgressBar의 로직을 그대로 복사하여 사용한다.
(2) WBP_EnemyBoss_HealthBar 생성
각 체력 바의 WBP_PictureFrame이 존재하고, 이 이미지를 체력바의 위젯 컨트롤러인 AuraEnemy의 멤버 변수로 추가하고 해당 변수를 가져와 초기화하도록 할 것이다.
UPROPERTY(EditAnywhere, BlueprintReadOnly)
TObjectPtr<UTexture> PictureFrameImage;
보스 블루프린트의 클래스 디테일에서 텍스처를 지정한다.
(2-1) Construct 이벤트
기존의 체력 바와는 다르게 작동하기 때문에, 생성된 직후에 체력과 최대 체력을 설정하도록 한다.
이후 체력 변화와 최대 체력 변화 델리게이트를 바인딩한다.
(2-2) 보스 몬스터 사망 시 즉시 위젯 제거
(3) BTS_UpdateBossHealthBar - BT Services 생성
기존의 체력 바 로직은 각 캐릭터의 BeginPlay에서 컴포넌트로 추가 후 체력 변화 델리게이트 호출, 위젯 컨트롤러 바인딩을 수행했다.
이를 BT Services 내부에서 수행한다.
BT Services 내에서 위젯을 생성하여 위젯 컨트롤러를 연결한다.
그리고 뷰 포트에 추가한다.