1 #ifndef _GAME_CONT_H
2 #define _GAME_CONT_H
3 
4 #include "glSDL.h"
5 #include "InputManager.h"
6 
7 typedef struct GameControlEvent {
8     enum {
9         kGameNone,
10         kPauseGame,
11         kPlayer1Left,
12         kPlayer1Right,
13         kPlayer1TurnLeft,
14         kPlayer1TurnRight,
15         kPlayer1Down,
16         kPlayer2Left,
17         kPlayer2Right,
18         kPlayer2TurnLeft,
19         kPlayer2TurnRight,
20         kPlayer2Down,
21         kGameLastKey
22     } gameEvent;
23     enum {
24         kCursorNone,
25         kUp,
26         kDown,
27         kLeft,
28         kRight,
29         kStart,
30         kBack,
31         kQuit,
32         kCursorLastKey
33     } cursorEvent;
34     bool isUp;
35 } GameControlEvent;
36 
37 
38 enum {
39     kPlayer1LeftControl             = 0,
40     kPlayer1RightControl            = 1,
41     kPlayer1DownControl             = 2,
42     kPlayer1ClockwiseControl        = 3,
43     kPlayer1CounterclockwiseControl = 4,
44     kPlayer2LeftControl             = 5,
45     kPlayer2RightControl            = 6,
46     kPlayer2DownControl             = 7,
47     kPlayer2ClockwiseControl        = 8,
48     kPlayer2CounterclockwiseControl = 9
49 };
50 
51 
52 void initGameControls();
53 void getControlEvent(SDL_Event e, GameControlEvent *result);
54 
55 void getKeyName(int control, char *keyName);
56 bool tryChangeControl(int control, SDL_Event e, GameControlEvent *result);
57 
58 void saveControls();
59 void loadControls();
60 
61 #endif
62 
63