Ejemplo n.º 1
0
        public override bool Use(Character user)
        {
            GOSummoningRitualEntry entry = (GOSummoningRitualEntry)this.m_go.Entry;

            if (user == null)
            {
                return(false);
            }
            Character character = user;
            Unit      owner     = this.m_go.Owner;

            if (entry.CastersGrouped && !owner.IsAlliedWith((IFactionMember)character) ||
                this.Users.Contains(character))
            {
                return(false);
            }
            this.Users.Add(character);
            if (this.Users.Count >= entry.CasterCount - 1)
            {
                this.TriggerSpell(owner, this.Target);
                for (int index = 0; index < this.Users.Count; ++index)
                {
                    this.Users[index].m_currentRitual = (SummoningRitualHandler)null;
                }
                this.Users.Clear();
            }

            return(true);
        }
Ejemplo n.º 2
0
        public override bool Use(Character user)
        {
            GOSummoningRitualEntry entry = (GOSummoningRitualEntry)m_go.Entry;

            if (user == null)
            {
                return(false);
            }
            Character character = user;
            Unit      owner     = m_go.Owner;

            if (entry.CastersGrouped && !owner.IsAlliedWith(character) ||
                Users.Contains(character))
            {
                return(false);
            }
            Users.Add(character);
            if (Users.Count >= entry.CasterCount - 1)
            {
                TriggerSpell(owner, Target);
                for (int index = 0; index < Users.Count; ++index)
                {
                    Users[index].m_currentRitual = null;
                }
                Users.Clear();
            }

            return(true);
        }