public override void OnDoubleClick( Mobile from )
        {
            Type[] m_Reagents;
            m_Reagents = new Type[8];
            m_Reagents[0] =	Reagent.BlackPearl;
            m_Reagents[1] =	Reagent.Bloodmoss;
            m_Reagents[2] =	Reagent.MandrakeRoot;
            m_Reagents[3] =	Reagent.SulfurousAsh;
            m_Reagents[4] =	Reagent.SpidersSilk;
            m_Reagents[5] =	Reagent.Garlic;
            m_Reagents[6] =	Reagent.Ginseng;
            m_Reagents[7] =	Reagent.Nightshade;

            int[] m_Amounts;
            m_Amounts = new int[8];
            if (!(m_Amount > 0))
                m_Amount = 30;
            for ( int i = 0; i < 8; ++i )
                m_Amounts[i] = m_Amount;

             			BagOfReagents regBag = new BagOfReagents( m_Amount );
            if ((from.BankBox != null) && (from.BankBox.ConsumeTotal(m_Reagents, m_Amounts) == -1))
            {
                if ( !from.AddToBackpack( regBag ) )
                    regBag.Delete();
            } else from.SendMessage("You do not have enough reagents in your bank.");
        }
Exemple #2
0
        public override void OnDoubleClick( Mobile from )
        {
            BagOfReagents regBag = new BagOfReagents( 50 );

            if ( !from.AddToBackpack( regBag ) )
                regBag.Delete();
        }
		public void PackBag( Mobile from )
		{
			BagOfReagents bag = new BagOfReagents( AmountOfRegs );
			
			if ( !from.AddToBackpack( bag ) )
				bag.Delete();
		}
Exemple #4
0
        public StarterPack() : base()
        {
            Name = "Starter Pack";
            Hue  = 196;

            Item item = new MiniatureHorse();

            DropItem(item);
            item.X = 30;
            item.Y = 76;

            item = new BagOfReagents(50);
            DropItem(item);
            item.X = 71;
            item.Y = 55;

            Container bag = new Bag();

            bag.DropItem(new LeatherCap());
            bag.DropItem(new LeatherChest());
            bag.DropItem(new LeatherLegs());
            bag.DropItem(new LeatherGloves());
            bag.DropItem(new LeatherArms());
            bag.DropItem(new LeatherGorget());
            DropItem(bag);
            bag.X = 63;
            bag.Y = 75;

/*			if ( TestCenter.Enabled )
 *                      {
 *      //			item = new SmallBrickHouseDeed();
 *      //			DropItem( item );
 *      //			item.X = 23;
 *      //			item.Y = 53;
 *
 *                              item = new Spellbook( ulong.MaxValue );
 *                              item.LootType = LootType.Blessed;
 *                              DropItem( item );
 *                              item.X = 72;
 *                              item.Y = 92;
 *
 *                              item = new Runebook();
 *                              DropItem( item );
 *                              item.X = 93;
 *                              item.Y = 92;
 *
 *                              item = new EtherealLlama();
 *                              item.Name = "a beta testers ethereal llama";
 *                              DropItem( item );
 *                              item.X = 94;
 *                              item.Y = 34;
 *                      }
 *                      else
 *                      { */
            item = new BankCheck(1000);
            DropItem(item);
            item.X = 52;
            item.Y = 36;
            //}
        }
Exemple #5
0
        public override void OnDoubleClick(Mobile from)
        {
            BagOfReagents regBag = new BagOfReagents(50);

            if (!from.AddToBackpack(regBag))
            {
                regBag.Delete();
            }
        }
		public override void OnDoubleClick( Mobile from )
		{
            //Al:Added range and pedantic visibility check.
            if ( !from.InRange( GetWorldLocation(), 4 ) )
			{
				from.SendLocalizedMessage( 500446 ); // That is too far away.
			}
            else if ( (!this.Visible) || !from.InLOS(this.GetWorldLocation()) )
            {
                from.SendLocalizedMessage(502800); // You can't see that.
            }
            else
            {
                BagOfReagents regBag = new BagOfReagents( 50 );
			    if ( !from.AddToBackpack( regBag ) )
				    regBag.Delete();
            }
		}
		public override void OnDoubleClick( Mobile from )
		{
			Container pack = from.Backpack;
			if ( pack.ConsumeTotal( typeof( Gold ), 1800 ) )
			{
			BagOfReagents regBag = new BagOfReagents( 50 );

			if ( !from.AddToBackpack( regBag ) )
				regBag.Delete();
			}
			else
			{
			from.SendMessage( "You do not have enough money.");
			}



		}
		public override void OnDoubleClick( Mobile from )
		{
            //al: fix for missing range check
			if ( !from.InRange( GetWorldLocation(), 2 ) )
			{
				from.SendLocalizedMessage( 500446 ); // That is too far away.
			}
			else if ( from.BankBox.ConsumeTotal( typeof( Gold ), 2400 ) )
			{
                //Al: Moved Item creation here so that no internal waste items are created
                BagOfReagents regBag = new BagOfReagents(50);
                if (!from.AddToBackpack(regBag))
					regBag.Delete();
			}
			else
		  	{
			  	from.SendMessage( "Your do not have enough gold." );
		  	}
		  	return;
		}
Exemple #9
0
        public override void OnDoubleClick( Mobile from )
        {
            BagOfReagents regBag = new BagOfReagents( 50 );

            from.AddToBackpack( regBag );
        }
        public ForeverWelcomeBag() : base()
        {
            Name = "Forever Welcome Bag";
            Hue  = 196;

            Item item = new MiniatureHorse();

            DropItem(item);
            item.X = 30;
            item.Y = 76;

            item = new BagOfReagents(50);
            DropItem(item);
            item.X = 71;
            item.Y = 55;

            Container bag = new Bag();

            bag.DropItem(new LeatherCap());
            bag.DropItem(new LeatherChest());
            bag.DropItem(new LeatherLegs());
            bag.DropItem(new LeatherGloves());
            bag.DropItem(new LeatherArms());
            bag.DropItem(new LeatherGorget());
            DropItem(bag);
            bag.X = 63;
            bag.Y = 75;

            item      = new FireworksWand();
            item.Name = "Launch Day 2013";
            DropItem(item);
            item.X = 94;
            item.Y = 34;

            /*item = new BankCheck( 1000 );
             * DropItem( item );
             * item.X = 52;
             * item.Y = 36;*/

            item      = new HalfApron();
            item.Name = "Launch Day 2013";
            //item.loottype = Blessed;
            DropItem(item);
            item.X = 23;
            item.Y = 53;

            /*	if ( 1.00 > Utility.RandomDouble() )// 2 percent - multipy number x 100 to get percent
             *
             * switch (Utility.Random(5))
             * {
             *
             *      case 0:
             * PackItem = new Skirt();
             *      Name = "Launch Day 2013";
             *
             *      case 1:
             * Item = new Boots();
             *      Name = "Launch Day 2013";
             *      DropItem( item );
             *      item.X = 23;
             *      item.Y = 53;
             *
             *  case 2:
             * Item = new StrawHat();
             *      Name = "Launch Day 2013";
             *      DropItem( item );
             *      item.X = 23;
             *      item.Y = 53;
             *
             *      case 3:
             * Item = new Bandana();
             *      Name = "Launch Day 2013";
             *      DropItem( item );
             *      item.X = 23;
             *      item.Y = 53;
             *
             * case 4:*/
        }
