diff --git a/Mods/vcmi/config/english.json b/Mods/vcmi/config/english.json index b0288519d..526d60906 100644 --- a/Mods/vcmi/config/english.json +++ b/Mods/vcmi/config/english.json @@ -29,7 +29,7 @@ "vcmi.adventureMap.replayOpponentTurnNotImplemented" : "Sorry, replay opponent turn is not implemented yet!", "vcmi.bonusSource.artifact" : "Artifact", - "vcmi.bonusSource.creature" : "Creature", + "vcmi.bonusSource.creature" : "Ability", "vcmi.bonusSource.spell" : "Spell", "vcmi.bonusSource.hero" : "Hero", "vcmi.bonusSource.commander" : "Commander", diff --git a/client/windows/CCreatureWindow.cpp b/client/windows/CCreatureWindow.cpp index ce8ae3343..ee3a6bf24 100644 --- a/client/windows/CCreatureWindow.cpp +++ b/client/windows/CCreatureWindow.cpp @@ -829,6 +829,9 @@ void CStackWindow::initBonusesList() BonusList output; BonusList input; input = *(info->stackNode->getBonuses(CSelector(Bonus::Permanent), Selector::all)); + std::sort(input.begin(), input.end(), [this](std::shared_ptr v1, std::shared_ptr & v2){ + return v1->source == v2->source ? info->stackNode->bonusToString(v1, false) < info->stackNode->bonusToString(v2, false) : v1->source == BonusSource::CREATURE_ABILITY || (v1->source < v2->source); + }); while(!input.empty()) {