diff --git a/Game/Entities/GameObject/GameObject.cs b/Game/Entities/GameObject/GameObject.cs index 5716d02d2..057796d52 100644 --- a/Game/Entities/GameObject/GameObject.cs +++ b/Game/Entities/GameObject/GameObject.cs @@ -291,7 +291,8 @@ namespace Game.Entities SetGoAnimProgress(animprogress); break; case GameObjectTypes.FishingNode: - SetGoAnimProgress(0); + SetUInt32Value(GameObjectFields.Level, 1); + SetGoAnimProgress(255); break; case GameObjectTypes.Trap: if (goinfo.Trap.stealthed != 0) diff --git a/Game/Spells/SpellEffects.cs b/Game/Spells/SpellEffects.cs index 102932d86..96917e343 100644 --- a/Game/Spells/SpellEffects.cs +++ b/Game/Spells/SpellEffects.cs @@ -4655,7 +4655,10 @@ namespace Game.Spells { case GameObjectTypes.FishingNode: { - m_caster.AddChannelObject(pGameObj.GetGUID()); + pGameObj.SetFaction(m_caster.getFaction()); + ObjectGuid bobberGuid = pGameObj.GetGUID(); + // client requires fishing bobber guid in channel object slot 0 to be usable + m_caster.SetDynamicStructuredValue(UnitDynamicFields.ChannelObjects, 0, bobberGuid); m_caster.AddGameObject(pGameObj); // will removed at spell cancel // end time of range when possible catch fish (FISHING_BOBBER_READY_TIME..GetDuration(m_spellInfo))