diff options
| author | Shauren <shauren.trinity@gmail.com> | 2025-01-20 22:49:52 +0100 |
|---|---|---|
| committer | Shauren <shauren.trinity@gmail.com> | 2025-01-20 22:49:52 +0100 |
| commit | 26376d89e165aece42e58213632ef43ecb0d81b3 (patch) | |
| tree | e04d20cee99d5f441a4cda7aed315bdb0bc2ca5b /src/server/game | |
| parent | 0e36fd93601f10949c848c1fc30ee3b70f2cecfa (diff) | |
Scripts/Spells: Use Spell::GetPowerTypeCostAmount where possible instead of iterating Spell::GetPowerCost
Diffstat (limited to 'src/server/game')
| -rw-r--r-- | src/server/game/Spells/Auras/SpellAuraEffects.cpp | 3 | ||||
| -rw-r--r-- | src/server/game/Spells/Spell.cpp | 12 | ||||
| -rw-r--r-- | src/server/game/Spells/SpellMgr.cpp | 3 |
3 files changed, 6 insertions, 12 deletions
diff --git a/src/server/game/Spells/Auras/SpellAuraEffects.cpp b/src/server/game/Spells/Auras/SpellAuraEffects.cpp index 2a474f4a6c4..e9cf05a12e4 100644 --- a/src/server/game/Spells/Auras/SpellAuraEffects.cpp +++ b/src/server/game/Spells/Auras/SpellAuraEffects.cpp @@ -1389,8 +1389,7 @@ bool AuraEffect::CheckEffectProc(AuraApplication* aurApp, ProcEventInfo& eventIn // Costs Check std::vector<SpellPowerCost> const& costs = eventInfo.GetProcSpell()->GetPowerCost(); - auto m = std::find_if(costs.begin(), costs.end(), [](SpellPowerCost const& cost) { return cost.Amount > 0; }); - if (m == costs.end()) + if (std::ranges::none_of(costs, [](SpellPowerCost const& cost) { return cost.Amount > 0; })) return false; break; } diff --git a/src/server/game/Spells/Spell.cpp b/src/server/game/Spells/Spell.cpp index 956c8049f51..62a9279c343 100644 --- a/src/server/game/Spells/Spell.cpp +++ b/src/server/game/Spells/Spell.cpp @@ -4771,7 +4771,7 @@ void Spell::SendSpellStart() if ((m_caster->GetTypeId() == TYPEID_PLAYER || (m_caster->GetTypeId() == TYPEID_UNIT && m_caster->ToCreature()->IsPet())) - && std::find_if(m_powerCost.begin(), m_powerCost.end(), [](SpellPowerCost const& cost) { return cost.Power != POWER_HEALTH; }) != m_powerCost.end()) + && std::ranges::any_of(m_powerCost, [](SpellPowerCost const& cost) { return cost.Power != POWER_HEALTH; })) castFlags |= CAST_FLAG_POWER_LEFT_SELF; if (HasPowerTypeCost(POWER_RUNES)) @@ -4870,7 +4870,7 @@ void Spell::SendSpellGo() if ((m_caster->GetTypeId() == TYPEID_PLAYER || (m_caster->GetTypeId() == TYPEID_UNIT && m_caster->ToCreature()->IsPet())) - && std::find_if(m_powerCost.begin(), m_powerCost.end(), [](SpellPowerCost const& cost) { return cost.Power != POWER_HEALTH; }) != m_powerCost.end()) + && std::ranges::any_of(m_powerCost, [](SpellPowerCost const& cost) { return cost.Power != POWER_HEALTH; })) castFlags |= CAST_FLAG_POWER_LEFT_SELF; if ((m_caster->GetTypeId() == TYPEID_PLAYER) @@ -8150,11 +8150,7 @@ bool Spell::HasPowerTypeCost(Powers power) const Optional<int32> Spell::GetPowerTypeCostAmount(Powers power) const { - auto itr = std::find_if(m_powerCost.cbegin(), m_powerCost.cend(), [power](SpellPowerCost const& cost) - { - return cost.Power == power; - }); - + auto itr = std::ranges::find(m_powerCost, power, &SpellPowerCost::Power); if (itr == m_powerCost.cend()) return { }; @@ -9590,7 +9586,7 @@ void SelectRandomInjuredTargets(std::list<WorldObject*>& targets, size_t maxTarg tempTargets.resize(targets.size()); // categorize each target - std::transform(targets.begin(), targets.end(), tempTargets.begin(), [&](WorldObject* target) + std::ranges::transform(targets, tempTargets.begin(), [&](WorldObject* target) { int32 negativePoints = 0; if (prioritizeGroupMembersOf && (!target->IsUnit() || target->ToUnit()->IsInRaidWith(prioritizeGroupMembersOf))) diff --git a/src/server/game/Spells/SpellMgr.cpp b/src/server/game/Spells/SpellMgr.cpp index dc7c9d35cc3..7166e99dc8c 100644 --- a/src/server/game/Spells/SpellMgr.cpp +++ b/src/server/game/Spells/SpellMgr.cpp @@ -534,8 +534,7 @@ bool SpellMgr::CanSpellTriggerProcOnEvent(SpellProcEntry const& procEntry, ProcE return false; std::vector<SpellPowerCost> const& costs = eventInfo.GetProcSpell()->GetPowerCost(); - auto m = std::find_if(costs.begin(), costs.end(), [](SpellPowerCost const& cost) { return cost.Amount > 0; }); - if (m == costs.end()) + if (std::ranges::none_of(costs, [](SpellPowerCost const& cost) { return cost.Amount > 0; })) return false; } |
