-
내일배움캠프 1일차 TIL - S.A 작성, 팀원 소개 카드 게임TIL/Unity 2024. 4. 15. 20:52
[학습내용]
본캠프 시작 첫 날이기 때문에 OT와 조 편성이 이루어졌다. 나는 A2조에 배정되었고, 오전에는 S.A 작성에 몰두하였다.
이번주에 진행하게 될 첫 프로젝트 주제는 "팀원 소개 카드 게임"이다. 사전캠프에서 개발했던 르탄이 카드 뒤집기 게임에서 조금 더 발전시키면 되는 주제였다.
우선 기존에서 추가로 구현해야하는 기능 목록은 다음과 같았다.
- ⭐ 필수 ⭐ 매칭 성공 시, 팀원의 이름 표시 / 실패 시 실패 표시
- 클릭할 때(카드 뒤집을 때), 시작할 때, 진행 중일 때 성공, 실패 소리 넣어보기
- 타이머 시간이 촉박 할 때 게이머에게 경고하는 기능 작성해보기(시간이 붉게 변하거나 긴박한 배경음악으로 변경)
- 한 번씩 뒤집은 카드는 색을 다르게 표시하기 (옅은 회색 등)
- 결과에 매칭 시도 횟수 표시
조원이 5명으로 구성되었으므로 우선 하나씩 붙잡고 해결해보았다. 깃허브를 이번주에 배우게 될 예정이기 때문에, 깃허브 사용법을 배우고 나서 각 기능을 통합하기로 하였다.
저 중에서 나는 첫 번째 기능을 구현하기로 하였다.
Card.cs
public class Card : MonoBehaviour { ... public string name; string[] nameArr = { "손영주", "김재혁", "임재훈", "박신후", "신재원", "손영주", "김재혁", "임재훈", "박신후", "신재원" }; ... public void Setting(int number) { ... name = nameArr[idx]; } ... }
먼저 카드에 맞는 이름을 넣어주었다. 모든 이름을 스트링 배열 안에 넣어주고, 카드에 name 변수를 만들어 인덱스에 맞는 이름을 저장해주었다.
GameManager.cs
public class GameManager : MonoBehaviour { ... public Text nameTxt; ... public void Matched() { if(firstCard.idx == secondCard.idx) { ShowName(true); ... } else { ShowName(false); ... } ... } public void ShowName(bool isAnswer) { if (isAnswer) { nameTxt.text = firstCard.name; } else { nameTxt.text = "실패"; } nameTxt.gameObject.SetActive(true); } }
그 뒤 정답 판정이 나오면 NameTxt 텍스트에 이름 또는 실패 문구를 넣은 뒤 출력되도록 코딩했다.
그리고 이름을 표시할 NameTxt 텍스트 오브젝트를 만들어주는 것도 잊지 않았다. 추가적으로 기존 르탄이 이미지를 조원 사진으로 대체하는 작업도 진행하였다.
[결과물]
[회고]
아직 1일차인 만큼 무엇을 해야할지 몰라 시간을 효율적으로 쓰지 못한 것 같다. 깃허브 특강을 듣게 된다면 빠르게 진행하여 다른 챌린지 항목들도 도전해봐야겠다는 생각이다.
추가 기능 챌린지 목록
- 12p 랜덤하게 섞는 부분을 코드스니펫을 활용하지 않고 직접 만들어 보기
- 실패할 때 마다 시간 감소 효과 넣어보기
- 카드 뒤집기에서 실제로 카드가 뒤집어지는 모습 연출하기
- 카드 오브젝트 개수 늘리기
- 나만의 카드 등장 효과 연출하기(파도타기 효과로 등장, 화면 밖에서 나선형으로 날아오는 등장 등)
- firstCard 고르고 5초 간 카운트 다운 - 안 고르면 다시 닫기
- 현재 스테이지(또는 난도)에 따라 카드 배열 증가시켜보기
- 결과에 점수 표시 → 남은 시간, 매칭 시도한 횟수 등을 점수로 환산
- 스테이지 선택과 현재 해금한 스테이지가 구분 가능한 시작 화면 만들기, 플레이 중 해당 스테이지의 최단 기록 띄워주기
'TIL > Unity' 카테고리의 다른 글
내일배움캠프 4일차 TIL - GitHub 특강, 프로젝트 완성 (1) 2024.04.18 내일배움캠프 2일차 TIL - 프로젝트 합병, GitHub (0) 2024.04.16 내일배움캠프 사전 5주차2 - 효과음 삽입, 프로젝트 빌드, 광고 (0) 2024.04.12 내일배움캠프 사전 5주차1 - 시작 화면과 스플래시 이미지 (0) 2024.04.11 내일배움캠프 사전 4주차 - 르탄이 카드 뒤집기 게임 제작 (0) 2024.04.05