using System; using Server; using Server.Items; namespace Server.Mobiles { [CorpseName( "a powderpuff corpse" )] public class Powderpuff : BaseCreature { [Constructable] public Powderpuff() : base( AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4 ) { Name = "a Powderpuff Daemon"; Body = 40; BaseSoundID = 0x48D; Hue = 119; SetStr( 325 ); SetDex( 1000 ); SetInt( 1000 ); SetHits( 3500 ); SetDamage( 75, 100 ); SetDamageType( ResistanceType.Physical, 25 ); SetDamageType( ResistanceType.Cold, 75 ); SetResistance( ResistanceType.Physical, 98 ); SetResistance( ResistanceType.Fire, 95 ); SetResistance( ResistanceType.Cold, 95 ); SetResistance( ResistanceType.Poison, 95 ); SetResistance( ResistanceType.Energy, 95 ); SetSkill( SkillName.EvalInt, 120.0 ); SetSkill( SkillName.Magery, 120.0 ); SetSkill( SkillName.Meditation, 120.0 ); SetSkill( SkillName.MagicResist, 120.0 ); SetSkill( SkillName.Tactics, 120.0 ); SetSkill( SkillName.Wrestling, 300.0 ); Fame = 50000; Karma = -50000; VirtualArmor = 500; PackGem(); PackGold( 25000 ); switch ( Utility.Random( 20 ) ) //Rarity 80 { case 0: PackItem( new TunicOfFire( ) ); break; case 1: PackItem( new ZyronicClaw( ) ); break; case 2: PackItem( new TitansHammer( ) ); break; case 3: PackItem( new InquisitorsResolution( ) ); break; case 4: PackItem( new BladeOfInsanity( ) ); break; case 5: PackItem( new BoneCrusher( ) ); break; case 6: PackItem( new BreathOfTheDead( ) ); break; case 7: PackItem( new Frostbringer( ) ); break; case 8: PackItem( new LegacyOfTheDreadLord( ) ); break; case 9: PackItem( new SerpentsFang( ) ); break; case 10: PackItem( new StaffOfTheMagi( ) ); break; case 11: PackItem( new TheBeserkersMaul( ) ); break; case 12: PackItem( new TheDragonSlayer( ) ); break; case 13: PackItem( new ArmorOfFortune( ) ); break; case 14: PackItem( new OrnateCrownOfTheHarrower( ) ); break; case 15: PackItem( new MidnightBracers( ) ); break; case 16: PackItem( new LeggingsOfBane( ) ); break; case 17: PackItem( new JackalsCollar( ) ); break; case 18: PackItem( new HelmOfInsight( ) ); break; case 19: PackItem( new GauntletsOfNobility( ) ); break; case 20: PackItem( new VoiceOfTheFallenKing( ) ); break; case 21: PackItem( new AncientPaladinSword( ) ); break; case 22: PackItem( new SwordOfJupiter( ) ); break; case 23: PackItem( new Swordoftheorcs( ) ); break; case 24: PackItem( new DragonSlayerBroadsword( ) ); break; case 25: PackItem( new BladeOfTheDamned( ) ); break; case 26: PackItem( new BladeOfBlood( ) ); break; case 27: PackItem( new Axeoftheorcs( ) ); break; case 28: PackItem( new FrozenHorror( ) ); break; case 29: PackItem( new Treachery( ) ); break; case 30: PackItem( new CrescentOfTheSun( ) ); break; case 31: PackItem( new AncientWarMace( ) ); break; case 32: PackItem( new Holyknightsvirtue( ) ); break; case 33: PackItem( new BlisteringFrost( ) ); break; case 34: PackItem( new DoubleLightSaber( ) ); break; case 35: PackItem( new BladesOfTemperament( ) ); break; case 36: PackItem( new StaffOfDaemonSummoning( ) ); break; case 37: PackItem( new StaffOfOrcSummoning( ) ); break; case 38: PackItem( new EnergyBow( ) ); break; case 39: PackItem( new IceBow( ) ); break; case 40: PackItem( new Avenger( ) ); break; case 41: PackItem( new DeathScythe( ) ); break; } } public override bool HasBreath{ get{ return true; } } public override bool AutoDispel{ get{ return true; } } public override bool Unprovokable{ get{ return true; } } public override bool Uncalmable{ get{ return true; } } public override Poison PoisonImmune{ get{ return Poison.Lethal; } } public override int TreasureMapLevel{ get{ return 1; } } public Powderpuff( 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(); } } }