aboutsummaryrefslogtreecommitdiff
path: root/src/game.h
blob: e93afc9827d2be35f5a016f818d31b277d8a4d11 (plain)
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
#include "gameCommon.h"
#include "screens/mainMenu.h"
#include "screens/gameScreen.h"
#include "cameras.h"
#include "entity.h"
#include "assets.h"
#include "world.h"
#include "settings.h"
#include "bullets.h"
#include "levels.h"
#include "killLog.h"
#include "screens/howToPlayScreen.h"

#ifndef GAME_H
#define GAME_H

typedef enum ScreenId {
	SCREEN_MAIN_MENU,
	SCREEN_GAME,
	HOW_TO_PLAY_SCREEN
} ScreenId;

typedef struct Game {
	ScreenId screenId;
	MainMenu mainMenu;
	GameScreen gameScreen;
	HowToPlayScreen howToPlayScreen;
	Cameras cameras;
	Assets assets;
	World world;
	Levels levels;
	Settings settings;
	KillLog killLog;
} Game;

void initGame(Game * game);
void closeGame(Game * game);
void updateGame(Game * game);

#endif