|
@@ -40,7 +40,7 @@
|
|
|
|
|
|
#define BONUS_ITEM(x) { #x, Bonus::x },
|
|
|
|
|
|
-const std::map<std::string, ui16> bonusDurationMap =
|
|
|
+const std::map<std::string, ui16> bonusDurationMap =
|
|
|
{
|
|
|
BONUS_ITEM(PERMANENT)
|
|
|
BONUS_ITEM(ONE_BATTLE)
|
|
@@ -54,7 +54,7 @@ const std::map<std::string, ui16> bonusDurationMap =
|
|
|
BONUS_ITEM(COMMANDER_KILLED)
|
|
|
};
|
|
|
|
|
|
-const std::map<std::string, Bonus::LimitEffect> bonusLimitEffect =
|
|
|
+const std::map<std::string, Bonus::LimitEffect> bonusLimitEffect =
|
|
|
{
|
|
|
BONUS_ITEM(NO_LIMIT)
|
|
|
BONUS_ITEM(ONLY_DISTANCE_FIGHT)
|
|
@@ -486,7 +486,7 @@ ui32 IBonusBearer::Speed( int turn /*= 0*/ , bool useBind /* = false*/) const
|
|
|
}
|
|
|
|
|
|
return valOfBonuses(Selector::type(Bonus::STACKS_SPEED).And(Selector::turns(turn)));
|
|
|
-}
|
|
|
+}
|
|
|
|
|
|
bool IBonusBearer::isLiving() const //TODO: theoreticaly there exists "LIVING" bonus in stack experience documentation
|
|
|
{
|
|
@@ -505,7 +505,7 @@ const TBonusListPtr IBonusBearer::getSpellBonuses() const
|
|
|
.And(CSelector([](const Bonus * b)->bool
|
|
|
{
|
|
|
return b->type != Bonus::NONE;
|
|
|
- }));
|
|
|
+ }));
|
|
|
return getBonuses(selector, Selector::anyRange(), cachingStr.str());
|
|
|
}
|
|
|
|
|
@@ -870,7 +870,7 @@ void CBonusSystemNode::childDetached(CBonusSystemNode *child)
|
|
|
logBonus->errorStream() << std::string("Error!" + child->nodeName() + " #cannot be detached from# " + nodeName());
|
|
|
assert(0);
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
}
|
|
|
|
|
|
void CBonusSystemNode::detachFromAll()
|
|
@@ -1108,7 +1108,7 @@ const CSpell * Bonus::sourceSpell() const
|
|
|
std::string Bonus::Description() const
|
|
|
{
|
|
|
std::ostringstream str;
|
|
|
-
|
|
|
+
|
|
|
if(description.empty())
|
|
|
switch(source)
|
|
|
{
|
|
@@ -1126,15 +1126,15 @@ std::string Bonus::Description() const
|
|
|
break;
|
|
|
default:
|
|
|
//todo: handle all possible sources
|
|
|
- str << "Unknown";
|
|
|
+ str << "Unknown";
|
|
|
break;
|
|
|
}
|
|
|
else
|
|
|
str << description;
|
|
|
-
|
|
|
+
|
|
|
if(val != 0)
|
|
|
str << " " << std::showpos << val;
|
|
|
-
|
|
|
+
|
|
|
return str.str();
|
|
|
}
|
|
|
|
|
@@ -1156,18 +1156,19 @@ Bonus::Bonus(ui16 Dur, BonusType Type, BonusSource Src, si32 Val, ui32 ID, si32
|
|
|
effectRange = NO_LIMIT;
|
|
|
}
|
|
|
|
|
|
-Bonus::Bonus()
|
|
|
+Bonus::Bonus()
|
|
|
{
|
|
|
duration = PERMANENT;
|
|
|
turnsRemain = 0;
|
|
|
type = NONE;
|
|
|
subtype = -1;
|
|
|
additionalInfo = -1;
|
|
|
-
|
|
|
+
|
|
|
valType = ADDITIVE_VALUE;
|
|
|
effectRange = NO_LIMIT;
|
|
|
val = 0;
|
|
|
source = OTHER;
|
|
|
+ sid = 0;
|
|
|
}
|
|
|
|
|
|
Bonus::~Bonus()
|