Jeck - Changed filter pricing scheme- filter tax is now inversely proportional to the amount of results. Added preliminary "economic difficulty" option. Note that it requires difficulty modes to be unlocked (at least to appear in the gui). Should we make it available from the start?
This commit is contained in:
@@ -41,8 +41,9 @@ public:
|
||||
MANADISPLAY,
|
||||
REVERSETRIGGERS,
|
||||
DISABLECARDS,
|
||||
INTERRUPT_SECONDS,
|
||||
MAX_GRADE,
|
||||
ECON_DIFFICULTY,
|
||||
INTERRUPT_SECONDS,
|
||||
//My interrupts
|
||||
INTERRUPTMYSPELLS,
|
||||
INTERRUPTMYABILITIES,
|
||||
@@ -169,6 +170,14 @@ private:
|
||||
static OptionMaxGrade mDef;
|
||||
};
|
||||
|
||||
class OptionEconDifficulty: public EnumDefinition {
|
||||
public:
|
||||
static EnumDefinition * getInstance() {return &mDef;};
|
||||
private:
|
||||
OptionEconDifficulty();
|
||||
static OptionEconDifficulty mDef;
|
||||
};
|
||||
|
||||
class OptionDifficulty: public EnumDefinition {
|
||||
public:
|
||||
enum { NORMAL = 0, HARD = 1, HARDER = 2, EVIL = 3};
|
||||
|
||||
@@ -114,9 +114,13 @@ class Constants
|
||||
RARITY_L = 'L', //Lands
|
||||
RARITY_T = 'T', //Tokens
|
||||
|
||||
//Price flux
|
||||
PRICE_FLUX_RANGE = 20,
|
||||
PRICE_FLUX_MINUS = 10,
|
||||
//Economic values (Placeholders for stuff later set by economic difficulty)
|
||||
PRICE_FILTER_SCALAR = 4,
|
||||
|
||||
ECON_NORMAL = 0, //Options default to 0.
|
||||
ECON_HARD = 1,
|
||||
ECON_LUCK = 2,
|
||||
ECON_EASY = 3,
|
||||
|
||||
//Price for singles
|
||||
PRICE_1M = 3000,
|
||||
|
||||
@@ -89,7 +89,7 @@ public:
|
||||
WCFilterSet(string arg);
|
||||
bool isMatch(MTGCard *c) {return (setid==-1 || c->setId == setid);};
|
||||
string getCode();
|
||||
float filterFee() {return 0.1f;};
|
||||
float filterFee() {return 0.2f;};
|
||||
protected:
|
||||
int setid;
|
||||
};
|
||||
@@ -98,7 +98,7 @@ public:
|
||||
WCFilterLetter(string arg);
|
||||
bool isMatch(MTGCard * c);
|
||||
string getCode();
|
||||
float filterFee() {return 1.0f;}; //Alpha searches are expensive!
|
||||
float filterFee() {return 4.0f;}; //Alpha searches are expensive!
|
||||
protected:
|
||||
char alpha;
|
||||
};
|
||||
@@ -108,7 +108,7 @@ public:
|
||||
WCFilterColor(string arg);
|
||||
bool isMatch(MTGCard * c);
|
||||
string getCode();
|
||||
float filterFee() {return 0.1f;};
|
||||
float filterFee() {return 0.2f;};
|
||||
protected:
|
||||
int color;
|
||||
};
|
||||
@@ -150,7 +150,7 @@ public:
|
||||
WCFilterPower(string arg) : WCFilterNumeric(arg) {};
|
||||
bool isMatch(MTGCard * c);
|
||||
string getCode();
|
||||
float filterFee() {return number/12.0f;};
|
||||
float filterFee() {return 2*number/12.0f;};
|
||||
};
|
||||
class WCFilterToughness: public WCFilterNumeric{
|
||||
public:
|
||||
@@ -158,7 +158,7 @@ public:
|
||||
WCFilterToughness(string arg) : WCFilterNumeric(arg) {};
|
||||
bool isMatch(MTGCard * c);
|
||||
string getCode();
|
||||
float filterFee() {return number/12.0f;};
|
||||
float filterFee() {return 2*number/12.0f;};
|
||||
};
|
||||
|
||||
class WCFilterType: public WCardFilter{
|
||||
@@ -166,7 +166,7 @@ public:
|
||||
WCFilterType(string arg) {type = arg;};
|
||||
bool isMatch(MTGCard * c);
|
||||
string getCode();
|
||||
float filterFee() {return 0.2f;};
|
||||
float filterFee() {return 0.4f;};
|
||||
protected:
|
||||
string type;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user