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

Use unit->getHexes()

instead of battle::Unit::getHexes(stack->getPosition(), stack->doubleWide(), stack->unitSide())
This commit is contained in:
MichalZr6 2025-01-21 13:22:29 +01:00
parent a1593948b7
commit 30bd975f95
5 changed files with 8 additions and 14 deletions

View File

@ -1024,7 +1024,7 @@ AccessibilityInfo CBattleInfoCallback::getAccessibility() const
AccessibilityInfo CBattleInfoCallback::getAccessibility(const battle::Unit * stack) const
{
return getAccessibility(battle::Unit::getHexes(stack->getPosition(), stack->doubleWide(), stack->unitSide()));
return getAccessibility(stack->getHexes());
}
AccessibilityInfo CBattleInfoCallback::getAccessibility(const BattleHexArray & accessibleHexes) const
@ -1458,7 +1458,7 @@ battle::Units CBattleInfoCallback::getAttackedBattleUnits(
if (unit->isGhost() || !unit->alive())
return false;
for (const BattleHex & hex : battle::Unit::getHexes(unit->getPosition(), unit->doubleWide(), unit->unitSide()))
for (const BattleHex & hex : unit->getHexes())
{
if (at.hostileCreaturePositions.contains(hex))
return true;

View File

@ -68,19 +68,13 @@ const BattleHexArray & Unit::getSurroundingHexes(const BattleHex & position, boo
BattleHexArray Unit::getAttackableHexes(const Unit * attacker) const
{
const BattleHexArray & defenderHexes = battle::Unit::getHexes(
getPosition(),
doubleWide(),
unitSide());
const BattleHexArray & defenderHexes = getHexes();
BattleHexArray targetableHexes;
for(const auto & defenderHex : defenderHexes)
{
auto hexes = battle::Unit::getHexes(
defenderHex,
attacker->doubleWide(),
unitSide());
auto hexes = battle::Unit::getHexes(defenderHex);
if(hexes.size() == 2 && BattleHex::getDistance(hexes.front(), hexes.back()) != 1)
hexes.pop_back();

View File

@ -107,7 +107,7 @@ bool DemonSummon::isValidTarget(const Mechanics * m, const battle::Unit * unit)
return false;
//check if alive unit blocks rising
for(const BattleHex & hex : battle::Unit::getHexes(unit->getPosition(), unit->doubleWide(), unit->unitSide()))
for(const BattleHex & hex : unit->getHexes())
{
auto blocking = m->battle()->battleGetUnitsIf([hex, unit](const battle::Unit * other)
{

View File

@ -70,7 +70,7 @@ bool Heal::isValidTarget(const Mechanics * m, const battle::Unit * unit) const
if(unit->isDead())
{
//check if alive unit blocks resurrection
for(const BattleHex & hex : battle::Unit::getHexes(unit->getPosition(), unit->doubleWide(), unit->unitSide()))
for(const BattleHex & hex : unit->getHexes())
{
auto blocking = m->battle()->battleGetUnitsIf([hex, unit](const battle::Unit * other)
{

View File

@ -202,7 +202,7 @@ EffectTarget UnitEffect::transformTargetByChain(const Mechanics * m, const Targe
for(const auto *unit : possibleTargets)
{
for(const auto & hex : battle::Unit::getHexes(unit->getPosition(), unit->doubleWide(), unit->unitSide()))
for(const auto & hex : unit->getHexes())
possibleHexes.insert(hex);
}
@ -222,7 +222,7 @@ EffectTarget UnitEffect::transformTargetByChain(const Mechanics * m, const Targe
else
effectTarget.emplace_back();
for(const auto & hex : battle::Unit::getHexes(unit->getPosition(), unit->doubleWide(), unit->unitSide()))
for(const auto & hex : unit->getHexes())
if (possibleHexes.contains(hex))
possibleHexes.erase(hex);