Exemple #1
0
        public override void UpdateAbnormalEffect()
        {
            if (Owner?.Party == null)
            {
                return;
            }

            if (Effects.Count == 0)
            {
                return;
            }

            PartySpelled          p      = new PartySpelled(this);
            List <AbnormalEffect> nulled = new List <AbnormalEffect>();

            lock (Effects)
            {
                foreach (AbnormalEffect ei in Effects.Where(ei => ei != null))
                {
                    if (ei.Active == 1)
                    {
                        p.AddIcon(ei.Id, ei.Lvl, ei.GetTime());
                    }
                    else
                    {
                        nulled.Add(ei);
                    }
                }

                nulled.ForEach(ei => Effects.Remove(ei));
            }

            nulled.Clear();
            Owner.Party.BroadcastToMembers(p);
        }
Exemple #2
0
        public override void updateAbnormalEffect()
        {
            if (Owner == null || Owner.Party == null)
            {
                return;
            }

            if (_effects.Count == 0)
            {
                return;
            }

            PartySpelled          p      = new PartySpelled(this);
            List <AbnormalEffect> nulled = new List <AbnormalEffect>();

            foreach (AbnormalEffect ei in _effects)
            {
                if (ei != null)
                {
                    if (ei.active == 1)
                    {
                        p.addIcon(ei.id, ei.lvl, ei.getTime());
                    }
                    else
                    {
                        nulled.Add(ei);
                    }
                }
            }

            lock (_effects)
                foreach (AbnormalEffect ei in nulled)
                {
                    _effects.Remove(ei);
                }

            nulled.Clear();
            Owner.Party.broadcastToMembers(p);
        }