안녕하세요!
오늘도 게임개발자가 되기위해 공부하고 있는 구구입니다.
오늘은 갓생살기 30일차가 되는날입니다.
드디어 갓생살기 마지막 날입니다.
그래서 오늘은 지금까지 배운 내용들로 게임을 만드는 시간을 가졌습니다.
오늘 만들 게임은 숫자 달리기 게임입니다.
위의 그림처럼 1번부터 4번까지의 숫자들이 한칸씩 이동하면서 도착선까지 누가
빨리 도착하는지 경쟁하는 게임입니다.
우선 기본 틀부터 만들어보겠습니다.
이렇게 되면 경기장과 경기말들은 세팅이 완료되었습니다.
이제 1번부터 4번까지가 달려야 하고 결승선을 표시해야합니다.
우선 화면의 말들이 계속 달려야하기에 반복문을 써야합니다.
따라서 while(true)를 써서 계속 반복되도록 설정해줍니다.
여기서 배우진 않았지만 Console.Clear();를 사용할텐데
Console.Clear();
는 도스창에서 화면 지우기를 뜻합니다.
그리고 화면의 지워지는 속도를 느리게 하기 위해 Sleep을 사용합니다.
(Sleep은 크게 중요하지 않습니다.)
지금까지의 내용을 다 적용하면 다음과 같습니다.
다음은 말들이 달리도록 빈칸을 채워넣어야합니다.
WriteLine이 아닌 Write를 쓰면 줄바꿈을 하지않는다는 점을 이용하여 코딩합니다.
for 문을 이용해서 " "(빈칸)을 원하는 수만큼 출력하고 그 다음 달리는 말이 출력되고
줄바꿈이 이뤄지도록 합니다.
이때 말이 달리는 칸의 수는 랜덤을 이용해서 하도록하겠습니다.
Random rnd = new Random();
을 이용해서 1번말부터 4번말중 하나를 선택하게 하고
그 외의 말들은 1칸씩만 전진하지만 랜덤적으로 말 한개는 2칸을 전진하게 됩니다.
결승선은 ENDLINE이라는 것을 설정해서 말이 몇칸 이상 도착했을때 결과지를 출력하고
어떠한 값을 입력받게 만들어서 화면이 멈추도록 만들었습니다.
지금까지의 내용들을 코딩한 것은 아래와 같습니다.
마지막으로 finish 라인을 설정할텐데
위에서 설정한 ENDLINE의 숫자를 이용하면 될 것 같습니다.
ENDLINE이라는 숫자는 45라는 값이기 때문에 예를 들어 1 앞에서 빈칸이 aNum개 만큼 나왔다면
1 뒤에 숫자는 '1'과 finish 라인으로 표기할 '|'와 앞서 사용한 빈칸이 aNum개 이므로
ENDLINE-aNum-2
만큼의 빈칸을 출력해주면 결승선을 우리가 원하는 지점으로 설정이 가능합니다.
나머지 bNum, cNum, dNum의 경우도 똑같이 설정해 주시면 될것 같습니다.
그러면 완성된 게임을 돌려보겠습니다.
여기까지 해서 지금까지 배운 C#의 개념들을 이용해서 가볍게 게임을 만들어 봤습니다.
본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.
'게임 개발 공부 > 패스트 캠퍼스 이벤트' 카테고리의 다른 글
패스트캠퍼스 챌린지 최종 후기 (0) | 2021.12.07 |
---|---|
패스트캠퍼스 챌린지 29일차 (0) | 2021.11.29 |
패스트캠퍼스 챌린지 28일차 (0) | 2021.11.28 |
패스트캠퍼스 챌린지 27일차 (0) | 2021.11.27 |
패스트캠퍼스 챌린지 26일차 (0) | 2021.11.26 |
댓글