멋쟁이사자처럼 X 넥슨 MOD Suppoters Hackathon 4주차 3일 회고

Jiwon Lee·2022년 7월 27일

MOD x Supporters

목록 보기
14/23

오늘은 공부를 못해따 . . . 그래도 회의도 하고 다른 일도 햇스니깐 ㅠㅠ 아침에 인나서 밀린 거 해야지


3. 충돌 기능 구현하기

충돌 기능의 원리

장애물에 TriggerEvent가 발생→ 해당 TriggerEvent가 발생한 대상이 Player인지 확인

→ 플레이어의 Hp - Trap의 데미지가 0보다 클 때 : HP만 감소

0보다 작거나 같을 때 : 플레이어 사망 및 5초후 부활 설정

충돌 기능 실습

1. TrapTriggerComponent 추가

Trap 엔티티에 TrapTriggerComponent를 추가함 ( TriggerComponent → 충돌 관련, extend )

🍯 기존 컴포넌트를 extend 해야 할 때는 workspace에서 검색 후 우클릭 !

⚠️ 기존 TriggerComponent가 있을 경우엔 extend된 Component 추가 불가능 !!

2. TakeDamageComponent 추가

→ player가 잠깐 장애물과 떨어진 후, 키 입력을 하면 동시에 2번의 Trigger Event가 발생해 Hp가 2배로 차감되는 경우를 방지하는 컴포넌트

boolean으로 현재 데미지를 받아도 되는지에 대한 정보를 담아 현재 player의 period가 참일 경우에만 Trap과 충돌하여 hp가 깎이도록 함

3. TrapTriggerComponent 작성

**StateComponent**는 Entity에 상태를 부여, 상태 전환과 전환 시 수행할 행동을 정의할 수 있게 함

4. PlayerDead() 작성

Player 상태가 사망 상태일 때, 점프나 이동 등 조작이 불가능하도록 하는 함수

→ MovementComponent의 InputSpeed, JumpForce를 0으로 바꾸면 조작 불가능

5. PlayerAlive() 작성

Player가 사망 상태에서 다시 리스폰 되었을 때 MovementComponent를 원상태로 복구

profile
노는 게 제일 좋은데 공부는 하고 싶어요 😗

0개의 댓글