diff options
author | joschiwald <joschiwald@online.de> | 2012-05-28 04:27:51 +0200 |
---|---|---|
committer | joschiwald <joschiwald@online.de> | 2012-05-28 04:27:51 +0200 |
commit | cd7ab6f3a5e86e51d19621ce5ab5560cd7eb62bc (patch) | |
tree | 3e13fd8e4472a3dece8e6691df794f87bfe3e59d /src/server/game/Handlers/SpellHandler.cpp | |
parent | ca07f30d0359bf5a6eecba8b9cc68702eca4071b (diff) | |
parent | 9c417ff931a98a2ba35b30e76f8967c7f841e868 (diff) |
Merge branch 'master' of github.com:joschiwald/TrinityCore into spellscripts
Conflicts:
src/server/game/Entities/Unit/Unit.cpp
src/server/game/Spells/Auras/SpellAuraEffects.cpp
src/server/game/Spells/Spell.cpp
src/server/game/Spells/SpellEffects.cpp
src/server/scripts/Spells/spell_paladin.cpp
Diffstat (limited to 'src/server/game/Handlers/SpellHandler.cpp')
-rwxr-xr-x | src/server/game/Handlers/SpellHandler.cpp | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/server/game/Handlers/SpellHandler.cpp b/src/server/game/Handlers/SpellHandler.cpp index b2d52c85467..1affdf0aff7 100755 --- a/src/server/game/Handlers/SpellHandler.cpp +++ b/src/server/game/Handlers/SpellHandler.cpp @@ -650,13 +650,22 @@ void WorldSession::HandleUpdateProjectilePosition(WorldPacket& recvPacket) uint8 castCount; float x, y, z; // Position of missile hit - recvPacket.readPackGUID(casterGuid); + recvPacket >> casterGuid; recvPacket >> spellId; recvPacket >> castCount; recvPacket >> x; recvPacket >> y; recvPacket >> z; + Unit* caster = ObjectAccessor::GetUnit(*_player, casterGuid); + Spell* spell = caster ? caster->FindCurrentSpellBySpellId(spellId) : NULL; + if (spell && spell->m_targets.HasDst()) + { + Position pos = *spell->m_targets.GetDstPos(); + pos.Relocate(x, y, z); + spell->m_targets.ModDst(pos); + } + WorldPacket data(SMSG_SET_PROJECTILE_POSITION, 21); data << uint64(casterGuid); data << uint8(castCount); |