using System; namespace Server.Mobiles { [CorpseName("a slimey corpse")] public class Slime : BaseCreature { [Constructable] public Slime() : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4) { Name = "a slime"; Body = 51; BaseSoundID = 456; Hue = Utility.RandomSlimeHue(); SetStr(22, 34); SetDex(16, 21); SetInt(16, 20); SetHits(15, 19); SetDamage(1, 5); SetDamageType(ResistanceType.Physical, 100); SetResistance(ResistanceType.Physical, 5, 10); SetResistance(ResistanceType.Poison, 10, 20); SetSkill(SkillName.Poisoning, 30.1, 50.0); SetSkill(SkillName.MagicResist, 15.1, 20.0); SetSkill(SkillName.Tactics, 19.3, 34.0); SetSkill(SkillName.Wrestling, 19.3, 34.0); Fame = 300; Karma = -300; VirtualArmor = 8; Tamable = true; ControlSlots = 1; MinTameSkill = 23.1; } public Slime(Serial serial) : base(serial) { } public override Poison PoisonImmune { get { return Poison.Lesser; } } public override Poison HitPoison { get { return Poison.Lesser; } } public override FoodType FavoriteFood { get { return FoodType.Meat | FoodType.Fish | FoodType.FruitsAndVegies | FoodType.GrainsAndHay | FoodType.Eggs; } } public override void GenerateLoot() { AddLoot(LootPack.Poor); AddLoot(LootPack.Gems); } public override bool CheckMovement(Direction d, out int newZ) { if (!base.CheckMovement(d, out newZ)) return false; if (Region.IsPartOf("Underworld") && newZ > Location.Z) return false; return true; } public override void Serialize(GenericWriter writer) { base.Serialize(writer); writer.Write((int)1); } public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); if (version == 0 && (AbilityProfile == null || AbilityProfile.MagicalAbility == MagicalAbility.None)) { SetMagicalAbility(MagicalAbility.Poisoning); } } } }