|
@@ -76,6 +76,8 @@ public:
|
|
|
inline bool isDamageSpell() const;
|
|
inline bool isDamageSpell() const;
|
|
|
inline bool isOffensiveSpell() const;
|
|
inline bool isOffensiveSpell() const;
|
|
|
|
|
|
|
|
|
|
+ inline bool isSpecialSpell() const;
|
|
|
|
|
+
|
|
|
inline bool hasEffects() const;
|
|
inline bool hasEffects() const;
|
|
|
void getEffects(std::vector<Bonus> &lst, const int level) const;
|
|
void getEffects(std::vector<Bonus> &lst, const int level) const;
|
|
|
|
|
|
|
@@ -110,6 +112,8 @@ public:
|
|
|
h & effects & immunities & limiters;
|
|
h & effects & immunities & limiters;
|
|
|
h & iconImmune;
|
|
h & iconImmune;
|
|
|
h & absoluteImmunities & defaultProbability;
|
|
h & absoluteImmunities & defaultProbability;
|
|
|
|
|
+
|
|
|
|
|
+ h & isSpecial;
|
|
|
}
|
|
}
|
|
|
friend class CSpellHandler;
|
|
friend class CSpellHandler;
|
|
|
|
|
|
|
@@ -127,6 +131,7 @@ private:
|
|
|
bool isRising;
|
|
bool isRising;
|
|
|
bool isDamage;
|
|
bool isDamage;
|
|
|
bool isOffensive;
|
|
bool isOffensive;
|
|
|
|
|
+ bool isSpecial;
|
|
|
|
|
|
|
|
std::string attributes; //reference only attributes //todo: remove or include in configuration format, currently unused
|
|
std::string attributes; //reference only attributes //todo: remove or include in configuration format, currently unused
|
|
|
|
|
|
|
@@ -189,6 +194,11 @@ bool CSpell::isOffensiveSpell() const
|
|
|
return isOffensive;
|
|
return isOffensive;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+bool CSpell::isSpecialSpell() const
|
|
|
|
|
+{
|
|
|
|
|
+ return isSpecial;
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
bool CSpell::hasEffects() const
|
|
bool CSpell::hasEffects() const
|
|
|
{
|
|
{
|
|
|
return effects.size() && effects[0].size();
|
|
return effects.size() && effects[0].size();
|