1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-11-06 09:09:40 +02:00

Merge pull request #3118 from rilian-la-te/glamor-slight-bonus-fixes

Small bonus fixes
This commit is contained in:
Ivan Savenko
2023-10-29 15:23:07 +02:00
committed by GitHub
2 changed files with 4 additions and 2 deletions

View File

@@ -1156,7 +1156,7 @@ CSelector JsonUtils::parseSelector(const JsonNode & ability)
{ {
CSelector base = Selector::none; CSelector base = Selector::none;
for(const auto & andN : value->Vector()) for(const auto & andN : value->Vector())
base.Or(parseSelector(andN)); base = base.Or(parseSelector(andN));
ret = ret.And(base); ret = ret.And(base);
} }
@@ -1166,7 +1166,7 @@ CSelector JsonUtils::parseSelector(const JsonNode & ability)
{ {
CSelector base = Selector::none; CSelector base = Selector::none;
for(const auto & andN : value->Vector()) for(const auto & andN : value->Vector())
base.Or(parseSelector(andN)); base = base.Or(parseSelector(andN));
ret = ret.And(base.Not()); ret = ret.And(base.Not());
} }

View File

@@ -854,6 +854,8 @@ int BattleActionProcessor::moveStack(const CBattleInfoCallback & battle, int sta
|| start == battle::Unit::occupiedHex(dest, curStack->doubleWide(), curStack->unitSide())) || start == battle::Unit::occupiedHex(dest, curStack->doubleWide(), curStack->unitSide()))
passed.clear(); //Just empty passed, obstacles will handled automatically passed.clear(); //Just empty passed, obstacles will handled automatically
} }
if(dest == start) //If dest is equal to start, then we should handle obstacles for it anyway
passed.clear(); //Just empty passed, obstacles will handled automatically
//handling obstacle on the final field (separate, because it affects both flying and walking stacks) //handling obstacle on the final field (separate, because it affects both flying and walking stacks)
battle.handleObstacleTriggersForUnit(*gameHandler->spellEnv, *curStack, passed); battle.handleObstacleTriggersForUnit(*gameHandler->spellEnv, *curStack, passed);