aboutsummaryrefslogtreecommitdiff
path: root/src/game.h
blob: b3094c2ea7c4aeb4c7cac379a63ccb3136571a03 (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
41
42
43
#include "gameCommon.h"
#include "screens/mainMenu.h"
#include "screens/gameScreen.h"
#include "screens/howToPlayScreen.h"
#include "screens/infoScreen.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"

#ifndef GAME_H
#define GAME_H

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

typedef struct Game {
	ScreenId screenId;
	MainMenu mainMenu;
	GameScreen gameScreen;
	HowToPlayScreen howToPlayScreen;
	InfoScreen infoScreen;
	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