상속: BaseMount
예제 #1
0
        public Leith() : base(AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            Name        = "Leith";
            Title       = "The Evil Queen";
            Body        = 401;
            Hue         = 6;
            Female      = true;
            BaseSoundID = 1154;

            SetStr(1800);
            SetDex(1510, 1750);
            SetInt(1710, 2200);

            SetHits(4500, 5000);

            SetDamage(25, 30);

            SetDamageType(ResistanceType.Physical, 50);
            SetDamageType(ResistanceType.Cold, 50);

            SetResistance(ResistanceType.Physical, 0);
            SetResistance(ResistanceType.Fire, 45);
            SetResistance(ResistanceType.Cold, 45);
            SetResistance(ResistanceType.Poison, 45);
            SetResistance(ResistanceType.Energy, 45);

            SetSkill(SkillName.EvalInt, 170.0);
            SetSkill(SkillName.Magery, 170.0);
            SetSkill(SkillName.Meditation, 170.0);
            SetSkill(SkillName.MagicResist, 90.0);
            SetSkill(SkillName.Tactics, 170.0);
            SetSkill(SkillName.Wrestling, 170.0);

            Nightmare mare = new Nightmare();

            mare.Hue   = 1175;
            mare.Rider = this;


            Fame  = 20000;
            Karma = -20000;

            VirtualArmor = 64;


            AddItem(new FloppyHat(1153));
            AddItem(new FancyShirt(1153));
            AddItem(new Doublet(1153));
            AddItem(new Skirt(1153));
            AddItem(new Sandals(1));

            PackGem();
        }
예제 #2
0
        public void SpawnNightmare(Mobile target)
        {
            Map map = this.Map;

            if (map == null)
            {
                return;
            }

            int newNightmare = 1;

            for (int i = 0; i < newNightmare; ++i)
            {
                Nightmare Nightmare = new Nightmare();

                Nightmare.Team      = this.Team;
                Nightmare.FightMode = FightMode.Closest;

                bool    validLocation = false;
                Point3D loc           = this.Location;

                for (int j = 0; !validLocation && j < 10; ++j)
                {
                    int x = X + Utility.Random(3) - 1;
                    int y = Y + Utility.Random(3) - 1;
                    int z = map.GetAverageZ(x, y);

                    if (validLocation = map.CanFit(x, y, this.Z, 16, false, false))
                    {
                        loc = new Point3D(x, y, Z);
                    }
                    else if (validLocation = map.CanFit(x, y, z, 16, false, false))
                    {
                        loc = new Point3D(x, y, z);
                    }
                }

                Nightmare.MoveToWorld(loc, map);
                Nightmare.Combatant = target;
            }
        }
예제 #3
0
        public IAmTheBoss() : base(AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            Name        = "Evil Lord";
            Body        = 400;
            Hue         = 1002;
            BaseSoundID = 357;

            SetStr(376, 405);
            SetDex(176, 195);
            SetInt(201, 225);

            SetHits(5000, 5000);


            SetHits(1592, 1711);

            SetDamage(25, 30);

            SetDamageType(ResistanceType.Physical, 50);
            SetDamageType(ResistanceType.Fire, 25);
            SetDamageType(ResistanceType.Energy, 25);

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

            SetSkill(SkillName.Anatomy, 125.1, 150.0);
            SetSkill(SkillName.EvalInt, 120.1, 150.0);
            SetSkill(SkillName.Magery, 125.5, 150.0);
            SetSkill(SkillName.Meditation, 125.1, 150.0);
            SetSkill(SkillName.MagicResist, 90.5, 95.0);
            SetSkill(SkillName.Tactics, 120.1, 150.0);
            SetSkill(SkillName.Wrestling, 120.1, 150.0);

            Nightmare mare = new Nightmare();

            mare.Hue   = 1175;
            mare.Rider = this;


            Fame  = 0;
            Karma = 0;

            VirtualArmor = 90;

            AddItem(new Bonnet(998));
            AddItem(new FancyShirt(998));
            AddItem(new Doublet(438));
            AddItem(new Skirt(998));
            AddItem(new Sandals(0));


            switch (Utility.Random(8))
            {
            case 0: PackItem(new SpidersSilk(3)); break;

            case 1: PackItem(new BlackPearl(3)); break;

            case 2: PackItem(new Bloodmoss(3)); break;

            case 3: PackItem(new Garlic(3)); break;

            case 4: PackItem(new MandrakeRoot(3)); break;

            case 5: PackItem(new Nightshade(3)); break;

            case 6: PackItem(new SulfurousAsh(3)); break;

            case 7: PackItem(new Ginseng(3)); break;
            }


            PackGold(2000, 5000);
            PackScroll(2, 8);
            if (Utility.Random(25) == 1)
            {
                PackItem(new Sandals(1));
            }
            if (Utility.Random(200) == 1)
            {
                PackItem(new HolyBlessDeed());
            }
        }
