protected override void OnTarget(Mobile from, object targeted)
        {
            IPoint3D p   = targeted as IPoint3D;
            Map      map = from.Map;
            IEntity  to;

            if (p is Mobile)
            {
                to = (Mobile)p;
            }
            else
            {
                to = new Entity(Serial.Zero, new Point3D(p), map);
            }
            Effects.SendMovingEffect(from, to, 0xF0B & 0x3FFF, 7, 0, false, false, 0x8F, 0);
            if (targeted is BaseCreature || targeted is PlayerMobile)
            {
                from.SendMessage("Nothing happens!");
                return;
            }
            TimeSpan duration = TimeSpan.FromMinutes(10);

            if (targeted is GreaterPoisonPotion)
            {
                GreaterPoisonPotion poison = (GreaterPoisonPotion)targeted;

                if (poison.Amount < 20)
                {
                    from.SendMessage("That probably wouldn't be enough poison!");
                }
                else
                {
                    SpellHelper.Summon(new GreaterPoisonElemental(), from, 0x217, duration, false, false);
                    poison.Delete();
                    return;
                }

                // {
                //from.SendMessage( "Nothing happens!" );
                //return;
                //}
            }
            if (targeted is Item)
            {
                Item obj = (Item)targeted;

                if (obj.ItemID <= 14613)
                {
                    SpellHelper.Summon(new GreaterPoisonElemental(), from, 0x217, duration, false, false);
                    return;
                }
                else
                {
                    //from.Target = new WThrowTarget();
                    from.SendMessage("Nothing happens!");
                    return;
                }
            }
        }
Esempio n. 2
0
        public BasePotion FillBottle()
        {
            BasePotion pot;

            switch (m_Type)
            {
            default:
            case PotionEffect.Nightsight: pot = new NightSightPotion(); break;

            case PotionEffect.CureLesser: pot = new LesserCurePotion(); break;

            case PotionEffect.Cure: pot = new CurePotion(); break;

            case PotionEffect.CureGreater: pot = new GreaterCurePotion(); break;

            case PotionEffect.Agility: pot = new AgilityPotion(); break;

            case PotionEffect.AgilityGreater: pot = new GreaterAgilityPotion(); break;

            case PotionEffect.Strength: pot = new StrengthPotion(); break;

            case PotionEffect.StrengthGreater: pot = new GreaterStrengthPotion(); break;

            case PotionEffect.PoisonLesser: pot = new LesserPoisonPotion(); break;

            case PotionEffect.Poison: pot = new PoisonPotion(); break;

            case PotionEffect.PoisonGreater: pot = new GreaterPoisonPotion(); break;

            case PotionEffect.PoisonDeadly: pot = new DeadlyPoisonPotion(); break;

            case PotionEffect.Refresh: pot = new RefreshPotion(); break;

            case PotionEffect.RefreshGreater: pot = new GreaterRefreshPotion(); break;

            case PotionEffect.HealLesser: pot = new LesserHealPotion(); break;

            case PotionEffect.Heal: pot = new HealPotion(); break;

            case PotionEffect.HealGreater: pot = new GreaterHealPotion(); break;

            case PotionEffect.ExplosionLesser: pot = new LesserExplosionPotion(); break;

            case PotionEffect.Explosion: pot = new ExplosionPotion(); break;

            case PotionEffect.ExplosionGreater: pot = new GreaterExplosionPotion(); break;

            case PotionEffect.Conflagration: pot = new ConflagrationPotion(); break;

            case PotionEffect.ConflagrationGreater: pot = new GreaterConflagrationPotion(); break;

            case PotionEffect.MaskOfDeath: pot = new MaskOfDeathPotion(); break;

            case PotionEffect.MaskOfDeathGreater: pot = new GreaterMaskOfDeathPotion(); break;

            case PotionEffect.ConfusionBlast: pot = new ConfusionBlastPotion(); break;

            case PotionEffect.ConfusionBlastGreater: pot = new GreaterConfusionBlastPotion(); break;

            case PotionEffect.Invisibility: pot = new InvisibilityPotion(); break;

            case PotionEffect.ParasiticPoison: pot = new ParasiticPotion(); break;

            case PotionEffect.DarkglowPoison: pot = new DarkglowPotion(); break;
            }

            return(pot);
        }
Esempio n. 3
0
        public BasePotion FillBottle()
        {
            BasePotion pot;

            switch (m_Type)
            {
            default:
            case PotionEffect.Nightsight:           pot = new NightSightPotion(); break;

            case PotionEffect.CureLesser:           pot = new LesserCurePotion(); break;

            case PotionEffect.Cure:                         pot = new CurePotion(); break;

            case PotionEffect.CureGreater:          pot = new GreaterCurePotion(); break;

            case PotionEffect.Agility:                      pot = new AgilityPotion(); break;

            case PotionEffect.AgilityGreater:       pot = new GreaterAgilityPotion(); break;

            case PotionEffect.Strength:                     pot = new StrengthPotion(); break;

            case PotionEffect.StrengthGreater:      pot = new GreaterStrengthPotion(); break;

            case PotionEffect.PoisonLesser:         pot = new LesserPoisonPotion(); break;

            case PotionEffect.Poison:                       pot = new PoisonPotion(); break;

            case PotionEffect.PoisonGreater:        pot = new GreaterPoisonPotion(); break;

            case PotionEffect.PoisonDeadly:         pot = new DeadlyPoisonPotion(); break;

            case PotionEffect.Refresh:                      pot = new RefreshPotion(); break;

            case PotionEffect.RefreshTotal:         pot = new TotalRefreshPotion(); break;

            case PotionEffect.HealLesser:           pot = new LesserHealPotion(); break;

            case PotionEffect.Heal:                         pot = new HealPotion(); break;

            case PotionEffect.HealGreater:          pot = new GreaterHealPotion(); break;

            case PotionEffect.ExplosionLesser:      pot = new LesserExplosionPotion(); break;

            case PotionEffect.Explosion:            pot = new ExplosionPotion(); break;

            case PotionEffect.ExplosionGreater:     pot = new GreaterExplosionPotion(); break;

            case PotionEffect.Conflagration:        pot = new ConflagrationPotion(); break;

            case PotionEffect.ConflagrationGreater: pot = new GreaterConflagrationPotion(); break;

            case PotionEffect.MaskOfDeath:          pot = new MaskOfDeathPotion(); break;

            case PotionEffect.MaskOfDeathGreater:   pot = new GreaterMaskOfDeathPotion(); break;

            case PotionEffect.ConfusionBlast:               pot = new ConfusionBlastPotion(); break;

            case PotionEffect.ConfusionBlastGreater:        pot = new GreaterConfusionBlastPotion(); break;
            }
            if (this.Cheater_Name != null)
            {
                pot.Cheater_Name = this.Cheater_Name;
            }
            return(pot);
        }