[3.3.5] DB/Scripts: Rivern Frostwind

(cherry picked from commit 9fe890744c)
This commit is contained in:
Andrew Letson
2017-10-21 07:28:57 -04:00
committed by funjoker
parent 9457c1bb9d
commit f3b3bdf072
2 changed files with 12 additions and 46 deletions

View File

@@ -0,0 +1,11 @@
--
UPDATE `creature_template` SET `AIName` = 'SmartAI', `ScriptName` = '' WHERE `entry` = 10618;
DELETE FROM `gossip_menu_option` WHERE `MenuID` = 3130;
-- TODO check against live for what the actual gossip menu is. Didn't find anything helpful searching the broadcast_text table.
INSERT INTO `gossip_menu_option` (`MenuID`, `OptionIndex`, `OptionIcon`, `OptionText`, `OptionBroadcastTextID`, `OptionType`, `OptionNpcFlag`, `VerifiedBuild`) VALUES
(3130, 0, 1, "I would like to buy from you.", 2583, 3, 128, 0);
DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId` = 15 AND `SourceGroup` = 3130;
INSERT INTO `conditions` (`SourceTypeOrReferenceId`, `SourceGroup`, `SourceEntry`, `SourceId`, `ElseGroup`, `ConditionTypeOrReference`, `ConditionTarget`, `ConditionValue1`, `ConditionValue2`, `ConditionValue3`, `NegativeCondition`, `ErrorType`, `ErrorTextId`, `ScriptName`, `Comment`) VALUES
(15, 3130, 0, 0, 0, 5, 0, 589, 128, 0, 0, 0, 0, '', 'Show gossip menu 3130 option id 0 if player is Exalted with faction Wintersaber Trainers.');

View File

@@ -18,12 +18,11 @@
/* ScriptData
SDName: Winterspring
SD%Complete: Almost Completely Emptied
SDComment: Vendor Rivern Frostwind. Quest Support 4901
SDComment: Quest Support 4901
SDCategory: Winterspring
EndScriptData */
/* ContentData
npc_rivern_frostwind
npc_ranshalla
go_elune_fire
EndContentData */
@@ -35,52 +34,9 @@ EndContentData */
#include "ObjectAccessor.h"
#include "Player.h"
#include "ScriptedEscortAI.h"
#include "ScriptedGossip.h"
#include "TemporarySummon.h"
#include "WorldSession.h"
/*######
## npc_rivern_frostwind
######*/
class npc_rivern_frostwind : public CreatureScript
{
public:
npc_rivern_frostwind() : CreatureScript("npc_rivern_frostwind") { }
struct npc_rivern_frostwindAI : public ScriptedAI
{
npc_rivern_frostwindAI(Creature* creature) : ScriptedAI(creature) { }
bool GossipSelect(Player* player, uint32 /*menuId*/, uint32 gossipListId) override
{
uint32 const action = player->PlayerTalkClass->GetGossipOptionAction(gossipListId);
ClearGossipMenuFor(player);
if (action == GOSSIP_ACTION_TRADE)
player->GetSession()->SendListInventory(me->GetGUID());
return true;
}
bool GossipHello(Player* player) override
{
if (me->IsQuestGiver())
player->PrepareQuestMenu(me->GetGUID());
if (me->IsVendor() && player->GetReputationRank(589) == REP_EXALTED)
AddGossipItemFor(player, GOSSIP_ICON_VENDOR, GOSSIP_TEXT_BROWSE_GOODS, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_TRADE);
SendGossipMenuFor(player, player->GetGossipTextId(me), me->GetGUID());
return true;
}
};
CreatureAI* GetAI(Creature* creature) const override
{
return new npc_rivern_frostwindAI(creature);
}
};
enum Says
{
// Escort texts
@@ -642,7 +598,6 @@ public:
void AddSC_winterspring()
{
new npc_rivern_frostwind();
new npc_ranshalla();
new go_elune_fire();
}