-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcd_world.h
More file actions
56 lines (41 loc) · 1.05 KB
/
cd_world.h
File metadata and controls
56 lines (41 loc) · 1.05 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#ifndef CAVE_WORLD_H
#define CAVE_WORLD_H
#include <map>
#include <vector>
#include "GameTypes.h"
#include "cd_character.h"
#include "Observer.h"
#include "cd_gui.h"
#include "console_gui.h"
#include "input_handler.h"
class DungeonWorld
{
private:
InputHandler m_ihandler;
GAMEBOARD m_xBoard;
GAMEBOARD m_xBigBoard;
CharacterState *m_pCharacterObject;
GAMESTATE m_eGameState;
GUIPanel *m_pGUIFrame,
*m_pGUIBoard,
*m_pGUIState;
void DungeonWorld::DrawBoard(GUIBUFFER& rBuf);
void DungeonWorld::DrawFrame(GUIBUFFER& rBuf);
void InitGUI();
void InitBoard(size_t rows, size_t cols);
void MoveCharacter(DIRECTION d);
void OnStep(COORD2 p, COORD2 dp);
void ShiftBoard(DIRECTION d);
void CopyBoard();
COORD2 GeneratePath(COORD2 p);
COORD2 PathVarient_DoubleIceLoop(COORD2 p);
COORD2 PathVarient_TwoCorner(COORD2 p);
COORD2 PathVarient_FreeCoin(COORD2 p);
public:
DungeonWorld();
~DungeonWorld();
void OnReset();
short OnPlay();
void OnLose();
};
#endif