Exemple #11
0
        public static void GetListOfItems(Mobile from)
        {
            //List of Item Locations Message
            //***Put item into Backpack
            #region Backpack
            from.SendMessage("You will find new items in your Backpack.");
            from.Backpack.AddItem(new KillBook());                          //http://www.runuo.com/forums/custom-script-releases/80034-book-kills.html
            from.Backpack.AddItem(new AnNoxGuideBook());
            #endregion

            //***Drop item on the Ground
            #region Ground
            //put item under player on the ground
            from.SendMessage("You will find new items on the ground near by.");
            new SewingKit().MoveToWorld(from.Location, from.Map);
            new Bible().MoveToWorld(from.Location, from.Map);               //http://www.runuo.com/forums/custom-script-releases/71826-runuo-2-0-rc1-lokais-xml-bible-system.html
            new BeltranGuideBook().MoveToWorld(from.Location, from.Map);    //http://www.runuo.com/forums/runuo-post-archive/34074-osi-library-books.html
            new PrimerArmsBook().MoveToWorld(from.Location, from.Map);      //http://www.runuo.com/forums/runuo-post-archive/34074-osi-library-books.html

            //put item near player on the ground
            new BagOfDresses().MoveToWorld(new Point3D(from.X + Utility.RandomMinMax(-5, 5), from.Y + Utility.RandomMinMax(-5, 5), from.Z), from.Map);
            new BagOfJewlery().MoveToWorld(new Point3D(from.X + Utility.RandomMinMax(-5, 5), from.Y + Utility.RandomMinMax(-5, 5), from.Z), from.Map);
            new BagOfShirts().MoveToWorld(new Point3D(from.X + Utility.RandomMinMax(-5, 5), from.Y + Utility.RandomMinMax(-5, 5), from.Z), from.Map);
            new BagOfPants().MoveToWorld(new Point3D(from.X + Utility.RandomMinMax(-5, 5), from.Y + Utility.RandomMinMax(-5, 5), from.Z), from.Map);
            new BagOfShoes().MoveToWorld(new Point3D(from.X + Utility.RandomMinMax(-5, 5), from.Y + Utility.RandomMinMax(-5, 5), from.Z), from.Map);
            new BagOfCloaks().MoveToWorld(new Point3D(from.X + Utility.RandomMinMax(-5, 5), from.Y + Utility.RandomMinMax(-5, 5), from.Z), from.Map);
            new BagOfHats().MoveToWorld(new Point3D(from.X + Utility.RandomMinMax(-5, 5), from.Y + Utility.RandomMinMax(-5, 5), from.Z), from.Map);
            #endregion

            //***Put item into Bank
            #region Bank
            from.SendMessage("You will find new items in your Bank.");
            BankBox bank = from.BankBox;
            Container cont;

            // Begin box of money
            cont = new WoodenBox();
            cont.Name = "Money Box";
            cont.ItemID = 0xE7D;
            cont.Hue = 0x489;

            PlaceItemIn(cont, 64, 51, new BankCheck(5000));
            PlaceItemIn(cont, 16, 115, new Factions.Silver(1000));
            PlaceItemIn(cont, 34, 115, new Gold(1000));

            PlaceItemIn(bank, 18, 169, cont);

            // Begin bag of archery ammo
            cont = new Bag();
            cont.Name = "Bag Of Archery Ammo";

            PlaceItemIn(cont, 48, 76, new Arrow(50));
            PlaceItemIn(cont, 72, 76, new Bolt(50));

            PlaceItemIn(bank, 118, 124, cont);

            // Begin bag of raw materials
            cont = new Bag();
            cont.Hue = 0x835;
            cont.Name = "Raw Materials Bag";

            PlaceItemIn(cont, 92, 84, new Leather(50));
            PlaceItemIn(cont, 30, 118, new Cloth(50));
            PlaceItemIn(cont, 30, 84, new Board(50));
            PlaceItemIn(cont, 57, 80, new BlankScroll(50));

            PlaceItemIn(bank, 98, 169, cont);

            // Begin bag of spell casting stuff
            cont = new Backpack();
            cont.Hue = 0x480;
            cont.Name = "Spell Casting Stuff";

            PlaceItemIn(cont, 45, 105, new Spellbook(UInt64.MaxValue));
            PlaceItemIn(cont, 65, 105, new NecromancerSpellbook((UInt64)0xFFFF));
            PlaceItemIn(cont, 85, 105, new BookOfChivalry((UInt64)0x3FF));
            PlaceItemIn(cont, 105, 105, new BookOfBushido());	//Default ctor = full
            PlaceItemIn(cont, 125, 105, new BookOfNinjitsu()); //Default ctor = full

            Runebook runebook = new Runebook(10);
            runebook.CurCharges = runebook.MaxCharges;
            PlaceItemIn(cont, 145, 105, runebook);

            Item toHue = new BagOfReagents(50);
            toHue.Hue = 0x2D;
            toHue.Name = "Bag of Basic Reagents";
            PlaceItemIn(cont, 45, 150, toHue);

            toHue = new BagOfNecroReagents(50);
            toHue.Hue = 0x488;
            toHue.Name = "Bag of Necro Reagents";
            PlaceItemIn(cont, 65, 150, toHue);

            toHue = new BagOfAllReagents(50);
            toHue.Hue = 0x2D;
            toHue.Name = "Bag of All Reagents";
            PlaceItemIn(cont, 140, 150, toHue);

            for (int i = 0; i < 9; ++i)
                PlaceItemIn(cont, 45 + (i * 10), 75, new RecallRune());

            PlaceItemIn(cont, 141, 74, new FireHorn());

            PlaceItemIn(bank, 78, 169, cont);
            #endregion
        }
		private static void FillBankAOS( Mobile m )
		{
			BankBox bank = m.BankBox;

			if ( bank == null )
				return;

			// The new AOS bankboxes don't have powerscrolls, they are automatically 'applied':

			for ( int i = 0; i < PowerScroll.Skills.Length; ++i )
				m.Skills[PowerScroll.Skills[ i ]].Cap = 120.0;

			m.StatCap = 225;


			Container cont;


			//egin box of money
			cont = new WoodenBox();
			cont.ItemID = 0xE7D;
			cont.Hue = 0x489;

			PlaceItemIn( cont, 16, 51, new BankCheck( 500000 ) );
			//PlaceItemIn( cont, 28, 51, new BankCheck( 250000 ) );
			//PlaceItemIn( cont, 40, 51, new BankCheck( 100000 ) );
			//PlaceItemIn( cont, 52, 51, new BankCheck( 100000 ) );
			//PlaceItemIn( cont, 64, 51, new BankCheck(  50000 ) );

			//PlaceItemIn( cont, 16, 115, new Factions.Silver( 9000 ) );
			//PlaceItemIn( cont, 34, 115, new Gold( 60000 ) );

			//PlaceItemIn( bank, 18, 169, cont );
			// End box of money


			// Begin bag of potion kegs
			//cont = new Backpack();
			//cont.Name = "Various Potion Kegs";

			//PlaceItemIn( cont,  45, 149, MakePotionKeg( PotionEffect.CureGreater, 0x2D ) );
			//PlaceItemIn( cont,  69, 149, MakePotionKeg( PotionEffect.HealGreater, 0x499 ) );
			//PlaceItemIn( cont,  93, 149, MakePotionKeg( PotionEffect.PoisonDeadly, 0x46 ) );
			//PlaceItemIn( cont, 117, 149, MakePotionKeg( PotionEffect.RefreshTotal, 0x21 ) );
			//PlaceItemIn( cont, 141, 149, MakePotionKeg( PotionEffect.ExplosionGreater, 0x74 ) );

			//PlaceItemIn( cont, 93, 82, new Bottle( 1000 ) );

			//PlaceItemIn( bank, 53, 169, cont );
			// End bag of potion kegs


			// Begin bag of tools
			cont = new Bag();
			cont.Name = "Tool Bag";

			PlaceItemIn( cont, 30,  35, new TinkerTools( 1000 ) );
			PlaceItemIn( cont, 60,  35, new HousePlacementTool() );
			PlaceItemIn( cont, 90,  35, new DovetailSaw( 1000 ) );
			PlaceItemIn( cont, 30,  68, new Scissors() );
			PlaceItemIn( cont, 45,  68, new MortarPestle( 1000 ) );
			PlaceItemIn( cont, 75,  68, new ScribesPen( 1000 ) );
			PlaceItemIn( cont, 90,  68, new SmithHammer( 1000 ) );
			PlaceItemIn( cont, 30, 118, new TwoHandedAxe() );
			PlaceItemIn( cont, 60, 118, new FletcherTools( 1000 ) );
			PlaceItemIn( cont, 90, 118, new SewingKit( 1000 ) );

			PlaceItemIn( cont, 36, 51, new RunicHammer( CraftResource.DullCopper, 50 ) );
			PlaceItemIn( cont, 42, 51, new RunicHammer( CraftResource.ShadowIron, 45 ) );
			PlaceItemIn( cont, 48, 51, new RunicHammer( CraftResource.Copper, 40 ) );
			PlaceItemIn( cont, 54, 51, new RunicHammer( CraftResource.Bronze, 35 ) );
			PlaceItemIn( cont, 61, 51, new RunicHammer( CraftResource.Gold, 30 ) );
			PlaceItemIn( cont, 67, 51, new RunicHammer( CraftResource.Agapite, 25 ) );
			PlaceItemIn( cont, 73, 51, new RunicHammer( CraftResource.Verite, 20 ) );
			PlaceItemIn( cont, 79, 51, new RunicHammer( CraftResource.Valorite, 15 ) );

			PlaceItemIn( cont, 36, 55, new RunicSewingKit( CraftResource.SpinedLeather, 45 ) );
			PlaceItemIn( cont, 42, 55, new RunicSewingKit( CraftResource.HornedLeather, 30 ) );
			PlaceItemIn( cont, 48, 55, new RunicSewingKit( CraftResource.BarbedLeather, 15 ) );

			PlaceItemIn( bank, 118, 169, cont );
			// End bag of tools


			// Begin bag of archery ammo
			cont = new Bag();
			cont.Name = "Bag Of Archery Ammo";

			PlaceItemIn( cont, 48, 76, new Arrow( 5000 ) );
			PlaceItemIn( cont, 72, 76, new Bolt( 5000 ) );

			PlaceItemIn( bank, 118, 124, cont );
			// End bag of archery ammo


			// Begin bag of treasure maps
			cont = new Bag();
			cont.Name = "Bag Of Treasure Maps";

			PlaceItemIn( cont, 30, 35, new TreasureMap( 1, Map.Felucca ) );
			PlaceItemIn( cont, 45, 35, new TreasureMap( 2, Map.Felucca ) );
			PlaceItemIn( cont, 60, 35, new TreasureMap( 3, Map.Felucca ) );
			PlaceItemIn( cont, 75, 35, new TreasureMap( 4, Map.Felucca ) );
			PlaceItemIn( cont, 90, 35, new TreasureMap( 5, Map.Felucca ) );
			PlaceItemIn( cont, 90, 35, new TreasureMap( 6, Map.Felucca ) );

			PlaceItemIn( cont, 30, 50, new TreasureMap( 1, Map.Felucca ) );
			PlaceItemIn( cont, 45, 50, new TreasureMap( 2, Map.Felucca ) );
			PlaceItemIn( cont, 60, 50, new TreasureMap( 3, Map.Felucca ) );
			PlaceItemIn( cont, 75, 50, new TreasureMap( 4, Map.Felucca ) );
			PlaceItemIn( cont, 90, 50, new TreasureMap( 5, Map.Felucca ) );
			PlaceItemIn( cont, 90, 50, new TreasureMap( 6, Map.Felucca ) );

			PlaceItemIn( cont, 55, 100, new Lockpick( 30 ) );
			PlaceItemIn( cont, 60, 100, new Pickaxe() );

			PlaceItemIn( bank, 98, 124, cont );
			// End bag of treasure maps


			// Begin bag of raw materials
			cont = new Bag();
			cont.Hue = 0x835;
			cont.Name = "Raw Materials Bag";

			PlaceItemIn( cont, 92, 60, new BarbedLeather( 5000 ) );
			PlaceItemIn( cont, 92, 68, new HornedLeather( 5000 ) );
			PlaceItemIn( cont, 92, 76, new SpinedLeather( 5000 ) );
			PlaceItemIn( cont, 92, 84, new Leather( 5000 ) );

			PlaceItemIn( cont, 30, 118, new Cloth( 5000 ) );
			PlaceItemIn( cont, 30,  84, new Board( 5000 ) );
			PlaceItemIn( cont, 57,  80, new BlankScroll( 500 ) );

			PlaceItemIn( cont, 30,  35, new DullCopperIngot( 5000 ) );
			PlaceItemIn( cont, 37,  35, new ShadowIronIngot( 5000 ) );
			PlaceItemIn( cont, 44,  35, new CopperIngot( 5000 ) );
			PlaceItemIn( cont, 51,  35, new BronzeIngot( 5000 ) );
			PlaceItemIn( cont, 58,  35, new GoldIngot( 5000 ) );
			PlaceItemIn( cont, 65,  35, new AgapiteIngot( 5000 ) );
			PlaceItemIn( cont, 72,  35, new VeriteIngot( 5000 ) );
			PlaceItemIn( cont, 79,  35, new ValoriteIngot( 5000 ) );
			PlaceItemIn( cont, 86,  35, new IronIngot( 5000 ) );

			PlaceItemIn( cont, 30,  59, new RedScales( 5000 ) );
			PlaceItemIn( cont, 36,  59, new YellowScales( 5000 ) );
			PlaceItemIn( cont, 42,  59, new BlackScales( 5000 ) );
			PlaceItemIn( cont, 48,  59, new GreenScales( 5000 ) );
			PlaceItemIn( cont, 54,  59, new WhiteScales( 5000 ) );
			PlaceItemIn( cont, 60,  59, new BlueScales( 5000 ) );

			PlaceItemIn( bank, 98, 169, cont );
			// End bag of raw materials


			// Begin bag of spell casting stuff
			cont = new Backpack();
			cont.Hue = 0x480;
			cont.Name = "Spell Casting Stuff";

			PlaceItemIn( cont, 45, 105, new Spellbook( UInt64.MaxValue ) );
			PlaceItemIn( cont, 65, 105, new NecromancerSpellbook( (UInt64)0xFFFF ) );
			PlaceItemIn( cont, 85, 105, new BookOfChivalry( (UInt64)0x3FF ) );
			PlaceItemIn( cont, 105, 105, new BookOfBushido() );	//Default ctor = full
			PlaceItemIn( cont, 125, 105, new BookOfNinjitsu() ); //Default ctor = full

			Runebook runebook = new Runebook( 10 );
			runebook.CurCharges = runebook.MaxCharges;
			PlaceItemIn( cont, 105, 105, runebook );

			Item toHue = new BagOfReagents( 150 );
			toHue.Hue = 0x2D;
			PlaceItemIn( cont, 45, 150, toHue );

			toHue = new BagOfNecroReagents( 150 );
			toHue.Hue = 0x488;
			PlaceItemIn( cont, 65, 150, toHue );

			PlaceItemIn( cont, 140, 150, new BagOfAllReagents( 500 ) );

			for ( int i = 0; i < 9; ++i )
				PlaceItemIn( cont, 45 + (i * 10), 75, new RecallRune() );

			PlaceItemIn( cont, 141, 74, new FireHorn() );

			PlaceItemIn( bank, 78, 169, cont );
			// End bag of spell casting stuff


			// Begin bag of ethereals
			cont = new Backpack();
			cont.Hue = 0x490;
			cont.Name = "Bag Of Ethy's!";

			PlaceItemIn( cont, 45, 66, new EtherealHorse() );
			PlaceItemIn( cont, 69, 82, new EtherealOstard() );
			PlaceItemIn( cont, 93, 99, new EtherealLlama() );
			PlaceItemIn( cont, 117, 115, new EtherealKirin() );
			PlaceItemIn( cont, 45, 132, new EtherealUnicorn() );
			PlaceItemIn( cont, 69, 66, new EtherealRidgeback() );
			PlaceItemIn( cont, 93, 82, new EtherealSwampDragon() );
			PlaceItemIn( cont, 117, 99, new EtherealBeetle() );

			PlaceItemIn( bank, 38, 124, cont );
			// End bag of ethereals


			// Begin first bag of artifacts
			cont = new Backpack();
			cont.Hue = 0x48F;
			cont.Name = "Bag of Artifacts";

			PlaceItemIn( cont, 45, 66, new TitansHammer() );
			PlaceItemIn( cont, 69, 82, new InquisitorsResolution() );
			PlaceItemIn( cont, 93, 99, new BladeOfTheRighteous() );
			PlaceItemIn( cont, 117, 115, new ZyronicClaw() );

			PlaceItemIn( bank, 58, 124, cont );
			// End first bag of artifacts


			// Begin second bag of artifacts
			cont = new Backpack();
			cont.Hue = 0x48F;
			cont.Name = "Bag of Artifacts";


			PlaceItemIn( bank, 78, 124, cont );
			// End second bag of artifacts

			// Begin bag of minor artifacts
			cont = new Backpack();
			cont.Hue = 0x48F;
			cont.Name = "Bag of Minor Artifacts";




			/*	TODO: Make MiBs that have 100% chance of a Ancient SoS
			for( int i = 0; i < 10; i++ )
                PlaceItemIn( cont, 117, 128, new MessageInABottle() );
			*/

			PlaceItemIn( bank, 18, 124, cont );
		}
        private static void FillBankAOS(Mobile m)
        {
            BankBox bank = m.BankBox;

            // The new AOS bankboxes don't have powerscrolls, they are automatically 'applied':

            //for ( int i = 0; i < PowerScroll.Skills.Length; ++i )
            //m.Skills[PowerScroll.Skills[ i ]].Cap = 120.0;

            m.StatCap = 325;


            Container cont;

            //Here is where you can add new stuff to bank box, but need to follow the numbers...
            // Begin box of money
            cont = new WoodenBox();
            cont.ItemID = 0xE7D;
            cont.Hue = 0x489;
            //Example...PlaceItemIn(cont, 16, 51, new VikingSword() );See how first number is
            //always 12 away...
            PlaceItemIn(cont, 28, 51, new Scissors());
            PlaceItemIn(cont, 40, 51, new EtherealUnicorn());
            PlaceItemIn(cont, 52, 51, new EtherealHorse());
            PlaceItemIn(cont, 64, 51, new BankCheck(100000));
            //PlaceItemIn(cont, 76, 51, new NewCharStartupArmorBag());           
            ///PlaceItemIn(cont, 88, 51, new LargeMarbleDeed());
         
            

            PlaceItemIn(bank, 18, 169, cont);
            // End box of money


            // Begin bag of potion kegs
            /*cont = new Backpack();
            cont.Name = "Various Potion Kegs";

            PlaceItemIn( cont,  45, 149, MakePotionKeg( PotionEffect.CureGreater, 0x2D ) );
            PlaceItemIn( cont,  69, 149, MakePotionKeg( PotionEffect.HealGreater, 0x499 ) );
            PlaceItemIn( cont,  93, 149, MakePotionKeg( PotionEffect.PoisonDeadly, 0x46 ) );
            PlaceItemIn( cont, 117, 149, MakePotionKeg( PotionEffect.RefreshTotal, 0x21 ) );
            PlaceItemIn( cont, 141, 149, MakePotionKeg( PotionEffect.ExplosionGreater, 0x74 ) );

            PlaceItemIn( cont, 93, 82, new Bottle( 1000 ) );

            PlaceItemIn( bank, 53, 169, cont );
            // End bag of potion kegs


            // Begin bag of tools
            cont = new Bag();
            cont.Name = "Tool Bag";

            PlaceItemIn( cont, 30,  35, new TinkerTools( 1000 ) );
            PlaceItemIn( cont, 60,  35, new HousePlacementTool() );
            PlaceItemIn( cont, 90,  35, new DovetailSaw( 1000 ) );
            PlaceItemIn( cont, 30,  68, new Scissors() );
            PlaceItemIn( cont, 45,  68, new MortarPestle( 1000 ) );
            PlaceItemIn( cont, 75,  68, new ScribesPen( 1000 ) );
            PlaceItemIn( cont, 90,  68, new SmithHammer( 1000 ) );
            PlaceItemIn( cont, 30, 118, new TwoHandedAxe() );
            PlaceItemIn( cont, 60, 118, new FletcherTools( 1000 ) );
            PlaceItemIn( cont, 90, 118, new SewingKit( 1000 ) );

            PlaceItemIn( cont, 36, 51, new RunicHammer( CraftResource.DullCopper, 1000 ) );
            PlaceItemIn( cont, 42, 51, new RunicHammer( CraftResource.ShadowIron, 1000 ) );
            PlaceItemIn( cont, 48, 51, new RunicHammer( CraftResource.Copper, 1000 ) );
            PlaceItemIn( cont, 54, 51, new RunicHammer( CraftResource.Bronze, 1000 ) );
            PlaceItemIn( cont, 61, 51, new RunicHammer( CraftResource.Gold, 1000 ) );
            PlaceItemIn( cont, 67, 51, new RunicHammer( CraftResource.Agapite, 1000 ) );
            PlaceItemIn( cont, 73, 51, new RunicHammer( CraftResource.Verite, 1000 ) );
            PlaceItemIn( cont, 79, 51, new RunicHammer( CraftResource.Valorite, 1000 ) );

            PlaceItemIn( cont, 36, 55, new RunicSewingKit( CraftResource.SpinedLeather, 1000 ) );
            PlaceItemIn( cont, 42, 55, new RunicSewingKit( CraftResource.HornedLeather, 1000 ) );
            PlaceItemIn( cont, 48, 55, new RunicSewingKit( CraftResource.BarbedLeather, 1000 ) );

            PlaceItemIn( bank, 118, 169, cont );
            // End bag of tools


            // Begin bag of archery ammo
            cont = new Bag();
            cont.Name = "Bag Of Archery Ammo";

            PlaceItemIn( cont, 48, 76, new Arrow( 5000 ) );
            PlaceItemIn( cont, 72, 76, new Bolt( 5000 ) );

            PlaceItemIn( bank, 118, 124, cont );
            // End bag of archery ammo


            // Begin bag of treasure maps
            cont = new Bag();
            cont.Name = "Bag Of Treasure Maps";

            PlaceItemIn( cont, 30, 35, new TreasureMap( 1, Map.Trammel ) );
            PlaceItemIn( cont, 45, 35, new TreasureMap( 2, Map.Trammel ) );
            PlaceItemIn( cont, 60, 35, new TreasureMap( 3, Map.Trammel ) );
            PlaceItemIn( cont, 75, 35, new TreasureMap( 4, Map.Trammel ) );
            PlaceItemIn( cont, 90, 35, new TreasureMap( 5, Map.Trammel ) );
            PlaceItemIn( cont, 90, 35, new TreasureMap( 6, Map.Trammel ) );

            PlaceItemIn( cont, 30, 50, new TreasureMap( 1, Map.Trammel ) );
            PlaceItemIn( cont, 45, 50, new TreasureMap( 2, Map.Trammel ) );
            PlaceItemIn( cont, 60, 50, new TreasureMap( 3, Map.Trammel ) );
            PlaceItemIn( cont, 75, 50, new TreasureMap( 4, Map.Trammel ) );
            PlaceItemIn( cont, 90, 50, new TreasureMap( 5, Map.Trammel ) );
            PlaceItemIn( cont, 90, 50, new TreasureMap( 6, Map.Trammel ) );

            PlaceItemIn( cont, 55, 100, new Lockpick( 30 ) );
            PlaceItemIn( cont, 60, 100, new Pickaxe() );

            PlaceItemIn( bank, 98, 124, cont );
            // End bag of treasure maps


            // Begin bag of raw materials
            cont = new Bag();
            cont.Hue = 0x835;
            cont.Name = "Raw Materials Bag";

            PlaceItemIn( cont, 92, 60, new BarbedLeather( 5000 ) );
            PlaceItemIn( cont, 92, 68, new HornedLeather( 5000 ) );
            PlaceItemIn( cont, 92, 76, new SpinedLeather( 5000 ) );
            PlaceItemIn( cont, 92, 84, new Leather( 5000 ) );

            PlaceItemIn( cont, 30, 118, new Cloth( 5000 ) );
            PlaceItemIn( cont, 30,  84, new Board( 5000 ) );
            PlaceItemIn( cont, 57,  80, new BlankScroll( 500 ) );

            PlaceItemIn( cont, 30,  35, new DullCopperIngot( 5000 ) );
            PlaceItemIn( cont, 37,  35, new ShadowIronIngot( 5000 ) );
            PlaceItemIn( cont, 44,  35, new CopperIngot( 5000 ) );
            PlaceItemIn( cont, 51,  35, new BronzeIngot( 5000 ) );
            PlaceItemIn( cont, 58,  35, new GoldIngot( 5000 ) );
            PlaceItemIn( cont, 65,  35, new AgapiteIngot( 5000 ) );
            PlaceItemIn( cont, 72,  35, new VeriteIngot( 5000 ) );
            PlaceItemIn( cont, 79,  35, new ValoriteIngot( 5000 ) );
            PlaceItemIn( cont, 86,  35, new IronIngot( 5000 ) );

            PlaceItemIn( cont, 30,  59, new RedScales( 5000 ) );
            PlaceItemIn( cont, 36,  59, new YellowScales( 5000 ) );
            PlaceItemIn( cont, 42,  59, new BlackScales( 5000 ) );
            PlaceItemIn( cont, 48,  59, new GreenScales( 5000 ) );
            PlaceItemIn( cont, 54,  59, new WhiteScales( 5000 ) );
            PlaceItemIn( cont, 60,  59, new BlueScales( 5000 ) );

            PlaceItemIn( bank, 98, 169, cont );*/
            // End bag of raw materials


            // Begin bag of spell casting stuff
            cont = new Backpack();
            cont.Hue = 0x480;
            cont.Name = "Spell Casting Stuff";

            //PlaceItemIn(cont, 45, 105, new Spellbook(UInt64.MaxValue));
            //PlaceItemIn(cont, 65, 105, new NecromancerSpellbook((UInt64)0xFFFF));
            PlaceItemIn( cont, 85, 105, new RecallRune(10) );
            //PlaceItemIn( cont, 105, 105, new BookOfBushido() );	//Default ctor = full
            //PlaceItemIn( cont, 125, 105, new BookOfNinjitsu() ); //Default ctor = full

            Runebook runebook = new Runebook(10);
            runebook.CurCharges = runebook.MaxCharges;
            PlaceItemIn(cont, 145, 105, runebook);

            Item toHue = new BagOfReagents(50);
            toHue.Hue = 0x2D;
            PlaceItemIn(cont, 45, 150, toHue);

            toHue = new BagOfNecroReagents(50);
            toHue.Hue = 0x488;
            PlaceItemIn(cont, 65, 150, toHue);

            //PlaceItemIn( cont, 140, 150, new BagOfAllReagents( 500 ) );

            //for (int i = 0; i < 9; ++i)
                //PlaceItemIn( cont, 45 + (i * 10), 75, new RecallRune() );

                //PlaceItemIn( cont, 141, 74, new FireHorn() );

                PlaceItemIn(bank, 78, 169, cont);

        }
		public StarterPack() : base()
		{
			Name = "Welcome bag";
			Hue = 196;

			Item item = new BankCheck(100);
			DropItem( item );
			item.X = 53;
			item.Y = 36; 

			item = new BagOfReagents( 50 );
			DropItem( item );
			item.X = 71;
			item.Y = 55;

		    Container bag = new Bag();
			bag.DropItem( new LeatherCap() );
			bag.DropItem( new LeatherChest() );
			bag.DropItem( new LeatherLegs() );
			bag.DropItem( new LeatherGloves() );
			bag.DropItem( new LeatherArms() );
			bag.DropItem( new LeatherGorget() );
			DropItem( bag );
			bag.X = 63;
			bag.Y = 75;

			  /*  item = new HalfApron ();
				item.LootType = LootType.Blessed;
                item.Name = "Launch Day 2013";
				DropItem( item );
				item.X = 72;
				item.Y = 92;

				item = new FireworksWand();
				item.Name = "Launch Day 2013";
				DropItem( item );
				item.X = 94;
				item.Y = 34;*/

/*			if ( TestCenter.Enabled )
			{
	//			item = new SmallBrickHouseDeed();
	//			DropItem( item );
	//			item.X = 23;
	//			item.Y = 53; */

				

			/*	item = new Runebook();
				DropItem( item );
				item.X = 93;
				item.Y = 92;

				item = new EtherealLlama();
				item.Name = "a beta testers ethereal llama";
				DropItem( item );
				item.X = 94;
				item.Y = 34;
			}
			else
			{ */
			//	item = new BankCheck( 1000 );
			//	DropItem( item );
			//	item.X = 52;
			//	item.Y = 36;
			//}
		}
