인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

최성호님의 프로필 이미지
최성호

작성한 질문수

유니티(Unity)로 시작하는 게임개발: Part 3. 슈팅게임 개발

코인의 플레이어 충돌

GameManager 의 Start()가 스페이스 누를때마다 반복실행됩니다.

해결된 질문

작성

·

336

0

Coin 점수를 누적시키는 코드를 따라하고 있었어요
 
 
 
 
 
어느시점에서 GameManasger의 Start()가 실행되는지 확인을 위해서 플레이어 스크립트의 플레이어스크립트 샷 부분에 프린트를 찍었습니다.
 
PlayerScript
 
콘솔의 결과가 다음과 같습니다.
 
왜 그런걸까요?
 
 
 

답변 1

0

최성호님의 프로필 이미지
최성호
질문자

참 죄송하네요, 어처구니 없는 실수였습니다.

스페이스를 누를 때 마다 GameManager의 Awake() 가 호출된다는 것은

GameManager 객체가 계속  새롭게 생성된다는 뜻이고

코드상으로 무슨 문제가 있나보다 했더니

단순히 스페이스바를 누를 때 생성되는 Shot 프리팹에 GameManager스크립트가 Add되어 있었던 것입니다.

어쩌다가 이런 일이 일어났는지는 잘 모르겠네요~ 강의 순서상으로도 Shot 프리팹을 만들때에는 

GameManager를 만들기 전이고,  GameManager 빈 게임 오브젝트에 Create & Add 버튼으로 만든걸로 기억하는데... 왜 Shot 프리팹에 붙어 있었는지....

 

최성호님의 프로필 이미지
최성호

작성한 질문수

질문하기