* New interface. * This breaks a lot of things. It is not feature-equivalent. It probably doesn't compile under windows and doesn't work on PSP. * Damage is not resolved any more. This will have to be fixed. * Blockers can't be ordered any more. This will have to be fixed. * A lot of new art is included.
53 lines
1.1 KiB
C++
53 lines
1.1 KiB
C++
#ifndef _GAME_OPTIONS_H_
|
|
#define _GAME_OPTIONS_H_
|
|
|
|
#include <map>
|
|
#include <string>
|
|
using std::map;
|
|
using std::string;
|
|
|
|
#define OPTIONS_SAVEFILE RESPATH"/settings/options.txt"
|
|
|
|
struct Options {
|
|
static const string MUSICVOLUME;
|
|
static const string SFXVOLUME;
|
|
static const string DIFFICULTY_MODE_UNLOCKED;
|
|
static const string MOMIR_MODE_UNLOCKED;
|
|
static const string EVILTWIN_MODE_UNLOCKED;
|
|
static const string RANDOMDECK_MODE_UNLOCKED;
|
|
static const string DIFFICULTY;
|
|
static const string CACHESIZE;
|
|
static const string PLASMAEFFECT;
|
|
static const string INTERRUPT_SECONDS;
|
|
static const string INTERRUPTMYSPELLS;
|
|
static const string INTERRUPTMYABILITIES;
|
|
static const string OSD;
|
|
};
|
|
|
|
class GameOption {
|
|
public:
|
|
int number;
|
|
string str;
|
|
GameOption(int value = 0);
|
|
GameOption(string value);
|
|
};
|
|
|
|
|
|
class GameOptions {
|
|
public:
|
|
int save();
|
|
int load();
|
|
static const char * phaseInterrupts[];
|
|
GameOption& operator[](string);
|
|
GameOptions();
|
|
~GameOptions();
|
|
|
|
private:
|
|
static map <string,int> optionsTypes;
|
|
map<string,GameOption> values;
|
|
};
|
|
|
|
extern GameOptions options;
|
|
|
|
#endif
|