바로 본격적인 프로젝트 설계로 돌입해보자.
프로젝트명 : 바질이 키우기 게임
※ 바질을 키우는 한 소녀를 본 적이 있는데, 아주 애지중지 바질을 키우는 모습이 인상적이었어서 이런 게임을 만들어보기로 했다.
게임 설명
- 말그대로 바질을 키우는 게임이다.
- 바질이에게는 0부터 시작하는 체력이 있고, 체력은 최대치는 100이다. ※'바질이'는 바질의 이름임
- 플레이어가 좋은 말을 해주면 바질이의 체력이 10 증가하며, 나쁜 말을 하면 20 감소한다. ※실제로 과학적으로 입증된건진 모름
- 타자연습 게임 형태로 진행될 듯하다.
- 제한 시간 내에 바질이의 체력을 100까지 올리면 게임 클리어다.
구체적인 게임 구상
- 바질이의 체력은 상시로 화면에 표시되어 있다.
- 제한시간 또한 화면에 표시되며, 게임 시작을 누른 직후부터 계속 감소한다.
- 플레이어에게는 계속해서 한 쌍의 단어가 주어진다.
- 두 단어는 각각 좋은말 또는 나쁜말의 키워드이며, 플레이어는 그 키워드를 보고 어떤 말이 좋은말일지 유추하여 해당 단어를 타이핑한다. ex) [ 향기 , 피자 ]
- 해당 단어를 타이핑하면, 텍스트 형식으로 전체 문장이 화면에 출력된다. 이때, 체력 수치가 실시간으로 변화한다.
- ex) (향기 입력) → (플레이어 : 향기가 정말 좋다!! ) 출력 → 체력 up!
- 타이핑이 완료되면 바로 다음 단어쌍이 주어진다.
- 제한시간이 경과했을 때 바질이의 체력이 100이 아니라면 패배.
구현해야 할 내용
- stack 자료 구조 이용해 체력 구현
- push 함수 구현해서 좋은말 입력 시 체력 증가하도록 구현
- pop 함수 구현해서 나쁜말 입력 시 체력 감소하도록 구현
- is_empty, is_full 함수 구현해서 체력이 0~100 사이 범위에 있도록 하기
- 제한시간을 구현해야 하기 때문에 <time.h>를 이용한 다양한 시간 관련 함수들 사용
- 문장과 키워드를 연결할 방법을 고안하기
- 계속해서 랜덤으로 단어쌍을 제시해야하므로 random 관련 함수들 사용
더 많겠지만 나머지는 직접 프로그램을 짜보며 추가해가도록 하자.
'C언어 > 자구알' 카테고리의 다른 글
[C] 프로젝트 완성, 후기 (0) | 2024.01.28 |
---|---|
[C] stack을 사용한 초간단 프로젝트 (이론, 개요) (0) | 2024.01.09 |