인프런 커뮤니티 질문&답변
OnHitEvent
작성
·
276
0
여러가지 실험을 하다가
OnHitEvent() 함수 안에다 제가 분기문을 모두 주석처리 후
State = PlayerState.Moving 으로 한 뒤 플레이를 해봤습니다.
OnHitEvent()
{
State = PlayerState.Moving
}
그런데 이렇게 하면 캐릭터를 한번 공격한 후 유니티짱을 다른 곳을 클릭해서 움직이려 할 때 먹통이 되어 안움직이게 됩니다.
제가 생각하기로는 OnMouseEvent로 계속해서 이벤트를 듣고 그에따른 로직을 수행해야 할 것으로 생각이 되는데
OnMouseEvent_IdleRun 내부 최상단에 debug.log를 찍어보니 해당 함수가 호출도 않되더군요
영상대로 OnHitEvent에 State = PlayerState.Idle 이면 정상적으로 수행이 됩니다만
위의 사항이 아무리 고민해도 왜 그런지 모르겠어서 질문드립니다.
답변 1
0
Rookiss
지식공유자
안녕하세요,
문제가 일어나면 눈으로 찾지 마시고 디버깅으로 찾으려 하면 더 수월합니다.
State = PlayerState.Moving으로 설정했다면,
UpdateMoving으로 코드가 항상 들어가면서
무한으로 스킬을 사용하게 됩니다.





