티스토리 뷰
마리오 게임을 구현해 보았다. 유튜브를 참고하였고, 내가 수정한 부분들도 있다. 유튜브 링크는:
https://www.youtube.com/watch?v=nD5OuMdS9FU 이다.
참고로 윈도우10 비주얼스튜디오19 에서 구현하였다.
구현한 영상은 다음과 같다:
우선 Core.h 이다.
#pragma once
#include "value.h"
class CCore
{
private:
CCore();
~CCore();
static CCore* m_pInst;
int OutputMenu();
public:
static CCore* GetInst();
static void DestroyInst();
bool Init();
void Run();
};
Core.cpp는 다음과 같다:
#include "Core.h"
#include "MapManager.h"
#include "ObjectManager.h"
#include "Player.h"
CCore* CCore::m_pInst = NULL;
CCore::CCore() {
}
CCore::~CCore() {
CMapManager::DestroyInst();
CObjectManager::DestroyInst();
}
CCore* CCore::GetInst() {
if (!m_pInst)
m_pInst = new CCore;
return m_pInst;
}
void CCore::DestroyInst() {
SAFE_DELETE(m_pInst);
}
bool CCore::Init() {
if (!CMapManager::GetInst()->Init())
return false;
if (!CObjectManager::GetInst()->Init())
return false;
return true;
}
void CCore::Run() {
while (true)
{
int iStage = OutputMenu();
if (iStage == 4)
break;
else if (iStage == 0)
continue;
CMapManager::GetInst()->Run(iStage - 1);
}
}
int CCore::OutputMenu() {
system("cls");
cout << " <<마리오 게임>>" << endl;
cout << "- 왼쪽 이동: 왼쪽 방향키" << endl;
cout << "- 오른쪽 이동: 오른쪽 방향키" << endl;
cout << "- 점프: 윗방향키" << endl;
cout << "- 플레이 중 종료하기: e" << endl << endl;
cout << "1. 스테이지1" << endl;
cout << "2. 스테이지2" << endl;
cout << "3. 스테이지3" << endl;
cout << "4. 종료" << endl;
cout << "번호를 입력하세요: ";
int iInput = InputInt();
while (iInput < 1 || iInput > 4) {
return 0;
}
return iInput;
}
참고로 맵은 텍스트 파일로 만드는데, 다음과 같다:
0은 벽, 1은 공백, 2는 시작, 3은 도착, 4는 코인이다. 10X50 개의 숫자들이다.
'프로젝트 기타 > 마리오게임 코드' 카테고리의 다른 글
C++ 마리오게임6 (Stage.h, Stage.cpp) (0) | 2021.08.30 |
---|---|
C++ 마리오게임5 (Player.h, Player.cpp) (0) | 2021.08.30 |
C++ 마리오게임4 (ObjectManager.h, ObjectManager.cpp) (0) | 2021.08.30 |
C++ 마리오게임3 (MapManager.h, MapManager.cpp) (0) | 2021.08.30 |
C++ 마리오게임2 (FileStream.h, FileStream.cpp) (0) | 2021.08.30 |