Esempio n. 1
0
        void Apply(AuraEffect aurEff, AuraEffectHandleModes mode)
        {
            List <TempSummon> minions = new List <TempSummon>();

            GetTarget().GetAllMinionsByEntry(minions, (uint)Global.SpellMgr.GetSpellInfo(SpellIds.RingOfFrostSummon, GetCastDifficulty()).GetEffect(0).MiscValue);

            // Get the last summoned RoF, save it and despawn older ones
            foreach (var summon in minions)
            {
                TempSummon ringOfFrost = GetRingOfFrostMinion();
                if (ringOfFrost)
                {
                    if (summon.GetTimer() > ringOfFrost.GetTimer())
                    {
                        ringOfFrost.DespawnOrUnsummon();
                        _ringOfFrostGUID = summon.GetGUID();
                    }
                    else
                    {
                        summon.DespawnOrUnsummon();
                    }
                }
                else
                {
                    _ringOfFrostGUID = summon.GetGUID();
                }
            }
        }
Esempio n. 2
0
        void Apply(AuraEffect aurEff, AuraEffectHandleModes mode)
        {
            List <TempSummon> MinionList = new List <TempSummon>();

            GetTarget().GetAllMinionsByEntry(MinionList, (uint)GetSpellInfo().GetEffect(0).MiscValue);

            // Get the last summoned RoF, save it and despawn older ones
            foreach (var creature in MinionList)
            {
                TempSummon summon = creature.ToTempSummon();

                if (ringOfFrost && summon)
                {
                    if (summon.GetTimer() > ringOfFrost.GetTimer())
                    {
                        ringOfFrost.DespawnOrUnsummon();
                        ringOfFrost = summon;
                    }
                    else
                    {
                        summon.DespawnOrUnsummon();
                    }
                }
                else if (summon)
                {
                    ringOfFrost = summon;
                }
            }
        }