aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sql/updates/world/2013_05_11_00_world_spell_target_position.sql1
-rw-r--r--src/server/game/Spells/SpellEffects.cpp6
-rw-r--r--src/server/game/Spells/SpellMgr.cpp12
3 files changed, 5 insertions, 14 deletions
diff --git a/sql/updates/world/2013_05_11_00_world_spell_target_position.sql b/sql/updates/world/2013_05_11_00_world_spell_target_position.sql
new file mode 100644
index 00000000000..0e6b14682ae
--- /dev/null
+++ b/sql/updates/world/2013_05_11_00_world_spell_target_position.sql
@@ -0,0 +1 @@
+UPDATE `spell_target_position` SET `target_map`=0 WHERE `id`=53821;
diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp
index 9807e7a016d..fac5a5748de 100644
--- a/src/server/game/Spells/SpellEffects.cpp
+++ b/src/server/game/Spells/SpellEffects.cpp
@@ -6085,7 +6085,7 @@ void Spell::EffectBind(SpellEffIndex effIndex)
player->SetHomebind(homeLoc, areaId);
// binding
- WorldPacket data(SMSG_BINDPOINTUPDATE, (4+4+4+4+4));
+ WorldPacket data(SMSG_BINDPOINTUPDATE, 4 + 4 + 4 + 4 + 4);
data << float(homeLoc.GetPositionX());
data << float(homeLoc.GetPositionY());
data << float(homeLoc.GetPositionZ());
@@ -6097,8 +6097,8 @@ void Spell::EffectBind(SpellEffIndex effIndex)
homeLoc.GetPositionX(), homeLoc.GetPositionY(), homeLoc.GetPositionZ(), homeLoc.GetMapId(), areaId);
// zone update
- data.Initialize(SMSG_PLAYERBOUND, 8+4);
- data << uint64(player->GetGUID());
+ data.Initialize(SMSG_PLAYERBOUND, 8 + 4);
+ data << uint64(m_caster->GetGUID());
data << uint32(areaId);
player->SendDirectMessage(&data);
}
diff --git a/src/server/game/Spells/SpellMgr.cpp b/src/server/game/Spells/SpellMgr.cpp
index 9aebffcf53c..ee34e26808c 100644
--- a/src/server/game/Spells/SpellMgr.cpp
+++ b/src/server/game/Spells/SpellMgr.cpp
@@ -1549,21 +1549,11 @@ void SpellMgr::LoadSpellTargetPositions()
{
if (spellInfo->Effects[i].TargetA.GetTarget() == TARGET_DEST_DB || spellInfo->Effects[i].TargetB.GetTarget() == TARGET_DEST_DB)
{
- // additional requirements
- if (spellInfo->Effects[i].Effect == SPELL_EFFECT_BIND && spellInfo->Effects[i].MiscValue)
- {
- uint32 area_id = sMapMgr->GetAreaId(st.target_mapId, st.target_X, st.target_Y, st.target_Z);
- if (area_id != uint32(spellInfo->Effects[i].MiscValue))
- {
- sLog->outError(LOG_FILTER_SQL, "Spell (Id: %u) listed in `spell_target_position` expected to point to area %u, but points to area %u instead.", Spell_ID, spellInfo->Effects[i].MiscValue, area_id);
- break;
- }
- }
-
found = true;
break;
}
}
+
if (!found)
{
sLog->outError(LOG_FILTER_SQL, "Spell (Id: %u) listed in `spell_target_position` does not have target TARGET_DEST_DB (17).", Spell_ID);