예제 #4
0
        public KillarAncestor() : base(AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            Name = "Killar Ancestor";

            Body = 400;
            Hue  = 1360;

            BaseSoundID = 1154;

            SetStr(1800);
            SetDex(1510, 1750);
            SetInt(1710, 2200);

            SetHits(1500);

            SetDamage(34, 36);

            SetDamageType(ResistanceType.Physical, 50);
            SetDamageType(ResistanceType.Cold, 50);

            SetResistance(ResistanceType.Physical, 70);
            SetResistance(ResistanceType.Fire, 45);
            SetResistance(ResistanceType.Cold, 45);
            SetResistance(ResistanceType.Poison, 45);
            SetResistance(ResistanceType.Energy, 45);

            SetSkill(SkillName.EvalInt, 130.0);
            SetSkill(SkillName.Magery, 130.0);
            SetSkill(SkillName.Meditation, 130.0);
            SetSkill(SkillName.MagicResist, 90.0);
            SetSkill(SkillName.Tactics, 130.0);
            SetSkill(SkillName.Wrestling, 130.0);

            Nightmare mare = new Nightmare();

            mare.Hue   = 1;
            mare.Rider = this;


            Fame  = 0;
            Karma = -20000;

            VirtualArmor = 64;


            AddItem(new Robe(1360));
            AddItem(new FancyShirt(1360));
            AddItem(new Doublet(1360));
            AddItem(new Cloak(1360));
            AddItem(new Sandals(1360));


            PackGem();
            PackGold(4700, 6950);
            //PackItem( new Tokens( 2000, 3000 ) );
            PackItem(new HatOfKillar());


            switch (Utility.Random(100))         //Rarity 10
            {
            case 0: PackItem(new TheTaskmaster( ));
                break;

            case 1: PackItem(new ZyronicClaw( ));
                break;

            case 2: PackItem(new BladeOfTheRighteous( ));
                break;

            case 3: PackItem(new TitansHammer( ));
                break;

            case 4: PackItem(new InquisitorsResolution( ));
                break;
            }

            switch (Utility.Random(150))                  //Rarity 11
            {
            case 0: PackItem(new AxeOfTheHeavens( ));
                break;

            case 1: PackItem(new BladeOfInsanity( ));
                break;

            case 2: PackItem(new BoneCrusher( ));
                break;

            case 3: PackItem(new BreathOfTheDead( ));
                break;

            case 4: PackItem(new Frostbringer( ));
                break;

            case 5: PackItem(new LegacyOfTheDreadLord( ));
                break;

            case 6: PackItem(new SerpentsFang( ));
                break;

            case 7: PackItem(new StaffOfTheMagi( ));
                break;

            case 8: PackItem(new TheBeserkersMaul( ));
                break;

            case 9: PackItem(new TheDragonSlayer( ));
                break;

            case 10: PackItem(new ArmorOfFortune( ));
                break;

            case 11: PackItem(new OrnateCrownOfTheHarrower( ));
                break;

            case 12: PackItem(new MidnightBracers( ));
                break;

            case 13: PackItem(new LeggingsOfBane( ));
                break;

            case 14: PackItem(new JackalsCollar( ));
                break;

            case 15: PackItem(new HuntersHeaddress( ));
                break;

            case 16: PackItem(new HolyKnightsBreastplate( ));
                break;

            case 17: PackItem(new HelmOfInsight( ));
                break;

            case 18: PackItem(new HatOfTheMagi( ));
                break;

            case 19: PackItem(new GauntletsOfNobility( ));
                break;

            case 20: PackItem(new DivineCountenance( ));
                break;

            case 21: PackItem(new VoiceOfTheFallenKing( ));
                break;

            case 22: PackItem(new TunicOfFire( ));
                break;

            case 23: PackItem(new SpiritOfTheTotem( ));
                break;

            case 24: PackItem(new BraceletOfHealth( ));
                break;

            case 25: PackItem(new OrnamentOfTheMagician( ));
                break;

            case 26: PackItem(new RingOfTheElements( ));
                break;

            case 27: PackItem(new RingOfTheVile( ));
                break;
            }
        }
