public MortysTheMaster()
            : base(AIType.AI_None, FightMode.None, 10, 1, 0.2, 0.4)
        {
            Name = "Mortys";
            Title = "Le Maitre";
            Direction = Direction.South;

            Body = 400;
            Hue = 33797;
            Blessed = true;

            InitStats(75, 75, 75);

            SpeechHue = 33;
            EmoteHue = 33;

            Backpack bp = new Backpack();
            bp.Movable = false;
            AddItem(bp);
            AddItem(new RobeACapuche(1109));
            Lantern l = new Lantern();
            l.Hue = 1109;
            AddItem(l);
            l.Ignite();
            Boots b = new Boots();
            b.Hue = 1109;
            AddItem(b);
        }
		public DemonScholar() : base( AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4 )
		{
			Name = "a demonic scholar";
			Body = 400;
			BaseSoundID = 412;
			Hue = 1175;

			SetStr( 416, 505 );
			SetDex( 146, 165 );
			SetInt( 566, 655 );

			SetHits( 250, 303 );

			SetDamage( 11, 13 );

			SetSkill( SkillName.EvalInt, 90.1, 100.0 );
			SetSkill( SkillName.Magery, 90.1, 100.0 );
			SetSkill( SkillName.MagicResist, 150.5, 200.0 );
			SetSkill( SkillName.Tactics, 50.1, 70.0 );
			SetSkill( SkillName.Wrestling, 60.1, 80.0 );

			Fame = 18000;
			Karma = -18000;

			VirtualArmor = 50;

			Lantern hands = new Lantern();
			hands.Name = "latern of souls";
			hands.Hue = 1258;
			hands.Movable = false;
			AddItem( hands );

			Spellbook hands2 = new Spellbook();
			hands2.Name = "ancient spellbook";
			hands2.Hue = 1158;
			hands2.Movable = false;
			hands2.Content = ulong.MaxValue;
			AddItem( hands2 );

			HoodedShroudOfShadows chest = new HoodedShroudOfShadows();
			chest.Name = "hooded shroud";
			chest.Hue = 1175;
			chest.Movable = false;
			AddItem( chest );

			Sandals feet = new Sandals();
			feet.Name = "sandals";
			feet.Hue = 1258;
			feet.Movable = false;
			AddItem( feet );

			PackReg( 30 );

			if ( Utility.Random( 2500 ) == 0 ) PackItem( new DemonSandals() );
			if ( Utility.Random( 2500 ) == 0 ) PackItem( new DemonDoublet() );
			if ( Utility.Random( 2500 ) == 0 ) PackItem( new DemonWizardsHat() );
			if ( Utility.Random( 2500 ) == 0 ) PackItem( new DemonHalfApron() );
			if ( Utility.Random( 2500 ) == 0 ) PackItem( new DemonSkirt() );
		}
        public override void Deserialize( GenericReader reader )
        {
            base.Deserialize( reader );

            /*int version = */reader.ReadInt();

            m_Lantern = (Lantern)reader.ReadItem();
        }
        public SchmendrickApprenticeCorpse()
            : base(GetOwner(), GetHair(), GetFacialHair(), GetEquipment())
        {
            Direction = Direction.West;

            foreach ( Item item in EquipItems )
                DropItem( item );

            m_Lantern = new Lantern();
            m_Lantern.Movable = false;
            m_Lantern.Protected = true;
            m_Lantern.Ignite();
        }
