Files
wagic/projects/mtg/include/DeckMetaData.h
techdragon.nguyen@gmail.com 8af5870d48 * Added new options parameter. "SaveDetailedDeckInfo". This will force the system to save all
deck files in long format.  This is not configurable from the game.  It must be set manually
     inside options.txt.
     ie.  saveDetailedDeckInfo=1

* added extra debug information (line number inside text file) when card parser fails to recognize a line.
    - modified return value from "processConfLine()" to return 0 only when a true error occurs and print out
         "MTGDeck: Bad Line:
         [<line no>]: <line with error>"
    - processConfLine will now return 1 for lines starting with "#".  Previously it returned 0 which is incorrect
         as comments should not be considered as errors.

* removed DeckMetaDataList class from code.  This was duplicating the DeckMetaData storage in DeckManager
* new feature for deck selection screens.
   - player decks will now have an indication of what mana color it consists of.
   - Ai decks will show symbols once the player has played against the AI deck at least once.
   -- This is made possible with a new meta data inside each deck file.
        MANA:<string representing color switches - 0/1 >
2011-01-31 10:04:18 +00:00

67 lines
1.2 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 mFilename;
string mDescription;
string mName;
int mDeckId;
string mAvatarFilename;
string mColorIndex;
// statistical information
int mGamesPlayed, mVictories, mPercentVictories, mDifficulty;
DeckMetaData();
public:
DeckMetaData(const string& filename);
void LoadDeck();
void LoadStats();
// Accessors
string getFilename();
string getDescription();
string getName();
string getAvatarFilename();
string getColorIndex();
int getAvatarId(int deckId);
string getStatsSummary();
int getDeckId();
int getGamesPlayed();
int getVictories();
int getVictoryPercentage();
int getDifficulty();
string getDifficultyString();
void setColorIndex(const string& colorIndex);
void Invalidate();
string mStatsFilename;
string mPlayerDeck;
bool mDeckLoaded;
bool mStatsLoaded;
bool mIsAI;
};
#endif