aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormegamage <none@none>2009-03-05 13:08:46 -0600
committermegamage <none@none>2009-03-05 13:08:46 -0600
commitb7ec91f72d640bb694b82b0adafaa66935174d42 (patch)
tree0c3a6adb84c221dce945c7c6dd0624612a1483b5
parentc5175e5e470f6c630b4c8659f0e0e6a1094891cc (diff)
*Do not let farsight dynobj apply non-exist auras. This fixed farsight.
--HG-- branch : trunk
-rw-r--r--src/game/DynamicObject.cpp13
-rw-r--r--src/game/SpellEffects.cpp2
2 files changed, 9 insertions, 6 deletions
diff --git a/src/game/DynamicObject.cpp b/src/game/DynamicObject.cpp
index 0ae3656fc9d..fd3e16e79d7 100644
--- a/src/game/DynamicObject.cpp
+++ b/src/game/DynamicObject.cpp
@@ -113,12 +113,15 @@ void DynamicObject::Update(uint32 p_time)
else
deleteThis = true;
- if(m_updateTimer < p_time)
+ if(m_effIndex < 4)
{
- Trinity::DynamicObjectUpdater notifier(*this,caster);
- VisitNearbyObject(GetRadius(), notifier);
- m_updateTimer = 500; // is this official-like?
- }else m_updateTimer -= p_time;
+ if(m_updateTimer < p_time)
+ {
+ Trinity::DynamicObjectUpdater notifier(*this,caster);
+ VisitNearbyObject(GetRadius(), notifier);
+ m_updateTimer = 500; // is this official-like?
+ }else m_updateTimer -= p_time;
+ }
if(deleteThis)
{
diff --git a/src/game/SpellEffects.cpp b/src/game/SpellEffects.cpp
index dbdef569a5c..cad6190294d 100644
--- a/src/game/SpellEffects.cpp
+++ b/src/game/SpellEffects.cpp
@@ -3485,7 +3485,7 @@ void Spell::EffectAddFarsight(uint32 i)
float radius = GetSpellRadius(sSpellRadiusStore.LookupEntry(m_spellInfo->EffectRadiusIndex[i]));
int32 duration = GetSpellDuration(m_spellInfo);
DynamicObject* dynObj = new DynamicObject;
- if(!dynObj->Create(objmgr.GenerateLowGuid(HIGHGUID_DYNAMICOBJECT), m_caster, m_spellInfo->Id, i, m_targets.m_destX, m_targets.m_destY, m_targets.m_destZ, duration, radius))
+ if(!dynObj->Create(objmgr.GenerateLowGuid(HIGHGUID_DYNAMICOBJECT), m_caster, m_spellInfo->Id, 4, m_targets.m_destX, m_targets.m_destY, m_targets.m_destZ, duration, radius))
{
delete dynObj;
return;