Exemple #5
0
		public override void InitOutfit()
		{
			Lantern lantern = new Lantern();
			lantern.Ignite();

			AddItem( lantern );
			AddItem( new Shoes( Utility.RandomNeutralHue() ) );
			AddItem( new Bonnet( Utility.RandomPinkHue() ) );
			AddItem( new PlainDress( Utility.RandomPinkHue() ) );
		}
		public override void Serialize( GenericWriter writer )
		{
			if ( m_Lantern != null && m_Lantern.Deleted )
				m_Lantern = null;

			base.Serialize( writer );

			writer.Write( (int) 0 ); // version

			writer.Write( m_Lantern );
		}
		public HeadlessHorseman() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
		{
			Name = "The Headless Horseman";
			Body = 185;
			BaseSoundID = 0x47F;
			Hue = 0x4001;
			
			SetStr( 430, 500 );
			SetDex( 90, 120 );
			SetInt( 700, 800 );

			SetHits( 5000, 10000 );
			SetMana( 5000 );

			SetDamage( 20, 35 );

			SetDamageType( ResistanceType.Physical, 75 );
			SetDamageType( ResistanceType.Fire, 25 );

			SetResistance( ResistanceType.Physical, 40, 60 );
			SetResistance( ResistanceType.Fire, 60, 80 );
			SetResistance( ResistanceType.Cold, 40, 60 );
			SetResistance( ResistanceType.Poison, 40, 60 );
			SetResistance( ResistanceType.Energy, 40, 65 );

			SetSkill( SkillName.Anatomy, 120.0 );
			SetSkill( SkillName.EvalInt, 100.0 );
			SetSkill( SkillName.Magery, 100.0 );
			SetSkill( SkillName.Meditation, 120.0 );
			SetSkill( SkillName.MagicResist, 100.0 );
			SetSkill( SkillName.Tactics, 120.0 );
			SetSkill( SkillName.Swords, 120.0 );

			Fame = 30000;
			Karma = -30000;
            
			VirtualArmor = 60;

			PlateChest chest = new PlateChest();
			chest.Hue = 1345;
			chest.Movable = false;
			AddItem( chest );
			
			PlateArms arms = new PlateArms();
			arms.Hue = 1345;
			arms.Movable = false;
			AddItem( arms );
			
			PlateGloves gloves = new PlateGloves();
			gloves.Hue = 1345;
			gloves.Movable = false;
			AddItem( gloves );
			
			PlateGorget gorget = new PlateGorget();
			gorget.Hue = 1345;
			gorget.Movable = false;
			AddItem( gorget );
			
			PlateLegs legs = new PlateLegs();
			legs.Hue = 1345;
			legs.Movable = false;
			AddItem( legs );

			Cloak cloak = new Cloak();
			cloak.Hue = 1175;
			cloak.Movable = false;
			AddItem( cloak );
			
			Longsword weapon = new Longsword();
            weapon.Hue = 1175;
			weapon.Movable = false;
			AddItem( weapon );
			
			Lantern lantern = new Lantern();
			lantern.Movable = false;
			lantern.Ignite();
			AddItem( lantern );			
			
			ThighBoots boots = new ThighBoots();
			boots.Movable = false;
			AddItem( boots );
			

			new Nightmare().Rider = this;
		}
        public TheCursed()
            : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            Body = 183;
            Name = NameList.RandomName("male");
            Title = "the cursed";

            Hue = 2130;
            SetStr(120, 140);
            SetDex(86, 105);
            SetInt(61, 70);

            SetResistance(ResistanceType.Physical, 40, 60);
            SetResistance(ResistanceType.Fire, 40, 50);
            SetResistance(ResistanceType.Cold, 50, 60);
            SetResistance(ResistanceType.Poison, 55, 65);
            SetResistance(ResistanceType.Energy, 40, 50);

            SetSkill(SkillName.Fencing, 90.0);
            SetSkill(SkillName.Macing, 90.0);
            SetSkill(SkillName.Swords, 90.0);
            SetSkill(SkillName.Wrestling, 100.0);
            SetSkill(SkillName.Poisoning, 60.0, 82.5);
            SetSkill(SkillName.MagicResist, 57.5, 80.0);
            SetSkill(SkillName.Tactics, 60.0, 82.5);
            SetSkill(SkillName.Anatomy, 60.2, 100.0);
            SetSkill(SkillName.Parry, 57.5, 80.0);
            SetSkill(SkillName.Healing, 90.0);

            Fame = NotorietyHandlers.GetNotorietyByLevel( 2 );
            Karma = NotorietyHandlers.GetNotorietyByLevel( -2 );

            VirtualArmor = 70;

            Item wep = CursedCaveUtility.MutateItem(Loot.RandomWeapon(), 10);
            AddItem(wep);

            AddItem(CursedCaveUtility.MutateItem(new BoneLegs(), 10));
            AddItem(CursedCaveUtility.MutateItem(new BoneArms(), 10));
            AddItem(CursedCaveUtility.MutateItem(new BoneGloves(), 10));
            AddItem(CursedCaveUtility.MutateItem(new BoneChest(), 10));
            AddItem(CursedCaveUtility.MutateItem(new BoneHelm(), 10));

            if (0.10 > Utility.RandomDouble())
                AddItem(CursedCaveUtility.MutateItem(Loot.RandomJewelry(), 10));

            if (this.Weapon != null && ((BaseWeapon)this.Weapon).Layer == Layer.OneHanded)
            {
                if (Utility.RandomBool())
                {
                    BaseEquipableLight lightItem;
                    switch (Utility.Random(3))
                    {
                        default:
                            lightItem = new Torch();
                            break;
                        case 1:
                            lightItem = new Lantern();
                            break;
                        case 2:
                            lightItem = new Candle();
                            break;
                    }
                    lightItem.Ignite();
                    AddItem(lightItem);
                }
                else
                    AddItem(CursedCaveUtility.MutateItem(Loot.RandomShield(), 10));
            }
        }
        public HorrorDaemon()
            : base(AIType.AI_Stealth, FightMode.Closest, 10, 1, 0.1, 0.2)
        {
            Name = "a horror servant";
            Body = 400;
            Hue = 777;
            Hidden = true;

            SetStr( 150 );
            SetDex( 100 );
            SetInt( 1, 2 );

            SetHits( 80 );
            SetMana( 0 );

            SetDamage( 15, 20 );

            SetDamageType( ResistanceType.Fire, 100 );

            SetResistance( ResistanceType.Physical, 30, 35 );
            SetResistance( ResistanceType.Fire, 100 );
            SetResistance( ResistanceType.Cold, 30, 35 );
            SetResistance( ResistanceType.Poison, 30, 35 );
            SetResistance( ResistanceType.Energy, 30, 35 );

            SetSkill( SkillName.MagicResist, 100.0 );
            SetSkill( SkillName.Wrestling, 100.0 );
            SetSkill( SkillName.Hiding, 100.0 );

            Fame = 3500;
            Karma = -3500;

            VirtualArmor = 6;

            Lantern lantern = new Lantern();
            lantern.Name = "Fire bomb";
            lantern.Hue = 1281;
            lantern.Movable = false;
            AddItem( lantern );

            BoneGloves gloves = new BoneGloves();
            gloves.Movable = false;
            gloves.Hue = 32500;
            AddItem( gloves );

            BoneLegs legs = new BoneLegs();
            legs.Movable = false;
            legs.Hue = 32500;
            AddItem( legs );

            BoneChest chest = new BoneChest();
            chest.Movable = false;
            chest.Hue = 32500;
            AddItem( chest );

            BoneHelm helm = new BoneHelm();
            helm.Movable = false;
            helm.Hue = 32500;
            AddItem( helm );

            PackItem( new Bloodmoss( Utility.RandomMinMax( 7, 10 ) ) );
            PackItem( new MandrakeRoot( Utility.RandomMinMax( 7, 10 ) ) );
            PackItem( new Head() );
            PackItem( new ExplosionScroll() );
        }
		public OverlandTreasureHunter()
		{
			SpeechHue = Utility.RandomDyedHue();
			Title = "the treasure hunter";

			SetStr( 96, 115 );
			SetDex( 86, 105 );
			SetInt( 51, 65 );

			SetDamage( 23, 27 );

			SetSkill( SkillName.Anatomy, 60.0, 82.5 );
			SetSkill( SkillName.Wrestling, 88.5, 100.0 );
			SetSkill( SkillName.MagicResist, 88.5, 100.0 );
			SetSkill( SkillName.Tactics, 60.0, 82.5 );

			Fame = 2500;
			Karma = -2500;

			// Configure our treasuremap
			TreasureMap map = new TreasureMap( 5, Map.Felucca );
			map.LootType = LootType.Newbied;
			map.Themed = true;
			map.Theme = TreasureTheme.RandomOverlandTheme();
			map.Decoder = this;
			PackItem( map );

			// configure our distination (to the chest)
			Destination = new Point3D(map.ChestLocation,0).ToString();

			Shovel shovel = new Shovel( );
			shovel.LootType = LootType.Newbied;
			PackItem( shovel );

			Runebook book = new Runebook( );
			book.LootType = LootType.Newbied;
			book.Name = "Fromm's treasure hunting guide";
			AddItem( book );

			Item light = null;
			if (Utility.RandomBool())
				light = new Lantern();
			else
				light = new Torch();
			PackItem( light );

			// select a gem for payment
			m_GemIndex = Utility.Random(TreasureMapChest.m_GemTypes.Length);
			m_GemsRequired = 50 * (2 + Utility.Random( 9 )); // 100-500

			PackItem( new Bandage( Utility.RandomMinMax( 1, 15 ) ) );
		}