本文整理汇总了C++中BossSpellWorker::timedQuery方法的典型用法代码示例。如果您正苦于以下问题:C++ BossSpellWorker::timedQuery方法的具体用法?C++ BossSpellWorker::timedQuery怎么用?C++ BossSpellWorker::timedQuery使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类BossSpellWorker
的用法示例。
在下文中一共展示了BossSpellWorker::timedQuery方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: UpdateAI
void UpdateAI(const uint32 uiDiff)
{
if (bsw->timedQuery(SPELL_SLIME_POOL_2,uiDiff)) {
m_Size = m_Size*1.036;
me->SetFloatValue(OBJECT_FIELD_SCALE_X, m_Size);
}
// Override especially for clean core
if (m_Size >= 5.0f) me->ForcedDespawn();
}
示例2: UpdateAI
void UpdateAI(const uint32 uiDiff)
{
if (!m_creature->SelectHostileTarget() || !m_creature->getVictim())
return;
bsw->timedCast(SPELL_FEL_FIREBALL, uiDiff);
bsw->timedCast(SPELL_FEL_LIGHTING, uiDiff);
if (bsw->timedQuery(SPELL_INCINERATE_FLESH, uiDiff))
{
if (Unit* pTarget = SelectUnit(SELECT_TARGET_RANDOM,1))
{
DoScriptText(-1713522,m_creature,pTarget);
bsw->doCast(SPELL_INCINERATE_FLESH,pTarget);
}
}
if (bsw->timedQuery(SPELL_LEGION_FLAME_1, uiDiff))
{
DoScriptText(-1713518,m_creature);
bsw->doCast(SPELL_LEGION_FLAME_1);
};
if (bsw->timedQuery(SPELL_INFERNAL_ERUPTION, uiDiff) && m_volcanoCount > 0)
{
DoScriptText(-1713520,m_creature);
if (bsw->doCast(NPC_INFERNAL_VOLCANO) == CAST_OK) --m_volcanoCount;
};
if (bsw->timedQuery(SPELL_NETHER_PORTAL, uiDiff) &&
m_portalsCount > 0 && m_creature->GetHealthPercent() <= 90.0f)
{
DoScriptText(-1713519,m_creature);
if (bsw->doCast(NPC_NETHER_PORTAL) == CAST_OK) --m_portalsCount;
};
DoMeleeAttackIfReady();
}
示例3: UpdateAI
void UpdateAI(const uint32 uiDiff)
{
if (!m_creature->SelectHostileTarget() || !m_creature->getVictim())
return;
bsw->timedCast(SPELL_IMPALE, uiDiff);
bsw->timedCast(SPELL_STAGGERING_STOMP, uiDiff);
if (bsw->timedQuery(SUMMON_SNOBOLD, uiDiff) && SnoboldsCount > 0 )
{
bsw->doCast(SUMMON_SNOBOLD);
DoScriptText(-1713601,m_creature);
--SnoboldsCount;
};
DoMeleeAttackIfReady();
}