이 블루프린트의 목표는 플레이어와 몬스터 간의 간단한 전투를 구현하는 것입니다. 각 캐릭터는 체력(Hp)과 데미지(Damage) 속성을 가지고 있으며, 입력된 키를 통해 서로 공격하는 이벤트가 트리거됩니다.
Player 클래스와 Monster 클래스의 생성
각각의 클래스를 만들어 Hp와 Damage라는 멤버 변수를 생성했습니다.
Hp는 체력을, Damage는 공격력을 나타냅니다.
Player 클래스의 예:
Hp = 100Damage = 10Monster 클래스의 예:
Hp = 150Damage = 20객체 배치
레벨 블루프린트 설정
Event BeginPlay에서 BP_Player와 BP_Monster를 레퍼런스 변수로 가져옵니다.Hp, Damage)을 설정하고, 전투를 트리거할 이벤트를 준비합니다.로직 흐름
Key Pressed 1 이벤트가 실행되면 Monster 객체가 On Damaged 이벤트를 호출합니다.Damage)이 Player의 체력(Hp)에서 차감됩니다.BP_Monster의 On Damaged 구현
Is Valid 노드를 사용하여 입력된 객체가 유효한지 확인합니다.Damage 값을 가져와 Player의 체력에서 차감합니다.Hp가 0보다 작아지는 것을 방지하기 위해 Max(0) 노드를 사용합니다.Print Text로 화면에 출력합니다.로직 흐름
Key Pressed 2 이벤트가 실행되면 Player 객체가 On Damaged 이벤트를 호출합니다.Damage)이 Monster의 체력(Hp)에서 차감됩니다.BP_Player의 On Damaged 구현
Damage를 Monster의 Hp에서 차감하며, 역시 Max(0)로 체력이 음수로 떨어지는 것을 방지합니다.Print Text로 화면에 출력합니다.On Damaged 이벤트를 가지며, 공격과 방어를 서로 독립적으로 처리합니다.