Doputer

가위바위보 게임 프로젝트✊

by #김도현

프로젝트 명 : 가위바위보 게임 프로그램

개발 기간 : 2017.04.28 ~ 05.04

작품 소개 : 간단한 가위바위보 즐길 수 있는 게임을 만들었습니다. 플레이 기능으로는 1인용과 2인용이 있습니다. 1인용을 선택하게 되면 컴퓨터와 대결하게 되고, 2 인용을 선택하면 사용자 두 명이 게임을 플레이하게 됩니다. 방법은 키보드 방향키를 이용해 가위, 바위, 보 중에서 선택한 후 엔터를 누르면 잠시 후 상대방과 대결한 결과가 화면에 나타나게 됩니다.

내용 : 이 프로그램은 기본적으로 키보드 방향키와 엔터를 이용해 동작할 수 있도록 만들었습니다. 그 방법은 gotoxy() 함수를 만들어서 콘솔창에서 커서가 좌표에 따라 움직일 수 있도록 했고, 사용자가 커서의 위치를 알기 쉽도록 커서가 위치하는 자리에는 ‘▶’ 기호를 넣고, 커서가 사라지면 그 자리에 공백을 넣었습니다. 게임 플레이는 사용자가 가위, 바위, 보 중에서 선택하는 경우에는 선택한 문자열을 해당 정수로 바꿨고, 컴퓨터가 선택하는 경우에는 rand() 함수를 이용해서 난수가 나올 수 있도록 했습니다. 그 다음에는 두 정수를 비교해서 승자와 패자를 결정한 후 화면에 출력해주었습니다.

개발 내용 : 콘솔창의 배경화면을 흰색으로 바꿔주는 함수를 작성하고 키보드 입력을 확인해서 정해진 좌표로 이동할 수 있는 함수를 구현했습니다. 그리고 컴퓨터가 가위, 바위, 보를 선택하는 과정에서는 랜덤 함수를 이용했습니다. 마지막에는 양쪽 플레이어가 선택한 것을 비교해서 승자와 패자를 출력해주는 부분을 작성했습니다.

프로젝트 어려움/해결방안 : 키보드 입력을 받는 부분을 이해하는데 어려움이 있었습니다. 이 때문에 검색 엔진을 통해 많이 자료 조사를 했고, 키보드 방향키는 확장키가 아스키코드가 두 개라는 것을 알게 되었습니다. 그래서 처음에 입력된 아스키코드를 이용해서 방향키에 해당하는 값이면 그 다음 아스키코드를 입력 받아서 어떤 방향인지 알아내었습니다. 그 후에는 gotoxy() 함수 인자에 좌표를 주어서 해당 좌표로 이동하게 했습니다.

소스 코드 : https://github.com/doputer/RockPaperScissorsGame

'프로젝트' 카테고리의 다른 글

WYSIWYG 에디터 draft.js의 기록👀  (4) 2021.09.03
Color Picker 프로젝트🎨  (0) 2021.01.22
Snake 게임🐍  (0) 2020.11.10
전화번호부 프로젝트📱  (0) 2017.06.25

블로그의 정보

Doputer

#김도현

활동하기