本文整理汇总了C++中GossipMenu类的典型用法代码示例。如果您正苦于以下问题:C++ GossipMenu类的具体用法?C++ GossipMenu怎么用?C++ GossipMenu使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了GossipMenu类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: GossipHello
void GossipHello(Object* pObject, Player* pPlayer)
{
GossipMenu* Menu;
objmgr.CreateGossipMenuForPlayer(&Menu, pObject->GetGUID(), 12252, pPlayer);
if(pPlayer->HasQuest(11532) || pPlayer->HasQuest(11533))
Menu->AddItem(ICON_CHAT, pPlayer->GetSession()->LocalizedGossipOption(466), 1); // Speaking of action, I've been ordered to undertake an air strike.
if(pPlayer->HasQuest(11543) || pPlayer->HasQuest(11542))
Menu->AddItem(ICON_CHAT, pPlayer->GetSession()->LocalizedGossipOption(467), 2); // I need to intercept the Dawnblade reinforcements.
Menu->SendTo(pPlayer);
}
示例2: GossipHello
void GossipHello(Object* pObject, Player * Plr, bool AutoSend)
{
GossipMenu * Menu;
QuestLogEntry * en = Plr->GetQuestLogForEntry( 8304 );
objmgr.CreateGossipMenuForPlayer(&Menu, pObject->GetGUID(), 7736, Plr);
if ( en && en->GetMobCount(1) < en->GetQuest()->required_mobcount[1] )
Menu->AddItem(0, "Hello, Rutgar. The Commander has sent me here to gather some information about his missing wife.", 3);
if(AutoSend)
Menu->SendTo(Plr);
}
示例3: GossipHello
void GossipHello(Object* pObject, Player* pPlayer)
{
GossipMenu* Menu;
objmgr.CreateGossipMenuForPlayer(&Menu, pObject->GetGUID(), 12252, pPlayer);
if(pPlayer->GetQuestLogForEntry(11532) || pPlayer->GetQuestLogForEntry(11533))
Menu->AddItem(0, "Speaking of action, I've been ordered to undertake an air strike.", 1);
if(pPlayer->GetQuestLogForEntry(11543) || pPlayer->GetQuestLogForEntry(11542))
Menu->AddItem(0, "I need to intercept the Dawnblade reinforcements.", 2);
Menu->SendTo(pPlayer);
}
示例4: GossipHello
void GossipHello(Object* pObject, Player* Plr, bool AutoSend)
{
GossipMenu *Menu;
objmgr.CreateGossipMenuForPlayer(&Menu, pObject->GetGUID(), 13349, Plr);
Menu->AddItem(0, "Arena Vendor" , 1);
Menu->AddItem(0, "Arena Battlemaster" , 2);
Menu->AddItem(0, "Black Market" , 3);
Menu->AddItem(0, "Exit of Dalaran" , 4);
if(AutoSend)
Menu->SendTo(Plr);
}
示例5: GossipHello
void GossipHello(Object* pObject, Player* Plr, bool AutoSend)
{
GossipMenu *Menu;
switch(pObject->GetEntry())
{
case TAXI_BRACK:
{
objmgr.CreateGossipMenuForPlayer(&Menu, pObject->GetGUID(), 40002, Plr);
if (Plr->GetQuestLogForEntry(10162) || Plr->GetQuestLogForEntry(10347))
{
Menu->AddItem(0, GOSSIP_MISSIONA, 1);
}
if (Plr->GetQuestLogForEntry(10129))
{
Menu->AddItem(0, GOSSIP_MISSIONB,2);
}
Menu->AddItem(0, GOSSIP_SPINERIDGE, 3);
}break;
case TAXI_DABIREE:
{
objmgr.CreateGossipMenuForPlayer(&Menu, pObject->GetGUID(), 40002, Plr);
if ( Plr->GetQuestLogForEntry(10146) )
{
Menu->AddItem(0, GOSSIP_MISSIONB,2);
}
Menu->AddItem(0, GOSSIP_SHATTPOINT,4);
}break;
case TAXI_WINDBELLOW:
{
objmgr.CreateGossipMenuForPlayer(&Menu, pObject->GetGUID(), 40002, Plr);
if ( Plr->GetQuestLogForEntry(10163) || Plr->GetQuestLogForEntry(10346) )
{
Menu->AddItem( 0, GOSSIP_MISSIONA, 1);
}
Menu->AddItem( 0, GOSSIP_HONORPOINT, 5);
}break;
case TAXI_LEAFBEARD:
{
objmgr.CreateGossipMenuForPlayer(&Menu, pObject->GetGUID(), 40002, Plr);
Menu->AddItem( 0, GOSSIP_SHATTPOINT, 4);
}break;
}
if(AutoSend)
Menu->SendTo(Plr);
}
示例6: GossipHello
void GossipHello(Object* pObject, Player * plr, bool AutoSend)
{
GossipMenu *Menu;
if(plr->getClass() == DRUID && plr->getRace() == RACE_TAUREN){
objmgr.CreateGossipMenuForPlayer(&Menu, pObject->GetGUID(), 4918, plr);
Menu->AddItem( 0, GOSSIP_BUNTHEN_PLAINSWIND, 1);
}else if(plr->getClass() == DRUID && plr->getRace() == RACE_NIGHTELF){
objmgr.CreateGossipMenuForPlayer(&Menu, pObject->GetGUID(), 4917, plr);
}else{
objmgr.CreateGossipMenuForPlayer(&Menu, pObject->GetGUID(), 4916, plr);
};
if(AutoSend)
Menu->SendTo(plr);
}
示例7: GossipHello
void GossipHello(Object* pObject, Player* plr, bool AutoSend)
{
GossipMenu *Menu;
objmgr.CreateGossipMenuForPlayer(&Menu, pObject->GetGUID(), 12227, plr);
#ifdef USE_THE_STATUS
Menu->AddItem( 0, GOSSIP_EXARCH_NASUUN_1, 1); // this is the status
Menu->AddItem( 0, GOSSIP_EXARCH_NASUUN_2, 2);
#else
Menu->AddItem( 0, GOSSIP_EXARCH_NASUUN_2, 3);
#endif
if(AutoSend)
Menu->SendTo(plr);
}
示例8: GossipHello
void GossipHello(Object* pObject, Player* plr)
{
GossipMenu* Menu;
objmgr.CreateGossipMenuForPlayer(&Menu, pObject->GetGUID(), 14500, plr);
if (plr->HasFinishedQuest(13668) || plr->HasQuest(13668) || plr->HasFinishedQuest(13667) || plr->HasQuest(13667))
{
Menu->SendTo(plr);
}
else
{
Menu->AddItem(GOSSIP_ICON_CHAT, plr->GetSession()->LocalizedGossipOption(446), 1); // I'll take the flight.
Menu->SendTo(plr);
}
}
示例9: GossipHello
void GossipHello(Object* pObject, Player* plr)
{
GossipMenu* Menu;
objmgr.CreateGossipMenuForPlayer(&Menu, pObject->GetGUID(), 14500, plr);
if(plr->HasFinishedQuest(13668) || plr->GetQuestLogForEntry(13668) || plr->HasFinishedQuest(13667) || plr->GetQuestLogForEntry(13667))
{
Menu->SendTo(plr);
}
else
{
Menu->AddItem(0, "I'll take the flight." ,1);
Menu->SendTo(plr);
}
}
示例10: GossipSelectOption
void GossipSelectOption(Object* pObject, Player* plr, uint32 Id, uint32 IntId, const char* Code)
{
GossipMenu* Menu;
if(!pObject->IsCreature())
return;
Creature* pCreature = TO_CREATURE(pObject);
switch(IntId)
{
case 1:
objmgr.CreateGossipMenuForPlayer(&Menu, pCreature->GetGUID(), 60014, plr); // Silas, why is most everything at the fair free? How do you make a profit?
Menu->SendTo(plr);
break;
}
}
示例11: GossipSelectOption
void GossipSelectOption(Object* pObject, Player * plr, uint32 Id, uint32 IntId, const char * Code)
{
GossipMenu * Menu;
Creature * pCreature = (pObject->GetTypeId()==TYPEID_UNIT)?((Creature*)pObject):NULL;
if(pObject->GetTypeId()!=TYPEID_UNIT)
return;
switch(IntId)
{
case 1:
objmgr.CreateGossipMenuForPlayer(&Menu, pCreature->GetGUID(), 60014, plr); // Silas, why is most everything at the fair free? How do you make a profit?
Menu->SendTo(plr);
break;
}
}
示例12: GossipHello
void GossipHello(Object* pObject, Player* plr)
{
if (!plr)
return;
GossipMenu* Menu;
Creature* highchief = static_cast<Creature*>(pObject);
if (highchief == NULL)
return;
objmgr.CreateGossipMenuForPlayer(&Menu, pObject->GetGUID(), 1, plr);
if (plr->HasQuest(9663))
Menu->AddItem(GOSSIP_ICON_CHAT, plr->GetSession()->LocalizedGossipOption(454), 1); // Warn him
Menu->SendTo(plr);
}
示例13: GossipHello
void GossipHello(Object* pObject, Player* plr)
{
if(!plr)
return;
GossipMenu* Menu;
Creature* doctor = TO_CREATURE(pObject);
if(doctor == NULL)
return;
objmgr.CreateGossipMenuForPlayer(&Menu, pObject->GetGUID(), 1, plr);
if(plr->HasQuest(10201) && plr->GetItemInterface()->GetItemCount(28500, 0))
Menu->AddItem(ICON_CHAT, plr->GetSession()->LocalizedGossipOption(497), 1); // Try this
Menu->SendTo(plr);
}
示例14: GossipHello
void GossipHello(Object* pObject, Player* plr)
{
if (!plr)
return;
GossipMenu* Menu;
Creature* Prisoner12 = TO_CREATURE(pObject);
if (Prisoner12 == nullptr)
return;
objmgr.CreateGossipMenuForPlayer(&Menu, pObject->GetGUID(), 1, plr);
if (plr->HasQuest(9164))
Menu->AddItem(ICON_CHAT, plr->GetSession()->LocalizedGossipOption(462), 1); // Release Him.
Menu->SendTo(plr);
}
示例15: GossipHello
void GossipHello(ObjectPointer pObject, PlayerPointer plr, bool AutoSend)
{
uint32 Team = plr->GetTeam();
if(Team > 1) Team = 1;
GossipMenu *Menu;
objmgr.CreateGossipMenuForPlayer(&Menu, pObject->GetGUID(), Team == 0 ? 9433 : 9750, plr);
if( pObject->GetUInt32Value(UNIT_NPC_FLAGS) & UNIT_NPC_FLAG_VENDOR )
Menu->AddItem( 0, "I would like to browse your goods.", 3 );
if( ZMg_superiorTeam == Team && ZMCityOwners != Team && !plr->HasAura( Team == 0 ? 32430 : 32431 ) )
Menu->AddItem( 0, Team == 0 ? "Give me the flag, I'll take it to the Central Tower for the glory of the Alliance!" : "Give me the flag, I'll take it to the Central Tower for the glory of the Horde!" , Team+1);
if(AutoSend)
Menu->SendTo(plr);
}