반응형

 

 

 

 

 

 

 

제작 기간

- 총 9일

 

 

 

게임 클래스 구성

 

 

 

GameManager

- 클래스 멤버는 Player, Monster, DataManager를 가지고 있다.

- Main 함수에서 GameManager의 객체를 생성한 뒤, 게임을 시작하게된다.

- 각 화면은 정적 클래스(Draw)에 화면을 그리는 함수를 정의해서 GameManager에서 호출하여 그린다.

 

 

 

DataManager

- Weapon, Player, Monster의 데이터 문자열, Monster 배열, Weapon 배열 벡터를 멤버로 가지고있다.

- 기본 데이터들(Weapon, Player, Monster)의 데이터를 가지고 있다.

- 저장하기, 불러오기 기능으로 데이터들을 파일로 입출력하는 기능을 가지고 있다.

 

 

 

Unit

- 추상 클래스

- Player와 Monster에 상속한다.

- 저장이 될 데이터 값들을 멤버로 두고 있다. (이름, 체력, 레벨, 경험치 등)

- 데미지를 주고받는 기능, 정보 보기 기능 등을 추상 함수로 가지고 있다.

 

 

 

Player

- Unit을 상속 받는다. (Unit의 추상 함수를 재정의해서 사용)

- Weapon을 포인터 멤버로 가지고 있다.

- 레벨 업, 스킬 기능을 가지고있다.

 

 

 

Monster

- Unit을 상속 받는다. (Unit의 추상 함수를 재정의해서 사용)

 

 

 

Weapon

- 추상 클래스

- 각 무기 클래스에 상속한다.

- Player와 DataManager에서 업캐스팅해서 사용한다.

- 무기 이름, 무기 데미지, 무기 값을 멤버로 가지고있다.

- 무기의 스킬, 무기 종류 확인 등을 추상 함수로 가지고 있다.

 

 

 

각 무기 클래스

- Weapon을 상속 받는다. (Weapon의 추상 함수를 재정의해서 사용)

 

 

 

Draw

- 게임 화면을 그리기 위한 함수를 정의해놓았다.

- 콘솔 좌표 이동, 게임 문자열 중앙 정렬로 그리는 등의 함수가 정의되어 있다.

 

 

 

저장되어있는 데이터 구조

- 기본 유저, 몬스터의 데이터, 유저의 플레이 데이터, 무기 데이터

 

 

 

 

 

반응형

'Game > Personal development' 카테고리의 다른 글

[WIN API] 서커스 찰리 게임  (0) 2022.02.05
[WIN API] 카드 맞추기 게임  (0) 2022.01.30
산성비 게임 제작 (C++)  (0) 2022.01.23
뱀 게임 제작 (C++)  (0) 2022.01.22
오목 게임 제작 (C++)  (0) 2022.01.21

+ Recent posts