From 7c5b69d18bb315d369bf0bbfc16b795d63d0f73c Mon Sep 17 00:00:00 2001 From: Mikhail Redko Date: Wed, 21 Mar 2018 11:05:17 +0200 Subject: Core/Creatures: implement CREATURE_FLAG_EXTRA_NO_SELL_VENDOR (#21642) * Add CREATURE_FLAG_EXTRA_NO_SELL_VENDOR and use it for a single no-sell vendor in game (there are more of them in later expansions) --- src/server/game/Handlers/ItemHandler.cpp | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/server/game/Handlers/ItemHandler.cpp') diff --git a/src/server/game/Handlers/ItemHandler.cpp b/src/server/game/Handlers/ItemHandler.cpp index 07cc7a56ac2..a968536c6cc 100644 --- a/src/server/game/Handlers/ItemHandler.cpp +++ b/src/server/game/Handlers/ItemHandler.cpp @@ -385,6 +385,12 @@ void WorldSession::HandleSellItemOpcode(WorldPacket& recvData) return; } + if ((creature->GetCreatureTemplate()->flags_extra & CREATURE_FLAG_EXTRA_NO_SELL_VENDOR) != 0) + { + _player->SendSellError(SELL_ERR_CANT_SELL_TO_THIS_MERCHANT, creature, itemguid, 0); + return; + } + // remove fake death if (GetPlayer()->HasUnitState(UNIT_STATE_DIED)) GetPlayer()->RemoveAurasByType(SPELL_AURA_FEIGN_DEATH); -- cgit v1.2.3