몬스터 머리위에 둘 위젯을 하나 생성하여 이름은 MonsterHPBar로 한다.
프로그레스 바를 하나 생성한 뒤 퍼센트를 1로 맞춘다.
액터 블루프린트를 하나 생성하고 이름은 CharHPBarBP로 한다.
위젯 컴포넌트를 하나 추가하고
위젯 클래스를 방금 만든 MonsterHPBar로 한다.
실행되면 Location이 갱신되는 함수를 하나 만든다.
몬스터 블루프린트로 가서 큐브를 하나 생성하고 이름은 HPBarPosDummy로 한다.
이후 콜리전과 visibility를 꺼준다.
BeginPlay이벤트에서 몬스터 hp바 블루프린트를 위에 생성한 dummy위치에 만들도록 한다.
다음 틱 이벤트에 다음과 같이 노드를 연결하여 매 틱마다 hp바의 위치가 갱신되도록 한다.
변수에 프로그레스 바 레퍼런스 변수를 하나 선언하고 이름은 PB_HPBar로 한다.
BeginPlay이벤트에서 해당 변수에 위젯을 넣는 과정을 거친다.
함수를 하나 만들어서 현재 HP에서 MaxHP를 나눈 값을 퍼센트로 프로그레스바에 들어가도록 한다.
몬스터 블루프린트 - AnyDamage 이벤트 부분에 위에 만든 함수를 연결해준다.
'언리얼 개인 프로젝트 > 언리얼 블루프린트' 카테고리의 다른 글
언리얼 데미지 텍스트 (0) | 2023.01.08 |
---|---|
언리얼 블루프린트 보스 HP바 (0) | 2023.01.08 |
언리얼 블루프린트 MP바 / 스킬 아이콘 / 쿨타임 (0) | 2023.01.04 |
언리얼 블루프린트 캐릭터 HP 바 (0) | 2023.01.04 |
언리얼 블루프린트 카메라 떨림 (0) | 2023.01.03 |