-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathGameMgr.h
More file actions
57 lines (48 loc) · 1.26 KB
/
GameMgr.h
File metadata and controls
57 lines (48 loc) · 1.26 KB
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
#ifndef GAMEMGR_H_INCLUDED
#define GAMEMGR_H_INCLUDED
#include "God.h"
#include "DayNightMgr.h"
#include "SleepAwakeMgr.h"
#include "KillingMgr.h"
#include "VotingMgr.h"
#include "Mafia.h"
#include "Citizen.h"
#include "Healer.h"
#include "Detective.h"
#include "Dacoit.h"
class GameMgr {
protected:
God *my_god;
int trials;
std::vector<int> _dead_today;
DayNightMgr _dn_mgr;
SleepAwakeMgr _sa_mgr;
KillingMgr _kl_mgr;
VotingMgr _vt_mgr;
public:
GameMgr(God *gd);
GameMgr(const GameMgr &cpy);
~GameMgr();
//Getters
God *GetGod() const {return my_god;}
std::vector<int> GetDeadToday() const {return _dead_today;}
int GetTrials() const {return trials;}
//Additional Functions
void StartGame();
void EnterMafias();
void EnterCitizens();
void EnterHealer();
void EnterDetective();
void EnterDacoit();
void SetDayNight(bool day);
void SleepTheCity();
void MafiaKillings();
void HealerOperations();
void DetectiveActivity();
void KillOperationsForToday();
void CalculateCount(std::vector<int> ousted_players);
bool CheckGameEnded();
void CityOpenEyes();
void VoteOut();
};
#endif // GAMEMGR_H_INCLUDED