void OnTriggerEnter2D(Collider2D collision)
{
if (collision.gameObject.tag == "PlayerBullet" )
{
anim.SetBool("isHit", true);
Arrow bullet = collision.gameObject.GetComponent 화살표 Arrow 화살표 ();
OnHit(bullet.dmg);
}
Invoke ("Return",1);
}
void Return()
{
Debug.Log("총알맞음");
anim.SetBool("isHit", false);
}
단순한 2d 게임인데 적이 총알 맞고 아이들 상태로 돌아와야되는데 계속 맞은 스프라이트만 반복하네
내가 인보크 제대로 쓴게 맞는지 확인좀 해줘
로그에 안찍히네 뭐가 잘못됐지? 분명히 초보적인 실수 일텐데 그걸 못보니 답답해 죽겠네
그리고 지금 보니깐 게임에서 인보크 구문 전부다 로그에 안찍히네
갑자기 이러니깐 돌아버리겠네
이런 경험 있는 형들 도움좀
헐 유니티 인스펙터에있는 스케일 크기를 줄이니깐 정상적으로 작동되네??? 뭐지?? 누가 나 감시하나??? 조현병 걸리겠네 ㅋㅋㅋㅋ
트리거 위치가 콩알만해서 총을 안맞거나 트리거나 우주보다 커서 이미 총알이 트리거 안에있는거 아니야?
invoke(return,1)이 태그확인하는 조건문 바깥에있어서 어디 충돌할때마다 인보크가 무한호출되서 그런거 아니야? 스케일 줄이니까 멀쩡해지는것도 어디 부딪힐 일이 적어지니까 그러는 것
일단 해결했는데 1. 크기를 줄였고 2. 적 콜라이드를 캡슐에서 박스로 바꿨어 트리거 위치랑 인보크 구문 바꿔야겠다 위에 답장준 두명 고마워