From 848861683231a9a34549039f32c062b3d6fa402f Mon Sep 17 00:00:00 2001 From: hondacrx Date: Fri, 14 Oct 2022 17:04:26 -0400 Subject: [PATCH] Core/Gossip: Implemented GossipOptionNpc.AzeriteRespec Port From (https://github.com/TrinityCore/TrinityCore/commit/9fb4c1ca0228a51da4b69322e8a3db8932781f13) --- Source/Framework/Constants/GossipConst.cs | 2 +- Source/Game/Entities/Player/Player.cs | 6 +++++- Source/Game/Handlers/AzeriteHandler.cs | 5 +++++ Source/Game/Spells/Spell.cs | 2 +- 4 files changed, 12 insertions(+), 3 deletions(-) diff --git a/Source/Framework/Constants/GossipConst.cs b/Source/Framework/Constants/GossipConst.cs index 699b078e2..ac200231d 100644 --- a/Source/Framework/Constants/GossipConst.cs +++ b/Source/Framework/Constants/GossipConst.cs @@ -81,7 +81,7 @@ namespace Framework.Constants GarrisonTalent = 32, // White chat bubble ContributionCollector = 33, /*NYI*/ // White chat bubble Transmogrify = 34, // Purple helm - AzeriteRespec = 35, /*NYI*/ // White chat bubble + AzeriteRespec = 35, // White chat bubble IslandsMission = 36, /*NYI*/ // White chat bubble UIItemInteraction = 37, /*NYI*/ // White chat bubble WorldMap = 38, /*NYI*/ // White chat bubble diff --git a/Source/Game/Entities/Player/Player.cs b/Source/Game/Entities/Player/Player.cs index e7f106217..32d022830 100644 --- a/Source/Game/Entities/Player/Player.cs +++ b/Source/Game/Entities/Player/Player.cs @@ -2370,6 +2370,7 @@ namespace Game.Entities case GossipOptionNpc.Auctioneer: case GossipOptionNpc.Mailbox: case GossipOptionNpc.Transmogrify: + case GossipOptionNpc.AzeriteRespec: break; // No checks case GossipOptionNpc.CemeterySelect: canTalk = false; // Deprecated @@ -2388,7 +2389,6 @@ namespace Game.Entities case GossipOptionNpc.AdventureMap: case GossipOptionNpc.GarrisonTalent: case GossipOptionNpc.ContributionCollector: - case GossipOptionNpc.AzeriteRespec: case GossipOptionNpc.IslandsMission: case GossipOptionNpc.UIItemInteraction: case GossipOptionNpc.WorldMap: @@ -2622,6 +2622,10 @@ namespace Game.Entities case GossipOptionNpc.Transmogrify: GetSession().SendOpenTransmogrifier(guid); break; + case GossipOptionNpc.AzeriteRespec: + PlayerTalkClass.SendCloseGossip(); + GetSession().SendAzeriteRespecNPC(guid); + break; default: break; } diff --git a/Source/Game/Handlers/AzeriteHandler.cs b/Source/Game/Handlers/AzeriteHandler.cs index 9cdee6c91..035e9fbfe 100644 --- a/Source/Game/Handlers/AzeriteHandler.cs +++ b/Source/Game/Handlers/AzeriteHandler.cs @@ -243,5 +243,10 @@ namespace Game azeriteEmpoweredItem.SetState(ItemUpdateState.Changed, _player); } + + public void SendAzeriteRespecNPC(ObjectGuid npc) + { + SendPacket(new AzeriteRespecNPC(npc)); + } } } diff --git a/Source/Game/Spells/Spell.cs b/Source/Game/Spells/Spell.cs index 6a8bdce2a..0e114f9cb 100644 --- a/Source/Game/Spells/Spell.cs +++ b/Source/Game/Spells/Spell.cs @@ -6764,7 +6764,7 @@ namespace Game.Spells return SpellCastResult.AzeriteEmpoweredOnly; bool hasSelections = false; - for (int tier = 0; tier < azeriteEmpoweredItem.GetMaxAzeritePowerTier(); ++tier) + for (int tier = 0; tier < SharedConst.MaxAzeriteEmpoweredTier; ++tier) { if (azeriteEmpoweredItem.GetSelectedAzeritePower(tier) != 0) {