本文整理汇总了C++中PlayerPointer::getLevel方法的典型用法代码示例。如果您正苦于以下问题:C++ PlayerPointer::getLevel方法的具体用法?C++ PlayerPointer::getLevel怎么用?C++ PlayerPointer::getLevel使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类PlayerPointer
的用法示例。
在下文中一共展示了PlayerPointer::getLevel方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: OnActivate
void OnActivate(PlayerPointer pPlayer)
{
if(pPlayer->getLevel() >= 70)
{
//pPlayer->SafeTeleport(530, 4080, 12803.374023f, -6907.089844f, 41.114765f, 2.251736f);
pPlayer->CastSpell(pPlayer, dbcSpell.LookupEntry(44870), true);
}
else if(pPlayer->getLevel() <= 69)
{
pPlayer->BroadcastMessage("You must be level 70 to use this!");
}
}
示例2: OnActivate
void OnActivate(PlayerPointer pPlayer)
{
if(pPlayer->HasFinishedQuest(7761) && pPlayer->getLevel() >= 58 && pPlayer->InGroup() == true)
{
pPlayer->SafeTeleport(469, 0, -7672.939941f, -1107.307617f, 396.649994f, 0.616532f);
}
else if(pPlayer->getLevel() <= 57 || pPlayer->HasFinishedQuest(7761) == false)
{
pPlayer->BroadcastMessage("You need to be level 58 and have completed the quest : Blackhand's Command");
}
else if(pPlayer->HasFinishedQuest(7761) == true && pPlayer->getLevel() >= 58 && pPlayer->InGroup() == false)
{
pPlayer->BroadcastMessage("You need to be in a raid group to be able to enter this instance");
}
}
示例3: addMessage
void Antispam::addMessage(const std::string& msg, uint32 type, PlayerPointer from, PlayerPointer to)
{
if (!m_enabled || from->isGameMaster())
return;
if (from->getLevel() > m_restrictionLevel)
return;
uint8 chatType = getConvertedChatType(type);
if (chatType == A_CHAT_TYPE_MAX)
return;
if (m_chatMask && (m_chatMask & (1 << chatType)) == 0)
return;
MessageBlock messageBlock;
messageBlock.fromGuid = from->GetObjectGuid();
messageBlock.fromAccount = from->GetSession()->GetAccountId();
messageBlock.toGuid = (to && !m_mergeAllWhispers ? to->GetObjectGuid() : ObjectGuid());
messageBlock.msg = msg;
messageBlock.type = chatType;
messageBlock.count = 1;
messageBlock.time = time(nullptr);
m_messageQueue.push(messageBlock);
}
示例4: HookGenerateLoot
void ArathiBasin::HookGenerateLoot(PlayerPointer plr, CorpsePointer pCorpse)
{
// add some money
float gold = ((float(plr->getLevel()) / 2.5f)+1) * 100.0f; // fix this later
gold *= sWorld.getRate(RATE_MONEY);
// set it
pCorpse->m_loot.gold = float2int32(gold);
}
示例5: GossipSelectOption
void GossipSelectOption(ObjectPointer pObject, PlayerPointer plr, uint32 Id, uint32 IntId, const char * Code)
{
GossipMenu * Menu;
switch (IntId) // switch and case 0 can be deleted, but I added it, because in future maybe we will have to expand script with more options.
{
case 0:
GossipHello(pObject, plr, true);
break;
case 1:
{
if (!plr->_HasSkillLine(164) || plr->_GetSkillLineCurrent(164, false) < 300)
{
//pCreature->SendChatMessage(CHAT_MSG_MONSTER_SAY, LANG_UNIVERSAL, "Only skilled blacksmiths can obtain this knowledge." );
SendQuickMenu(20001);
}
else if (!plr->HasSpell(9787))
{
//pCreature->SendChatMessage(CHAT_MSG_MONSTER_SAY, LANG_UNIVERSAL, "You need to know Weaponsmith first to learn anything more from me." );
SendQuickMenu(20002);
}
else if (plr->HasSpell(17040))
{
//pCreature->SendChatMessage(CHAT_MSG_MONSTER_SAY, LANG_UNIVERSAL, "You already know that." );
SendQuickMenu(20003);
}
else if (plr->HasSpell(17041) || plr->HasSpell(17039) || plr->HasSpell(9788))
{
//pCreature->SendChatMessage(CHAT_MSG_MONSTER_SAY, LANG_UNIVERSAL, "You already know one specialization." );
SendQuickMenu(20004);
}
else
{
if ( plr->GetUInt32Value(PLAYER_FIELD_COINAGE) < 600 )
{
//pCreature->SendChatMessage(CHAT_MSG_MONSTER_SAY, LANG_UNIVERSAL, "You need 6 silver coins to learn this skill.");
SendQuickMenu(20005);
}
else
{
//pCreature->SendChatMessage(CHAT_MSG_MONSTER_SAY, LANG_UNIVERSAL, "Make good use of this knowledge." );
SendQuickMenu(20006);
CreaturePointer Trainer = TO_CREATURE(pObject);
Trainer->CastSpell(plr, 39099, true);
int32 gold = plr->GetUInt32Value(PLAYER_FIELD_COINAGE);
plr->SetUInt32Value(PLAYER_FIELD_COINAGE, gold - 600);
}
}
}break;
case 2:
{
if (!plr->HasSpell(17040))
{
SendQuickMenu(20007);
}
else if ((plr->GetUInt32Value(PLAYER_FIELD_COINAGE) < 250000 && plr->getLevel() <= 50) ||
(plr->GetUInt32Value(PLAYER_FIELD_COINAGE) < 500000 && plr->getLevel() > 50 && plr->getLevel() <= 65) ||
(plr->GetUInt32Value(PLAYER_FIELD_COINAGE) < 1000000 && plr->getLevel() > 65))
{
SendQuickMenu(20008);
}
else
{
int32 unlearnGold;
if (plr->getLevel() <= 50)
unlearnGold = 250000;
if (plr->getLevel() > 50 && plr->getLevel() <= 65)
unlearnGold = 500000;
if (plr->getLevel() > 65)
unlearnGold = 1000000;
plr->SetUInt32Value(PLAYER_FIELD_COINAGE, plr->GetUInt32Value(PLAYER_FIELD_COINAGE) - unlearnGold);
plr->removeSpell(17040, false, false, 0);
SendQuickMenu(20009);
}
}break;
}
}