* Include windows.h by default on windows, most stuff probably needs it.
[matthijs/ABM2.git] / ABM2 / SchemeReader.h
1 #pragma once\r
2 \r
3 \r
4 #define WIN32_LEAN_AND_MEAN             // Exclude rarely-used stuff from Windows headers\r
5 #include <stdio.h>\r
6 \r
7 // TODO: reference additional headers your program requires here\r
8 enum TField { BLANK, BRICK, SOLID };\r
9 enum TPowerup { BOMB, FLAME, DISEASE, KICK, SPEED, PUNCH, GRAB, SPOOGER, GOLDFLAME, TRIGGER, JELLY, SUPER_DISEASE, RANDOM };\r
10 struct Powerup {\r
11         int BornWith;\r
12         bool HasOverride;\r
13         int Override;\r
14         bool Forbidden;\r
15 };\r
16 struct PlayerData {\r
17         int startx;\r
18         int starty;\r
19         int team;\r
20 };\r
21 \r
22 const int PLAYGROUND_NUMFIELD_X = 15;\r
23 const int PLAYGROUND_NUMFIELD_Y = 11;\r
24 const int BOMBERMAN_MAX_PLAYERS = 10;\r
25 \r
26 class SchemeReader\r
27 {\r
28 public:\r
29         SchemeReader(char* FileName);\r
30         ~SchemeReader();\r
31         TField PlayField[PLAYGROUND_NUMFIELD_X*PLAYGROUND_NUMFIELD_Y];\r
32         PlayerData Player[BOMBERMAN_MAX_PLAYERS];\r
33         Powerup Powerups[12];\r
34         char Name[128];\r
35         int BrickDensity;\r
36 };\r
37 \r