Exemple #15
0
        public override void OnDoubleClick(Mobile from)
        {
            BagOfReagents regBag = new BagOfReagents(50);

            from.AddToBackpack(regBag);
        }
		private static void AddSkillItems(SkillName skill, Mobile m, Expansion e)
		{
			bool elf = (m.Race == Race.Elf);

			switch (skill)
			{
				case SkillName.Alchemy:
					{
						PackItem(new Bottle(4), e);
						PackItem(new MortarPestle(), e);

						int hue = Utility.RandomPinkHue();

						if (elf)
						{
							if (m.Female)
							{
								EquipItem(new FemaleElvenRobe(hue), e);
							}
							else
							{
								EquipItem(new MaleElvenRobe(hue), e);
							}
						}
						else
						{
							EquipItem(new Robe(Utility.RandomPinkHue()), e);
						}
						break;
					}
				case SkillName.Anatomy:
					{
						PackItem(new Bandage(3), e);

						int hue = Utility.RandomYellowHue();

						if (elf)
						{
							if (m.Female)
							{
								EquipItem(new FemaleElvenRobe(hue), e);
							}
							else
							{
								EquipItem(new MaleElvenRobe(hue), e);
							}
						}
						else
						{
							EquipItem(new Robe(Utility.RandomPinkHue()), e);
						}
						break;
					}
				case SkillName.AnimalLore:
					{
						int hue = Utility.RandomBlueHue();

						if (elf)
						{
							EquipItem(new WildStaff(), e);

							if (m.Female)
							{
								EquipItem(new FemaleElvenRobe(hue), e);
							}
							else
							{
								EquipItem(new MaleElvenRobe(hue), e);
							}
						}
						else
						{
							EquipItem(new ShepherdsCrook(), e);
							EquipItem(new Robe(hue), e);
						}
						break;
					}
				case SkillName.Archery:
					{
						PackItem(new Arrow(50), e);

						if (elf)
						{
							EquipItem(new ElvenCompositeLongbow(), e);
						}
						else
						{
							EquipItem(new Bow(), e);
						}

						break;
					}
				case SkillName.ArmsLore:
					{
						if (elf)
						{
							switch (Utility.Random(3))
							{
								case 0:
									EquipItem(new Leafblade(), e);
									break;
								case 1:
									EquipItem(new RuneBlade(), e);
									break;
								case 2:
									EquipItem(new DiamondMace(), e);
									break;
							}
						}
						else
						{
							switch (Utility.Random(3))
							{
								case 0:
									EquipItem(new Kryss(), e);
									break;
								case 1:
									EquipItem(new Katana(), e);
									break;
								case 2:
									EquipItem(new Club(), e);
									break;
							}
						}

						break;
					}
				case SkillName.Begging:
					{
						if (elf)
						{
							EquipItem(new WildStaff(), e);
						}
						else
						{
							EquipItem(new GnarledStaff(), e);
						}
						break;
					}
				case SkillName.Blacksmith:
					{
						PackItem(new Tongs(), e);
						PackItem(new Pickaxe(), e);
						PackItem(new Pickaxe(), e);
						PackItem(new IronIngot(50), e);
						EquipItem(new HalfApron(Utility.RandomYellowHue()), e);
						break;
					}
				case SkillName.Fletching:
					{
						PackItem(new Board(14), e);
						PackItem(new Feather(5), e);
						PackItem(new Shaft(5), e);
						break;
					}
				case SkillName.Camping:
					{
						PackItem(new Bedroll(), e);
						PackItem(new Kindling(5), e);
						break;
					}
				case SkillName.Carpentry:
					{
						PackItem(new Board(10), e);
						PackItem(new Saw(), e);
						EquipItem(new HalfApron(Utility.RandomYellowHue()), e);
						break;
					}
				case SkillName.Cartography:
					{
						PackItem(new BlankMap(), e);
						PackItem(new BlankMap(), e);
						PackItem(new BlankMap(), e);
						PackItem(new BlankMap(), e);
						PackItem(new Sextant(), e);
						break;
					}
				case SkillName.Cooking:
					{
						PackItem(new Kindling(2), e);
						PackItem(new RawLambLeg(), e);
						PackItem(new RawChickenLeg(), e);
						PackItem(new RawFishSteak(), e);
						PackItem(new SackFlour(), e);
						PackItem(new Pitcher(BeverageType.Water), e);
						break;
					}
				case SkillName.DetectHidden:
					{
						EquipItem(new Cloak(997), e);
						break;
					}
				case SkillName.Discordance:
					{
						PackInstrument(e);
						break;
					}
				case SkillName.Fencing:
					{
						if (elf)
						{
							EquipItem(new Leafblade(), e);
						}
						else
						{
							EquipItem(new Kryss(), e);
						}

						break;
					}
				case SkillName.Fishing:
					{
						EquipItem(new FishingPole(), e);

						int hue = Utility.RandomYellowHue();

						if (elf)
						{
							Item i = new Circlet();
							i.Hue = hue;
							EquipItem(i, e);
						}
						else
						{
							EquipItem(new FloppyHat(Utility.RandomYellowHue()), e);
						}

						break;
					}
				case SkillName.Healing:
					{
						PackItem(new Bandage(50), e);
						PackItem(new Scissors(), e);
						break;
					}
				case SkillName.Herding:
					{
						if (elf)
						{
							EquipItem(new WildStaff(), e);
						}
						else
						{
							EquipItem(new ShepherdsCrook(), e);
						}

						break;
					}
				case SkillName.Hiding:
					{
						EquipItem(new Cloak(997), e);
						break;
					}
				case SkillName.Inscribe:
					{
						PackItem(new BlankScroll(2), e);
						PackItem(new BlueBook(), e);
						break;
					}
				case SkillName.ItemID:
					{
						if (elf)
						{
							EquipItem(new WildStaff(), e);
						}
						else
						{
							EquipItem(new GnarledStaff(), e);
						}
						break;
					}
				case SkillName.Lockpicking:
					{
						PackItem(new Lockpick(20), e);
						break;
					}
				case SkillName.Lumberjacking:
					{
						EquipItem(new Hatchet(), e);
						break;
					}
				case SkillName.Macing:
					{
						if (elf)
						{
							EquipItem(new DiamondMace(), e);
						}
						else
						{
							EquipItem(new Club(), e);
						}

						break;
					}
				case SkillName.Magery:
					{
						var regs = new BagOfReagents(50);
						/*
						if (e < Expansion.AOS)
						{
							foreach (Item item in regs.Items)
							{
								item.LootType = LootType.Newbied;
							}
						}
						*/
						PackItem(regs, e);

						regs.LootType = LootType.Regular;

						PackScroll(0, e);
						PackScroll(1, e);
						PackScroll(2, e);

						// All characters get a spellbook
						/*
						Spellbook book = new Spellbook((ulong)0xFFFFFFFF);
						book.LootType = LootType.Newbied;
						EquipItem(book, e);
						*/

						if (elf)
						{
							EquipItem(new Circlet(), e);

							if (m.Female)
							{
								EquipItem(new FemaleElvenRobe(Utility.RandomBlueHue()), e);
							}
							else
							{
								EquipItem(new MaleElvenRobe(Utility.RandomBlueHue()), e);
							}
						}
						else
						{
							EquipItem(new WizardsHat(), e);
							EquipItem(new Robe(Utility.RandomBlueHue()), e);
						}

						break;
					}
				case SkillName.Mining:
					{
						PackItem(new Pickaxe(), e);
						break;
					}
				case SkillName.Musicianship:
					{
						PackInstrument(e);
						break;
					}
				case SkillName.Peacemaking:
					{
						PackInstrument(e);
						break;
					}
				case SkillName.Poisoning:
					{
						PackItem(new LesserPoisonPotion(), e);
						PackItem(new LesserPoisonPotion(), e);
						break;
					}
				case SkillName.Provocation:
					{
						PackInstrument(e);
						break;
					}
				case SkillName.Snooping:
					{
						PackItem(new Lockpick(20), e);
						break;
					}
				case SkillName.SpiritSpeak:
					{
						EquipItem(new Cloak(997), e);
						break;
					}
				case SkillName.Stealing:
					{
						PackItem(new Lockpick(20), e);
						break;
					}
				case SkillName.Swords:
					{
						if (elf)
						{
							EquipItem(new RuneBlade(), e);
						}
						else
						{
							EquipItem(new Katana(), e);
						}

						break;
					}
				case SkillName.Tactics:
					{
						if (elf)
						{
							EquipItem(new RuneBlade(), e);
						}
						else
						{
							EquipItem(new Katana(), e);
						}

						break;
					}
				case SkillName.Tailoring:
					{
						//PackItem( new BoltOfCloth() );
						PackItem(new SewingKit(), e);
						break;
					}
				case SkillName.Tracking:
					{
						if (m_Mobile != null)
						{
							Item shoes = m_Mobile.FindItemOnLayer(Layer.Shoes);

							if (shoes != null)
							{
								shoes.Delete();
							}
						}

						int hue = Utility.RandomYellowHue();

						if (elf)
						{
							EquipItem(new ElvenBoots(hue), e);
						}
						else
						{
							EquipItem(new Boots(hue), e);
						}

						EquipItem(new SkinningKnife(), e);
						break;
					}
				case SkillName.Veterinary:
					{
						PackItem(new Bandage(5), e);
						PackItem(new Scissors(), e);
						break;
					}
				case SkillName.Wrestling:
					{
						if (elf)
						{
							EquipItem(new LeafGloves(), e);
						}
						else
						{
							EquipItem(new LeatherGloves(), e);
						}

						break;
					}
			}
		}
Exemple #17
0
        private static void AddSkillItems( SkillName skill, Mobile m )
        {
            bool elf = (m.Race == Race.Elf);

            switch ( skill )
            {
                case SkillName.Alchemy:
                {
                    PackItem( new Bottle( 4 ) );
                    PackItem( new MortarPestle() );

                    int hue = Utility.RandomPinkHue();

                    if ( elf )
                    {
                        if ( m.Female )
                            EquipItem( new FemaleElvenRobe( hue ) );
                        else
                            EquipItem( new MaleElvenRobe( hue ) );
                    }
                    else
                    {
                        EquipItem( new Robe( Utility.RandomPinkHue() ) );
                    }
                    break;
                }
                case SkillName.Anatomy:
                {
                    PackItem( new Bandage( 3 ) );

                    int hue = Utility.RandomYellowHue();

                    if ( elf )
                    {
                        if ( m.Female )
                            EquipItem( new FemaleElvenRobe( hue ) );
                        else
                            EquipItem( new MaleElvenRobe( hue ) );
                    }
                    else
                    {
                        EquipItem( new Robe( hue ) );
                    }
                    break;
                }
                case SkillName.AnimalLore:
                {
                    int hue = Utility.RandomBlueHue();

                    if ( elf )
                    {
                        EquipItem( new WildStaff() );

                        if ( m.Female )
                            EquipItem( new FemaleElvenRobe( hue ) );
                        else
                            EquipItem( new MaleElvenRobe( hue ) );
                    }
                    else
                    {
                        EquipItem( new ShepherdsCrook() );
                        EquipItem( new Robe( hue ) );
                    }
                    break;
                }
                case SkillName.Archery:
                {
                    PackItem( new Arrow( 25 ) );

                    if ( elf )
                        EquipItem( new ElvenCompositeLongbow() );
                    else
                        EquipItem( new Bow() );

                    break;
                }
                case SkillName.ArmsLore:
                {
                    if ( elf )
                    {
                        switch ( Utility.Random( 3 ) )
                        {
                            case 0: EquipItem( new Leafblade() ); break;
                            case 1: EquipItem( new RuneBlade() ); break;
                            case 2: EquipItem( new DiamondMace() ); break;
                        }
                    }
                    else
                    {
                        switch ( Utility.Random( 3 ) )
                        {
                            case 0: EquipItem( new Kryss() ); break;
                            case 1: EquipItem( new Katana() ); break;
                            case 2: EquipItem( new Club() ); break;
                        }
                    }

                    break;
                }
                case SkillName.Begging:
                {
                    if ( elf )
                        EquipItem( new WildStaff() );
                    else
                        EquipItem( new GnarledStaff() );
                    break;
                }
                case SkillName.Blacksmith:
                {
                    PackItem( new Tongs() );
                    PackItem( new Pickaxe() );
                    PackItem( new Pickaxe() );
                    PackItem( new IronIngot( 50 ) );
                    EquipItem( new HalfApron( Utility.RandomYellowHue() ) );
                    break;
                }
                case SkillName.Bushido:
                {
                    EquipItem( new Hakama() );
                    EquipItem( new Kasa() );
                    EquipItem( new BookOfBushido() );
                    break;
                }
                case SkillName.Fletching:
                {
                    PackItem( new Board( 14 ) );
                    PackItem( new Feather( 5 ) );
                    PackItem( new Shaft( 5 ) );
                    break;
                }
                case SkillName.Camping:
                {
                    PackItem( new Bedroll() );
                    PackItem( new Kindling( 5 ) );
                    break;
                }
                case SkillName.Carpentry:
                {
                    PackItem( new Board( 10 ) );
                    PackItem( new Saw() );
                    EquipItem( new HalfApron( Utility.RandomYellowHue() ) );
                    break;
                }
                case SkillName.Cartography:
                {
                    PackItem( new BlankMap() );
                    PackItem( new BlankMap() );
                    PackItem( new BlankMap() );
                    PackItem( new BlankMap() );
                    PackItem( new Sextant() );
                    break;
                }
                case SkillName.Cooking:
                {
                    PackItem( new Kindling( 2 ) );
                    PackItem( new RawLambLeg() );
                    PackItem( new RawChickenLeg() );
                    PackItem( new RawFishSteak() );
                    PackItem( new SackFlour() );
                    PackItem( new Pitcher( BeverageType.Water ) );
                    break;
                }
                case SkillName.Chivalry:
                {
                    if( Core.ML )
                        PackItem( new BookOfChivalry( (ulong)0x3FF ) );

                    break;
                }
                case SkillName.DetectHidden:
                {
                    EquipItem( new Cloak( 0x455 ) );
                    break;
                }
                case SkillName.Discordance:
                {
                    PackInstrument();
                    break;
                }
                case SkillName.Fencing:
                {
                    if ( elf )
                        EquipItem( new Leafblade() );
                    else
                        EquipItem( new Kryss() );

                    break;
                }
                case SkillName.Fishing:
                {
                    EquipItem( new FishingPole() );

                    int hue = Utility.RandomYellowHue();

                    if ( elf )
                    {
                        Item i = new Circlet();
                        i.Hue = hue;
                        EquipItem( i );
                    }
                    else
                    {
                        EquipItem( new FloppyHat( hue ) );
                    }

                    break;
                }
                case SkillName.Healing:
                {
                    PackItem( new Bandage( 50 ) );
                    PackItem( new Scissors() );
                    break;
                }
                case SkillName.Herding:
                {
                    if ( elf )
                        EquipItem( new WildStaff() );
                    else
                        EquipItem( new ShepherdsCrook() );

                    break;
                }
                case SkillName.Hiding:
                {
                    EquipItem( new Cloak( 0x455 ) );
                    break;
                }
                case SkillName.Inscribe:
                {
                    PackItem( new BlankScroll( 2 ) );
                    PackItem( new BlueBook() );
                    break;
                }
                case SkillName.ItemID:
                {
                    if ( elf )
                        EquipItem( new WildStaff() );
                    else
                        EquipItem( new GnarledStaff() );
                    break;
                }
                case SkillName.Lockpicking:
                {
                    PackItem( new Lockpick( 20 ) );
                    break;
                }
                case SkillName.Lumberjacking:
                {
                    EquipItem( new Hatchet() );
                    break;
                }
                case SkillName.Macing:
                {
                    if ( elf )
                        EquipItem( new DiamondMace() );
                    else
                        EquipItem( new Club() );

                    break;
                }
                case SkillName.Magery:
                {
                    BagOfReagents regs = new BagOfReagents( 30 );

                    if ( !Core.AOS )
                    {
                        foreach ( Item item in regs.Items )
                            item.LootType = LootType.Newbied;
                    }

                    PackItem( regs );

                    regs.LootType = LootType.Regular;

                    PackScroll( 0 );
                    PackScroll( 1 );
                    PackScroll( 2 );

                    Spellbook book = new Spellbook( (ulong)0x382A8C38 );

                    EquipItem( book );

                    book.LootType = LootType.Blessed;

                    if ( elf )
                    {
                        EquipItem( new Circlet() );

                        if( m.Female )
                            EquipItem( new FemaleElvenRobe( Utility.RandomBlueHue() ) );
                        else
                            EquipItem( new MaleElvenRobe( Utility.RandomBlueHue() ) );
                    }
                    else
                    {
                        EquipItem( new WizardsHat() );
                        EquipItem( new Robe( Utility.RandomBlueHue() ) );
                    }

                    break;
                }
                case SkillName.Mining:
                {
                    PackItem( new Pickaxe() );
                    break;
                }
                case SkillName.Musicianship:
                {
                    PackInstrument();
                    break;
                }
                case SkillName.Necromancy:
                {
                    if( Core.ML )
                    {
                        Container regs = new BagOfNecroReagents( 50 );

                        PackItem( regs );

                        regs.LootType = LootType.Regular;
                    }

                    break;
                }
                case SkillName.Ninjitsu:
                {
                    EquipItem( new Hakama( 0x2C3 ) );	//Only ninjas get the hued one.
                    EquipItem( new Kasa() );
                    EquipItem( new BookOfNinjitsu() );
                    break;
                }
                case SkillName.Parry:
                {
                    EquipItem( new WoodenShield() );
                    break;
                }
                case SkillName.Peacemaking:
                {
                    PackInstrument();
                    break;
                }
                case SkillName.Poisoning:
                {
                    PackItem( new LesserPoisonPotion() );
                    PackItem( new LesserPoisonPotion() );
                    break;
                }
                case SkillName.Provocation:
                {
                    PackInstrument();
                    break;
                }
                case SkillName.Snooping:
                {
                    PackItem( new Lockpick( 20 ) );
                    break;
                }
                case SkillName.SpiritSpeak:
                {
                    EquipItem( new Cloak( 0x455 ) );
                    break;
                }
                case SkillName.Stealing:
                {
                    PackItem( new Lockpick( 20 ) );
                    break;
                }
                case SkillName.Swords:
                {
                    if ( elf )
                        EquipItem( new RuneBlade() );
                    else
                        EquipItem( new Katana() );

                    break;
                }
                case SkillName.Tactics:
                {
                    if ( elf )
                        EquipItem( new RuneBlade() );
                    else
                        EquipItem( new Katana() );

                    break;
                }
                case SkillName.Tailoring:
                {
                    PackItem( new BoltOfCloth() );
                    PackItem( new SewingKit() );
                    break;
                }
                case SkillName.Tracking:
                {
                    if ( m_Mobile != null )
                    {
                        Item shoes = m_Mobile.FindItemOnLayer( Layer.Shoes );

                        if ( shoes != null )
                            shoes.Delete();
                    }

                    int hue = Utility.RandomYellowHue();

                    if ( elf )
                        EquipItem( new ElvenBoots( hue ) );
                    else
                        EquipItem( new Boots( hue ) );

                    EquipItem( new SkinningKnife() );
                    break;
                }
                case SkillName.Veterinary:
                {
                    PackItem( new Bandage( 5 ) );
                    PackItem( new Scissors() );
                    break;
                }
                case SkillName.Wrestling:
                {
                    if ( elf )
                        EquipItem( new LeafGloves() );
                    else
                        EquipItem( new LeatherGloves() );

                    break;
                }
            }
        }
