0
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
1 /*
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
2 * Mediator
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
3 */
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
4
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
5 #ifndef __MEDIATOR_H__
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
6 #define __MEDIATOR_H__
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
7
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
8 #include "Core.h"
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
9 #include "Clock.h"
|
8
|
10 #include "Window.h"
|
|
11 #include "InputManager.h"
|
|
12 #include "GraphicsDevice.h"
|
|
13 #include "ResourceManager.h"
|
|
14 #include "RenderContext.h"
|
63
|
15 #include "ServiceProvider.h"
|
70
|
16 #include "ScreenManager.h"
|
|
17 #include "MainScreen.h"
|
|
18 #include "HelpScreen.h"
|
|
19 #include "PauseScreen.h"
|
|
20 #include "GameScreen.h"
|
73
|
21 #include "LevelOverScreen.h"
|
|
22 #include "GameOverScreen.h"
|
|
23 #include "ConfirmScreen.h"
|
0
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
24
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
25 /*
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
26 * Mediator
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
27 */
|
8
|
28 class Mediator : public WindowCallback
|
0
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
29 {
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
30 /*
|
8
|
31 * kWindow
|
|
32 */
|
|
33 Window kWindow;
|
|
34
|
|
35 /*
|
0
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
36 * kClock
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
37 */
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
38 Clock kClock;
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
39
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
40 /*
|
8
|
41 * pGraphicsDevice
|
|
42 */
|
|
43 GraphicsDevice* pGraphicsDevice;
|
0
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
44
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
45 /*
|
8
|
46 * kResourceManager
|
|
47 */
|
|
48 ResourceManager kResourceManager;
|
|
49
|
|
50 /*
|
|
51 * kContext
|
|
52 */
|
|
53 RenderContext kContext;
|
|
54
|
|
55 /*
|
9
|
56 * kInputManager
|
8
|
57 */
|
9
|
58 InputManager kInputManager;
|
8
|
59
|
|
60 /*
|
63
|
61 * kServiceProvider
|
|
62 */
|
|
63 ServiceProvider kServiceProvider;
|
|
64
|
|
65 /*
|
70
|
66 * kScreenManager
|
|
67 */
|
|
68 ScreenManager kScreenManager;
|
|
69
|
|
70 /*
|
|
71 * kMainScreen
|
|
72 */
|
|
73 MainScreen kMainScreen;
|
|
74
|
|
75 /*
|
|
76 * kHelpScreen
|
8
|
77 */
|
70
|
78 HelpScreen kHelpScreen;
|
|
79
|
|
80 /*
|
|
81 * kGameScreen
|
|
82 */
|
|
83 GameScreen kGameScreen;
|
|
84
|
|
85 /*
|
|
86 * kPauseScreen
|
|
87 */
|
|
88 PauseScreen kPauseScreen;
|
0
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
89
|
73
|
90 /*
|
|
91 * kLevelOverScreen
|
|
92 */
|
|
93 LevelOverScreen kLevelOverScreen;
|
|
94
|
|
95 /*
|
|
96 * kGameOverScreen
|
|
97 */
|
|
98 GameOverScreen kGameOverScreen;
|
|
99
|
|
100 /*
|
|
101 * kConfirmScreen
|
|
102 */
|
|
103 ConfirmScreen kConfirmScreen;
|
|
104
|
0
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
105 public:
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
106
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
107 /*
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
108 * Mediator
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
109 */
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
110 Mediator();
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
111
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
112 /*
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
113 * Run
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
114 */
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
115 ErrorCode Run();
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
116
|
8
|
117 /*
|
|
118 * OnMessage
|
|
119 */
|
|
120 virtual int32 OnMessage(Window* pInstance, uint32 nMessage, WPARAM wParam, LPARAM lParam);
|
|
121
|
|
122 private:
|
0
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
123
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
124 /*
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
125 * Initialize
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
126 */
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
127 virtual ErrorCode Initialize();
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
128
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
129 /*
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
130 * Terminate
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
131 */
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
132 virtual void Terminate();
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
133
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
134 /*
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
135 * Update
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
136 */
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
137 void Update(float fElapsed);
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
138
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
139 /*
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
140 * Render
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
141 */
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
142 void Render();
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
143
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
144 /*
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
145 * ProcessMessages
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
146 */
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
147 virtual void ProcessMessages();
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
148 };
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
149
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
150 #endif //__MEDIATOR_H__
|