コード例 #1
0
ファイル: Aura.cs プロジェクト: 0xFh/Asda2-Project
        private void Activate()
        {
            if (m_spell.IsProc && CasterUnit != null && m_spell.ProcHandlers != null)
            {
                foreach (ProcHandlerTemplate procHandler in m_spell.ProcHandlers)
                {
                    Owner.AddProcHandler(new ProcHandler(CasterUnit, Owner, procHandler));
                }
            }

            if (m_spell.IsAuraProcHandler)
            {
                m_auras.Owner.AddProcHandler(this);
            }
            if (m_spell.IsAreaAura && Owner.EntityId == CasterReference.EntityId)
            {
                AreaAura areaAura = m_auras.Owner.GetAreaAura(m_spell);
                if (areaAura != null)
                {
                    areaAura.Start(m_controller, !HasTimeout);
                }
            }

            ApplyNonPeriodicEffects();
            SendToClient();
        }
コード例 #2
0
        private void Activate()
        {
            if (this.m_spell.IsProc && this.CasterUnit != null && this.m_spell.ProcHandlers != null)
            {
                foreach (ProcHandlerTemplate procHandler in this.m_spell.ProcHandlers)
                {
                    this.Owner.AddProcHandler((IProcHandler) new ProcHandler(this.CasterUnit, this.Owner, procHandler));
                }
            }

            if (this.m_spell.IsAuraProcHandler)
            {
                this.m_auras.Owner.AddProcHandler((IProcHandler)this);
            }
            if (this.m_spell.IsAreaAura && this.Owner.EntityId == this.CasterReference.EntityId)
            {
                AreaAura areaAura = this.m_auras.Owner.GetAreaAura(this.m_spell);
                if (areaAura != null)
                {
                    areaAura.Start(this.m_controller, !this.HasTimeout);
                }
            }

            this.ApplyNonPeriodicEffects();
            this.SendToClient();
        }