Exemple #18
0
        public static void GetListOfItems(Mobile from)
        {
            //List of Item Locations Message
            //***Put item into Backpack
            #region Backpack
            from.SendMessage("You will find new items in your Backpack.");
            from.Backpack.AddItem(new KillBook());                          //http://www.runuo.com/forums/custom-script-releases/80034-book-kills.html
            from.Backpack.AddItem(new AnNoxGuideBook());
            #endregion

            //***Drop item on the Ground
            #region Ground
            //put item under player on the ground
            from.SendMessage("You will find new items on the ground near by.");
            new SewingKit().MoveToWorld(from.Location, from.Map);
            new Bible().MoveToWorld(from.Location, from.Map);               //http://www.runuo.com/forums/custom-script-releases/71826-runuo-2-0-rc1-lokais-xml-bible-system.html
            new BeltranGuideBook().MoveToWorld(from.Location, from.Map);    //http://www.runuo.com/forums/runuo-post-archive/34074-osi-library-books.html
            new PrimerArmsBook().MoveToWorld(from.Location, from.Map);      //http://www.runuo.com/forums/runuo-post-archive/34074-osi-library-books.html

            //put item near player on the ground
            new BagOfDresses().MoveToWorld(new Point3D(from.X + Utility.RandomMinMax(-5, 5), from.Y + Utility.RandomMinMax(-5, 5), from.Z), from.Map);
            new BagOfJewlery().MoveToWorld(new Point3D(from.X + Utility.RandomMinMax(-5, 5), from.Y + Utility.RandomMinMax(-5, 5), from.Z), from.Map);
            new BagOfShirts().MoveToWorld(new Point3D(from.X + Utility.RandomMinMax(-5, 5), from.Y + Utility.RandomMinMax(-5, 5), from.Z), from.Map);
            new BagOfPants().MoveToWorld(new Point3D(from.X + Utility.RandomMinMax(-5, 5), from.Y + Utility.RandomMinMax(-5, 5), from.Z), from.Map);
            new BagOfShoes().MoveToWorld(new Point3D(from.X + Utility.RandomMinMax(-5, 5), from.Y + Utility.RandomMinMax(-5, 5), from.Z), from.Map);
            new BagOfCloaks().MoveToWorld(new Point3D(from.X + Utility.RandomMinMax(-5, 5), from.Y + Utility.RandomMinMax(-5, 5), from.Z), from.Map);
            new BagOfHats().MoveToWorld(new Point3D(from.X + Utility.RandomMinMax(-5, 5), from.Y + Utility.RandomMinMax(-5, 5), from.Z), from.Map);
            #endregion

            //***Put item into Bank
            #region Bank
            from.SendMessage("You will find new items in your Bank.");
            BankBox   bank = from.BankBox;
            Container cont;

            // Begin box of money
            cont        = new WoodenBox();
            cont.Name   = "Money Box";
            cont.ItemID = 0xE7D;
            cont.Hue    = 0x489;

            PlaceItemIn(cont, 64, 51, new BankCheck(5000));
            PlaceItemIn(cont, 16, 115, new Factions.Silver(1000));
            PlaceItemIn(cont, 34, 115, new Gold(1000));

            PlaceItemIn(bank, 18, 169, cont);

            // Begin bag of archery ammo
            cont      = new Bag();
            cont.Name = "Bag Of Archery Ammo";

            PlaceItemIn(cont, 48, 76, new Arrow(50));
            PlaceItemIn(cont, 72, 76, new Bolt(50));

            PlaceItemIn(bank, 118, 124, cont);

            // Begin bag of raw materials
            cont      = new Bag();
            cont.Hue  = 0x835;
            cont.Name = "Raw Materials Bag";

            PlaceItemIn(cont, 92, 84, new Leather(50));
            PlaceItemIn(cont, 30, 118, new Cloth(50));
            PlaceItemIn(cont, 30, 84, new Board(50));
            PlaceItemIn(cont, 57, 80, new BlankScroll(50));

            PlaceItemIn(bank, 98, 169, cont);

            // Begin bag of spell casting stuff
            cont      = new Backpack();
            cont.Hue  = 0x480;
            cont.Name = "Spell Casting Stuff";

            PlaceItemIn(cont, 45, 105, new Spellbook(UInt64.MaxValue));
            PlaceItemIn(cont, 65, 105, new NecromancerSpellbook((UInt64)0xFFFF));
            PlaceItemIn(cont, 85, 105, new BookOfChivalry((UInt64)0x3FF));
            PlaceItemIn(cont, 105, 105, new BookOfBushido());  //Default ctor = full
            PlaceItemIn(cont, 125, 105, new BookOfNinjitsu()); //Default ctor = full

            Runebook runebook = new Runebook(10);
            runebook.CurCharges = runebook.MaxCharges;
            PlaceItemIn(cont, 145, 105, runebook);

            Item toHue = new BagOfReagents(50);
            toHue.Hue  = 0x2D;
            toHue.Name = "Bag of Basic Reagents";
            PlaceItemIn(cont, 45, 150, toHue);

            toHue      = new BagOfNecroReagents(50);
            toHue.Hue  = 0x488;
            toHue.Name = "Bag of Necro Reagents";
            PlaceItemIn(cont, 65, 150, toHue);

            toHue      = new BagOfAllReagents(50);
            toHue.Hue  = 0x2D;
            toHue.Name = "Bag of All Reagents";
            PlaceItemIn(cont, 140, 150, toHue);

            for (int i = 0; i < 9; ++i)
            {
                PlaceItemIn(cont, 45 + (i * 10), 75, new RecallRune());
            }

            PlaceItemIn(cont, 141, 74, new FireHorn());

            PlaceItemIn(bank, 78, 169, cont);
            #endregion
        }
