mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-21 09:44:45 +01:00
Core/Scripts/DB: remove hardcoded text from 'npcs_dithers_and_arbington'
- created DB gossip_menu_option entries for both NPCs - added enum section instead of "magic numbers" in script - replaced core text with pointers to DB text - zone_western_plaguelands.cpp is now cleaned up
This commit is contained in:
@@ -41,12 +41,23 @@ EndContentData */
|
||||
## npcs_dithers_and_arbington
|
||||
######*/
|
||||
|
||||
#define GOSSIP_HDA1 "What does the Felstone Field Cauldron need?"
|
||||
#define GOSSIP_HDA2 "What does the Dalson's Tears Cauldron need?"
|
||||
#define GOSSIP_HDA3 "What does the Writhing Haunt Cauldron need?"
|
||||
#define GOSSIP_HDA4 "What does the Gahrron's Withering Cauldron need?"
|
||||
|
||||
#define GOSSIP_SDA1 "Thanks, i need a Vitreous Focuser"
|
||||
enum DithersAndArbington
|
||||
{
|
||||
GOSSIP_ITEM_ID_FELSTONE_FIELD = 0,
|
||||
GOSSIP_ITEM_ID_DALSON_S_TEARS = 1,
|
||||
GOSSIP_ITEM_ID_WRITHING_HAUNT = 2,
|
||||
GOSSIP_ITEM_ID_GAHRRON_S_WITH = 3,
|
||||
GOSSIP_MENU_ID_LETS_GET_TO_WORK = 3223,
|
||||
GOSSIP_MENU_ID_VITREOUS_FOCUSER = 3229,
|
||||
NPC_TEXT_OSSEOUS_AGITATORS = 3980,
|
||||
NPC_TEXT_SOMATIC_INTENSIFIERS_1 = 3981,
|
||||
NPC_TEXT_SOMATIC_INTENSIFIERS_2 = 3982,
|
||||
NPC_TEXT_ECTOPLASMIC_RESONATORS = 3983,
|
||||
NPC_TEXT_LET_S_GET_TO_WORK = 3985,
|
||||
QUEST_MISSION_ACCOMPLISHED_H = 5237,
|
||||
QUEST_MISSION_ACCOMPLISHED_A = 5238,
|
||||
CREATE_ITEM_VITREOUS_FOCUSER = 17529
|
||||
};
|
||||
|
||||
class npcs_dithers_and_arbington : public CreatureScript
|
||||
{
|
||||
@@ -62,24 +73,24 @@ public:
|
||||
player->GetSession()->SendListInventory(creature->GetGUID());
|
||||
break;
|
||||
case GOSSIP_ACTION_INFO_DEF+1:
|
||||
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_SDA1, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+5);
|
||||
player->SEND_GOSSIP_MENU(3980, creature->GetGUID());
|
||||
player->ADD_GOSSIP_ITEM_DB(GOSSIP_MENU_ID_VITREOUS_FOCUSER, 0, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+5);
|
||||
player->SEND_GOSSIP_MENU(NPC_TEXT_OSSEOUS_AGITATORS, creature->GetGUID());
|
||||
break;
|
||||
case GOSSIP_ACTION_INFO_DEF+2:
|
||||
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_SDA1, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+5);
|
||||
player->SEND_GOSSIP_MENU(3981, creature->GetGUID());
|
||||
player->ADD_GOSSIP_ITEM_DB(GOSSIP_MENU_ID_VITREOUS_FOCUSER, 0, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+5);
|
||||
player->SEND_GOSSIP_MENU(NPC_TEXT_SOMATIC_INTENSIFIERS_1, creature->GetGUID());
|
||||
break;
|
||||
case GOSSIP_ACTION_INFO_DEF+3:
|
||||
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_SDA1, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+5);
|
||||
player->SEND_GOSSIP_MENU(3982, creature->GetGUID());
|
||||
player->ADD_GOSSIP_ITEM_DB(GOSSIP_MENU_ID_VITREOUS_FOCUSER, 0, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+5);
|
||||
player->SEND_GOSSIP_MENU(NPC_TEXT_SOMATIC_INTENSIFIERS_2, creature->GetGUID());
|
||||
break;
|
||||
case GOSSIP_ACTION_INFO_DEF+4:
|
||||
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_SDA1, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+5);
|
||||
player->SEND_GOSSIP_MENU(3983, creature->GetGUID());
|
||||
player->ADD_GOSSIP_ITEM_DB(GOSSIP_MENU_ID_VITREOUS_FOCUSER, 0, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+5);
|
||||
player->SEND_GOSSIP_MENU(NPC_TEXT_ECTOPLASMIC_RESONATORS, creature->GetGUID());
|
||||
break;
|
||||
case GOSSIP_ACTION_INFO_DEF+5:
|
||||
player->CLOSE_GOSSIP_MENU();
|
||||
creature->CastSpell(player, 17529, false);
|
||||
creature->CastSpell(player, CREATE_ITEM_VITREOUS_FOCUSER, false);
|
||||
break;
|
||||
}
|
||||
return true;
|
||||
@@ -93,13 +104,13 @@ public:
|
||||
if (creature->IsVendor())
|
||||
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_VENDOR, GOSSIP_TEXT_BROWSE_GOODS, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_TRADE);
|
||||
|
||||
if (player->GetQuestRewardStatus(5237) || player->GetQuestRewardStatus(5238))
|
||||
if (player->GetQuestRewardStatus(QUEST_MISSION_ACCOMPLISHED_H) || player->GetQuestRewardStatus(QUEST_MISSION_ACCOMPLISHED_A))
|
||||
{
|
||||
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_HDA1, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1);
|
||||
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_HDA2, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+2);
|
||||
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_HDA3, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+3);
|
||||
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_HDA4, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+4);
|
||||
player->SEND_GOSSIP_MENU(3985, creature->GetGUID());
|
||||
player->ADD_GOSSIP_ITEM_DB(GOSSIP_MENU_ID_LETS_GET_TO_WORK, GOSSIP_ITEM_ID_FELSTONE_FIELD, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1);
|
||||
player->ADD_GOSSIP_ITEM_DB(GOSSIP_MENU_ID_LETS_GET_TO_WORK, GOSSIP_ITEM_ID_DALSON_S_TEARS, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+2);
|
||||
player->ADD_GOSSIP_ITEM_DB(GOSSIP_MENU_ID_LETS_GET_TO_WORK, GOSSIP_ITEM_ID_WRITHING_HAUNT, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+3);
|
||||
player->ADD_GOSSIP_ITEM_DB(GOSSIP_MENU_ID_LETS_GET_TO_WORK, GOSSIP_ITEM_ID_GAHRRON_S_WITH, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+4);
|
||||
player->SEND_GOSSIP_MENU(NPC_TEXT_LET_S_GET_TO_WORK, creature->GetGUID());
|
||||
}
|
||||
else
|
||||
player->SEND_GOSSIP_MENU(player->GetGossipTextId(creature), creature->GetGUID());
|
||||
|
||||
Reference in New Issue
Block a user