Core/Player: fixed logic for determining fully depleted runes - these are runes at max cooldown that hasn't started recovering yet

This commit is contained in:
Ovahlord
2024-12-20 18:22:08 +01:00
parent a5d4a0c9d7
commit 2087f75871
4 changed files with 29 additions and 10 deletions

View File

@@ -5946,7 +5946,10 @@ void Spell::EffectActivateRune()
for (uint32 i = 0; i < MAX_RUNES && count > 0; ++i)
{
// We will check for base and current rune because some spell effects also activate Death Runes while specifying Blood Runes in their misc value
if ((player->GetBaseRune(i) == runeType || player->GetCurrentRune(i) == runeType) && G3D::fuzzyNe(player->GetRuneCooldown(i), 0.0f))
if (player->GetBaseRune(i) != runeType && player->GetCurrentRune(i) != runeType)
continue;
if (player->IsRuneFullyDepleted(i))
{
player->SetRuneCooldown(i, 0.0f);
--count;