언리얼 36

언리얼 게임 클리어 ui

Game Mode Base 블루프린트 생성 이름은 DefualtPlayGameMode 월드 세팅에서 default게임 모드를 방금 생성한 DefualtPlayGameMode로 해준다. 이벤트 그래프로 가서 Boss변수를 생성하고 변수 유형은 Boss Monster BP로 설정한다. 노드는 다음과 같이 연결한다. BeginPlay에서 tag가 Boss인 액터를 Boss변수로 set하고 그 Boss의 Cur State가 death 가 되면 stage clear 문구를 출력한다. 유저 인터페이스 -> 위젯 블루프린트를 생성한다. 먼저 text를 생성하고 글자 크기와 위치를 맞추어준다. 버튼 추가한 모습 새로운 열거형 블루프린트를 만들고 Stage clear 상태에서만 해당 위젯을 띄우기 위해 다음과 같이 열겨..

몬스터 플레이어 액터 구분

플레이어는 우측에 다음과 같은 태그 생성 몬스터는 다음과 같은 태그를 생성한다. 그리고 다음과 같이 노드를 연결하여 몬스터의 액터 태그와 다른 몬스터의 액터 태그가 같으면 공격을 하지 않고 달라야지만 공격하도록 노드를 연결해준다. 이렇게 하면 몬스터 끼리 공격하지 않고 플레이어만 공격하게 된다.

언리얼 몬스터 스킬 설정

먼저 몬스터 블루프린트에서 skillTime이라는변수를 추가한다 몬스터 블루프린트에서 몬스터의 상태를 변경하기 위해 MonsterState 열거형 변수로가서 변수를 하나 추가한다 이름은 skillAttack 노드를 다음과 같이 연결하면 skillTime이 10초를 넘겼을 때 몬스터의 상태가 skillAttack이 되고 스킬 사용하는 애니메이션을 실행하게 된다. 이 연결한 노드는 하나의 커스텀 이벤트로 만들어 준다(다른 곳에서도 쓰이기 때문) 이 부분인데 공격 애니메이션이 끝나고 몬스터에게 플레이어를 쫓아가던지 아니면 공격하던지 명령을 내려주는 부분에 거리가 플레이어와 가깝다면 방금 생성한 이벤트 노드를 연결해서 공격을 하라고 명령을 내린다. 이제 시간이 지남에 따라 생성한 변수 skill time값을 증..

언리얼 몬스터 죽음

Monster State Death라는 항목 추가 몬스터 블루프린트에서 피격 당할 때 죽으면 Monster State 변수를 Death로 바꾸어준다 그리고 죽으면 Collision이 비활성화 되도록 연결한다.콜리전은 무기에 하나, 몬스터 본체에 하나가 있기 때문에 2개를 연결해서 No Collision상태로 만들어준다 이렇게 하면 몬스터가 죽었을 때 모든 Collision이 비활성화 되므로 애니메이션이 다시 실행되는 일이 없다. 그 뒤로 해당 노드를 붙여주면 3초뒤에 죽은 몬스터 액터는 삭제된다.

언리얼 플레이어 사망모션

캐릭터 블루프린트에서 노드를 다음과 같이 연결 이제 hp가 0보다 작게되면 사망 애니메이션을 실행 할 것이다. IsDeath변수를 추가해서 다음과 같이 노드 연결 죽는 애니메이션이 실행되면 Is Death 변수가 True가 되도록 한다 열겨헝 변수 MonsterState에서 새로운 변수 Idle_Ready를 만들어준다. 이는 플레이어가 죽었을 때 가만히 있는 상태를 나타낼 것이다. 먼저 몬스터 블루프린트에서 Is Death Player 변수를 하나 선언해주고 캐릭터가 죽었을 경우 캐릭터 bp에서 값을 받아와 캐릭터가 죽어 Is Death 가 true가 됐을 때 Is Death Player 변수도 true가 되도록 한다 그 다음 캐릭터가 죽으면 Monster State를 Idle_Ready상태로 바꾸어 쫓..

언리얼 몬스터 AI 플레이어 공격

먼저 무기에 capsule collision을 설정해준다 capsule collision을 클릭하고 오른쪽 하단의 On Component Begin Overlap을 클릭해준다 애니메이션 몽타주에서 나음과 같이 노티파이를 잡아주고 몬스터 애니메이션 몽타주 블루프린트에서 해당 노티파이에 애니메이션이 닿으면 몬스터 블루프린트에 있는 이벤트로 넘어가도록 해준다 다시 몬스터 블루프린트로 와서 다음과 같이 노드를 연결해준다 1.먼저 본인이 아닌 다른 오브젝트와 capsule collision이 만나면 문자를 출력한다 2.첫번째 노티파이에서는 콜리전 활성화, 두 번째 노티파이에서는 콜리전 비활성화가 되도록 한다. 이 때 capsule collision의 Collision Enabled의 디폴트 값은 No Collis..

언리얼 몬스터 공격

몬스터 블루프린트에서 캐릭터와 몬스터와의 거리가 160이하가 되면 Monster State변수를 AttackChar로 바뀌도록 설정한다 그 다음 isAttacking 이라는 변수를 하나 만들어서 공격을 안하고 거리가 160보다 커지면 설정값을 다시 FollowChar로 바꾸어준다 커스텀 이벤트로 이벤트가 실행되면 isAttacking변수가 False가 되도록 새로운 이벤트를 생성한다 애니메이션에 OnAnimEnd_Attack이라는 새로운 노티파이를 생성하고 몬스터 블루프린트에서 애니메이션이 해당 노티파이에 닿으면 방금 생성한 이벤트를 발생시켜 isAttacking을 False로 만든다 다시 몬스터 블루프린트가서 거리가 180보다 크면 FollowChar로 상태를 바꾸어주고 아니라면 공격 애니메이션을 실행..