1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-03-21 21:17:49 +02:00

cleanup of CBonusSystemNode::removeBonusesRecursive

This commit is contained in:
Henning Koehler 2018-03-06 00:03:14 +13:00 committed by ArseniyShestakov
parent 6263c4c3eb
commit e455d97fc7
2 changed files with 7 additions and 11 deletions

View File

@ -793,11 +793,7 @@ void CBonusSystemNode::detachFrom(CBonusSystemNode *parent)
void CBonusSystemNode::removeBonusesRecursive(const CSelector & s) void CBonusSystemNode::removeBonusesRecursive(const CSelector & s)
{ {
BonusList bl; removeBonuses(s);
exportedBonuses.getBonuses(bl, s, Selector::all);
for(auto b : bl)
removeBonus(b);
for(CBonusSystemNode * child : children) for(CBonusSystemNode * child : children)
child->removeBonusesRecursive(s); child->removeBonusesRecursive(s);
} }
@ -853,7 +849,7 @@ void CBonusSystemNode::removeBonus(const std::shared_ptr<Bonus>& b)
void CBonusSystemNode::removeBonuses(const CSelector & selector) void CBonusSystemNode::removeBonuses(const CSelector & selector)
{ {
BonusList toRemove; BonusList toRemove;
exportedBonuses.getBonuses(toRemove, selector); exportedBonuses.getBonuses(toRemove, selector, Selector::all);
for(auto bonus : toRemove) for(auto bonus : toRemove)
removeBonus(bonus); removeBonus(bonus);
} }