Exemple #19
0
        private static void FillBankbox( Mobile m )
        {
            BankBox bank = m.BankBox;

            if ( bank == null )
                return;

            bank.MaxItems = int.MaxValue;

            // The new AOS bankboxes don't have powerscrolls, they are automatically 'applied':

            for ( int i = 0; i < PowerScroll.Skills.Length; ++i )
                m.Skills[PowerScroll.Skills[i]].Cap = 120.0;

            m.StatCap = 250;

            Container cont;
            Container cont2;

            // Begin box of money
            cont = new WoodenBox();
            cont.ItemID = 0xE7D;
            cont.Hue = 0x489;

            PlaceItemIn( cont, 17, 52, new BankCheck( 1000000 ) );
            PlaceItemIn( cont, 28, 52, new BankCheck( 1000000 ) );

            PlaceItemIn( cont, 17, 91, new Factions.Silver( 9000 ) );
            PlaceItemIn( cont, 34, 91, new Gold( 60000 ) );

            PlaceItemIn( bank, 38, 142, cont );
            // End box of money

            // Begin box of Magery Items
            cont = new WoodenBox();
            cont.ItemID = 0xE7D;
            cont.Name = "Magery Items";
            cont.Hue = 1195;

            // Begin bag of spell casting stuff
            cont2 = new Backpack();
            cont2.Hue = 0x480;
            cont2.Name = "Spell Casting Stuff";

            PlaceItemIn( cont2, 45, 107, new Spellbook( UInt64.MaxValue ) );
            PlaceItemIn( cont2, 64, 107, new NecromancerSpellbook( (UInt64) 0xFFFF ) );
            PlaceItemIn( cont2, 83, 107, new BookOfChivalry( (UInt64) 0x3FF ) );
            PlaceItemIn( cont2, 102, 107, new BookOfBushido() ); //Default ctor = full
            PlaceItemIn( cont2, 121, 107, new BookOfNinjitsu() ); //Default ctor = full
            PlaceItemIn( cont2, 102, 149, new SpellweavingSpellbook( (UInt64) 0xFFFF ) );
            PlaceItemIn( cont2, 121, 149, new MysticismSpellbook( (UInt64) 0xFFFF ) );

            Runebook runebook = new Runebook( 20 );
            runebook.CurCharges = runebook.MaxCharges;
            PlaceItemIn( cont2, 141, 107, runebook );

            Item toHue = new BagOfReagents( 5000 );
            toHue.Hue = 0x2D;
            PlaceItemIn( cont2, 45, 128, toHue );

            toHue = new BagOfNecroReagents( 3000 );
            toHue.Hue = 0x488;
            PlaceItemIn( cont2, 64, 128, toHue );

            toHue = new BagOfMysticReagents( 3000 );
            toHue.Hue = 0x48F;
            PlaceItemIn( cont2, 141, 128, toHue );

            for ( int i = 0; i < 6; ++i )
                PlaceItemIn( cont2, 45 + ( i * 10 ), 74, new RecallRune() );

            PlaceItemIn( cont, 47, 91, cont2 );
            // End bag of spell casting stuff

            // Begin bag of potion kegs
            cont2 = new Backpack();
            cont2.Name = "Various Potion Kegs";

            PlaceItemIn( cont2, 45, 149, MakePotionKeg( PotionEffect.CureGreater, 0x2D ) );
            PlaceItemIn( cont2, 69, 149, MakePotionKeg( PotionEffect.HealGreater, 0x499 ) );
            PlaceItemIn( cont2, 93, 149, MakePotionKeg( PotionEffect.PoisonDeadly, 0x46 ) );
            PlaceItemIn( cont2, 117, 149, MakePotionKeg( PotionEffect.RefreshGreater, 0x21 ) );
            PlaceItemIn( cont2, 141, 149, MakePotionKeg( PotionEffect.ExplosionGreater, 0x74 ) );

            PlaceItemIn( cont2, 93, 82, new Bottle( 1000 ) );

            PlaceItemIn( cont, 78, 91, cont2 );
            // End bag of potion kegs

            GoldRing ring = new GoldRing();
            ring.Name = "Ring Of Arcane Tactics";
            ring.Attributes.CastRecovery = 3;
            ring.Attributes.CastSpeed = 1;
            PlaceItemIn( cont, 109, 90, ring );

            GoldBracelet bracelet = new GoldBracelet();
            bracelet.Name = "Farmer's Band Of Mastery";
            bracelet.Attributes.CastRecovery = 3;
            bracelet.Attributes.CastSpeed = 1;
            PlaceItemIn( cont, 139, 95, bracelet );

            PlaceItemIn( bank, 63, 142, cont );
            // End box of Magery Items

            // Begin bag of ethereals
            cont = new Backpack();
            cont.Hue = 0x490;
            cont.Name = "Bag Of Ethy's!";

            cont.DropItem( new EtherealHorse() );
            cont.DropItem( new EtherealOstard() );
            cont.DropItem( new EtherealLlama() );
            cont.DropItem( new EtherealKirin() );
            cont.DropItem( new EtherealUnicorn() );
            cont.DropItem( new EtherealRidgeback() );
            cont.DropItem( new EtherealSwampDragon() );
            cont.DropItem( new EtherealBeetle() );

            PlaceItemIn( bank, 43, 124, cont );
            // End bag of ethereals

            // Begin box of Artifacts
            cont = new WoodenBox();
            cont.ItemID = 0xE7D;
            cont.Hue = 1170;
            cont.Name = "Artifacts";

            // Begin bag of minor artifacts
            cont2 = new Bag();
            cont2.Hue = 1167;
            cont2.Name = "Minor Artifacts";

            cont2.DropItem( new LunaLance() );
            cont2.DropItem( new VioletCourage() );
            cont2.DropItem( new CavortingClub() );
            cont2.DropItem( new CaptainQuacklebushsCutlass() );
            cont2.DropItem( new NightsKiss() );
            cont2.DropItem( new ShipModelOfTheHMSCape() );
            cont2.DropItem( new AdmiralsHeartyRum() );
            cont2.DropItem( new CandelabraOfSouls() );
            cont2.DropItem( new IolosLute() );
            cont2.DropItem( new GwennosHarp() );
            cont2.DropItem( new ArcticDeathDealer() );
            cont2.DropItem( new EnchantedTitanLegBone() );
            cont2.DropItem( new NoxRangersHeavyCrossbow() );
            cont2.DropItem( new BlazeOfDeath() );
            cont2.DropItem( new DreadPirateHat() );
            cont2.DropItem( new BurglarsBandana() );
            cont2.DropItem( new GoldBricks() );
            cont2.DropItem( new AlchemistsBauble() );
            cont2.DropItem( new PhillipsWoodenSteed() );
            cont2.DropItem( new PolarBearMask() );
            cont2.DropItem( new BowOfTheJukaKing() );
            cont2.DropItem( new GlovesOfThePugilist() );
            cont2.DropItem( new OrcishVisage() );
            cont2.DropItem( new StaffOfPower() );
            cont2.DropItem( new ShieldOfInvulnerability() );
            cont2.DropItem( new HeartOfTheLion() );
            cont2.DropItem( new ColdBlood() );
            cont2.DropItem( new GhostShipAnchor() );
            cont2.DropItem( new SeahorseStatuette() );
            cont2.DropItem( new WrathOfTheDryad() );
            cont2.DropItem( new PixieSwatter() );

            PlaceItemIn( cont, 17, 83, cont2 );
            // End bag of minor artifacts

            // Begin Bag of Major Artifacts
            cont2 = new Bag();
            cont2.Hue = 1266;
            cont2.Name = "Major Artifacts";

            cont2.DropItem( new GauntletsOfNobility() );
            cont2.DropItem( new MidnightBracers() );
            cont2.DropItem( new VoiceOfTheFallenKing() );
            cont2.DropItem( new OrnateCrownOfTheHarrower() );
            cont2.DropItem( new HelmOfInsight() );
            cont2.DropItem( new HolyKnightsBreastplate() );
            cont2.DropItem( new ArmorOfFortune() );
            cont2.DropItem( new TunicOfFire() );
            cont2.DropItem( new LeggingsOfBane() );
            cont2.DropItem( new ArcaneShield() );
            cont2.DropItem( new Aegis() );
            cont2.DropItem( new RingOfTheVile() );
            cont2.DropItem( new BraceletOfHealth() );
            cont2.DropItem( new RingOfTheElements() );
            cont2.DropItem( new OrnamentOfTheMagician() );
            cont2.DropItem( new DivineCountenance() );
            cont2.DropItem( new JackalsCollar() );
            cont2.DropItem( new HuntersHeaddress() );
            cont2.DropItem( new HatOfTheMagi() );
            cont2.DropItem( new ShadowDancerLeggings() );
            cont2.DropItem( new SpiritOfTheTotem() );
            cont2.DropItem( new BladeOfInsanity() );
            cont2.DropItem( new AxeOfTheHeavens() );
            cont2.DropItem( new TheBeserkersMaul() );
            cont2.DropItem( new Frostbringer() );
            cont2.DropItem( new BreathOfTheDead() );
            cont2.DropItem( new TheDragonSlayer() );
            cont2.DropItem( new BoneCrusher() );
            cont2.DropItem( new StaffOfTheMagi() );
            cont2.DropItem( new SerpentsFang() );
            cont2.DropItem( new LegacyOfTheDreadLord() );
            cont2.DropItem( new TheTaskmaster() );
            cont2.DropItem( new TheDryadBow() );
            cont2.DropItem( new TitansHammer() );
            cont2.DropItem( new InquisitorsResolution() );
            cont2.DropItem( new BladeOfTheRighteous() );
            cont2.DropItem( new ZyronicClaw() );

            PlaceItemIn( cont, 90, 83, cont2 );
            // End Bag of Major Artifacts

            // Begin bag of Tokuno minor artifacts
            cont2 = new Bag();
            cont2.Hue = 1281;
            cont2.Name = "Tokuno Minor Artifacts";

            cont2.DropItem( new PeasantsBokuto() );
            cont2.DropItem( new DragonNunchaku() );
            cont2.DropItem( new TheDestroyer() );
            cont2.DropItem( new HanzosBow() );
            cont2.DropItem( new Exiler() );
            cont2.DropItem( new PilferedDancerFans() );
            cont2.DropItem( new DemonForks() );
            cont2.DropItem( new BlackLotusHood() );
            cont2.DropItem( new DaimyosHelm() );
            cont2.DropItem( new ArmsOfTacticalExcellence() );
            cont2.DropItem( new AncientFarmersKasa() );
            cont2.DropItem( new GlovesOfTheSun() );
            cont2.DropItem( new LegsOfStability() );
            cont2.DropItem( new AncientSamuraiDo() );
            cont2.DropItem( new PigmentsOfTokuno() );
            cont2.DropItem( new FluteOfRenewal() );
            cont2.DropItem( new AncientUrn() );
            cont2.DropItem( new HonorableSwords() );
            cont2.DropItem( new ChestOfHeirlooms() );
            cont2.DropItem( new TomeOfEnlightenment() );

            PlaceItemIn( cont, 53, 83, cont2 );
            // End bag of Tokuno minor artifacts

            // Begin bag of Tokuno major artifacts
            cont2 = new Bag();
            cont2.Hue = 1281;
            cont2.Name = "Tokuno Major Artifacts";

            cont2.DropItem( new DarkenedSky() );
            cont2.DropItem( new KasaOfRajin() );
            cont2.DropItem( new RuneBeetleCarapace() );
            cont2.DropItem( new Stormgrip() );
            cont2.DropItem( new SwordOfStampede() );
            cont2.DropItem( new SwordsOfProsperity() );
            cont2.DropItem( new TheHorselord() );
            cont2.DropItem( new TomeOfLostKnowledge() );
            cont2.DropItem( new WindsEdge() );
            cont2.DropItem( new PigmentsOfTokunoMajor( PigmentsType.ParagonGold, 50 ) );
            cont2.DropItem( new PigmentsOfTokunoMajor( PigmentsType.VioletCouragePurple, 50 ) );
            cont2.DropItem( new PigmentsOfTokunoMajor( PigmentsType.InvulnerabilityBlue, 50 ) );
            cont2.DropItem( new PigmentsOfTokunoMajor( PigmentsType.LunaWhite, 50 ) );
            cont2.DropItem( new PigmentsOfTokunoMajor( PigmentsType.DryadGreen, 50 ) );
            cont2.DropItem( new PigmentsOfTokunoMajor( PigmentsType.ShadowDancerBlack, 50 ) );
            cont2.DropItem( new PigmentsOfTokunoMajor( PigmentsType.BerserkerRed, 50 ) );
            cont2.DropItem( new PigmentsOfTokunoMajor( PigmentsType.NoxGreen, 50 ) );
            cont2.DropItem( new PigmentsOfTokunoMajor( PigmentsType.RumRed, 50 ) );
            cont2.DropItem( new PigmentsOfTokunoMajor( PigmentsType.FireOrange, 50 ) );

            PlaceItemIn( cont, 127, 83, cont2 );
            // End bag of Tokuno major artifacts

            // Begin bag of ML Minor artifacts
            cont2 = new Bag();
            cont2.Hue = 1167;
            cont2.Name = "Minor Artifacts";

            cont2.DropItem( new AegisOfGrace() );
            cont2.DropItem( new BladeDance() );
            cont2.DropItem( new BloodwoodSpirit() );
            cont2.DropItem( new Bonesmasher() );
            cont2.DropItem( new Boomstick() );
            cont2.DropItem( new BrightsightLenses() );
            cont2.DropItem( new FeyLeggings() );
            cont2.DropItem( new FleshRipper() );
            cont2.DropItem( new HelmOfSwiftness() );
            cont2.DropItem( new PadsOfTheCuSidhe() );
            cont2.DropItem( new QuiverOfRage() );
            cont2.DropItem( new QuiverOfTheElements() );
            cont2.DropItem( new RaedsGlory() );
            cont2.DropItem( new RighteousAnger() );
            cont2.DropItem( new RobeOfTheEclipse() );
            cont2.DropItem( new RobeOfTheEquinox() );
            cont2.DropItem( new SoulSeeker() );
            cont2.DropItem( new TalonBite() );
            cont2.DropItem( new TotemOfTheVoid() );
            cont2.DropItem( new WildfireBow() );
            cont2.DropItem( new Windsong() );

            PlaceItemIn( cont, 140, 83, cont2 );
            // End bag of ML Minor artifacts

            PlaceItemIn( bank, 63, 106, cont );
            // End box of Artifacts

            // Begin box of General Resources
            cont = new WoodenBox();
            cont.ItemID = 0xE7D;
            cont.Hue = 1193;
            cont.Name = "Genereal Resources";

            // Begin bag of raw materials
            cont2 = new Bag();
            cont2.Name = "Raw Materials Bag";

            PlaceItemIn( cont2, 92, 60, new BarbedLeather( 5000 ) );
            PlaceItemIn( cont2, 92, 68, new HornedLeather( 5000 ) );
            PlaceItemIn( cont2, 92, 76, new SpinedLeather( 5000 ) );
            PlaceItemIn( cont2, 92, 84, new Leather( 5000 ) );

            PlaceItemIn( cont2, 30, 118, new Cloth( 5000 ) );
            PlaceItemIn( cont2, 30, 84, new Board( 5000 ) );
            PlaceItemIn( cont2, 57, 80, new BlankScroll( 500 ) );
            PlaceItemIn( cont2, 57, 80, new Bone( 100 ) );

            PlaceItemIn( cont2, 30, 35, new DullCopperIngot( 5000 ) );
            PlaceItemIn( cont2, 37, 35, new ShadowIronIngot( 5000 ) );
            PlaceItemIn( cont2, 44, 35, new CopperIngot( 5000 ) );
            PlaceItemIn( cont2, 51, 35, new BronzeIngot( 5000 ) );
            PlaceItemIn( cont2, 58, 35, new GoldIngot( 5000 ) );
            PlaceItemIn( cont2, 65, 35, new AgapiteIngot( 5000 ) );
            PlaceItemIn( cont2, 72, 35, new VeriteIngot( 5000 ) );
            PlaceItemIn( cont2, 79, 35, new ValoriteIngot( 5000 ) );
            PlaceItemIn( cont2, 86, 35, new IronIngot( 5000 ) );

            PlaceItemIn( cont2, 30, 59, new RedScales( 5000 ) );
            PlaceItemIn( cont2, 36, 59, new YellowScales( 5000 ) );
            PlaceItemIn( cont2, 42, 59, new BlackScales( 5000 ) );
            PlaceItemIn( cont2, 48, 59, new GreenScales( 5000 ) );
            PlaceItemIn( cont2, 54, 59, new WhiteScales( 5000 ) );
            PlaceItemIn( cont2, 60, 59, new BlueScales( 5000 ) );

            PlaceItemIn( cont, 40, 93, cont2 );
            // End bag of raw materials

            // Begin bag of tools
            cont2 = new Bag();
            cont2.Name = "Tool Bag";

            cont2.DropItem( new TinkerTools( 30000 ) );
            cont2.DropItem( new HousePlacementTool() );
            cont2.DropItem( new DovetailSaw( 30000 ) );
            cont2.DropItem( new Scissors() );
            cont2.DropItem( new MortarPestle( 30000 ) );
            cont2.DropItem( new ScribesPen( 30000 ) );
            cont2.DropItem( new SmithHammer( 30000 ) );
            cont2.DropItem( new TwoHandedAxe() );
            cont2.DropItem( new FletcherTools( 30000 ) );
            cont2.DropItem( new SewingKit( 30000 ) );
            cont2.DropItem( new Clippers( 30000 ) );

            PlaceItemIn( cont, 90, 93, cont2 );
            // End bag of tools

            // Begin bag of runic tools
            cont2 = new Backpack();
            cont2.Name = "Runic Tool Bag";

            PlaceItemIn( cont2, 54, 74, new RunicHammer( CraftResource.DullCopper, 30000 ) );
            PlaceItemIn( cont2, 64, 74, new RunicHammer( CraftResource.ShadowIron, 30000 ) );
            PlaceItemIn( cont2, 74, 74, new RunicHammer( CraftResource.Copper, 30000 ) );
            PlaceItemIn( cont2, 84, 74, new RunicHammer( CraftResource.Bronze, 30000 ) );
            PlaceItemIn( cont2, 94, 74, new RunicHammer( CraftResource.Gold, 30000 ) );
            PlaceItemIn( cont2, 104, 74, new RunicHammer( CraftResource.Agapite, 30000 ) );
            PlaceItemIn( cont2, 114, 74, new RunicHammer( CraftResource.Verite, 30000 ) );
            PlaceItemIn( cont2, 124, 74, new RunicHammer( CraftResource.Valorite, 30000 ) );

            PlaceItemIn( cont2, 54, 90, new RunicSewingKit( CraftResource.SpinedLeather, 30000 ) );
            PlaceItemIn( cont2, 64, 90, new RunicSewingKit( CraftResource.HornedLeather, 30000 ) );
            PlaceItemIn( cont2, 74, 90, new RunicSewingKit( CraftResource.BarbedLeather, 30000 ) );

            PlaceItemIn( cont2, 54, 107, new RunicFletchersTools( CraftResource.Oak, 30000 ) );
            PlaceItemIn( cont2, 69, 107, new RunicFletchersTools( CraftResource.Ash, 30000 ) );
            PlaceItemIn( cont2, 83, 107, new RunicFletchersTools( CraftResource.Yew, 30000 ) );
            PlaceItemIn( cont2, 97, 107, new RunicFletchersTools( CraftResource.Heartwood, 30000 ) );

            PlaceItemIn( cont2, 93, 90, new RunicDovetailSaw( CraftResource.Oak, 30000 ) );
            PlaceItemIn( cont2, 102, 90, new RunicDovetailSaw( CraftResource.Ash, 30000 ) );
            PlaceItemIn( cont2, 112, 90, new RunicDovetailSaw( CraftResource.Yew, 30000 ) );
            PlaceItemIn( cont2, 122, 90, new RunicDovetailSaw( CraftResource.Heartwood, 30000 ) );

            PlaceItemIn( cont, 65, 67, cont2 );
            // End bag of runic tools

            // Begin bag of recipes
            cont2 = new Bag();
            cont2.Name = "Bag of Recipes";
            cont2.Hue = 2301;

            for ( int i = 0; i <= 92; i++ )
                cont2.DropItem( new RecipeScroll( i ) );

            PlaceItemIn( cont, 115, 93, cont2 );
            // End bag of recipes

            // Begin bag of archery ammo
            cont2 = new Bag();
            cont2.Name = "Bag Of Archery Ammo";

            PlaceItemIn( cont2, 48, 76, new Arrow( 5000 ) );
            PlaceItemIn( cont2, 72, 76, new Bolt( 5000 ) );

            PlaceItemIn( cont, 65, 93, cont2 );
            // End bag of archery ammo

            // Begin bag of Wood
            cont2 = new Bag();
            cont2.Hue = 1321;
            cont2.Name = "Bag of Wood";

            cont2.DropItem( new AshBoard( 500 ) );
            cont2.DropItem( new YewBoard( 500 ) );
            cont2.DropItem( new OakBoard( 500 ) );
            cont2.DropItem( new HeartwoodBoard( 500 ) );
            cont2.DropItem( new BloodwoodBoard( 500 ) );
            cont2.DropItem( new FrostwoodBoard( 500 ) );

            PlaceItemIn( cont, 139, 93, cont2 );
            // End bag of Wood

            // Begin Bag of Imbuing Materials
            cont2 = new Bag();
            cont2.Hue = 0x4B;
            cont2.Name = "Bag of Imbuing Materials";

            foreach ( ImbuingResource resource in Enum.GetValues( typeof( ImbuingResource ) ) )
            {
                try
                {
                    Type type = ScriptCompiler.FindTypeByFullName( String.Format( "Server.Items.{0}", resource.ToString() ) );

                    Item item = (Item) Activator.CreateInstance( type );
                    item.Amount = 1000;

                    cont2.DropItem( item );
                }
                catch
                {
                }
            }

            PlaceItemIn( cont, 16, 67, cont2 );
            // End Bag of Imbuing Materials

            // Begin Bag of Elven Materials
            cont2 = new Bag();
            cont2.Hue = 1195;
            cont2.Name = "Bag of Elven Materials";

            cont2.DropItem( new BarkFragment( 200 ) );
            cont2.DropItem( new Blight( 200 ) );
            cont2.DropItem( new BlueDiamond( 200 ) );
            cont2.DropItem( new BrilliantAmber( 200 ) );
            cont2.DropItem( new CapturedEssence( 200 ) );
            cont2.DropItem( new Corruption( 200 ) );
            cont2.DropItem( new DarkSapphire( 200 ) );
            cont2.DropItem( new DiseasedBark( 200 ) );
            cont2.DropItem( new DreadHornMane( 200 ) );
            cont2.DropItem( new EcruCitrine( 200 ) );
            cont2.DropItem( new EnchantedSwitch( 200 ) );
            cont2.DropItem( new EyeOfTheTravesty( 200 ) );
            cont2.DropItem( new FireRuby( 200 ) );
            cont2.DropItem( new GrizzledBones( 200 ) );
            cont2.DropItem( new HollowPrism( 200 ) );
            cont2.DropItem( new JeweledFiligree( 200 ) );
            cont2.DropItem( new LardOfParoxysmus( 200 ) );
            cont2.DropItem( new LuminescentFungi( 200 ) );
            cont2.DropItem( new Muculent( 200 ) );
            cont2.DropItem( new ParasiticPlant( 200 ) );
            cont2.DropItem( new PerfectEmerald( 200 ) );
            cont2.DropItem( new PristineDreadHorn( 200 ) );
            cont2.DropItem( new Putrefaction( 200 ) );
            cont2.DropItem( new RunedPrism( 200 ) );
            cont2.DropItem( new Scourge( 200 ) );
            cont2.DropItem( new SwitchItem( 200 ) );
            cont2.DropItem( new Taint( 200 ) );
            cont2.DropItem( new Turquoise( 200 ) );
            cont2.DropItem( new WhitePearl( 200 ) );

            PlaceItemIn( cont, 40, 67, cont2 );
            // End Bag of Elven Materials

            PlaceItemIn( bank, 88, 142, cont );
            // End box of General Resources

            // Begin box of Armor Set Pieces
            cont = new WoodenBox();
            cont.ItemID = 0xE7D;
            cont.Hue = 1194;
            cont.Name = "Armor Set Pieces";

            // Begin Bag of Juggernaut Set
            cont2 = new Bag();
            cont2.Hue = 1177;
            cont2.Name = "Juggernaut Set";

            cont2.DropItem( new MalekisHonor() );
            cont2.DropItem( new Evocaricus() );

            PlaceItemIn( cont, 17, 63, cont2 );
            // End Bag of Juggernaut Set

            // Begin Bag of Hunter Set Armor
            cont2 = new Bag();
            cont2.Hue = 1177;
            cont2.Name = "Hunter Set Armor";

            cont2.DropItem( new HunterGloves() );
            cont2.DropItem( new HunterLeggings() );
            cont2.DropItem( new HunterSleeves() );
            cont2.DropItem( new HunterTunic() );

            PlaceItemIn( cont, 40, 63, cont2 );
            // End Bag of Hunter Set Armor

            // Begin Bag of Paladin Set Armor
            cont2 = new Bag();
            cont2.Hue = 1177;
            cont2.Name = "Paladin Set Armor";

            cont2.DropItem( new PlateOfHonorArms() );
            cont2.DropItem( new PlateOfHonorChest() );
            cont2.DropItem( new PlateOfHonorGloves() );
            cont2.DropItem( new PlateOfHonorGorget() );
            cont2.DropItem( new PlateOfHonorHelm() );
            cont2.DropItem( new PlateOfHonorLegs() );

            PlaceItemIn( cont, 65, 63, cont2 );
            // End Bag of Paladin Set Armor

            // Begin Bag of Necromancer Set Armor
            cont2 = new Bag();
            cont2.Hue = 1177;
            cont2.Name = "Necromancer Set Armor";

            cont2.DropItem( new DeathsEssenceGloves() );
            cont2.DropItem( new DeathsEssenceHelm() );
            cont2.DropItem( new DeathsEssenceLeggings() );
            cont2.DropItem( new DeathsEssenceSleeves() );
            cont2.DropItem( new DeathsEssenceTunic() );

            PlaceItemIn( cont, 90, 63, cont2 );
            // End Bag of Necromancer Set Armor

            // Begin Bag of Acolyte Set Armor
            cont2 = new Bag();
            cont2.Hue = 1177;
            cont2.Name = "Acolyte Set Armor";

            cont2.DropItem( new AcolyteGloves() );
            cont2.DropItem( new AcolyteLeggings() );
            cont2.DropItem( new AcolyteSleeves() );
            cont2.DropItem( new AcolyteTunic() );

            PlaceItemIn( cont, 115, 63, cont2 );
            // End Bag of Acolyte Set Armor

            // Begin Bag of Marksman Set
            cont2 = new Bag();
            cont2.Hue = 1177;
            cont2.Name = "Marksman Set";

            cont2.DropItem( new Feathernock() );
            cont2.DropItem( new Swiftflight() );

            PlaceItemIn( cont, 139, 63, cont2 );
            // End Bag of Marksman Set

            // Begin Bag of Monstrous Interred Grizzle Set Armor
            cont2 = new Bag();
            cont2.Hue = 1177;
            cont2.Name = "Monstrous Interred Grizzle Set Armor";

            cont2.DropItem( new GauntletsOfTheGrizzle() );
            cont2.DropItem( new GreavesOfTheGrizzle() );
            cont2.DropItem( new SkullHelmOfTheGrizzle() );
            cont2.DropItem( new TunicOfTheGrizzle() );
            cont2.DropItem( new VambracesOfTheGrizzle() );

            PlaceItemIn( cont, 17, 89, cont2 );
            // End Bag of Monstrous Interred Grizzle Set Armor

            // Begin Bag of Warrior Set Armor
            cont2 = new Bag();
            cont2.Hue = 1177;
            cont2.Name = "Warrior Set Armor";

            cont2.DropItem( new DarkwoodChest() );
            cont2.DropItem( new DarkwoodCrown() );
            cont2.DropItem( new DarkwoodGauntlets() );
            cont2.DropItem( new DarkwoodGorget() );
            cont2.DropItem( new DarkwoodPauldrons() );
            cont2.DropItem( new DarkwoodLeggings() );

            PlaceItemIn( cont, 40, 89, cont2 );
            // End Bag of Warrior Set Armor

            // Begin Bag of Mage Set Armor
            cont2 = new Bag();
            cont2.Hue = 1177;
            cont2.Name = "Mage Set Armor";

            cont2.DropItem( new LeafweaveGloves() );
            cont2.DropItem( new LeafweaveLeggings() );
            cont2.DropItem( new LeafweaveSleeves() );
            cont2.DropItem( new LeafweaveTunic() );

            PlaceItemIn( cont, 65, 89, cont2 );
            // End Bag of Mage Set Armor

            // Begin Bag of Assassin Set Armor
            cont2 = new Bag();
            cont2.Hue = 1177;
            cont2.Name = "Assassin Set Armor";

            cont2.DropItem( new AssassinGloves() );
            cont2.DropItem( new AssassinLeggings() );
            cont2.DropItem( new AssassinSleeves() );
            cont2.DropItem( new AssassinTunic() );

            PlaceItemIn( cont, 90, 89, cont2 );
            // End Bag of Assassin Set Armor

            // Begin Bag of Myrmidon Set Armor
            cont2 = new Bag();
            cont2.Hue = 1177;
            cont2.Name = "Myrmidon Set Armor";

            cont2.DropItem( new MyrmidonArms() );
            cont2.DropItem( new MyrmidonChest() );
            cont2.DropItem( new MyrmidonGloves() );
            cont2.DropItem( new MyrmidonGorget() );
            cont2.DropItem( new MyrmidonHelm() );
            cont2.DropItem( new MyrmidonLegs() );

            PlaceItemIn( cont, 115, 89, cont2 );
            // End Bag of Myrmidon Set Armor

            PlaceItemIn( bank, 113, 142, cont );
            // End box of Armor Set Pieces

            PlaceItemIn( bank, 118, 111, new ChargerOfTheFallen() );
        }
