두 개의 카드가 열렸을 때 비교를 해보고
동일한 카드라면 파괴시키고 다른 카드라면 다시 닫아주는 로직을 구현해야 한다.
< 전략 >
각각의 카드에 Index 숫자값을 넣어줬다.
숫자가 짝을 이루고있기때문에 두 개의 카드의 동일성을 판별하기 위해서는
두 숫자가 같으면 파괴시키고 같지않으면 다시 닫아주자.
카드 두 개의 정보를 갖고 있어야 한다.
두 개의 카드 정보를 갖고 있는 Card 스크립트를 자료형
첫 번째 카드가 열렸을 때, 이 카드가 GameManager에 있는 firstcard에 정보를 넘겨주고
두 번째로 열리는 카드가 firstcard라고 하는 변수에 데이터가 있는지 없는지 확인을 하고
있다면 secondcard라고 하는 변수에 정보를 넘겨주고
Matched라는 함수를 발동
그러기 위해서 카드들이 GameManager에 있는 firstcard, secondcard에 접근하기 위해서는
싱글톤을 만들어줘야 한다.
이제 Card 스크립트로 넘어와서
파괴 관련 로직을 Matched 함수안에 작성해 보자
일단 Index가 GameManager에 접근할 수 있도록 Card스크립트에 들어가서 Public을 붙혀 주자
파괴, 클로즈 관련 함수를 Card 스크립트에 public으로 작성한 다음에 GameManager스크립트로 끌어 오자
마지막으로, 기존에 사용된 정보들을 지워주는 로직을 추가해 줘야 버그가 걸리지 않는다.
확인할 틈새도 없이 파괴시키므로 약간의 딜레이를 추가해 보자
'Unity > Knowledge' 카테고리의 다른 글
카드 뒤집기 게임 완성 (0) | 2024.04.16 |
---|---|
⑦ 게임 끝내기 (0) | 2024.04.16 |
⑤ 카드 만들기 - 애니메이션 및 뒤집기 (0) | 2024.04.16 |
④ 카드만들기 - 이미지 랜덤 로직 (0) | 2024.04.15 |
③ 카드 만들기 - 배치하기 (0) | 2024.04.15 |