원신 별바다 개발일지 ) 함정장판 만들기 (260510 사망처리 추가)
260510 사망 처리 되지 않는 문제를 수정함.
불장판, 독장판을 만들고 그 위에 올라가면 데미지를 받는 함정장판 만들기
동작 방식은 글로벌 타이머와 캐릭터의 커스텀 변수값을 이용함
-글로벌 타이머가 1초마다 현재 캐릭터의 상태를 확인함
-장판 위에 올라가면 커스텀 변수(fire, poison)을 true로 변경시킴
-글로벌 타이머가 캐릭터의 커스텀 변수가 true일경우에 hp손실을 준다.
-장판 에서 멀어지면 커스텀 변수를 false로 변경시켜서 글로벌 타이머가 hp손실을 멈춘다.
필요한 오브젝트 프리팹
용암바닥
네이티브 충돌 해제하기,
공통 컴포넌트( 이펙트 재생, 충돌 트리거 )추가
노드 그래프 불장판 추가
공통 컴포넌트 상세내용
이펙트가 보여주는 영역과 실제 이벤트가 일어나는 충돌 범위는 다르므로 설정값을 바꿔가면서 조절해보자!
노드그래프 불장판 ( 엔티티 노드 그래프 폴더 안에 생성 )
간단하게 충돌 영역 안으로 들어오면 진입자의 커스텀변수(fire)를 True, False로 바꿔준다.
독바닥
독바닥은 용암바닥을 복사해서 이펙트랑 노드그래프 부분을 바꿔주면 빠르게 만들 수 있음.
이펙트를 풀원소로 변경
노드그래프 독장판( 엔티티 노드 그래프 폴더 안에 생성 )
커스텀 변수 이름을 poison으로 변경
캐릭터 설정
커스텀 변수 추가
커스텀 변수 메뉴 하단에서 추가를 한 다음 fire, poison 불리언 변수 2개를 생성하기
공통 컴포넌트 추가 버튼을 누르고 글로벌 타이머 추가
처음에는 글로벌 타이머가 없으니 지정타이머 - 타이머 관리로 들어가서 글로벌 타이머를 추가해준다.
신규 타이머 생성 후 이름, 타입, 지속시간을 다음과 같이 설정해주면
3번처럼 글로벌 타이머 목록에서 추가해주기
캐릭터 함정 타이머 노드 그래프를 생성해주자.
노드그래프 캐릭터 함정 타이머( 엔티티 노드 그래프 폴더 안에 생성 )
글로벌 타이머 트리거 시 더블 브랜치에서 함정데미지계산 타이머가 맞는지 확인하고 다음으로 넘어감.
추가로 글로벌 타이머 시작 노드를 실행해서 함정데미지계산을 루프시킨다.
타이머 이름이 맞을경우에 내 캐릭터의 커스텀 변수 fire를 가져와서 값이 true(장판 위에 올라간 상태)이면
hp를 감소시킨다.
이번에는 커스텀 변수 poison이 true(장판 위에 올라간 상태)이면 hp를 감소시키는데
fire와 차이를 보이기 위해서 hp손실량을 500으로 만들어줌
궁금한건 댓글로 올려주세요 ^^7
260510 사망 처리 되지 않는 문제를 수정함.
현재 캐릭터의 속성을 검색하고 현재 hp값을 가져옴
더블 브랜치에서 현재 hp값이 함정의 hp손실값 이상일경우에 원래대로 hp손실 노드 실행
현재 hp값이 함정의 hp손실값 이하일경우에 엔티티 파괴 노드를 실행해서 캐릭터를 사망처리함.