Exemple #20
0
        public StarterPack() : base()
        {
            Name = "Welcome bag";
            Hue  = 196;

            Item item = new BankCheck(100);

            DropItem(item);
            item.X = 53;
            item.Y = 36;

            item = new BagOfReagents(50);
            DropItem(item);
            item.X = 71;
            item.Y = 55;

            Container bag = new Bag();

            bag.DropItem(new LeatherCap());
            bag.DropItem(new LeatherChest());
            bag.DropItem(new LeatherLegs());
            bag.DropItem(new LeatherGloves());
            bag.DropItem(new LeatherArms());
            bag.DropItem(new LeatherGorget());
            DropItem(bag);
            bag.X = 63;
            bag.Y = 75;

            /*  item = new HalfApron ();
             *    item.LootType = LootType.Blessed;
             * item.Name = "Launch Day 2013";
             *    DropItem( item );
             *    item.X = 72;
             *    item.Y = 92;
             *
             *    item = new FireworksWand();
             *    item.Name = "Launch Day 2013";
             *    DropItem( item );
             *    item.X = 94;
             *    item.Y = 34;*/

/*			if ( TestCenter.Enabled )
 *                      {
 *      //			item = new SmallBrickHouseDeed();
 *      //			DropItem( item );
 *      //			item.X = 23;
 *      //			item.Y = 53; */



            /*	item = new Runebook();
             *      DropItem( item );
             *      item.X = 93;
             *      item.Y = 92;
             *
             *      item = new EtherealLlama();
             *      item.Name = "a beta testers ethereal llama";
             *      DropItem( item );
             *      item.X = 94;
             *      item.Y = 34;
             * }
             * else
             * { */
            //	item = new BankCheck( 1000 );
            //	DropItem( item );
            //	item.X = 52;
            //	item.Y = 36;
            //}
        }
		public static void PrepareServerWar()
		{
			m_ServerWars = true;
			FactionReset();

			Map[] maps = Map.Maps;

			foreach (GuardedRegion region in maps.Where(m => m != null).SelectMany(m => m.Regions.Values.OfType<GuardedRegion>())
				)
			{
				region.Disabled = true;
			}

			foreach (
				PlayerMobile mob in World.Mobiles.Values.OfType<PlayerMobile>().Where(mob => mob.AccessLevel == AccessLevel.Player))
			{
				mob.BankBox.Credit = 10000000; //10 mill in the bank!

				Bag bag = new BagOfReagents(10000);
				bag.Name = "Bag of Reagents (10K)";
				bag.Hue = RandomHue();

				mob.BankBox.DropItem(bag);
				ResurrectGump.ClearSkillLoss(mob);

				bag = new Bag
				{
					Hue = RandomHue(),
					Name = "Bag of PVP Supplies"
				};

				mob.BankBox.DropItem(bag);

				if (mob.Skills[SkillName.Magery].Value > 0.0)
				{
					mob.Backpack.DropItem(
						BaseCreature.Rehued(BaseCreature.ChangeLootType(new BagOfReagents(150), LootType.Blessed), RandomHue()));

					Spellbook book = Spellbook.FindRegular(mob);

					if (book != null)
					{
						book.Content = ulong.MaxValue;
						book.LootType = LootType.Blessed;
						book.Hue = Utility.Random(1000);
					}
					else
					{
						book = new Spellbook
						{
							Content = ulong.MaxValue,
							LootType = LootType.Blessed,
							Hue = Utility.Random(1000)
						};

						mob.Backpack.DropItem(book);
					}
				}

				//if ( mob.Skills[SkillName.Healing].Value > 0.0 )
				//{
				mob.BankBox.DropItem(BaseCreature.ChangeLootType(new Bandage(150), LootType.Blessed));
				//}

				//if ( mob.Skills[SkillName.Fencing].Value > 0.0 )
				//{
				bag.DropItem(SetWeapon(new ShortSpear()));
				bag.DropItem(SetWeapon(new Kryss()));
				bag.DropItem(SetWeapon(new Spear()));
				//}

				//if ( mob.Skills[SkillName.Parry].Value > 0.0 )
				//{
				bag.DropItem(
					BaseCreature.ChangeLootType(
						BaseCreature.Resourced(new MetalKiteShield(), CraftResource.Valorite), LootType.Blessed));
				//}

				//if ( mob.Skills[SkillName.Swords].Value > 0.0 )
				//{
				if (mob.Skills[SkillName.Lumberjacking].Value > 0.0)
				{
					bag.DropItem(SetWeapon(new Hatchet()));
					bag.DropItem(SetWeapon(new LargeBattleAxe()));
				}

				bag.DropItem(SetWeapon(new Halberd()));
				bag.DropItem(SetWeapon(new Katana()));
				//}

				//if ( mob.Skills[SkillName.Macing].Value > 0.0 )
				//{
				bag.DropItem(SetWeapon(new WarAxe()));
				bag.DropItem(SetWeapon(new WarHammer()));
				//}

				//if ( mob.Skills[SkillName.Archery].Value > 0.0 )
				//{
				bag.DropItem(SetWeapon(new Bow()));
				bag.DropItem(SetWeapon(new Crossbow()));
				bag.DropItem(SetWeapon(new HeavyCrossbow()));

				var quiver = new ElvenQuiver
				{
					Hue = RandomHue()
				};
				quiver.DropItem(new Arrow(300));

				bag.DropItem(new Bolt(300));
				mob.BankBox.DropItem(BaseCreature.ChangeLootType(quiver, LootType.Blessed));
				//}

				//if ( mob.Skills[SkillName.Poisoning].Value > 0.0 )
				//{
				for (int i = 0; i < 5; i++)
				{
					bag.DropItem(BaseCreature.ChangeLootType(new DeadlyPoisonPotion(), LootType.Blessed));
				}
				//}

				mob.Kills = mob.ShortTermMurders = 0;

				var horse = new EtherealHorse
				{
					IsDonationItem = true,
					Hue = RandomHue()
				};

				mob.Backpack.DropItem(horse);
				mob.Backpack.DropItem(BaseCreature.ChangeLootType(new StatsBall(), LootType.Blessed));

				bag = new Bag
				{
					Hue = 1437,
					Name = "Bag of Barbed Leather Armor"
				};

				bag.DropItem(
					BaseCreature.Rehued(
						BaseCreature.ChangeLootType(
							BaseCreature.Resourced(new LeatherChest(), CraftResource.BarbedLeather), LootType.Blessed),
						RandomHue()));
				bag.DropItem(
					BaseCreature.Rehued(
						BaseCreature.ChangeLootType(
							BaseCreature.Resourced(new LeatherLegs(), CraftResource.BarbedLeather), LootType.Blessed),
						RandomHue()));
				bag.DropItem(
					BaseCreature.Rehued(
						BaseCreature.ChangeLootType(
							BaseCreature.Resourced(new LeatherGorget(), CraftResource.BarbedLeather), LootType.Blessed),
						RandomHue()));
				bag.DropItem(
					BaseCreature.Rehued(
						BaseCreature.ChangeLootType(
							BaseCreature.Resourced(new LeatherGloves(), CraftResource.BarbedLeather), LootType.Blessed),
						RandomHue()));
				bag.DropItem(
					BaseCreature.Rehued(
						BaseCreature.ChangeLootType(
							BaseCreature.Resourced(new LeatherArms(), CraftResource.BarbedLeather), LootType.Blessed),
						RandomHue()));
				bag.DropItem(
					BaseCreature.Rehued(
						BaseCreature.ChangeLootType(
							BaseCreature.Resourced(new LeatherCap(), CraftResource.BarbedLeather), LootType.Blessed),
						RandomHue()));

				mob.Backpack.DropItem(bag);

				Skills skills = mob.Skills;

				foreach (Skill s in skills.Where(t => t.SkillName != SkillName.ItemID))
				{
					s.BaseFixedPoint = 1000;
				}
			}
		}
        public override void OnResponse(NetState state, RelayInfo info) //Function for GumpButtonType.Reply Buttons 
        {
            Mobile from = state.Mobile;

            switch (info.ButtonID)
            {
                case 0: //Case uses the ActionIDs defenied above. Case 0 defenies the actions for the button with the action id 0
                    {
                        //Cancel 
                        from.SendMessage(33, "You decide you dont need anything.");
                        break;
                    }
                case 1: //Magery Reagents
                    {
                        Item[] Silver = from.Backpack.FindItemsByType(typeof(Factions.Silver));
                        if (from.Backpack.ConsumeTotal(typeof(Factions.Silver), 500))
                        {
                            BagOfReagents BagOfReagents = new BagOfReagents();
                            from.AddToBackpack(BagOfReagents);
                            from.SendMessage(33, "You bought Bag of Reagents and that costs 500 coins");
                        }
                        else
                        {
                            from.SendMessage(33, "You are short the coinage needed.");
                        }
                        break;
                    }
                case 2: //Necro Reagents
                    {
                        Item[] Silver = from.Backpack.FindItemsByType(typeof(Factions.Silver));
                        if (from.Backpack.ConsumeTotal(typeof(Factions.Silver), 500))
                        {
                            BagOfNecroReagents BagOfNecroReagents = new BagOfNecroReagents();
                            from.AddToBackpack(BagOfNecroReagents);
                            from.SendMessage(33, "You bought Bag of Necromancer Reagents and that costs 500 coins");
                        }
                        else
                        {
                            from.SendMessage(33, "You are short the coinage needed.");
                        }
                        break;
                    }
                case 3: //Bandages
                    {
                        Item[] Silver = from.Backpack.FindItemsByType(typeof(Factions.Silver));
                        if (from.Backpack.ConsumeTotal(typeof(Factions.Silver), 150))
                        {
                            BagOfBandages BagOfBandages = new BagOfBandages();
                            from.AddToBackpack(BagOfBandages);
                            from.SendMessage(33, "You bought Bag of Bandages and that costs 150 coins");
                        }
                        else
                        {
                            from.SendMessage(33, "You are short the silver coinage needed.");
                        }
                        break;
                    }
                case 4: //Weapons
                    {
                        Item[] Silver = from.Backpack.FindItemsByType(typeof(Factions.Silver));
                        if (from.Backpack.ConsumeTotal(typeof(Factions.Silver), 200))
                        {
                            BagOfWeapons BagOfWeapons = new BagOfWeapons();
                            from.AddToBackpack(BagOfWeapons);
                            from.SendMessage(33, "You bought Bag of Weapons and that costs 200 coins");
                        }
                        else
                        {
                            from.SendMessage(33, "You are short the coinage needed.");
                        }
                        break;
                    }
                case 5: //Armors
                    {
                        Item[] Silver = from.Backpack.FindItemsByType(typeof(Factions.Silver));
                        if (from.Backpack.ConsumeTotal(typeof(Factions.Silver), 200))
                        {
                            BagOfArmors BagOfArmors = new BagOfArmors();
                            from.AddToBackpack(BagOfArmors);
                            from.SendMessage(33, "You bought Bag of Armors and that costs 200 coins");
                        }
                        else
                        {
                            from.SendMessage(33, "You are short the coinage needed.");
                        }
                        break;
                    }
                case 6: //Necro Reagents
                    {
                        Item[] Silver = from.Backpack.FindItemsByType(typeof(Factions.Silver));
                        if (from.Backpack.ConsumeTotal(typeof(Factions.Silver), 100))
                        {
                            BagOfClothing BagOfClothing = new BagOfClothing();
                            from.AddToBackpack(BagOfClothing);
                            from.SendMessage(33, "You bought Bag of Clothing and that costs 100 coins");
                        }
                        else
                        {
                            from.SendMessage(33, "You are short the coinage needed.");
                        }
                        break;
                    }
                case 7: //Necro Reagents
                    {
                        Item[] Silver = from.Backpack.FindItemsByType(typeof(Factions.Silver));
                        if (from.Backpack.ConsumeTotal(typeof(Factions.Silver), 500))
                        {
                            BagOfTools BagOfTools = new BagOfTools();
                            from.AddToBackpack(BagOfTools);
                            from.SendMessage(33, "You bought Bag of Tools and that costs 50 coins");
                        }
                        else
                        {
                            from.SendMessage(33, "You are short the coinage needed.");
                        }
                        break;
                    }
                case 8: //Hair Restyling
                    {
                        Item[] Silver = from.Backpack.FindItemsByType(typeof(Factions.Silver));
                        if (from.Backpack.ConsumeTotal(typeof(Factions.Silver), 150))
                        {
                            HairRestylingDeed HairRestylingDeed = new HairRestylingDeed();
                            from.AddToBackpack(HairRestylingDeed);
                            from.SendMessage(33, "You bought Hair Restyling Deed and that costs 150 coins");
                        }
                        else
                        {
                            from.SendMessage(33, "You are short the coinage needed.");
                        }
                        break;
                    }
            }
        }
		public ForeverWelcomeBag() : base()
		{
			Name = "Forever Welcome Bag";
			Hue = 196;

			Item item = new MiniatureHorse();
			DropItem( item );
			item.X = 30;
			item.Y = 76;

			item = new BagOfReagents( 50 );
			DropItem( item );
			item.X = 71;
			item.Y = 55;

			Container bag = new Bag();
			bag.DropItem( new LeatherCap() );
			bag.DropItem( new LeatherChest() );
			bag.DropItem( new LeatherLegs() );
			bag.DropItem( new LeatherGloves() );
			bag.DropItem( new LeatherArms() );
			bag.DropItem( new LeatherGorget() );
			DropItem( bag );
			bag.X = 63;
			bag.Y = 75;

				item = new FireworksWand();
				item.Name = "Launch Day 2013";
				DropItem( item );
				item.X = 94;
				item.Y = 34;
			
				/*item = new BankCheck( 1000 );
				DropItem( item );
				item.X = 52;
				item.Y = 36;*/

				item = new HalfApron(); 
				item.Name = "Launch Day 2013";
				//item.loottype = Blessed;
				DropItem( item );
				item.X = 23;
				item.Y = 53;

			/*	if ( 1.00 > Utility.RandomDouble() )// 2 percent - multipy number x 100 to get percent

                switch (Utility.Random(5))
                {
				
				case 0:
                PackItem = new Skirt(); 
				Name = "Launch Day 2013";

				case 1:
                Item = new Boots(); 
				Name = "Launch Day 2013";
				DropItem( item );
				item.X = 23;
				item.Y = 53;

			    case 2:
                Item = new StrawHat(); 
				Name = "Launch Day 2013";
				DropItem( item );
				item.X = 23;
				item.Y = 53;

				case 3:
                Item = new Bandana(); 
				Name = "Launch Day 2013";
				DropItem( item );
				item.X = 23;
				item.Y = 53;

		        case 4:*/
               
                }
        private static void AddSkillItems( SkillName skill )
        {
            switch ( skill )
            {
                case SkillName.Alchemy:
                {
                    PackItem( new Bottle( 4 ) );
                    PackItem( new MortarPestle() );
                    EquipItem( new Robe( Utility.RandomPinkHue() ) );
                    break;
                }
                case SkillName.Anatomy:
                {
                    PackItem( new Bandage( 3 ) );
                    EquipItem( new Robe( Utility.RandomYellowHue() ) );
                    break;
                }
                case SkillName.AnimalLore:
                {
                    EquipItem( new ShepherdsCrook() );
                    EquipItem( new Robe( Utility.RandomBlueHue() ) );
                    break;
                }
                case SkillName.Archery:
                {
                    PackItem( new Arrow( 25 ) );
                    EquipItem( new Bow() );
                    break;
                }
                case SkillName.ArmsLore:
                {
                    switch ( Utility.Random( 3 ) )
                    {
                        case 0: EquipItem( new Kryss() ); break;
                        case 1: EquipItem( new Katana() ); break;
                        case 2: EquipItem( new Club() ); break;
                    }

                    break;
                }
                case SkillName.Begging:
                {
                    EquipItem( new GnarledStaff() );
                    break;
                }
                case SkillName.Blacksmith:
                {
                    PackItem( new Tongs() );
                    PackItem( new Pickaxe() );
                    PackItem( new Pickaxe() );
                    PackItem( new IronIngot( 50 ) );
                    EquipItem( new HalfApron( Utility.RandomYellowHue() ) );
                    break;
                }
                case SkillName.Fletching:
                {
                    PackItem( new Board( 14 ) );
                    PackItem( new Feather( 5 ) );
                    PackItem( new Shaft( 5 ) );
                    break;
                }
                case SkillName.Camping:
                {
                    PackItem( new Bedroll() );
                    PackItem( new Kindling( 5 ) );
                    break;
                }
                case SkillName.Carpentry:
                {
                    PackItem( new Board( 10 ) );
                    PackItem( new Saw() );
                    EquipItem( new HalfApron( Utility.RandomYellowHue() ) );
                    break;
                }
                case SkillName.Cartography:
                {
                    PackItem( new BlankMap() );
                    PackItem( new BlankMap() );
                    PackItem( new BlankMap() );
                    PackItem( new BlankMap() );
                    PackItem( new Sextant() );
                    break;
                }
                case SkillName.Cooking:
                {
                    PackItem( new Kindling( 2 ) );
                    PackItem( new RawLambLeg() );
                    PackItem( new RawChickenLeg() );
                    PackItem( new RawFishSteak() );
                    PackItem( new SackFlour() );
                    PackItem( new Pitcher( BeverageType.Water ) );
                    break;
                }
                case SkillName.DetectHidden:
                {
                    EquipItem( new Cloak( 0x455 ) );
                    break;
                }
                case SkillName.Discordance:
                {
                    PackInstrument();
                    break;
                }
                case SkillName.Fencing:
                {
                    EquipItem( new Kryss() );
                    break;
                }
                case SkillName.Fishing:
                {
                    EquipItem( new FishingPole() );
                    EquipItem( new FloppyHat( Utility.RandomYellowHue() ) );
                    break;
                }
                case SkillName.Healing:
                {
                    PackItem( new Bandage( 50 ) );
                    PackItem( new Scissors() );
                    break;
                }
                case SkillName.Herding:
                {
                    EquipItem( new ShepherdsCrook() );
                    break;
                }
                case SkillName.Hiding:
                {
                    EquipItem( new Cloak( 0x455 ) );
                    break;
                }
                case SkillName.Inscribe:
                {
                    PackItem( new BlankScroll( 2 ) );
                    PackItem( new BlueBook() );
                    break;
                }
                case SkillName.ItemID:
                {
                    EquipItem( new GnarledStaff() );
                    break;
                }
                case SkillName.Lockpicking:
                {
                    PackItem( new Lockpick( 20 ) );
                    break;
                }
                case SkillName.Lumberjacking:
                {
                    EquipItem( new Hatchet() );
                    break;
                }
                case SkillName.Macing:
                {
                    EquipItem( new Club() );
                    break;
                }
                case SkillName.Magery:
                {
                    BagOfReagents regs = new BagOfReagents( 30 );

                    if ( !Core.AOS )
                    {
                        foreach ( Item item in regs.Items )
                            item.LootType = LootType.Newbied;
                    }

                    PackItem( regs );

                    regs.LootType = LootType.Regular;

                    PackScroll( 0 );
                    PackScroll( 1 );
                    PackScroll( 2 );

                    Spellbook book = new Spellbook( (ulong)0x382A8C38 );

                    EquipItem( book );

                    book.LootType = LootType.Blessed;

                    EquipItem( new Robe( Utility.RandomBlueHue() ) );
                    EquipItem( new WizardsHat() );

                    break;
                }
                case SkillName.Mining:
                {
                    PackItem( new Pickaxe() );
                    break;
                }
                case SkillName.Musicianship:
                {
                    PackInstrument();
                    break;
                }
                case SkillName.Parry:
                {
                    EquipItem( new WoodenShield() );
                    break;
                }
                case SkillName.Peacemaking:
                {
                    PackInstrument();
                    break;
                }
                case SkillName.Poisoning:
                {
                    PackItem( new LesserPoisonPotion() );
                    PackItem( new LesserPoisonPotion() );
                    break;
                }
                case SkillName.Provocation:
                {
                    PackInstrument();
                    break;
                }
                case SkillName.Snooping:
                {
                    PackItem( new Lockpick( 20 ) );
                    break;
                }
                case SkillName.SpiritSpeak:
                {
                    EquipItem( new Cloak( 0x455 ) );
                    break;
                }
                case SkillName.Stealing:
                {
                    PackItem( new Lockpick( 20 ) );
                    break;
                }
                case SkillName.Swords:
                {
                    EquipItem( new Katana() );
                    break;
                }
                case SkillName.Tactics:
                {
                    EquipItem( new Katana() );
                    break;
                }
                case SkillName.Tailoring:
                {
                    PackItem( new BoltOfCloth() );
                    PackItem( new SewingKit() );
                    break;
                }
                case SkillName.Tracking:
                {
                    if ( m_Mobile != null )
                    {
                        Item shoes = m_Mobile.FindItemOnLayer( Layer.Shoes );

                        if ( shoes != null )
                            shoes.Delete();
                    }

                    EquipItem( new Boots( Utility.RandomYellowHue() ) );
                    EquipItem( new SkinningKnife() );
                    break;
                }
                case SkillName.Veterinary:
                {
                    PackItem( new Bandage( 5 ) );
                    PackItem( new Scissors() );
                    break;
                }
                case SkillName.Wrestling:
                {
                    EquipItem( new LeatherGloves() );
                    break;
                }
            }
        }
		// adam: not called for production servers
		private static void FillBankbox( Mobile m ) 
		{
			BankBox bank = m.BankBox;

			if ( bank == null )
				return;

			Container cont;

			// Begin box of money
			cont = new WoodenBox();
			cont.ItemID = 0xE7D;
			cont.Hue = 0x489;

			PlaceItemIn( cont, 16, 51, new BankCheck( 1000000 ) ); //edited by sam
			PlaceItemIn( cont, 28, 51, new BankCheck( 250000 ) ); //edited by sam
			PlaceItemIn( cont, 40, 51, new BankCheck( 125000 ) ); //edited by sam
			PlaceItemIn( cont, 52, 51, new BankCheck( 75000 ) ); //edited by sam
			PlaceItemIn( cont, 64, 51, new BankCheck( 32500 ) ); //edited by sam

			PlaceItemIn( cont, 34, 115, MakeNewbie( new Gold( 60000 ) ) );

			PlaceItemIn( bank, 18, 169, cont );
			// End box of money


			// Begin bag of potion kegs
			cont = new Backpack();
			cont.Name = "Various Potion Kegs";

			PlaceItemIn( cont,  45, 149, MakePotionKeg( PotionEffect.CureGreater, 0x2D ) );
			PlaceItemIn( cont,  69, 149, MakePotionKeg( PotionEffect.HealGreater, 0x499 ) );
			PlaceItemIn( cont,  93, 149, MakePotionKeg( PotionEffect.PoisonDeadly, 0x46 ) );
			PlaceItemIn( cont, 117, 149, MakePotionKeg( PotionEffect.RefreshTotal, 0x21 ) );
			PlaceItemIn( cont, 141, 149, MakePotionKeg( PotionEffect.ExplosionGreater, 0x74 ) );

			PlaceItemIn( cont, 93, 82, MakeNewbie( new Bottle( 1000 ) ) );

			PlaceItemIn( bank, 53, 169, cont );
			// End bag of potion kegs


			// Begin bag of tools
			cont = new Bag();
			cont.Name = "Tool Bag";

			PlaceItemIn( cont, 30,  35, MakeNewbie( new TinkerTools( 60000 ) ) );
			PlaceItemIn( cont, 90,  35, MakeNewbie( new DovetailSaw( 60000 ) ) );
			PlaceItemIn( cont, 30,  68, MakeNewbie( new Scissors() ) );
			PlaceItemIn( cont, 45,  68, MakeNewbie( new MortarPestle( 60000 ) ) );
			PlaceItemIn( cont, 75,  68, MakeNewbie( new ScribesPen( 60000 ) ) );
			PlaceItemIn( cont, 90,  68, MakeNewbie( new SmithHammer( 60000 ) ) );
			PlaceItemIn( cont, 30, 118, MakeNewbie( new TwoHandedAxe() ) );
			PlaceItemIn( cont, 90, 118, MakeNewbie( new SewingKit( 60000 ) ) );

			PlaceItemIn( bank, 118, 169, cont );
			// End bag of tools


			// Begin bag of archery ammo
			cont = new Bag();
			cont.Name = "Bag Of Archery Ammo";

			PlaceItemIn( cont, 48, 76, MakeNewbie( new Arrow( 60000 ) ) );
			PlaceItemIn( cont, 72, 76, MakeNewbie( new Bolt( 60000 ) ) );

			PlaceItemIn( bank, 118, 124, cont );
			// End bag of archery ammo


			// Begin bag of treasure maps
			cont = new Bag();
			cont.Name = "Bag Of Treasure Maps";

			PlaceItemIn( cont, 30, 35, MakeNewbie( new TreasureMap( 1, Map.Felucca ) ) );
			PlaceItemIn( cont, 45, 35, MakeNewbie( new TreasureMap( 2, Map.Felucca ) ) );
			PlaceItemIn( cont, 60, 35, MakeNewbie( new TreasureMap( 3, Map.Felucca ) ) );
			PlaceItemIn( cont, 75, 35, MakeNewbie( new TreasureMap( 4, Map.Felucca ) ) );
			PlaceItemIn( cont, 90, 35, MakeNewbie( new TreasureMap( 5, Map.Felucca ) ) );

			PlaceItemIn( cont, 30, 50, MakeNewbie( new TreasureMap( 1, Map.Felucca ) ) );
			PlaceItemIn( cont, 45, 50, MakeNewbie( new TreasureMap( 2, Map.Felucca ) ) );
			PlaceItemIn( cont, 60, 50, MakeNewbie( new TreasureMap( 3, Map.Felucca ) ) );
			PlaceItemIn( cont, 75, 50, MakeNewbie( new TreasureMap( 4, Map.Felucca ) ) );
			PlaceItemIn( cont, 90, 50, MakeNewbie( new TreasureMap( 5, Map.Felucca ) ) );

			PlaceItemIn( cont, 55, 100, MakeNewbie( new Lockpick( 60000 ) ) );
			PlaceItemIn( cont, 60, 100, MakeNewbie( new Pickaxe() ) );

			PlaceItemIn( bank, 98, 124, cont );
			// End bag of treasure maps


			// Begin bag of raw materials
			cont = new Bag();
			cont.Hue = 0x835;
			cont.Name = "Raw Materials Bag";

			PlaceItemIn( cont, 30,  35, MakeNewbie( new DullCopperIngot( 60000 ) ) );
			PlaceItemIn( cont, 37,  35, MakeNewbie( new ShadowIronIngot( 60000 ) ) );
			PlaceItemIn( cont, 44,  35, MakeNewbie( new CopperIngot( 60000 ) ) );
			PlaceItemIn( cont, 51,  35, MakeNewbie( new BronzeIngot( 60000 ) ) );
			PlaceItemIn( cont, 58,  35, MakeNewbie( new GoldIngot( 60000 ) ) );
			PlaceItemIn( cont, 65,  35, MakeNewbie( new AgapiteIngot( 60000 ) ) );
			PlaceItemIn( cont, 72,  35, MakeNewbie( new VeriteIngot( 60000 ) ) );
			PlaceItemIn( cont, 79,  35, MakeNewbie( new ValoriteIngot( 60000 ) ) );
			PlaceItemIn( cont, 86,  35, MakeNewbie( new IronIngot( 60000 ) ) );
			
			PlaceItemIn( cont, 29, 55, MakeNewbie( new Leather( 60000 ) ) );
			PlaceItemIn( cont, 44, 55, MakeNewbie( new SpinedLeather( 60000 ) ) );
			PlaceItemIn( cont, 59, 55, MakeNewbie( new HornedLeather( 60000 ) ) );
			PlaceItemIn( cont, 74, 55, MakeNewbie( new BarbedLeather( 60000 ) ) );
			PlaceItemIn( cont, 35, 100, MakeNewbie( new Cloth( 60000 ) ) );
			PlaceItemIn( cont, 67,  89, MakeNewbie( new Board( 60000 ) ) );
			PlaceItemIn( cont, 88,  91, MakeNewbie( new BlankScroll( 60000 ) ) );

			PlaceItemIn( bank, 98, 169, cont );
			// End bag of raw materials


			// Begin bag of spell casting stuff
			cont = new Backpack();
			cont.Hue = 0x480;
			cont.Name = "Spell Casting Stuff";

			PlaceItemIn( cont, 45, 105, new Spellbook( UInt64.MaxValue ) );
			
			Runebook runebook = new Runebook( 10 );
			runebook.CurCharges = runebook.MaxCharges;
			PlaceItemIn( cont, 105, 105, runebook );

			Item toHue = new BagOfReagents( 65000 );
			toHue.Hue = 0x2D;
			PlaceItemIn( cont, 45, 150, toHue );

			for ( int i = 0; i < 9; ++i )
				PlaceItemIn( cont, 45 + (i * 10), 75, MakeNewbie( new RecallRune() ) );

			PlaceItemIn( bank, 78, 169, cont );
			// End bag of spell casting stuff
		}
