aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Entities
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2012-03-07 18:57:47 +0100
committerShauren <shauren.trinity@gmail.com>2012-03-07 18:57:47 +0100
commita1a7a2d7c06e9a8d1cbf3a8901d8d134dcd1ee6a (patch)
tree13faefd56d6d21732b93a4c0c9595c59026d92f4 /src/server/game/Entities
parent2e58d7b515a74944f4c4caca9fa29186e8f56586 (diff)
Core/Players
* Add liquid special aura only if player is in it (not when above) * Use CastSpell instead of AddAura - checks all dbc conditions on spell
Diffstat (limited to 'src/server/game/Entities')
-rwxr-xr-xsrc/server/game/Entities/Player/Player.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp
index 729a2fe0b00..54178cd6720 100755
--- a/src/server/game/Entities/Player/Player.cpp
+++ b/src/server/game/Entities/Player/Player.cpp
@@ -23075,7 +23075,12 @@ void Player::UpdateUnderwaterState(Map* m, float x, float y, float z)
RemoveAurasDueToSpell(_lastLiquid->SpellId);
if (liquid && liquid->SpellId)
- AddAura(liquid->SpellId, this);
+ {
+ if (res & (LIQUID_MAP_UNDER_WATER | LIQUID_MAP_IN_WATER | LIQUID_MAP_WATER_WALK))
+ CastSpell(this, liquid->SpellId, this);
+ else
+ RemoveAurasDueToSpell(liquid->SpellId);
+ }
_lastLiquid = liquid;
}