本文整理汇总了C++中ProcEventInfo::GetActionTarget方法的典型用法代码示例。如果您正苦于以下问题:C++ ProcEventInfo::GetActionTarget方法的具体用法?C++ ProcEventInfo::GetActionTarget怎么用?C++ ProcEventInfo::GetActionTarget使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ProcEventInfo
的用法示例。
在下文中一共展示了ProcEventInfo::GetActionTarget方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: CheckProc
bool CheckProc(ProcEventInfo& eventInfo)
{
if (!eventInfo.GetActionTarget())
return false;
if (eventInfo.GetActionTarget()->HasAura(SPELL_PALADIN_BEACON_OF_LIGHT, eventInfo.GetActor()->GetGUID()))
return false;
return true;
}
示例2: HandleProc
void HandleProc(AuraEffect const* aurEff, ProcEventInfo& eventInfo)
{
PreventDefaultAction();
Unit* caster = eventInfo.GetActionTarget();
int32 bp = CalculatePct(static_cast<int32>(caster->GetMaxPower(POWER_MANA)), aurEff->GetAmount());
caster->CastCustomSpell(SPELL_MAGE_MAGIC_ABSORPTION_MANA, SPELLVALUE_BASE_POINT0, bp, caster, true, nullptr, aurEff);
}
示例3: HandleCheckProc
bool HandleCheckProc(ProcEventInfo &eventInfo)
{
if (!canProc)
return false;
auto const caster = eventInfo.GetActionTarget();
if (caster && caster->HasAura(SPELL_ULTIMATE_POWER))
return false;
auto const target = eventInfo.GetActor();
if (!target || target->GetTypeId() != TYPEID_PLAYER)
return false;
return true;
}
示例4: OnProc
void OnProc(constAuraEffectPtr aurEff, ProcEventInfo& eventInfo)
{
PreventDefaultAction();
if (!GetCaster())
return;
if (!eventInfo.GetHealInfo() || !eventInfo.GetHealInfo()->GetHeal())
return;
Unit* unitTarget = eventInfo.GetActionTarget();
Player* plr = GetCaster()->ToPlayer();
if (!unitTarget || !plr)
return;
float Mastery = plr->GetFloatValue(PLAYER_MASTERY) * 1.25f / 100.0f;
int32 bp = (Mastery * eventInfo.GetHealInfo()->GetHeal()) / 6;
bp += unitTarget->GetRemainingPeriodicAmount(plr->GetGUID(), SPELL_PRIEST_ECHO_OF_LIGHT, SPELL_AURA_PERIODIC_HEAL);
plr->CastCustomSpell(unitTarget, SPELL_PRIEST_ECHO_OF_LIGHT, &bp, NULL, NULL, true);
}
示例5: CheckProc
bool CheckProc(ProcEventInfo& eventInfo)
{
if (eventInfo.GetActionTarget()->GetEntry() != NPC_XS013_SCRAPBOT)
return false;
return true;
}
示例6: HandleEffectProc
void HandleEffectProc(AuraEffect const* aurEff, ProcEventInfo& eventInfo)
{
PreventDefaultAction();
Unit* attacker = eventInfo.GetActor();
int32 damage = int32(attacker->GetTotalAttackPowerValue(BASE_ATTACK) * 0.125f / 2600 * attacker->GetBaseAttackTime(BASE_ATTACK));
attacker->CastCustomSpell(SPELL_SHAMAN_FLAMETONGUE_ATTACK, SPELLVALUE_BASE_POINT0, damage, eventInfo.GetActionTarget(), TRIGGERED_FULL_MASK, nullptr, aurEff);
}
示例7: CheckProc
bool CheckProc(ProcEventInfo& eventInfo)
{
if (eventInfo.GetActionTarget()->GetAura(SPELL_PALADIN_BEACON_OF_LIGHT_MARKER, GetCasterGUID()))
return false;
return true;
}
示例8: CheckProc
bool CheckProc(ProcEventInfo& eventInfo)
{
return eventInfo.GetActor() == eventInfo.GetActionTarget();
}
示例9: CheckProc
bool CheckProc(ProcEventInfo& eventInfo)
{
Unit* actionTarget = eventInfo.GetActionTarget();
return actionTarget && actionTarget->GetCreatureType() == CREATURE_TYPE_UNDEAD && actionTarget->GetOwner();
}