aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorRat <none@none>2009-08-24 00:07:18 +0200
committerRat <none@none>2009-08-24 00:07:18 +0200
commit73c66a028cea21e46af5834497a96b72d0902780 (patch)
tree65081b8df6327f22877417d52bb0bc3db1c6fd49 /src
parentc7820372693a6ecd62e7b70acab33da760fa04de (diff)
*enable fishing in Serpentshrine caverns' strange pool
it's a hack but don't have better idea --HG-- branch : trunk
Diffstat (limited to 'src')
-rw-r--r--src/bindings/scripts/scripts/outland/coilfang_resevoir/serpent_shrine/instance_serpent_shrine.cpp4
-rw-r--r--src/game/SpellEffects.cpp12
2 files changed, 13 insertions, 3 deletions
diff --git a/src/bindings/scripts/scripts/outland/coilfang_resevoir/serpent_shrine/instance_serpent_shrine.cpp b/src/bindings/scripts/scripts/outland/coilfang_resevoir/serpent_shrine/instance_serpent_shrine.cpp
index ebeda6aa565..4819b03ddc1 100644
--- a/src/bindings/scripts/scripts/outland/coilfang_resevoir/serpent_shrine/instance_serpent_shrine.cpp
+++ b/src/bindings/scripts/scripts/outland/coilfang_resevoir/serpent_shrine/instance_serpent_shrine.cpp
@@ -130,6 +130,10 @@ struct TRINITY_DLL_DECL instance_serpentshrine_cavern : public ScriptedInstance
StrangePool = pGo->GetGUID();
if (pGo->isActiveObject())
SetData(DATA_STRANGE_POOL, DONE);
+ break;
+ case GAMEOBJECT_FISHINGNODE_ENTRY:
+ //todo (yes this works)
+ break;
}
}
diff --git a/src/game/SpellEffects.cpp b/src/game/SpellEffects.cpp
index 9645ff7118c..2c748bba89d 100644
--- a/src/game/SpellEffects.cpp
+++ b/src/game/SpellEffects.cpp
@@ -6627,10 +6627,15 @@ void Spell::EffectTransmitted(uint32 effIndex)
}
Map *cMap = m_caster->GetMap();
-
if(goinfo->type==GAMEOBJECT_TYPE_FISHINGNODE)
{
- if ( !cMap->IsInWater(fx, fy, fz-0.5f, 0.5f)) // Hack to prevent fishing bobber from failing to land on fishing hole
+ //dirty way to hack serpent shrine pool
+ if(cMap->GetId() == 548 && m_caster->GetDistance(36.69, -416.38, -19.9645) <= 16)//center of strange pool
+ {
+ fx = 36.69+irand(-8,8);//random place for the bobber
+ fy = -416.38+irand(-8,8);
+ fz = -19.9645;//serpentshrine water level
+ }else if ( !cMap->IsInWater(fx, fy, fz-0.5f, 0.5f)) // Hack to prevent fishing bobber from failing to land on fishing hole
{ // but this is not proper, we really need to ignore not materialized objects
SendCastResult(SPELL_FAILED_NOT_HERE);
SendChannelUpdate(0);
@@ -6638,7 +6643,8 @@ void Spell::EffectTransmitted(uint32 effIndex)
}
// replace by water level in this case
- fz = cMap->GetWaterLevel(fx, fy);
+ if(cMap->GetId() != 548)//if map is not serpentshrine caverns
+ fz = cMap->GetWaterLevel(fx, fy);
}
// if gameobject is summoning object, it should be spawned right on caster's position
else if(goinfo->type==GAMEOBJECT_TYPE_SUMMONING_RITUAL)