mirror of
https://github.com/telegramcores/mod-premium.git
synced 2026-01-13 00:58:36 +00:00
feat(Misc): switch to new api gossip and config
This commit is contained in:
@@ -37,7 +37,7 @@ enum Trainers
|
|||||||
ROGUE_H = 3401,
|
ROGUE_H = 3401,
|
||||||
SHAMAN_H = 3344,
|
SHAMAN_H = 3344,
|
||||||
WARLOCK_H = 3324,
|
WARLOCK_H = 3324,
|
||||||
WARRIOR_H = 3354,
|
WARRIOR_H = 3354,
|
||||||
|
|
||||||
DEATHKNIGHT_AH = 28472
|
DEATHKNIGHT_AH = 28472
|
||||||
};
|
};
|
||||||
@@ -63,8 +63,8 @@ public:
|
|||||||
|
|
||||||
bool OnUse(Player* player, Item* item, SpellCastTargets const& /*targets*/) override
|
bool OnUse(Player* player, Item* item, SpellCastTargets const& /*targets*/) override
|
||||||
{
|
{
|
||||||
if (!sConfigMgr->GetBoolDefault("PremiumAccount", true))
|
if (!sConfigMgr->GetOption<bool>("PremiumAccount", true))
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
QueryResult result = CharacterDatabase.PQuery("SELECT AccountId FROM premium WHERE active = 1 AND AccountId = %u", player->GetSession()->GetAccountId());
|
QueryResult result = CharacterDatabase.PQuery("SELECT AccountId FROM premium WHERE active = 1 AND AccountId = %u", player->GetSession()->GetAccountId());
|
||||||
|
|
||||||
@@ -100,24 +100,24 @@ public:
|
|||||||
player->FindNearestCreature(DEATHKNIGHT_AH, rangeCheck))
|
player->FindNearestCreature(DEATHKNIGHT_AH, rangeCheck))
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
player->PlayerTalkClass->ClearMenus();
|
ClearGossipMenuFor(player);
|
||||||
|
|
||||||
if (sConfigMgr->GetBoolDefault("Morph", true))
|
if (sConfigMgr->GetOption<bool>("Morph", true))
|
||||||
{
|
{
|
||||||
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Morph", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 1);
|
AddGossipItemFor(player, GOSSIP_ICON_CHAT, "Morph", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 1);
|
||||||
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Demorph", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 2);
|
AddGossipItemFor(player, GOSSIP_ICON_CHAT, "Demorph", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 2);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (sConfigMgr->GetBoolDefault("Mount", true))
|
if (sConfigMgr->GetOption<bool>("Mount", true))
|
||||||
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT_16, "Mount", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 6);
|
AddGossipItemFor(player, GOSSIP_ICON_CHAT_16, "Mount", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 6);
|
||||||
|
|
||||||
if (sConfigMgr->GetBoolDefault("Trainers", true))
|
if (sConfigMgr->GetOption<bool>("Trainers", true))
|
||||||
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, GOSSIP_TEXT_TRAIN, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 8);
|
AddGossipItemFor(player, GOSSIP_ICON_TRAINER, GOSSIP_TEXT_TRAIN, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 8);
|
||||||
|
|
||||||
if (sConfigMgr->GetBoolDefault("PlayerInteraction", true))
|
if (sConfigMgr->GetOption<bool>("PlayerInteraction", true))
|
||||||
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Player interactions", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 9);
|
AddGossipItemFor(player, GOSSIP_ICON_CHAT, "Player interactions", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 9);
|
||||||
|
|
||||||
player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE, item->GetGUID());
|
SendGossipMenuFor(player, DEFAULT_GOSSIP_MESSAGE, item->GetGUID());
|
||||||
|
|
||||||
return false; // Cast the spell on use normally
|
return false; // Cast the spell on use normally
|
||||||
}
|
}
|
||||||
@@ -128,14 +128,14 @@ public:
|
|||||||
{
|
{
|
||||||
case GOSSIP_ACTION_INFO_DEF + 1: /*Morph*/
|
case GOSSIP_ACTION_INFO_DEF + 1: /*Morph*/
|
||||||
{
|
{
|
||||||
player->CLOSE_GOSSIP_MENU();
|
CloseGossipMenuFor(player);
|
||||||
ApplyRandomMorph(player);
|
ApplyRandomMorph(player);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case GOSSIP_ACTION_INFO_DEF + 2: /*Demorph*/
|
case GOSSIP_ACTION_INFO_DEF + 2: /*Demorph*/
|
||||||
{
|
{
|
||||||
player->DeMorph();
|
player->DeMorph();
|
||||||
player->CLOSE_GOSSIP_MENU();
|
CloseGossipMenuFor(player);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case GOSSIP_ACTION_INFO_DEF + 3: /*Show Bank*/
|
case GOSSIP_ACTION_INFO_DEF + 3: /*Show Bank*/
|
||||||
@@ -162,12 +162,12 @@ public:
|
|||||||
}
|
}
|
||||||
|
|
||||||
SummonTempNPC(player, vendorId, salute.c_str());
|
SummonTempNPC(player, vendorId, salute.c_str());
|
||||||
player->CLOSE_GOSSIP_MENU();
|
CloseGossipMenuFor(player);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case GOSSIP_ACTION_INFO_DEF + 6: /*Mount*/
|
case GOSSIP_ACTION_INFO_DEF + 6: /*Mount*/
|
||||||
{
|
{
|
||||||
player->CLOSE_GOSSIP_MENU();
|
CloseGossipMenuFor(player);
|
||||||
switch (player->getRace())
|
switch (player->getRace())
|
||||||
{
|
{
|
||||||
case RACE_HUMAN: player->CastSpell(player, HUMAN_MOUNT); break;
|
case RACE_HUMAN: player->CastSpell(player, HUMAN_MOUNT); break;
|
||||||
@@ -199,7 +199,7 @@ public:
|
|||||||
}
|
}
|
||||||
|
|
||||||
SummonTempNPC(player, auctionId, salute.c_str());
|
SummonTempNPC(player, auctionId, salute.c_str());
|
||||||
player->CLOSE_GOSSIP_MENU();
|
CloseGossipMenuFor(player);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case GOSSIP_ACTION_INFO_DEF + 8: /* Class Trainers*/
|
case GOSSIP_ACTION_INFO_DEF + 8: /* Class Trainers*/
|
||||||
@@ -240,26 +240,26 @@ public:
|
|||||||
}
|
}
|
||||||
|
|
||||||
SummonTempNPC(player, trainerId);
|
SummonTempNPC(player, trainerId);
|
||||||
player->CLOSE_GOSSIP_MENU();
|
CloseGossipMenuFor(player);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case GOSSIP_ACTION_INFO_DEF + 9: /*Player Interactions*/
|
case GOSSIP_ACTION_INFO_DEF + 9: /*Player Interactions*/
|
||||||
{
|
{
|
||||||
player->PlayerTalkClass->ClearMenus();
|
ClearGossipMenuFor(player);
|
||||||
|
|
||||||
if (sConfigMgr->GetBoolDefault("Vendor", true))
|
if (sConfigMgr->GetOption<bool>("Vendor", true))
|
||||||
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_VENDOR, "Vendor", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 5);
|
AddGossipItemFor(player, GOSSIP_ICON_VENDOR, "Vendor", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 5);
|
||||||
|
|
||||||
if (sConfigMgr->GetBoolDefault("MailBox", true))
|
if (sConfigMgr->GetOption<bool>("MailBox", true))
|
||||||
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_VENDOR, "Mail Box", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 4);
|
AddGossipItemFor(player, GOSSIP_ICON_VENDOR, "Mail Box", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 4);
|
||||||
|
|
||||||
if (sConfigMgr->GetBoolDefault("Bank", true))
|
if (sConfigMgr->GetOption<bool>("Bank", true))
|
||||||
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_VENDOR, "Show Bank", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 3);
|
AddGossipItemFor(player, GOSSIP_ICON_VENDOR, "Show Bank", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 3);
|
||||||
|
|
||||||
if (sConfigMgr->GetBoolDefault("Auction", true))
|
if (sConfigMgr->GetOption<bool>("Auction", true))
|
||||||
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_VENDOR, "Auction House", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 7);
|
AddGossipItemFor(player, GOSSIP_ICON_VENDOR, "Auction House", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 7);
|
||||||
|
|
||||||
player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE, item->GetGUID());
|
SendGossipMenuFor(player, DEFAULT_GOSSIP_MESSAGE, item->GetGUID());
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user