sphere trace 애님 노티파이 스테이트 만들어서 공격 모션 몽타주에 사용하고있음,
맞으면 초록, 안맞으면 빨강
이제 피/타격 만들려고 하는데 문제가 발생함ㅜ
충돌이 한번 검출되면 해당 몽타주 섹션에서는 더이상 검출을 하고싶지 않은데 해버리니까 한번의 공격에 데미지, 이펙트가 여러번 들어가..
구글에 검색 해보니 원하는 정보는 나오지도않고 혼자 생각해본게
불변수 하나 만들어서 begin에서 false로 두고 tick에서 충돌하면 true로 바꾸고, true인 상태에서는 바로 return node 하는 식으로 하려 해봤는데
블루프린트에서 만든 변수라 그런가 set이 안되더라고.. 어떤식으로 해야할까??
충돌이 검출되면 리턴 노드 값을 True 로 해줘봐
음 그래도 똑같아!
내가 잘못 알고 있었나. 다시 찾아봐야 겠네
리턴 값이 아무런 역할을 안하네.
MeshComp 의 owner 로 캐릭터 포인터 얻어와서 캐릭터에서 이벤트를 처리하는게 편함. 노티파이는 이벤트를 전달만 하는 거지.
글 수정이 안되서 댓글로 좀 남길게 사실 C++로 만들어서 bool 변수 만들고 if통해서 검출할지 안할지 하면 될것같긴한데, 다른 방법이 있는지, 블루프린트에서 만든 bool변수는 왜 set이 안되는지가 궁금해!
애님 노티파이는 애니메이션 에셋에 설정되는 거라서 다른 캐릭터도 에셋을 같이 참조하니까 별도 값을 설정하는게 금지 됐을 가능성이 있을거 같음.
내가보기엔 노티파이에 불값을 안가져온듯
일단 간단하게 하자면 적한테 데미지 주려면 일단 적 캐릭터 참조해야하잖아
적한테 데미지줄때 적한테 무적시간도 같이 줘서 아예 데미지 컷하는게 나을듯 적 여러마리 공격할수도 있으니
짤로 돌아가서 노드보면 receive notify 직후에 branch가 들어가야 trace를 그만두지, trace 결과로 만든 branch는 이미터 스폰여부만 결정하지, 실제 다단히트에는 영향안줌 trace는 bool값과 관련없이 실행중이니까 저 bool 결과값을 캐릭터든 어디든 저장하고, trace 실행 이전에 불러와서 branch 걸고, trace 결과를 다른데 저장을 해야지 그리고 공격모션 실행시 false로 초기화시켜놓고
보니까 return노드에 bool값 주긴했네 근디 return노드에 bool값을 연결안해서 디폴트 false만 반환하고있고
트레이스의 return value를 return 노드에 연결해보셈 원하는 결과가 나올지는 몰라도, 트레이스 결과를 제대로 반환할거임