using System; using Server.Items; namespace Server.Mobiles { [CorpseName( "a Ancient Crystal Dragon corpse" )] public class AncientCrystalDragon : BaseCreature { [Constructable] public AncientCrystalDragon () : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 ) { Name = "a Ancient Crystal Dragon"; Body = 46; BaseSoundID = 362; Hue = 1152; SetStr( 1096, 1185 ); SetDex( 86, 175 ); SetInt( 686, 775 ); SetHits( 658, 711 ); SetDamage( 29, 35 ); SetDamageType( ResistanceType.Physical, 10 ); SetDamageType( ResistanceType.Energy, 90 ); SetResistance( ResistanceType.Physical, 15, 35 ); SetResistance( ResistanceType.Fire, 30, 90 ); SetResistance( ResistanceType.Cold, 20, 30 ); SetResistance( ResistanceType.Poison, 90, 100 ); SetResistance( ResistanceType.Energy, 90, 100 ); SetSkill( SkillName.Meditation, 52.5, 75.0 ); SetSkill( SkillName.EvalInt, 30.1, 40.0 ); SetSkill( SkillName.Magery, 30.1, 40.0 ); SetSkill( SkillName.Poisoning, 60.1, 80.0 ); SetSkill( SkillName.MagicResist, 65.1, 100.0 ); SetSkill( SkillName.Tactics, 65.1, 90.0 ); SetSkill( SkillName.Wrestling, 65.1, 80.0 ); Fame = 22500; Karma = -22500; VirtualArmor = 70; } public override void GenerateLoot() { AddLoot( LootPack.Average ); AddLoot( LootPack.Meager ); AddLoot( LootPack.MedScrolls ); AddLoot( LootPack.FilthyRich, 3 ); } public override bool ReaquireOnMovement{ get{ return true; } } public override bool HasBreath{ get{ return true; } } // fire breath enabled public override int BreathFireDamage{ get{ return 0; } } public override int BreathEnergyDamage{ get{ return 100; } } public override int BreathEffectHue{ get{ return 1152; } } public override bool AutoDispel{ get{ return true; } } public override Poison PoisonImmune{ get{ return Poison.Deadly; } } public override int TreasureMapLevel{ get{ return 5; } } public override int Scales{ get{ return 10; } } public override int Meat{ get{ return 10; } } public override int Hides{ get{ return 20; } } public override HideType HideType{ get{ return HideType.Horned; } } public override ScaleType ScaleType{ get{ return ScaleType.Blue; } } public override int GetAttackSound() { return 713; } public override int GetAngerSound() { return 718; } public override int GetDeathSound() { return 716; } public override int GetHurtSound() { return 721; } public override int GetIdleSound() { return 725; } public AncientCrystalDragon( Serial serial ) : base( serial ) { } public override void Serialize( GenericWriter writer ) { base.Serialize( writer ); writer.Write( (int) 0 ); } public override void Deserialize( GenericReader reader ) { base.Deserialize( reader ); int version = reader.ReadInt(); } } }