예제 #5
0
        public DrowWarrior()
            : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            SpeechHue = Utility.RandomDyedHue();
            Title = "Drow Guerreiro";
            Hue = 902;

            if (this.Female = Utility.RandomBool())
            {
                Body = 0x191;
                Name = NameList.RandomName("female");
            }
            else
            {
                Body = 0x190;
                Name = NameList.RandomName("male");
            }

            SetStr(400, 800);
            SetDex(150, 175);
            SetInt(275, 325);

            SetHits(1400, 1600);
            SetDamage(33, 58);

            SetSkill(SkillName.MagicResist, 95.5, 127.5);
            SetSkill(SkillName.Swords, 95.5, 177.5);
            SetSkill(SkillName.Tactics, 95.5, 177.5);
            SetSkill(SkillName.Wrestling, 95.5, 177.5);
            SetSkill(SkillName.Meditation, 100.0, 177.5);
            SetSkill(SkillName.Magery, 100.0, 177.5);
            SetSkill(SkillName.Chivalry, 100.0, 177.5);

            Nightmare montaria = new Nightmare();
            montaria.Hue = 33;
            montaria.Rider = this;
            montaria.MinTameSkill = 115.1;

            Fame = 2000;
            Karma = -2000;
            VirtualArmor = 55;

            Item bodySash = new BodySash();
            bodySash.Hue = 422;
            AddItem(bodySash);

            //AddItem(new Piwafwi());
            AddItem(new Boots());
            //AddItem(new DrowRingmailGloves());
            //AddItem(new DrowChainChest());
            //AddItem(new DrowChainLegs());

            switch (Utility.Random(3))
            {
                case 0: AddItem(new Longsword()); break;
                case 1: AddItem(new Katana()); break;
                case 2: AddItem(new VikingSword()); break;
            }

            Item hair = new Item(Utility.RandomList(0x203B, 0x2049, 0x2048, 0x204A));
            hair.Hue = 1153;
            hair.Layer = Layer.Hair;
            hair.Movable = false;
            AddItem(hair);

            PackGold(500, 2500);
            PackArmor(2, 5, 0.8);
            PackWeapon(3, 5, 0.8);
            PackSlayer();
        }
		public void SpawnNightmare( Mobile target )
		{
			Map map = this.Map;

			if ( map == null )
				return;

			int newNightmare = 1;

			for ( int i = 0; i < newNightmare; ++i )
			{
				Nightmare Nightmare = new Nightmare();

				Nightmare.Team = this.Team;
				Nightmare.FightMode = FightMode.Closest;

				bool validLocation = false;
				Point3D loc = this.Location;

				for ( int j = 0; !validLocation && j < 10; ++j )
				{
					int x = X + Utility.Random( 3 ) - 1;
					int y = Y + Utility.Random( 3 ) - 1;
					int z = map.GetAverageZ( x, y );

					if ( validLocation = map.CanFit( x, y, this.Z, 16, false, false ) )
						loc = new Point3D( x, y, Z );
					else if ( validLocation = map.CanFit( x, y, z, 16, false, false ) )
						loc = new Point3D( x, y, z );
				}

				Nightmare.MoveToWorld( loc, map );
				Nightmare.Combatant = target;
			}
		}
