]> git.mxchange.org Git - quix0rs-blobwars.git/blob - src/CGame.h
Use time_t to store time data.
[quix0rs-blobwars.git] / src / CGame.h
1 /*
2 Copyright (C) 2004-2011 Parallel Realities
3 Copyright (C) 2011-2015 Perpendicular Dimensions
4
5 This program is free software; you can redistribute it and/or
6 modify it under the terms of the GNU General Public License
7 as published by the Free Software Foundation; either version 2
8 of the License, or (at your option) any later version.
9
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13
14 See the GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
19
20 */
21
22 class Game {
23
24         private:
25         
26                 int objectiveCheckPointX, objectiveCheckPointY;
27
28         public:
29
30                 char mapName[50];
31                 char stageName[50];
32
33                 int gore, skill, soundVol, musicVol, output, brightness, autoSaveSlot, autoSave;
34
35                 int score, stagesCleared;
36                 int totalHours, totalMinutes, totalSeconds;
37                 int currentMissionHours, currentMissionMinutes, currentMissionSeconds;
38                 int totalEnemiesDefeated, totalItemsCollected, totalBonusesCollected;
39                 int currentMissionEnemiesDefeated, currentMissionItemsCollected;
40                 int totalObjectivesCompleted, totalMIAsRescued;
41
42                 unsigned char currentWeapon;
43                 unsigned int bulletsFired[5], bulletsHit[5];
44
45                 int checkPointX, checkPointY;
46                 int teleportPointX, teleportPointY;
47
48                 bool hasAquaLung, hasJetPack, continueFromCheckPoint;
49
50                 int lastComboTime;
51                 unsigned char currentComboHits, maxComboHits;
52
53                 unsigned int missionOverReason;
54                 unsigned long missionOver;
55                 
56                 unsigned int continuesUsed;
57                 unsigned int levelsStarted;
58                 unsigned int escapes;
59                 
60                 int canContinue;
61
62                 Game();
63                 void clear();
64                 void destroy();
65                 void incrementMissionTime();
66                 void setCheckPoint(float x, float y);
67                 void getCheckPoint(float *x, float *y) const;
68                 void setObjectiveCheckPoint();
69                 void useObjectiveCheckPoint();
70                 void doCombo();
71                 void incBulletsFired();
72                 void incBulletsHit();
73                 int getWeaponAccuracy(int weapon);
74                 int getTotalBulletsFired() const;
75                 int getTotalAccuracy();
76                 int getMostUsedWeapon();
77                 void totalUpStats();
78                 void setStageName(const char *name);
79                 void setMapName(const char *name);
80                 void setMissionOver(int reason);
81                 void resetMissionOver();
82
83 };