fix(Scripts/Kalimdor): Fix hardcoded gossip in zone_felwood (#21931)
Co-authored-by: Christopher Höllriegl <buddiman@users.noreply.github.com>
This commit is contained in:
@@ -25,17 +25,29 @@
|
|||||||
## npcs_riverbreeze_and_silversky
|
## npcs_riverbreeze_and_silversky
|
||||||
######*/
|
######*/
|
||||||
|
|
||||||
#define GOSSIP_ITEM_BEACON "Please make me a Cenarion Beacon"
|
|
||||||
|
|
||||||
enum RiverbreezeAndSilversky
|
enum RiverbreezeAndSilversky
|
||||||
{
|
{
|
||||||
SPELL_CENARION_BEACON = 15120,
|
SPELL_CENARION_BEACON = 15120,
|
||||||
|
ITEM_CENARION_BEACON = 11511,
|
||||||
|
ACTION_CREATE_CENARION_BEACON = GOSSIP_ACTION_INFO_DEF + 1,
|
||||||
|
|
||||||
NPC_ARATHANDRIS_SILVERSKY = 9528,
|
NPC_ARATHANDRIS_SILVERSKY = 9528,
|
||||||
NPC_MAYBESS_RIVERBREEZE = 9529,
|
NPC_MAYBESS_RIVERBREEZE = 9529,
|
||||||
|
|
||||||
QUEST_CLEASING_FELWOOD_A = 4101,
|
QUEST_CLEASING_FELWOOD_A = 4101,
|
||||||
QUEST_CLEASING_FELWOOD_H = 4102
|
QUEST_CLEASING_FELWOOD_H = 4102,
|
||||||
|
|
||||||
|
// Texts
|
||||||
|
GOSSIP_MENU_SILVERSKY = 2208,
|
||||||
|
GOSSIP_MENU_RIVERBREEZE = 21400,
|
||||||
|
GOSSIP_OPTION_BEACON = 0,
|
||||||
|
|
||||||
|
TEXT_SILVERSKY_1 = 2848,
|
||||||
|
TEXT_SILVERSKY_2 = 2845,
|
||||||
|
TEXT_SILVERSKY_3 = 2844,
|
||||||
|
TEXT_RIVERBREEZE_1 = 2849,
|
||||||
|
TEXT_RIVERBREEZE_2 = 2843,
|
||||||
|
TEXT_RIVERBREEZE_3 = 2842,
|
||||||
};
|
};
|
||||||
|
|
||||||
class npcs_riverbreeze_and_silversky : public CreatureScript
|
class npcs_riverbreeze_and_silversky : public CreatureScript
|
||||||
@@ -59,32 +71,36 @@ public:
|
|||||||
if (creature->IsQuestGiver())
|
if (creature->IsQuestGiver())
|
||||||
player->PrepareQuestMenu(creature->GetGUID());
|
player->PrepareQuestMenu(creature->GetGUID());
|
||||||
|
|
||||||
uint32 creatureId = creature->GetEntry();
|
uint32 const creatureId = creature->GetEntry();
|
||||||
|
|
||||||
if (creatureId == NPC_ARATHANDRIS_SILVERSKY)
|
if (creatureId == NPC_ARATHANDRIS_SILVERSKY)
|
||||||
{
|
{
|
||||||
if (player->GetQuestRewardStatus(QUEST_CLEASING_FELWOOD_A))
|
if (player->GetQuestRewardStatus(QUEST_CLEASING_FELWOOD_A))
|
||||||
{
|
{
|
||||||
AddGossipItemFor(player, GOSSIP_ICON_CHAT, GOSSIP_ITEM_BEACON, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 1);
|
if (!player->HasItemCount(ITEM_CENARION_BEACON, 1, true))
|
||||||
SendGossipMenuFor(player, 2848, creature->GetGUID());
|
AddGossipItemFor(player, GOSSIP_MENU_SILVERSKY, GOSSIP_OPTION_BEACON, GOSSIP_SENDER_MAIN, ACTION_CREATE_CENARION_BEACON);
|
||||||
|
|
||||||
|
SendGossipMenuFor(player, TEXT_SILVERSKY_1, creature->GetGUID());
|
||||||
}
|
}
|
||||||
else if (player->GetTeamId() == TEAM_HORDE)
|
else if (player->GetTeamId() == TEAM_HORDE)
|
||||||
SendGossipMenuFor(player, 2845, creature->GetGUID());
|
SendGossipMenuFor(player, TEXT_SILVERSKY_2, creature->GetGUID());
|
||||||
else
|
else
|
||||||
SendGossipMenuFor(player, 2844, creature->GetGUID());
|
SendGossipMenuFor(player, TEXT_SILVERSKY_3, creature->GetGUID());
|
||||||
}
|
}
|
||||||
|
|
||||||
if (creatureId == NPC_MAYBESS_RIVERBREEZE)
|
if (creatureId == NPC_MAYBESS_RIVERBREEZE)
|
||||||
{
|
{
|
||||||
if (player->GetQuestRewardStatus(QUEST_CLEASING_FELWOOD_H))
|
if (player->GetQuestRewardStatus(QUEST_CLEASING_FELWOOD_H))
|
||||||
{
|
{
|
||||||
AddGossipItemFor(player, GOSSIP_ICON_CHAT, GOSSIP_ITEM_BEACON, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 1);
|
if (!player->HasItemCount(ITEM_CENARION_BEACON, 1, true))
|
||||||
SendGossipMenuFor(player, 2849, creature->GetGUID());
|
AddGossipItemFor(player, GOSSIP_MENU_RIVERBREEZE, GOSSIP_OPTION_BEACON, GOSSIP_SENDER_MAIN, ACTION_CREATE_CENARION_BEACON);
|
||||||
|
|
||||||
|
SendGossipMenuFor(player, TEXT_RIVERBREEZE_1, creature->GetGUID());
|
||||||
}
|
}
|
||||||
else if (player->GetTeamId() == TEAM_ALLIANCE)
|
else if (player->GetTeamId() == TEAM_ALLIANCE)
|
||||||
SendGossipMenuFor(player, 2843, creature->GetGUID());
|
SendGossipMenuFor(player, TEXT_RIVERBREEZE_2, creature->GetGUID());
|
||||||
else
|
else
|
||||||
SendGossipMenuFor(player, 2842, creature->GetGUID());
|
SendGossipMenuFor(player, TEXT_RIVERBREEZE_3, creature->GetGUID());
|
||||||
}
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
|
|||||||
Reference in New Issue
Block a user