当前位置: 首页>>代码示例>>C++>>正文


C++ GetCaster函数代码示例

本文整理汇总了C++中GetCaster函数的典型用法代码示例。如果您正苦于以下问题:C++ GetCaster函数的具体用法?C++ GetCaster怎么用?C++ GetCaster使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了GetCaster函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的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


注:本文中的GetCaster函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。