本文整理汇总了C++中GetCaster函数的典型用法代码示例。如果您正苦于以下问题:C++ GetCaster函数的具体用法?C++ GetCaster怎么用?C++ GetCaster使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了GetCaster函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: HandleDummy
void HandleDummy(SpellEffIndex effIndex)
{
GetCaster()->CastSpell(GetTargetUnit(),spell_trigger,false);
}
开发者ID:Bootz,项目名称:TrilliumEMU-1,代码行数:4,代码来源:boss_theralion_and_valiona.cpp
示例2: OnCast
void OnCast()
{
if (GetCaster()->GetTypeId() != TYPEID_PLAYER)
return;
SpellEntry const* spell = sSpellStore.LookupEntry(SPELL_FRENZIED_BLOODTHIRST);
spell = sSpellMgr->GetSpellForDifficultyFromSpell(spell, GetCaster());
GetCaster()->RemoveAura(spell->Id, 0, 0, AURA_REMOVE_BY_ENEMY_SPELL);
GetCaster()->CastSpell(GetCaster(), SPELL_ESSENCE_OF_THE_BLOOD_QUEEN_PLR, true);
// Presence of the Darkfallen buff on Blood-Queen
if (GetCaster()->GetMap()->IsHeroic())
GetCaster()->CastSpell(GetCaster(), SPELL_PRESENCE_OF_THE_DARKFALLEN, true);
// Shadowmourne questline
if (GetCaster()->ToPlayer()->GetQuestStatus(QUEST_BLOOD_INFUSION) == QUEST_STATUS_INCOMPLETE)
{
if (Aura* aura = GetCaster()->GetAura(SPELL_GUSHING_WOUND))
{
if (aura->GetStackAmount() == 3)
{
GetCaster()->CastSpell(GetCaster(), SPELL_THIRST_QUENCHED, true);
GetCaster()->RemoveAura(aura);
}
else
GetCaster()->CastSpell(GetCaster(), SPELL_GUSHING_WOUND, true);
}
}
if (InstanceScript* instance = GetCaster()->GetInstanceScript())
if (Creature* bloodQueen = ObjectAccessor::GetCreature(*GetCaster(), instance->GetData64(DATA_BLOOD_QUEEN_LANA_THEL)))
bloodQueen->AI()->SetGUID(GetHitUnit()->GetGUID(), GUID_VAMPIRE);
}
开发者ID:Craghorn,项目名称:TrinityCore,代码行数:30,代码来源:boss_blood_queen_lana_thel.cpp
示例3: FilterTargets
void FilterTargets(std::list<Unit*>& unitList)
{
unitList.remove_if(PactOfTheDarkfallenCheck(true));
unitList.push_back(GetCaster());
}
开发者ID:Craghorn,项目名称:TrinityCore,代码行数:5,代码来源:boss_blood_queen_lana_thel.cpp
示例4: CheckProc
bool CheckProc(ProcEventInfo& eventInfo)
{
return eventInfo.GetProcTarget() == GetCaster();
}
开发者ID:Exodius,项目名称:ArkCORE-NG,代码行数:4,代码来源:spell_priest.cpp
示例5: HandleEffectScriptEffect
void HandleEffectScriptEffect(SpellEffIndex /*effIndex*/)
{
// Refresh Shadow Word: Pain on target
if (Unit* unitTarget = GetHitUnit())
if (AuraEffect* aur = unitTarget->GetAuraEffect(SPELL_AURA_PERIODIC_DAMAGE, SPELLFAMILY_PRIEST, 0x8000, 0, 0, GetCaster()->GetGUID()))
aur->GetBase()->RefreshDuration();
}
开发者ID:Exodius,项目名称:ArkCORE-NG,代码行数:7,代码来源:spell_priest.cpp
示例6: HandleEffectApply
void HandleEffectApply(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/)
{
Unit* target = GetTarget();
if (Unit* caster = GetCaster())
caster->CastSpell(target, PALADIN_SPELL_BLESSING_OF_SANCTUARY_BUFF, true);
}
开发者ID:Darkelmo,项目名称:LivingLegend,代码行数:6,代码来源:spell_paladin.cpp
示例7: HandleScriptEffect
void HandleScriptEffect(SpellEffIndex /*effIndex*/)
{
// Divine Plea
if (Aura* aura = GetCaster()->GetAura(PALADIN_SPELL_DIVINE_PLEA))
aura->RefreshDuration();
}
开发者ID:Darkelmo,项目名称:LivingLegend,代码行数:6,代码来源:spell_paladin.cpp
示例8: HandleDummy
void HandleDummy(SpellEffIndex effIndex)
{
PreventHitDefaultEffect(effIndex);
GetCaster()->CastSpell(GetHitUnit(), SPELL_VILE_GAS_TRIGGER_SUMMON);
}
开发者ID:DSlayerMan,项目名称:DraenorCore,代码行数:5,代码来源:boss_rotface.cpp
示例9: HandleUpdatePeriodic
void HandleUpdatePeriodic(AuraEffect* aurEff)
{
aurEff->CalculatePeriodic(GetCaster());
}
开发者ID:FirstCore,项目名称:GaryMoveOut_4.3.4,代码行数:4,代码来源:shadowfang_keep.cpp
示例10: NotifyTargets
void NotifyTargets()
{
if (Creature* caster = GetCaster()->ToCreature())
if (Unit* target = GetHitUnit())
caster->AI()->Talk(EMOTE_MUTATED_INFECTION, target);
}
开发者ID:DSlayerMan,项目名称:DraenorCore,代码行数:6,代码来源:boss_rotface.cpp
示例11: FilterTargets
void FilterTargets(std::list<Unit*>& unitList)
{
unitList.remove_if (OrientationCheck(GetCaster()));
}
开发者ID:H4D3S,项目名称:DarkmoonCore-Cataclysm,代码行数:4,代码来源:boss_argent_challenge.cpp
示例12: Load
bool Load() {
absorbPct = SpellMgr::CalculateSpellEffectAmount(GetSpellProto(),
EFFECT_0, GetCaster());
return true;
}
开发者ID:dsstest,项目名称:ArkCORE,代码行数:5,代码来源:spell_rogue.cpp
示例13: FilterTargetsInitial
void FilterTargetsInitial(std::list<Unit*>& unitList)
{
unitList.remove_if (DistanceCheck(GetCaster()));
sharedUnitList = unitList;
}
开发者ID:Bootz,项目名称:TrueBlood-Dev-Server,代码行数:5,代码来源:boss_bronjahm.cpp
示例14: HandleScriptEffect
void HandleScriptEffect(SpellEffIndex /*effIndex*/)
{
Unit* caster = GetCaster();
caster->CastSpell(caster, RAND(SUMMON_ANGRY_KVALDIR, SUMMON_NORTH_SEA_MAKO, SUMMON_NORTH_SEA_THRESHER, SUMMON_NORTH_SEA_BLUE_SHARK));
}
开发者ID:Anubisss,项目名称:ngrealmd,代码行数:5,代码来源:spell_quest.cpp
示例15: HandleDummy
void HandleDummy(SpellEffIndex /*effIndex*/)
{
Unit* caster = GetCaster();
uint32 spellId = roll_chance_i(50) ? SPELL_CREATE_RESONATING_SKULL : SPELL_CREATE_BONE_DUST;
caster->CastSpell(caster, spellId, true, NULL);
}
开发者ID:Anubisss,项目名称:ngrealmd,代码行数:6,代码来源:spell_quest.cpp
示例16: FilterTargets
void FilterTargets(std::list<WorldObject*>& unitList)
{
unitList.remove(GetCaster());
}
开发者ID:Exodius,项目名称:ArkCORE-NG,代码行数:4,代码来源:spell_priest.cpp
示例17: Load
bool Load()
{
return GetCaster()->GetTypeId() == TYPEID_PLAYER && GetCastItem();
}
开发者ID:Anubisss,项目名称:ngrealmd,代码行数:4,代码来源:spell_quest.cpp
示例18: Load
bool Load() override
{
if (GetCaster() && GetCaster()->GetTypeId() == TYPEID_UNIT && GetCaster()->ToCreature()->GetIAmABot()) return true;
return GetCaster() && GetCaster()->GetTypeId() == TYPEID_PLAYER;
}
开发者ID:Exodius,项目名称:ArkCORE-NG,代码行数:5,代码来源:spell_priest.cpp
示例19: Load
bool Load()
{
return GetCaster()->GetTypeId() == TYPEID_UNIT;
}
开发者ID:Albis,项目名称:TrinityCore,代码行数:4,代码来源:boss_festergut.cpp
示例20: HandleDummy
void HandleDummy()
{
if (GetHitUnit()->GetTypeId() == TYPEID_PLAYER)
GetCaster()->CastSpell(GetHitUnit(), SPELL_TWILIGHT_BLOODBOLT, true);
}
开发者ID:Craghorn,项目名称:TrinityCore,代码行数:5,代码来源:boss_blood_queen_lana_thel.cpp
注:本文中的GetCaster函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论