Exemple #26
0
        private static void FillBankAOS( Mobile m )
        {
            BankBox bank = m.BankBox;

            // The new AOS bankboxes don't have powerscrolls, they are automatically 'applied':

            for ( int i = 0; i < PowerScroll.Skills.Count; ++i )
                m.Skills[PowerScroll.Skills[ i ]].Cap = 120.0;

            m.StatCap = 250;

            Container cont;

            // Begin box of money
            cont = new WoodenBox();
            cont.ItemID = 0xE7D;
            cont.Hue = 0x489;

            PlaceItemIn( cont, 16, 51, new BankCheck( 500000 ) );
            PlaceItemIn( cont, 28, 51, new BankCheck( 250000 ) );
            PlaceItemIn( cont, 40, 51, new BankCheck( 100000 ) );
            PlaceItemIn( cont, 52, 51, new BankCheck( 100000 ) );
            PlaceItemIn( cont, 64, 51, new BankCheck(  50000 ) );

            PlaceItemIn( cont, 16, 115, new Factions.Silver( 9000 ) );
            PlaceItemIn( cont, 34, 115, new Gold( 60000 ) );

            PlaceItemIn( bank, 18, 169, cont );
            // End box of money

            // Begin bag of potion kegs
            cont = new Backpack();
            cont.Name = "Various Potion Kegs";

            PlaceItemIn( cont,  45, 149, MakePotionKeg( PotionEffect.CureGreater, 0x2D ) );
            PlaceItemIn( cont,  69, 149, MakePotionKeg( PotionEffect.HealGreater, 0x499 ) );
            PlaceItemIn( cont,  93, 149, MakePotionKeg( PotionEffect.PoisonDeadly, 0x46 ) );
            PlaceItemIn( cont, 117, 149, MakePotionKeg( PotionEffect.RefreshTotal, 0x21 ) );
            PlaceItemIn( cont, 141, 149, MakePotionKeg( PotionEffect.ExplosionGreater, 0x74 ) );

            PlaceItemIn( cont, 93, 82, new Bottle( 1000 ) );

            PlaceItemIn( bank, 53, 169, cont );
            // End bag of potion kegs

            // Begin bag of tools
            cont = new Bag();
            cont.Name = "Tool Bag";

            PlaceItemIn( cont, 30,  35, new TinkerTools( 1000 ) );
            PlaceItemIn( cont, 60,  35, new HousePlacementTool() );
            PlaceItemIn( cont, 90,  35, new DovetailSaw( 1000 ) );
            PlaceItemIn( cont, 30,  68, new Scissors() );
            PlaceItemIn( cont, 45,  68, new MortarPestle( 1000 ) );
            PlaceItemIn( cont, 75,  68, new ScribesPen( 1000 ) );
            PlaceItemIn( cont, 90,  68, new SmithHammer( 1000 ) );
            PlaceItemIn( cont, 30, 118, new TwoHandedAxe() );
            PlaceItemIn( cont, 60, 118, new FletcherTools( 1000 ) );
            PlaceItemIn( cont, 90, 118, new SewingKit( 1000 ) );

            PlaceItemIn( cont, 36, 51, new RunicHammer( CraftResource.DullCopper, 1000 ) );
            PlaceItemIn( cont, 42, 51, new RunicHammer( CraftResource.ShadowIron, 1000 ) );
            PlaceItemIn( cont, 48, 51, new RunicHammer( CraftResource.Copper, 1000 ) );
            PlaceItemIn( cont, 54, 51, new RunicHammer( CraftResource.Bronze, 1000 ) );
            PlaceItemIn( cont, 61, 51, new RunicHammer( CraftResource.Gold, 1000 ) );
            PlaceItemIn( cont, 67, 51, new RunicHammer( CraftResource.Agapite, 1000 ) );
            PlaceItemIn( cont, 73, 51, new RunicHammer( CraftResource.Verite, 1000 ) );
            PlaceItemIn( cont, 79, 51, new RunicHammer( CraftResource.Valorite, 1000 ) );

            PlaceItemIn( cont, 36, 55, new RunicSewingKit( CraftResource.SpinedLeather, 1000 ) );
            PlaceItemIn( cont, 42, 55, new RunicSewingKit( CraftResource.HornedLeather, 1000 ) );
            PlaceItemIn( cont, 48, 55, new RunicSewingKit( CraftResource.BarbedLeather, 1000 ) );

            PlaceItemIn( bank, 118, 169, cont );
            // End bag of tools

            // Begin bag of archery ammo
            cont = new Bag();
            cont.Name = "Bag Of Archery Ammo";

            PlaceItemIn( cont, 48, 76, new Arrow( 5000 ) );
            PlaceItemIn( cont, 72, 76, new Bolt( 5000 ) );

            PlaceItemIn( bank, 118, 124, cont );
            // End bag of archery ammo

            // Begin bag of treasure maps
            cont = new Bag();
            cont.Name = "Bag Of Treasure Maps";

            PlaceItemIn( cont, 30, 35, new TreasureMap( 1, Map.Trammel ) );
            PlaceItemIn( cont, 45, 35, new TreasureMap( 2, Map.Trammel ) );
            PlaceItemIn( cont, 60, 35, new TreasureMap( 3, Map.Trammel ) );
            PlaceItemIn( cont, 75, 35, new TreasureMap( 4, Map.Trammel ) );
            PlaceItemIn( cont, 90, 35, new TreasureMap( 5, Map.Trammel ) );
            PlaceItemIn( cont, 90, 35, new TreasureMap( 6, Map.Trammel ) );

            PlaceItemIn( cont, 30, 50, new TreasureMap( 1, Map.Trammel ) );
            PlaceItemIn( cont, 45, 50, new TreasureMap( 2, Map.Trammel ) );
            PlaceItemIn( cont, 60, 50, new TreasureMap( 3, Map.Trammel ) );
            PlaceItemIn( cont, 75, 50, new TreasureMap( 4, Map.Trammel ) );
            PlaceItemIn( cont, 90, 50, new TreasureMap( 5, Map.Trammel ) );
            PlaceItemIn( cont, 90, 50, new TreasureMap( 6, Map.Trammel ) );

            PlaceItemIn( cont, 55, 100, new Lockpick( 30 ) );
            PlaceItemIn( cont, 60, 100, new Pickaxe() );

            PlaceItemIn( bank, 98, 124, cont );
            // End bag of treasure maps

            // Begin bag of raw materials
            cont = new Bag();
            cont.Hue = 0x835;
            cont.Name = "Raw Materials Bag";

            PlaceItemIn( cont, 92, 60, new BarbedLeather( 5000 ) );
            PlaceItemIn( cont, 92, 68, new HornedLeather( 5000 ) );
            PlaceItemIn( cont, 92, 76, new SpinedLeather( 5000 ) );
            PlaceItemIn( cont, 92, 84, new Leather( 5000 ) );

            PlaceItemIn( cont, 30, 118, new Cloth( 5000 ) );
            PlaceItemIn( cont, 30,  84, new Board( 5000 ) );
            PlaceItemIn( cont, 57,  80, new BlankScroll( 500 ) );

            PlaceItemIn( cont, 30,  35, new DullCopperIngot( 5000 ) );
            PlaceItemIn( cont, 37,  35, new ShadowIronIngot( 5000 ) );
            PlaceItemIn( cont, 44,  35, new CopperIngot( 5000 ) );
            PlaceItemIn( cont, 51,  35, new BronzeIngot( 5000 ) );
            PlaceItemIn( cont, 58,  35, new GoldIngot( 5000 ) );
            PlaceItemIn( cont, 65,  35, new AgapiteIngot( 5000 ) );
            PlaceItemIn( cont, 72,  35, new VeriteIngot( 5000 ) );
            PlaceItemIn( cont, 79,  35, new ValoriteIngot( 5000 ) );
            PlaceItemIn( cont, 86,  35, new IronIngot( 5000 ) );

            PlaceItemIn( cont, 30,  59, new RedScales( 5000 ) );
            PlaceItemIn( cont, 36,  59, new YellowScales( 5000 ) );
            PlaceItemIn( cont, 42,  59, new BlackScales( 5000 ) );
            PlaceItemIn( cont, 48,  59, new GreenScales( 5000 ) );
            PlaceItemIn( cont, 54,  59, new WhiteScales( 5000 ) );
            PlaceItemIn( cont, 60,  59, new BlueScales( 5000 ) );

            PlaceItemIn( bank, 98, 169, cont );
            // End bag of raw materials

            // Begin bag of spell casting stuff
            cont = new Backpack();
            cont.Hue = 0x480;
            cont.Name = "Spell Casting Stuff";

            PlaceItemIn( cont, 45, 105, new Spellbook( UInt64.MaxValue ) );
            PlaceItemIn( cont, 65, 105, new NecromancerSpellbook( (UInt64)0xFFFF ) );
            PlaceItemIn( cont, 85, 105, new BookOfChivalry( (UInt64)0x3FF ) );
            PlaceItemIn( cont, 105, 105, new BookOfBushido() );	//Default ctor = full
            PlaceItemIn( cont, 125, 105, new BookOfNinjitsu() ); //Default ctor = full

            Runebook runebook = new Runebook( 10 );
            runebook.CurCharges = runebook.MaxCharges;
            PlaceItemIn( cont, 145, 105, runebook );

            Item toHue = new BagOfReagents( 150 );
            toHue.Hue = 0x2D;
            PlaceItemIn( cont, 45, 150, toHue );

            toHue = new BagOfNecroReagents( 150 );
            toHue.Hue = 0x488;
            PlaceItemIn( cont, 65, 150, toHue );

            PlaceItemIn( cont, 140, 150, new BagOfAllReagents( 500 ) );

            for ( int i = 0; i < 9; ++i )
                PlaceItemIn( cont, 45 + (i * 10), 75, new RecallRune() );

            PlaceItemIn( cont, 141, 74, new FireHorn() );

            PlaceItemIn( bank, 78, 169, cont );
            // End bag of spell casting stuff

            // Begin bag of ethereals
            cont = new Backpack();
            cont.Hue = 0x490;
            cont.Name = "Bag Of Ethy's!";

            PlaceItemIn( cont, 45, 66, new EtherealHorse() );
            PlaceItemIn( cont, 69, 82, new EtherealOstard() );
            PlaceItemIn( cont, 93, 99, new EtherealLlama() );
            PlaceItemIn( cont, 117, 115, new EtherealKirin() );
            PlaceItemIn( cont, 45, 132, new EtherealUnicorn() );
            PlaceItemIn( cont, 69, 66, new EtherealRidgeback() );
            PlaceItemIn( cont, 93, 82, new EtherealSwampDragon() );
            PlaceItemIn( cont, 117, 99, new EtherealBeetle() );

            PlaceItemIn( bank, 38, 124, cont );
            // End bag of ethereals

            // Begin first bag of artifacts
            cont = new Backpack();
            cont.Hue = 0x48F;
            cont.Name = "Bag of Artifacts";

            PlaceItemIn( cont, 45, 66, new TitansHammer() );
            PlaceItemIn( cont, 69, 82, new InquisitorsResolution() );
            PlaceItemIn( cont, 93, 99, new BladeOfTheRighteous() );
            PlaceItemIn( cont, 117, 115, new ZyronicClaw() );

            PlaceItemIn( bank, 58, 124, cont );
            // End first bag of artifacts

            // Begin second bag of artifacts
            cont = new Backpack();
            cont.Hue = 0x48F;
            cont.Name = "Bag of Artifacts";

            PlaceItemIn( cont, 45, 66, new GauntletsOfNobility() );
            PlaceItemIn( cont, 69, 82, new MidnightBracers() );
            PlaceItemIn( cont, 93, 99, new VoiceOfTheFallenKing() );
            PlaceItemIn( cont, 117, 115, new OrnateCrownOfTheHarrower() );
            PlaceItemIn( cont, 45, 132, new HelmOfInsight() );
            PlaceItemIn( cont, 69, 66, new HolyKnightsBreastplate() );
            PlaceItemIn( cont, 93, 82, new ArmorOfFortune() );
            PlaceItemIn( cont, 117, 99, new TunicOfFire() );
            PlaceItemIn( cont, 45, 115, new LeggingsOfBane() );
            PlaceItemIn( cont, 69, 132, new ArcaneShield() );
            PlaceItemIn( cont, 93, 66, new Aegis() );
            PlaceItemIn( cont, 117, 82, new RingOfTheVile() );
            PlaceItemIn( cont, 45, 99, new BraceletOfHealth() );
            PlaceItemIn( cont, 69, 115, new RingOfTheElements() );
            PlaceItemIn( cont, 93, 132, new OrnamentOfTheMagician() );
            PlaceItemIn( cont, 117, 66, new DivineCountenance() );
            PlaceItemIn( cont, 45, 82, new JackalsCollar() );
            PlaceItemIn( cont, 69, 99, new HuntersHeaddress() );
            PlaceItemIn( cont, 93, 115, new HatOfTheMagi() );
            PlaceItemIn( cont, 117, 132, new ShadowDancerLeggings() );
            PlaceItemIn( cont, 45, 66, new SpiritOfTheTotem() );
            PlaceItemIn( cont, 69, 82, new BladeOfInsanity() );
            PlaceItemIn( cont, 93, 99, new AxeOfTheHeavens() );
            PlaceItemIn( cont, 117, 115, new TheBeserkersMaul() );
            PlaceItemIn( cont, 45, 132, new Frostbringer() );
            PlaceItemIn( cont, 69, 66, new BreathOfTheDead() );
            PlaceItemIn( cont, 93, 82, new TheDragonSlayer() );
            PlaceItemIn( cont, 117, 99, new BoneCrusher() );
            PlaceItemIn( cont, 45, 115, new StaffOfTheMagi() );
            PlaceItemIn( cont, 69, 132, new SerpentsFang() );
            PlaceItemIn( cont, 93, 66, new LegacyOfTheDreadLord() );
            PlaceItemIn( cont, 117, 82, new TheTaskmaster() );
            PlaceItemIn( cont, 45, 99, new TheDryadBow() );

            PlaceItemIn( bank, 78, 124, cont );
            // End second bag of artifacts

            // Begin bag of minor artifacts
            cont = new Backpack();
            cont.Hue = 0x48F;
            cont.Name = "Bag of Minor Artifacts";

            PlaceItemIn( cont, 45, 66, new LunaLance() );
            PlaceItemIn( cont, 69, 82, new VioletCourage() );
            PlaceItemIn( cont, 93, 99, new CavortingClub() );
            PlaceItemIn( cont, 117, 115, new CaptainQuacklebushsCutlass() );
            PlaceItemIn( cont, 45, 132, new NightsKiss() );
            PlaceItemIn( cont, 69, 66, new ShipModelOfTheHMSCape() );
            PlaceItemIn( cont, 93, 82, new AdmiralsHeartyRum() );
            PlaceItemIn( cont, 117, 99, new CandelabraOfSouls() );
            PlaceItemIn( cont, 45, 115, new IolosLute() );
            PlaceItemIn( cont, 69, 132, new GwennosHarp() );
            PlaceItemIn( cont, 93, 66, new ArcticDeathDealer() );
            PlaceItemIn( cont, 117, 82, new EnchantedTitanLegBone() );
            PlaceItemIn( cont, 45, 99, new NoxRangersHeavyCrossbow() );
            PlaceItemIn( cont, 69, 115, new BlazeOfDeath() );
            PlaceItemIn( cont, 93, 132, new DreadPirateHat() );
            PlaceItemIn( cont, 117, 66, new BurglarsBandana() );
            PlaceItemIn( cont, 45, 82, new GoldBricks() );
            PlaceItemIn( cont, 69, 99, new AlchemistsBauble() );
            PlaceItemIn( cont, 93, 115, new PhillipsWoodenSteed() );
            PlaceItemIn( cont, 117, 132, new PolarBearMask() );
            PlaceItemIn( cont, 45, 66, new BowOfTheJukaKing() );
            PlaceItemIn( cont, 69, 82, new GlovesOfThePugilist() );
            PlaceItemIn( cont, 93, 99, new OrcishVisage() );
            PlaceItemIn( cont, 117, 115, new StaffOfPower() );
            PlaceItemIn( cont, 45, 132, new ShieldOfInvulnerability() );
            PlaceItemIn( cont, 69, 66, new HeartOfTheLion() );
            PlaceItemIn( cont, 93, 82, new ColdBlood() );
            PlaceItemIn( cont, 117, 99, new GhostShipAnchor() );
            PlaceItemIn( cont, 45, 115, new SeahorseStatuette() );
            PlaceItemIn( cont, 69, 132, new WrathOfTheDryad() );
            PlaceItemIn( cont, 93, 66, new PixieSwatter() );

            for( int i = 0; i < 10; i++ )
                PlaceItemIn( cont, 117, 128, new MessageInABottle( Utility.RandomBool() ? Map.Trammel : Map.Felucca, 4 ) );

            PlaceItemIn( bank, 18, 124, cont );

            if( Core.SE )
            {
                cont = new Bag();
                cont.Hue = 0x501;
                cont.Name = "Tokuno Minor Artifacts";

                PlaceItemIn( cont, 42, 70, new Exiler() );
                PlaceItemIn( cont, 38, 53, new HanzosBow() );
                PlaceItemIn( cont, 45, 40, new TheDestroyer() );
                PlaceItemIn( cont, 92, 80, new DragonNunchaku() );
                PlaceItemIn( cont, 42, 56, new PeasantsBokuto() );
                PlaceItemIn( cont, 44, 71, new TomeOfEnlightenment() );
                PlaceItemIn( cont, 35, 35, new ChestOfHeirlooms() );
                PlaceItemIn( cont, 29,  0, new HonorableSwords() );
                PlaceItemIn( cont, 49, 85, new AncientUrn() );
                PlaceItemIn( cont, 51, 58, new FluteOfRenewal() );
                PlaceItemIn( cont, 70, 51, new PigmentsOfTokuno() );
                PlaceItemIn( cont, 40, 79, new AncientSamuraiDo() );
                PlaceItemIn( cont, 51, 61, new LegsOfStability() );
                PlaceItemIn( cont, 88, 78, new GlovesOfTheSun() );
                PlaceItemIn( cont, 55, 62, new AncientFarmersKasa() );
                PlaceItemIn( cont, 55, 83, new ArmsOfTacticalExcellence() );
                PlaceItemIn( cont, 50, 85, new DaimyosHelm() );
                PlaceItemIn( cont, 52, 78, new BlackLotusHood() );
                PlaceItemIn( cont, 52, 79, new DemonForks() );
                PlaceItemIn( cont, 33, 49, new PilferedDancerFans() );

                PlaceItemIn( bank, 58, 124, cont );
            }

            if( Core.SE )	//This bag came only after SE.
            {
                cont = new Bag();
                cont.Name = "Bag of Bows";

                PlaceItemIn( cont, 31, 84, new Bow() );
                PlaceItemIn( cont, 78, 74, new CompositeBow() );
                PlaceItemIn( cont, 53, 71, new Crossbow() );
                PlaceItemIn( cont, 56, 39, new HeavyCrossbow() );
                PlaceItemIn( cont, 82, 72, new RepeatingCrossbow() );
                PlaceItemIn( cont, 49, 45, new Yumi() );

                for( int i = 0; i < cont.Items.Count; i++ )
                {
                    BaseRanged bow = cont.Items[i] as BaseRanged;

                    if( bow != null )
                    {
                        bow.Attributes.WeaponSpeed = 35;
                        bow.Attributes.WeaponDamage = 35;
                    }
                }

                PlaceItemIn( bank, 108, 135, cont );
            }
        }
            public override void OnResponse( NetState sender, RelayInfo info )
            {
                if ( m_Ticket.Deleted )
                    return;

                int number = 0;

                Item item = null;
                Item item2 = null;

                switch ( info.ButtonID )
                {
                    case 1: item = new Sextant(); number = 1010494; break; // A sextant has been placed in your backpack.
                    case 2: item = new HairRestylingDeed(); number = 501933; break; // A coupon for a free hair restyling has been placed in your backpack.
                    //case 3: item = new Spellbook( 0xFFFFFFFF ); number = 1010495; break; // A spellbook with all 1st to 4th circle spells has been placed in your backpack.
                    case 3: item = new Spellbook(UInt64.MaxValue); item2 = new BagOfReagents(30); number = 0; break;
                    case 4: item = new FireworksWand(); number = 501935; break; // A wand of fireworks has been placed in your backpack.
                    case 5: item = new Spyglass(); number = 501936; break; // A spyglass has been placed in your backpack.
                    case 6: item = new DyeTub(); item2 = new Dyes(); number = 501937; break; // The dyes and dye tub have been placed in your backpack.
                }

                if ( item != null )
                {
                    m_Ticket.Delete();

                    if (number == 0)
                        m_From.SendMessage("A full spellbook and a bag of reagents have been placed into your backpack.");
                    else
                        m_From.SendLocalizedMessage( number );
                    m_From.AddToBackpack( item );

                    if ( item2 != null )
                        m_From.AddToBackpack( item2 );
                }
            }