예제 #7
0
        public void SummonCritters()
        {
            int    SummonRange;
            Mobile SummonTarget;
            Map    map = this.Map;

            if (map == null)
            {
                return;
            }

            int CritterNum  = Utility.Random(8);
            int newCritters = Utility.RandomMinMax(4, 8);
            int critters    = 0;

            foreach (Mobile m in this.GetMobilesInRange(15))
            {
                if (m is PredatorHellCat || m is FireSteed || m is Nightmare ||
                    m is FireGargoyle || m is HellHound || m is Gargoyle ||
                    m is LavaElemental || m is Efreet)
                {
                    ++critters;
                }
            }

            if (critters < 16)
            {
                for (int i = 0; i < newCritters; ++i)
                {
                    BaseCreature critter;

                    switch (CritterNum)
                    {
                    default:
                    case 0: critter = new PredatorHellCat(); break;

                    case 1: critter = new FireSteed(); break;

                    case 2: critter = new Nightmare(); break;

                    case 3: critter = new FireGargoyle(); break;

                    case 4: critter = new HellHound(); break;

                    case 5: critter = new Gargoyle(); break;

                    case 6: critter = new LavaElemental(); break;

                    case 7: critter = new Efreet(); break;
                    }

                    critter.Team = this.Team;

                    bool    validLocation = false;
                    Point3D loc           = this.Location;

                    for (int j = 0; !validLocation && j < 10; ++j)
                    {
                        int x = X + Utility.Random(8) - 1;
                        int y = Y + Utility.Random(8) - 1;
                        int z = map.GetAverageZ(x, y);

                        if (validLocation = map.CanFit(x, y, Z, 16, false, false))
                        {
                            loc = new Point3D(x, y, this.Z);
                        }
                        else if (validLocation = map.CanFit(x, y, z, 16, false, false))
                        {
                            loc = new Point3D(x, y, z);
                        }
                    }

                    critter.MoveToWorld(loc, map);
                }
            }
        }
예제 #8
0
        public DrowWarrior()
            : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            SpeechHue = Utility.RandomDyedHue();
            Title     = "Drow Guerreiro";
            Hue       = 902;

            if (this.Female = Utility.RandomBool())
            {
                Body = 0x191;
                Name = NameList.RandomName("female");
            }
            else
            {
                Body = 0x190;
                Name = NameList.RandomName("male");
            }

            SetStr(400, 800);
            SetDex(150, 175);
            SetInt(275, 325);

            SetHits(1400, 1600);
            SetDamage(33, 58);

            SetSkill(SkillName.MagicResist, 95.5, 127.5);
            SetSkill(SkillName.Swords, 95.5, 177.5);
            SetSkill(SkillName.Tactics, 95.5, 177.5);
            SetSkill(SkillName.Wrestling, 95.5, 177.5);
            SetSkill(SkillName.Meditation, 100.0, 177.5);
            SetSkill(SkillName.Magery, 100.0, 177.5);
            SetSkill(SkillName.Chivalry, 100.0, 177.5);

            Nightmare montaria = new Nightmare();

            montaria.Hue          = 33;
            montaria.Rider        = this;
            montaria.MinTameSkill = 115.1;

            Fame         = 2000;
            Karma        = -2000;
            VirtualArmor = 55;

            Item bodySash = new BodySash();

            bodySash.Hue = 422;
            AddItem(bodySash);

            //AddItem(new Piwafwi());
            AddItem(new Boots());
            //AddItem(new DrowRingmailGloves());
            //AddItem(new DrowChainChest());
            //AddItem(new DrowChainLegs());

            switch (Utility.Random(3))
            {
            case 0: AddItem(new Longsword()); break;

            case 1: AddItem(new Katana()); break;

            case 2: AddItem(new VikingSword()); break;
            }

            Item hair = new Item(Utility.RandomList(0x203B, 0x2049, 0x2048, 0x204A));

            hair.Hue     = 1153;
            hair.Layer   = Layer.Hair;
            hair.Movable = false;
            AddItem(hair);

            PackGold(500, 2500);
            PackArmor(2, 5, 0.8);
            PackWeapon(3, 5, 0.8);
            PackSlayer();
        }