- 개요
이전까지 C++로 작성한 로직을 실제 블루프린트로 사용하여 설계한다
1) WBP_AttributePointsRow 위젯 블루프린트

WidgetControllerSet 이벤트를 추가하여 위와 같이 로직을 구성한다
능력치의 수치를 보여주는 텍스트를 갱신하는 이벤트를
BPAttributeMenuWidgetController의 AttriubutePointsChangedDelegate에 바인드한다
2) WBP_AttributeMenu 위젯 블루프린트

SetButtonsEnabled 함수를 추가하여 위와 같이 구성한다
능력치 포인트가 0보다 작다면, 능력치를 증가시키는 버튼을 비활성화하고 아니라면 활성화한다

세번째 시퀀스를 추가하여 하위 UI인 WBP_AttributePointsRow의 WidgetController를 설정한다

네번째 시퀀스를 추가하여 위와 같이 로직을 구성한다
SetButtonEnabled 함수를 호출하는 이벤트를 생성하고
AttributeMenuWidgetController의 AttributePointsChangedDelegate에 바인드한다
3) GE_EventBasedEffect 블루프린트

위와 같이 구성한 4개의 PrimaryAttribute에 관한 모디파이어를 추가한다
Set By Caller 방식으로 설정하여 Tag에 연결된 값을 해당 Attribute에 더한다
4) GA_ListenForEvent 블루프린트

위와 같이 구성된 EventTags 멤버변수를 추가한다

3)을 기반으로 한 GESpec을 생성한 이후에 EventTags 멤버변수를 순회하면서 로직을 진행한다
- 순회중인 Tag가 Event로 전달된 Tag와 일치하는 경우
- 순회중인 Tag와 연결된 Attribute를 수정할 GE의 모디파이어 값을 Event로 전달한 값으로 설정
- 순회중인 Tag가 Event로 전달된 Tag와 일치하지 않은 경우
- 순회중인 Tag와 연결된 Attribute를 수정할 GE의 모디파이어 값을 0으로 설정
- 순회가 끝난 후에 GESpec을 자기자신에게 적용
- 최종 실행 결과
'언리얼 엔진 - 게임 프로젝트 > GAS 프레임워크 RPG 프로젝트' 카테고리의 다른 글
| 스킬창 UI - 2) 스킬창 UI Manager 클래스 + 구조 개선 (0) | 2025.10.31 |
|---|---|
| 스킬창 UI - 1) 스킬창 UI 구성 (0) | 2025.10.30 |
| 능력치 포인트 - 최종) (1) C++ 사이드 (0) | 2025.10.26 |
| 경험치와 레벨업 - 최종) 레벨과 UI 연동 (0) | 2025.10.25 |
| 경험치와 레벨업 - 3) 레벨업 구현과 경험치 바 UI (0) | 2025.10.24 |