Когда игрок с аурой 46221 заходит в воду, то в момент отмены ауры должен кастоваться спелл 63471:
Код:
diff --git a/src/game/SpellAuras.cpp b/src/game/SpellAuras.cpp
index 09cace4..dea6a80 100644
--- a/src/game/SpellAuras.cpp
+++ b/src/game/SpellAuras.cpp
@@ -4619,9 +4619,19 @@ void Aura::HandlePeriodicTriggerSpell(bool apply, bool /*Real*/)
target->CastSpell(target, 32612, true, NULL, this);
return;
- case 42783: //Wrath of the Astrom...
+ case 42783: // Wrath of the Astrom...
if (m_removeMode == AURA_REMOVE_BY_EXPIRE && GetEffIndex() + 1 < MAX_EFFECT_INDEX)
target->CastSpell(target, GetSpellProto()->CalculateSimpleValue(SpellEffectIndex(GetEffIndex()+1)), true);
+
+ return;
+ case 46221: // Animal Blood
+ if (target->GetTypeId() == TYPEID_PLAYER && m_removeMode == AURA_REMOVE_BY_DEFAULT && target->IsInWater())
+ {
+ float position_z = target->GetTerrain()->GetWaterLevel(target->GetPositionX(), target->GetPositionY(), target->GetPositionZ());
+ // Spawn Blood Pool
+ target->CastSpell(target->GetPositionX(), target->GetPositionY(), position_z, 63471, true);
+ }
+
return;
case 51912: // Ultra-Advanced Proto-Typical Shortening Blaster
if (m_removeMode == AURA_REMOVE_BY_EXPIRE)