diff options
author | Shauren <shauren.trinity@gmail.com> | 2025-01-20 22:49:52 +0100 |
---|---|---|
committer | Ovahlord <dreadkiller@gmx.de> | 2025-01-21 18:28:54 +0100 |
commit | 1c04f09609f09bed912e68e9a6d50074ec53861b (patch) | |
tree | 1f1d7e51f44e9eb073729c4041c404124e144fe7 /src/server/game/Spells/Spell.cpp | |
parent | d36d2e1fcc89258ca962fdf7c359a0e3a573258e (diff) |
Scripts/Spells: Use Spell::GetPowerTypeCostAmount where possible instead of iterating Spell::GetPowerCost
(cherry picked from commit 26376d89e165aece42e58213632ef43ecb0d81b3)
# Conflicts:
# src/server/scripts/Spells/spell_druid.cpp
# src/server/scripts/Spells/spell_rogue.cpp
# src/server/scripts/Spells/spell_shaman.cpp
Diffstat (limited to 'src/server/game/Spells/Spell.cpp')
-rw-r--r-- | src/server/game/Spells/Spell.cpp | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/src/server/game/Spells/Spell.cpp b/src/server/game/Spells/Spell.cpp index 4092d0db626..733fb9f2607 100644 --- a/src/server/game/Spells/Spell.cpp +++ b/src/server/game/Spells/Spell.cpp @@ -4692,7 +4692,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_RUNE_BLOOD) || HasPowerTypeCost(POWER_RUNE_FROST) || HasPowerTypeCost(POWER_RUNE_UNHOLY)) @@ -4787,7 +4787,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) @@ -7885,11 +7885,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 { }; @@ -9284,7 +9280,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))) |