db/SAI: Move Kalaran Windblade script to SAI and improved scripting and gossip.
This commit is contained in:
@@ -15,74 +15,4 @@
|
||||
* You should have received a copy of the GNU General Public License along
|
||||
* with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/* ScriptData
|
||||
SDName: Searing_Gorge
|
||||
SD%Complete: 80
|
||||
SDComment: Quest support: 3441 (More accurate info on Kalaran needed).
|
||||
SDCategory: Searing Gorge
|
||||
EndScriptData */
|
||||
|
||||
/* ContentData
|
||||
npc_kalaran_windblade
|
||||
EndContentData */
|
||||
|
||||
#include "ScriptPCH.h"
|
||||
|
||||
/*######
|
||||
## npc_kalaran_windblade
|
||||
######*/
|
||||
|
||||
#define GOSSIP_HELLO_KW "Tell me what drives this vengance?"
|
||||
#define GOSSIP_SELECT_KW1 "Continue please"
|
||||
#define GOSSIP_SELECT_KW2 "Let me confer with my colleagues"
|
||||
|
||||
class npc_kalaran_windblade : public CreatureScript
|
||||
{
|
||||
public:
|
||||
npc_kalaran_windblade() : CreatureScript("npc_kalaran_windblade") { }
|
||||
|
||||
bool OnGossipSelect(Player* player, Creature* creature, uint32 /*uiSender*/, uint32 uiAction)
|
||||
{
|
||||
player->PlayerTalkClass->ClearMenus();
|
||||
switch (uiAction)
|
||||
{
|
||||
case GOSSIP_ACTION_INFO_DEF:
|
||||
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_SELECT_KW1, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 1);
|
||||
player->SEND_GOSSIP_MENU(1954, creature->GetGUID());
|
||||
break;
|
||||
case GOSSIP_ACTION_INFO_DEF+1:
|
||||
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_SELECT_KW2, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 2);
|
||||
player->SEND_GOSSIP_MENU(1955, creature->GetGUID());
|
||||
break;
|
||||
case GOSSIP_ACTION_INFO_DEF+2:
|
||||
player->CLOSE_GOSSIP_MENU();
|
||||
player->AreaExploredOrEventHappens(3441);
|
||||
break;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
bool OnGossipHello(Player* player, Creature* creature)
|
||||
{
|
||||
if (creature->isQuestGiver())
|
||||
player->PrepareQuestMenu(creature->GetGUID());
|
||||
|
||||
if (player->GetQuestStatus(3441) == QUEST_STATUS_INCOMPLETE)
|
||||
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_HELLO_KW, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF);
|
||||
|
||||
player->SEND_GOSSIP_MENU(player->GetGossipTextId(creature), creature->GetGUID());
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
/*######
|
||||
##
|
||||
######*/
|
||||
|
||||
void AddSC_searing_gorge()
|
||||
{
|
||||
new npc_kalaran_windblade();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user