mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-18 00:18:43 +01:00
Add support for GO Bash'ir Crystalforge (Blades Edge/Outlands)
--HG-- branch : trunk
This commit is contained in:
@@ -45,6 +45,7 @@ go_scourge_cage
|
||||
go_jotunheim_cage
|
||||
go_table_theka
|
||||
go_soulwell
|
||||
go_bashir_crystalforge
|
||||
EndContentData */
|
||||
|
||||
#include "ScriptedPch.h"
|
||||
@@ -468,16 +469,52 @@ bool GOSelect_go_fel_crystalforge(Player *pPlayer, GameObject *pGO, uint32 /*uiS
|
||||
## go_bashir_crystalforge
|
||||
######*/
|
||||
|
||||
#define GOSSIP_BASHIR_CRYSTALFORGE_TEXT 31100
|
||||
#define GOSSIP_BASHIR_CRYSTALFORGE_ITEM_TEXT_RETURN 31101
|
||||
#define GOSSIP_BASHIR_CRYSTALFORGE_ITEM_1 "Purchase 1 Unstable Flask of the Sorcerer for the cost of 10 Apexis Shards"
|
||||
#define GOSSIP_BASHIR_CRYSTALFORGE_ITEM_5 "Purchase 5 Unstable Flask of the Sorcerer for the cost of 50 Apexis Shards"
|
||||
#define GOSSIP_BASHIR_CRYSTALFORGE_ITEM_RETURN "Use the bashir crystalforge to make another purchase."
|
||||
|
||||
enum eBashirCrystalforge
|
||||
{
|
||||
SPELL_CREATE_1_FLASK_OF_SORCERER = 40968,
|
||||
SPELL_CREATE_5_FLASK_OF_SORCERER = 40970,
|
||||
};
|
||||
|
||||
bool GOHello_go_bashir_crystalforge(Player *pPlayer, GameObject * /*pGO*/)
|
||||
bool GOHello_go_bashir_crystalforge(Player *pPlayer, GameObject *pGO)
|
||||
{
|
||||
pPlayer->CastSpell(pPlayer,SPELL_CREATE_1_FLASK_OF_SORCERER,false);
|
||||
return false;
|
||||
if (pGO->GetGoType() == GAMEOBJECT_TYPE_QUESTGIVER) /* != GAMEOBJECT_TYPE_QUESTGIVER) */
|
||||
pPlayer->PrepareQuestMenu(pGO->GetGUID()); /* return true*/
|
||||
|
||||
pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_BASHIR_CRYSTALFORGE_ITEM_1, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF);
|
||||
pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_BASHIR_CRYSTALFORGE_ITEM_5, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 1);
|
||||
|
||||
pPlayer->SEND_GOSSIP_MENU(GOSSIP_BASHIR_CRYSTALFORGE_TEXT, pGO->GetGUID());
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool GOSelect_go_bashir_crystalforge(Player *pPlayer, GameObject *pGO, uint32 /*uiSender*/, uint32 uiAction)
|
||||
{
|
||||
switch(uiAction)
|
||||
{
|
||||
case GOSSIP_ACTION_INFO_DEF:
|
||||
pPlayer->CastSpell(pPlayer,SPELL_CREATE_1_FLASK_OF_SORCERER,false);
|
||||
pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_BASHIR_CRYSTALFORGE_ITEM_RETURN, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+2);
|
||||
pPlayer->SEND_GOSSIP_MENU(GOSSIP_BASHIR_CRYSTALFORGE_ITEM_TEXT_RETURN, pGO->GetGUID());
|
||||
break;
|
||||
case GOSSIP_ACTION_INFO_DEF + 1:
|
||||
pPlayer->CastSpell(pPlayer,SPELL_CREATE_5_FLASK_OF_SORCERER,false);
|
||||
pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_BASHIR_CRYSTALFORGE_ITEM_RETURN, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+2);
|
||||
pPlayer->SEND_GOSSIP_MENU(GOSSIP_BASHIR_CRYSTALFORGE_ITEM_TEXT_RETURN, pGO->GetGUID());
|
||||
break;
|
||||
case GOSSIP_ACTION_INFO_DEF + 2:
|
||||
pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_BASHIR_CRYSTALFORGE_ITEM_1, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF);
|
||||
pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_BASHIR_CRYSTALFORGE_ITEM_5, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 1);
|
||||
pPlayer->SEND_GOSSIP_MENU(GOSSIP_BASHIR_CRYSTALFORGE_TEXT, pGO->GetGUID());
|
||||
break;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
/*######
|
||||
@@ -1031,6 +1068,7 @@ void AddSC_go_scripts()
|
||||
newscript = new Script;
|
||||
newscript->Name = "go_bashir_crystalforge";
|
||||
newscript->pGOHello = &GOHello_go_bashir_crystalforge;
|
||||
newscript->pGOSelect = &GOSelect_go_bashir_crystalforge;
|
||||
newscript->RegisterSelf();
|
||||
|
||||
newscript = new Script;
|
||||
|
||||
Reference in New Issue
Block a user