Also fixed the project includes so that we don't need to always use the indirect include path, ie: #include "../include/foo.h" -> #include "foo.h" I'm don't know much about make files - if I busted the linux build, mea culpa, but I think we're okay on that front too. For future reference, here's the most straightforward link on the topic of adding pch support to make files: http://www.mercs-eng.com/~hulud/index.php?2008/06/13/6-writing-a-good-makefile-for-a-c-project
61 lines
1.1 KiB
C++
61 lines
1.1 KiB
C++
#ifndef _DECKMETADATA_H_
|
|
#define _DECKMETADATA_H_
|
|
|
|
#include <string>
|
|
#include <vector>
|
|
#include <map>
|
|
#include "DeckStats.h"
|
|
|
|
|
|
using namespace std;
|
|
enum DECK_DIFFICULTY
|
|
{
|
|
HARD = -1,
|
|
NORMAL = 0,
|
|
EASY = 1
|
|
};
|
|
|
|
class DeckMetaData {
|
|
private:
|
|
string _filename;
|
|
|
|
string _desc;
|
|
string _name;
|
|
int _deckid;
|
|
|
|
// statistical information
|
|
|
|
int _nbGamesPlayed, _victories, _percentVictories, _difficulty;
|
|
|
|
public:
|
|
DeckMetaData();
|
|
DeckMetaData(string filename, Player * statsPlayer);
|
|
void load(string filename);
|
|
void loadStatsForPlayer( Player * statsPlayer, string opponentDeckName = "" );
|
|
|
|
// Accessors
|
|
string getFilename();
|
|
string getDescription();
|
|
string getName();
|
|
int getDeckId();
|
|
int getGamesPlayed();
|
|
int getVictories();
|
|
int getVictoryPercentage();
|
|
int getDifficulty();
|
|
|
|
};
|
|
|
|
class DeckMetaDataList {
|
|
public:
|
|
void invalidate(string filename);
|
|
DeckMetaData * get(string filename, Player * statsPlayer = NULL);
|
|
~DeckMetaDataList();
|
|
static DeckMetaDataList * decksMetaData;
|
|
|
|
|
|
private:
|
|
map<string,DeckMetaData *>values;
|
|
};
|
|
|
|
#endif
|