Exemple #1
0
            protected override void OnTick()
            {
                int damage = Utility.RandomMinMax(10, 15 + (int)(m_from.PlayerLevel / 4));

                m_from.MovingParticles(m_targ, 0x36E4, 5, 0, false, false, 3006, 4006, 0);
                m_from.PlaySound(0x1E5);
                SpellHelper.Damage(TimeSpan.Zero, m_targ, m_from, damage, d_ph, d_fi, d_co, d_po, d_en);

                if (!m_from.CanSee(m_targ) || !m_from.InLOS(m_targ))
                {
                    RunCount = MaxCount;
                }

                if (!m_targ.Alive)
                {
                    RunCount = MaxCount;
                }

                if (RunCount == MaxCount)
                {
                    if (m_targ is TeiravonMobile)
                    {
                        TeiravonMobile pctarg = (TeiravonMobile)m_targ;
                        pctarg.ShadowShotReady = false;
                    }
                }
                if (RunCount < MaxCount && m_from.Alive)
                {
                    RunCount++;
                    Timer m_EffectTimer = new EffectTimer(m_from, m_targ, d_ph, d_fi, d_en, d_co, d_po, RunCount, MaxCount, DateTime.Now + TimeSpan.FromSeconds(0.25));
                    m_EffectTimer.Start();
                }
            }
        public override void Drink(Mobile from)
        {
            TeiravonMobile m_Player = (TeiravonMobile)from;

            if (m_Player.CanDrink(PEffect) && m_Player.CanDrink(PotionEffect.LesserFloat) && m_Player.CanDrink(PotionEffect.Float) && m_Player.InLOS(new Point3D(m_Player.X, m_Player.Y, m_Player.Z + 30)))
            {
                m_Player.Z       += 5;
                m_Player.CantWalk = true;
                m_Player.Emote("*begin to hover off the ground!*");
            }

            base.Drink(from);
        }