플래피버드 만드는 과정중에서 화면에 별을 프리팹으로 만들어내고 별에 부딪히면 별이 사라지면서 점수가 오르게 하고싶습니다.
트리거를 통해서 점수는 오르는데 Destroy(gameObject); 를 해버리면 별이 아예 안나오네요..
별 이미지에 스크립트를 통해서 StarScoreUp 스크립트 안에
public class StarScoreUp : MonoBehaviour
{
private void OnTriggerEnter2D(Collider2D collision)
{
Destroy(gameObject);
Score.score += 100;
}
}
이렇게 진행하였는데, 별에 부딪히면 더이상 별이 안나오고 그러네요.. 부딪힌 별만 사라지게 할 수 있나요??
그리고 또 궁금한게 OnTriggerEnter2D(Collider2D collision) 랑 OnTriggerEnter(Collider other) 차이가 뭘까요??
collision.gameObject를 하면 플래피버드 캐릭터가 사라지던데 무슨 변수인지 모르겠어요
구글링 해봐도 딱 원하는 답이 없고 해결되지 않아서 이렇게 글남겨봅니다.
추가 )
별 프리팹 만드는 Generator 안에 스크립트 MakeStar 안에
public class MakeStar : MonoBehaviour
{
public GameObject Star;
public float timeDiff;
float timer = 0;
// Start is called before the first frame update
void Start()
{
}
// Update is called once per frame
void Update()
{
timer += Time.deltaTime;
if (timer >= timeDiff)
{
GameObject newStar = Instantiate(Star);
newStar.transform.position = new Vector3(6, Random.Range(4.0f, -2.5f), 0);
timer = 0;
Destroy(newStar, 10.0f);
}
}
}
이렇게 설정했는데, 잘모르고 한거라서 내가 이해를 잘 못한걸수도??
파이프 랜덤하게 만드는거 보고 따라한건데 어느 부분이 게임 별 오브젝트이고 어떻게 설정해야하는거지??
해당 댓글은 삭제되었습니다.
아하 그 부분은 이해된거같다!!
해당 댓글은 삭제되었습니다.
형이 말한거 이제봐가지고 추가했어 질문 자세하게!!
2D없는건 3D콜라이더라 생각하면 편함ㅇㅇ 2D는 2D끼리만 충돌함 collision.gameObject는 나(별)와 부딪힌 플레이어캐릭을 가르키는거라 플레이어가 사라지는거... 별을 생성하는 오브젝트를 따로둬보세요 별을 싸는애를 죽이면 당연히 별이 안나옴 함수와 매개변수에 관한 지식을 조금이라도 알면 도움많이될듯?
함수랑 매개변수 개념이 부족한건지 모르겠는데 추가했거던 그 별 싸는 애 내가 볼땐 별싸는 애가 public GameObject Star; 이 부분인거 같은데 어떻게 따로 두라는의미인지 이해가 잘 안되서 ㅜㅜ
쉽게 생각해서 starManager가 있음 얘는 말그대로 조건충족시 별만 쌈 얘는 첨부터있고 만들어지지도 삭제되지도 않음 얘가 싼 star 얘는 플레이어와 충돌 시 삭제되는 스크립트만 있음 이렇게 우선적으로 구성해보삼
별을 만드는 부분이 GameObject newStar = Instantiate(Star); 이부분인거 같아서 이 부분을 전역변수로 선언하고 private void OnTriggerEnter2D(Collider2D collision) { Destroy(MakeStar.newStar); Score.score += 100; } 이렇게 생각하고 구현했는데 안되는데 이게 다른건가 형이 말한거랑??
스크립트를 따로 만들어야지... 1번스크립트 내용 : 퍼블릭 gameobject 선언하기, 조건충족시 gameobject를 만들기 2번스크립트 내용 : 충돌시 나 스스로를 삭제, 점수증가 2번을 별에넣고 프리팹으로 만들어. 그다음 1번을 하이어라키에 빈오브젝트 만들어서 넣고 빈오브젝트의 인스펙터에 스크립트에 별 프리팹을 넣으셈
개인적으로 지금 만들던거 잠시 킵하고 유니티에 골드메탈 강좌처럼 좋은거 많으니까 그걸 먼저 따라하는걸 추천함. 하는데 얼마 안걸리는데 그안에 너가필요로하는거 다있음
1일차라 당연한거지만 작동원리를 1도몰라서 뭘해야될질 모르는거가틈. 꼭 강의 따라해보는걸 권장함 하루도 안걸리니까.. 스테이플러도 쓰기쉬운데 심넣는법은 알아야 쓰던말던하잖아?
골드메탈 강좌 알겠어 형 고마워!! 들어볼게!