Example #1
0
        public override bool OnBeforeDeath()
        {
            if (Utility.RandomBool())
            {
                this.Body        = 16;
                this.BaseSoundID = 278;
                this.Hue         = 1167;
                this.PlaySound(0x580);
                Effects.SendLocationEffect(this.Location, this.Map, 0x23B2, 16, 10, 1166, 0);

                if (Utility.RandomMinMax(1, 7) == 1)
                {
                    int goo = 0;

                    foreach (Item splash in this.GetItemsInRange(10))
                    {
                        if (splash is MonsterSplatter && splash.Name == "acidic ichor")
                        {
                            goo++;
                        }
                    }

                    if (goo == 0)
                    {
                        MonsterSplatter.AddSplatter(this.X, this.Y, this.Z, this.Map, this.Location, this, "acidic ichor", 1167, 0);
                    }
                }
            }
            return(base.OnBeforeDeath());
        }
Example #2
0
        public override void OnGotMeleeAttack(Mobile attacker)
        {
            base.OnGotMeleeAttack(attacker);

            if (Utility.RandomMinMax(1, 2) == 1)
            {
                this.Body        = 16;
                this.BaseSoundID = 278;
                this.Hue         = 1167;
                this.PlaySound(0x580);
                Effects.SendLocationEffect(this.Location, this.Map, 0x23B2, 16, 10, 1166, 0);

                if (Utility.RandomMinMax(1, 10) == 1)
                {
                    int goo = 0;

                    foreach (Item splash in this.GetItemsInRange(10))
                    {
                        if (splash is MonsterSplatter && splash.Name == "acidic ichor")
                        {
                            goo++;
                        }
                    }

                    if (goo == 0)
                    {
                        MonsterSplatter.AddSplatter(this.X, this.Y, this.Z, this.Map, this.Location, this, "acidic ichor", 1167, 0);
                    }
                }
            }
        }
        public override void OnGotMeleeAttack(Mobile attacker)
        {
            base.OnGotMeleeAttack(attacker);

            if (Utility.RandomMinMax(1, 4) == 1 && this.Fame > 12500)
            {
                int goo = 0;

                string Goo   = "thick blood";
                int    Color = 0x485;

                if (this.Name == "a coolant elemental")
                {
                    Goo = "engine coolant"; Color = 0xB73;
                }
                else if (this.Name == "a contaminated elemental")
                {
                    Goo = "contamination"; Color = 0xBAD;
                }

                foreach (Item splash in this.GetItemsInRange(10))
                {
                    if (splash is MonsterSplatter && splash.Name == Goo)
                    {
                        goo++;
                    }
                }

                if (goo == 0)
                {
                    MonsterSplatter.AddSplatter(this.X, this.Y, this.Z, this.Map, this.Location, this, Goo, Color, 0);
                }
            }
        }
Example #4
0
		public override void OnGotMeleeAttack( Mobile attacker )
		{
			base.OnGotMeleeAttack( attacker );

			if ( Utility.RandomMinMax( 1, 4 ) == 1 )
			{
				int goo = 0;

				foreach ( Item splash in this.GetItemsInRange( 10 ) ){ if ( splash is MonsterSplatter && splash.Name == "acidic ichor" ){ goo++; } }

				if ( goo == 0 )
				{
					MonsterSplatter.AddSplatter( this.X, this.Y, this.Z, this.Map, this.Location, this, "acidic ichor", 0xBAB, 0 );
				}
			}
		}
Example #5
0
		public override bool OnBeforeDeath()
		{
			this.BaseSoundID = 278;
			this.PlaySound( 0x580 );
			
			Effects.SendLocationEffect( this.Location, this.Map, 0x23B2, 16, 10, 1166, 0 );

			int goo = 0;

			foreach ( Item splash in this.GetItemsInRange( 10 ) ){ if ( splash is MonsterSplatter && splash.Name == "acidic ichor" ){ goo++; } }

			if ( goo == 0 )
			{
				MonsterSplatter.AddSplatter( this.X, this.Y, this.Z, this.Map, this.Location, this, "acidic ichor", 0xBAB, 0 );
			}

			return base.OnBeforeDeath();
		}
Example #6
0
        public override void OnGotMeleeAttack(Mobile attacker)
        {
            base.OnGotMeleeAttack(attacker);

            if (Utility.RandomMinMax(1, 4) == 1 && (this.Fame > 6500 || this.WhisperHue == 999))
            {
                int goo = 0;

                foreach (Item splash in this.GetItemsInRange(10))
                {
                    if (splash is MonsterSplatter && splash.Name == "freezing water")
                    {
                        goo++;
                    }
                }

                if (goo == 0)
                {
                    MonsterSplatter.AddSplatter(this.X, this.Y, this.Z, this.Map, this.Location, this, "freezing water", 296, 0);
                }
            }
        }
Example #7
0
        public override void OnGotMeleeAttack(Mobile attacker)
        {
            base.OnGotMeleeAttack(attacker);

            if (Utility.RandomMinMax(1, 4) == 1 && this.Fame > 10000)
            {
                int goo = 0;

                foreach (Item splash in this.GetItemsInRange(10))
                {
                    if (splash is MonsterSplatter && splash.Name == "poisonous slime")
                    {
                        goo++;
                    }
                }

                if (goo == 0)
                {
                    MonsterSplatter.AddSplatter(this.X, this.Y, this.Z, this.Map, this.Location, this, "poisonous slime", 1167, 0);
                }
            }
        }
Example #8
0
        public override void OnGotMeleeAttack(Mobile attacker)
        {
            base.OnGotMeleeAttack(attacker);

            if (Utility.RandomMinMax(1, 4) == 1)
            {
                int goo = 0;

                foreach (Item splash in this.GetItemsInRange(10))
                {
                    if (splash is MonsterSplatter && splash.Name == "poison spit")
                    {
                        goo++;
                    }
                }

                if (goo == 0)
                {
                    attacker.PlaySound(0x639);
                    MonsterSplatter.AddSplatter(this.X, this.Y, this.Z, this.Map, this.Location, this, "poison spit", 0x7D1, 0);
                }
            }
        }
Example #9
0
        public void Target(Mobile m)
        {
            if (!Caster.CanSee(m))
            {
                Caster.SendLocalizedMessage(500237);                   // Target can not be seen.
            }
            else if (CheckHSequence(m))
            {
                int damage = 1 + (int)((Caster.Skills[SkillName.Begging].Value / 5) + (Caster.Skills[SkillName.EvalInt].Value / 3));
                Caster.MovingParticles(m, 0x3818, 7, 0, false, false, 0xB44, 0, 0);
                Caster.PlaySound(0x025);
                Effects.SendLocationEffect(m.Location, m.Map, 0x23B2, 20, 0xB50, 0);

                if (Caster.Skills[SkillName.Begging].Value >= Utility.RandomMinMax(50, 300) && m != null)
                {
                    int goo = 0;

                    foreach (Item splash in m.GetItemsInRange(10))
                    {
                        if (splash is MonsterSplatter)
                        {
                            goo++;
                        }
                    }

                    if (goo == 0)
                    {
                        Point3D p = m.Location;
                        MonsterSplatter.AddSplatter(p.X, p.Y, p.Z, m.Map, p, Caster, "poisonous slime", 1167, 0);
                    }
                }

                AOS.Damage(m, Caster, damage, 50, 0, 0, 50, 0);
            }

            FinishSequence();
        }