Example #1
0
        public override bool OnDragDrop(Mobile from, Item dropped)
        {
            this.Direction = GetDirectionTo(from);

            PlayerMobile player = from as PlayerMobile;

            if (player != null)
            {
                AmbitiousQueenQuest qs = player.Quest as AmbitiousQueenQuest;

                if (qs != null && qs.RedSolen == this.RedSolen)
                {
                    QuestObjective obj = qs.FindObjective(typeof(GatherFungiObjective));

                    if (obj != null && !obj.Completed)
                    {
                        if (dropped is ZoogiFungus)
                        {
                            ZoogiFungus fungi = (ZoogiFungus)dropped;

                            if (fungi.Amount >= 50)
                            {
                                obj.Complete();

                                fungi.Amount -= 50;

                                if (fungi.Amount == 0)
                                {
                                    fungi.Delete();
                                    return(true);
                                }
                                else
                                {
                                    return(false);
                                }
                            }
                            else
                            {
                                SayTo(player, 1054072); // Our arrangement was for 50 of the zoogi fungus. Please return to me when you have that amount.
                                return(false);
                            }
                        }
                    }
                }
            }

            return(base.OnDragDrop(from, dropped));
        }
            protected override void OnTarget(Mobile from, object targeted)
            {
                if (targeted is ZoogiFungus)
                {
                    ZoogiFungus fungus = (ZoogiFungus)targeted;

                    if (fungus.IsChildOf(m_From.Backpack))
                    {
                        m_Matriarch.OnGivenFungi(m_From, (ZoogiFungus)targeted);
                    }
                    else
                    {
                        m_From.SendLocalizedMessage(1042001);                           // That must be in your pack for you to use it.
                    }
                }
            }
        public void OnGivenFungi(PlayerMobile player, ZoogiFungus fungi)
        {
            this.Direction = GetDirectionTo(player);

            SolenMatriarchQuest qs = player.Quest as SolenMatriarchQuest;

            if (qs != null && qs.RedSolen == this.RedSolen)
            {
                QuestObjective obj = qs.FindObjective(typeof(ProcessFungiObjective));

                if (obj != null && !obj.Completed)
                {
                    int amount = fungi.Amount / 2;

                    if (amount > 100)
                    {
                        amount = 100;
                    }

                    if (amount > 0)
                    {
                        if (amount * 2 >= fungi.Amount)
                        {
                            fungi.Delete();
                        }
                        else
                        {
                            fungi.Amount -= amount * 2;
                        }

                        PowderOfTranslocation powder = new PowderOfTranslocation(amount);
                        player.AddToBackpack(powder);

                        player.SendLocalizedMessage(1054100);                           // You receive some powder of translocation.

                        obj.Complete();
                    }
                }
            }
        }
Example #4
0
        public override void GenerateLoot()
        {
            if (Utility.Random(100) < 20)
            {
                Lantern lantern = new Lantern();
                lantern.Hue = Utility.RandomMinMax(2113, 2118);
                PackItem(lantern);
            }

            if (Utility.Random(100) < 10)
            {
                Item item;

                switch (Utility.Random(111))
                {
                case 0: item = new Tapestry6W(); break;

                case 1: item = new MetalChest(); break;

                case 2: item = new MetalGoldenChest(); break;

                case 3: item = new MetalBox(); break;

                case 4: item = new AniLargeVioletFlask(); break;

                case 5: item = new AniRedRibbedFlask(); break;

                case 6: item = new AniSmallBlueFlask(); break;

                case 7: item = new BlueBeaker(); break;

                case 8: item = new BlueCurvedFlask(); break;

                case 9: item = new EmptyVial(); break;

                case 10: item = new EmptyVialsWRack(); break;

                case 11: item = new LargeFlask(); break;

                case 12: item = new LargeVioletFlask(); break;

                //case 13: item = new HourGlass(); break;
                //case 14: item = new HourGlassAni(); break;
                case 15: item = new DecorativeDAxeWest(); break;

                case 16: item = new DecorativeDAxeNorth(); break;

                case 17: item = new DecorativeBowWest(); break;

                case 18: item = new DecorativeBowNorth(); break;

                case 19: item = new DecorativeAxeWest(); break;

                case 20: item = new DecorativeAxeNorth(); break;

                case 21: item = new DecorativeShieldSword2West(); break;

                case 22: item = new DecorativeShieldSword2North(); break;

                case 23: item = new DecorativeShieldSword1West(); break;

                case 24: item = new DecorativeShieldSword1North(); break;

                case 25: item = new DecorativeShield11(); break;

                case 26: item = new DecorativeShield10(); break;

                case 27: item = new DecorativeShield9(); break;

                case 28: item = new DecorativeShield8(); break;

                case 29: item = new DecorativeShield7(); break;

                case 30: item = new DecorativeShield6(); break;

                case 31: item = new DecorativeShield5(); break;

                case 32: item = new DecorativeShield4(); break;

                case 33: item = new DecorativeShield3(); break;

                case 34: item = new DecorativeShield2(); break;

                case 35: item = new DecorativeShield1(); break;

                case 36: item = new Whip(); break;

                case 37: item = new SilverWire(); break;

                case 38: item = new Rope(); break;

                case 39: item = new PaintsAndBrush(); break;

                case 40: item = new IronWire(); break;

                case 41: item = new GoldWire(); break;

                case 42: item = new CopperWire(); break;

                case 43: item = new WoodDebris(); break;

                case 44: item = new RuinedPainting(); break;

                case 45: item = new RuinedFallenChairB(); break;

                case 46: item = new FullVialsWRack(); break;

                case 47: item = new FullJar(); break;

                case 48: item = new FullJars2(); break;

                case 49: item = new FullJars3(); break;

                case 50: item = new FullJars4(); break;

                case 51: item = new GreenBeaker(); break;

                case 52: item = new GreenBottle(); break;

                case 53: item = new VioletStemmedBottle(); break;

                case 54: item = new SpinningHourglass(); break;

                case 55: item = new ArcheryButte(); break;

                case 56: item = new PhillipsWoodenSteed(); break;

                case 57: item = new PileOfGlacialSnow(); break;

                case 58: item = new RedPoinsettia(); break;

                case 59: item = new RoseOfTrinsic(); break;

                case 60: item = new RaiseSwitch(); break;

                case 61: item = new SpecialFishingNet(); break;

                case 62: item = new SpecialHairDye(); break;

                case 63: item = new SpecialBeardDye(); break;

                case 64: item = new SnowPile(); break;

                case 65: item = new StatueEast2(); break;

                case 66: item = new StatuePegasus2(); break;

                case 67: item = new StatueSouth2(); break;

                case 68: item = new StatueSouthEast(); break;

                case 69: item = new StatuetteDyeTub(); break;

                case 70: item = new StatueWest(); break;

                case 71: item = new TapestryOfSosaria(); break;

                case 72: item = new WhitePoinsettia(); break;

                case 73: item = new WindChimes(); break;

                case 74: item = new ZoogiFungus(); break;

                case 75: item = new RuinedFallenChairA(); break;

                case 76: item = new RuinedDrawers(); break;

                case 77: item = new RuinedClock(); break;

                case 78: item = new RuinedChair(); break;

                case 79: item = new RuinedBooks(); break;

                case 80: item = new RuinedBookcase(); break;

                case 81: item = new RuinedArmoire(); break;

                case 82: item = new SmallStretchedHideSouthDeed(); break;

                case 83: item = new SmallStretchedHideEastDeed(); break;

                case 84: item = new PolarBearRugSouthDeed(); break;

                case 85: item = new PolarBearRugEastDeed(); break;

                case 86: item = new MediumStretchedHideSouthDeed(); break;

                case 87: item = new MediumStretchedHideEastDeed(); break;

                case 88: item = new LightFlowerTapestrySouthDeed(); break;

                case 89: item = new LightFlowerTapestryEastDeed(); break;

                case 90: item = new DarkFlowerTapestrySouthDeed(); break;

                case 91: item = new DarkFlowerTapestryEastDeed(); break;

                case 92: item = new BrownBearRugSouthDeed(); break;

                case 93: item = new BrownBearRugEastDeed(); break;

                case 94: item = new WallSconce(); break;

                case 95: item = new WallTorch(); break;

                case 96: item = new CandleShort(); break;

                case 97: item = new CandleLarge(); break;

                case 98: item = new DecorativeSwordNorth(); break;

                case 99: item = new DecorativeSwordWest(); break;

                case 100: item = new Tapestry1N(); break;

                case 101: item = new Tapestry2N(); break;

                case 102: item = new Tapestry2W(); break;

                case 103: item = new Tapestry3N(); break;

                case 104: item = new Tapestry3W(); break;

                case 105: item = new Tapestry4N(); break;

                case 106: item = new Tapestry4W(); break;

                case 107: item = new Tapestry5N(); break;

                case 108: item = new Tapestry5W(); break;

                case 109: item = new Tapestry6N(); break;

                default: item = new CandleSkull(); break;
                }

                item.LootType = LootType.Regular;
                item.Movable  = true;
                PackItem(item);
            }
        }
Example #5
0
        public override void GenerateLoot()
        {
            if (Utility.Random(100) <= 20)
            {
                int hue = Utility.RandomMinMax(1, 1001);

                Sandals sandals = new Sandals();

                sandals.Hue = hue;

                PackItem(sandals);
            }

            if (Utility.Random(100) <= 10)
            {
                int hue = Utility.RandomMinMax(1, 1001);

                Sandals sandals = new Sandals();

                sandals.Hue = hue;

                PackItem(sandals);
            }

            if (Utility.Random(100) <= 5)
            {
                int hue = Utility.RandomMinMax(1, 1001);

                Sandals sandals = new Sandals();

                sandals.Hue = hue;

                PackItem(sandals);
            }

            if (Utility.Random(100) <= 5)
            {
                int hue = Utility.RandomMinMax(1201, 1255);

                Sandals sandals = new Sandals();

                sandals.Hue = hue;

                PackItem(sandals);
            }

            if (Utility.Random(100) <= 2)
            {
                int hue = Utility.RandomMinMax(2101, 2130);

                Sandals sandals = new Sandals();

                sandals.Hue = hue;

                PackItem(sandals);
            }


            if (Utility.Random(100) <= 1)
            {
                int hue = 2936;

                Sandals sandals = new Sandals();

                sandals.Hue = hue;

                PackItem(sandals);
            }

            if (Utility.Random(1000) <= 2)
            {
                int     hue;
                Sandals sandals = new Sandals();

                switch (Utility.Random(7))
                {
                case 0: hue = 1155; break;

                case 1: hue = 1156; break;

                case 2: hue = 1157; break;

                case 3: hue = 1158; break;

                case 4: hue = 1160; break;

                case 5: hue = 1172; break;

                default: hue = 1175; break;
                }

                sandals.Hue = hue;
                PackItem(sandals);
            }

            if (Utility.Random(1000) <= 2)
            {
                int     hue;
                Sandals sandals = new Sandals();

                switch (Utility.Random(5))
                {
                case 0: hue = 1176; break;

                case 1: hue = 1171; break;

                case 2: hue = 1159; break;

                case 3: hue = 1170; break;

                default: hue = 1161; break;
                }

                sandals.Hue = hue;
                PackItem(sandals);
            }


            double chance = Utility.RandomDouble();

            if (chance <= 0.10)
            {
                Seed seed;

                PlantType type;
                switch (Utility.Random(17))
                {
                case 0: type = PlantType.CampionFlowers; break;

                case 1: type = PlantType.Poppies; break;

                case 2: type = PlantType.Snowdrops; break;

                case 3: type = PlantType.Bulrushes; break;

                case 4: type = PlantType.Lilies; break;

                case 5: type = PlantType.PampasGrass; break;

                case 6: type = PlantType.Rushes; break;

                case 7: type = PlantType.ElephantEarPlant; break;

                case 8: type = PlantType.Fern; break;

                case 9: type = PlantType.PonytailPalm; break;

                case 10: type = PlantType.SmallPalm; break;

                case 11: type = PlantType.CenturyPlant; break;

                case 12: type = PlantType.WaterPlant; break;

                case 13: type = PlantType.SnakePlant; break;

                case 14: type = PlantType.PricklyPearCactus; break;

                case 15: type = PlantType.BarrelCactus; break;

                default: type = PlantType.TribarrelCactus; break;
                }

                PlantHue hue;
                switch (Utility.Random(19))
                {
                case 0: hue = PlantHue.Plain; break;

                case 1: hue = PlantHue.Red; break;

                case 2: hue = PlantHue.Blue; break;

                case 3: hue = PlantHue.Yellow; break;

                case 4: hue = PlantHue.BrightRed; break;

                case 5: hue = PlantHue.BrightBlue; break;

                case 6: hue = PlantHue.BrightYellow; break;

                case 7: hue = PlantHue.Purple; break;

                case 8: hue = PlantHue.Green; break;

                case 9: hue = PlantHue.Orange; break;

                case 10: hue = PlantHue.BrightPurple; break;

                case 11: hue = PlantHue.BrightGreen; break;

                case 12: hue = PlantHue.BrightOrange; break;

                case 13: hue = PlantHue.Black; break;

                case 14: hue = PlantHue.White; break;

                case 15: hue = PlantHue.Pink; break;

                case 16: hue = PlantHue.Magenta; break;

                case 17: hue = PlantHue.Aqua; break;

                default: hue = PlantHue.FireRed; break;
                }

                seed = new Seed(type, hue, false);
                PackItem(seed);

                if (Utility.Random(500) == 1)
                {
                    PackItem(new BlackDyeTub());
                }

                if (Utility.Random(100) < 15)
                {
                    Item item;

                    switch (Utility.Random(111))
                    {
                    case 0: item = new Tapestry6W(); break;

                    case 1: item = new MetalChest(); break;

                    case 2: item = new MetalGoldenChest(); break;

                    case 3: item = new MetalBox(); break;

                    case 4: item = new AniLargeVioletFlask(); break;

                    case 5: item = new AniRedRibbedFlask(); break;

                    case 6: item = new AniSmallBlueFlask(); break;

                    case 7: item = new BlueBeaker(); break;

                    case 8: item = new BlueCurvedFlask(); break;

                    case 9: item = new EmptyVial(); break;

                    case 10: item = new EmptyVialsWRack(); break;

                    case 11: item = new LargeFlask(); break;

                    case 12: item = new LargeVioletFlask(); break;

                    //case 13: item = new HourGlass(); break;
                    //case 14: item = new HourGlassAni(); break;
                    case 15: item = new DecorativeDAxeWest(); break;

                    case 16: item = new DecorativeDAxeNorth(); break;

                    case 17: item = new DecorativeBowWest(); break;

                    case 18: item = new DecorativeBowNorth(); break;

                    case 19: item = new DecorativeAxeWest(); break;

                    case 20: item = new DecorativeAxeNorth(); break;

                    case 21: item = new DecorativeShieldSword2West(); break;

                    case 22: item = new DecorativeShieldSword2North(); break;

                    case 23: item = new DecorativeShieldSword1West(); break;

                    case 24: item = new DecorativeShieldSword1North(); break;

                    case 25: item = new DecorativeShield11(); break;

                    case 26: item = new DecorativeShield10(); break;

                    case 27: item = new DecorativeShield9(); break;

                    case 28: item = new DecorativeShield8(); break;

                    case 29: item = new DecorativeShield7(); break;

                    case 30: item = new DecorativeShield6(); break;

                    case 31: item = new DecorativeShield5(); break;

                    case 32: item = new DecorativeShield4(); break;

                    case 33: item = new DecorativeShield3(); break;

                    case 34: item = new DecorativeShield2(); break;

                    case 35: item = new DecorativeShield1(); break;

                    case 36: item = new Whip(); break;

                    case 37: item = new SilverWire(); break;

                    case 38: item = new Rope(); break;

                    case 39: item = new PaintsAndBrush(); break;

                    case 40: item = new IronWire(); break;

                    case 41: item = new GoldWire(); break;

                    case 42: item = new CopperWire(); break;

                    case 43: item = new WoodDebris(); break;

                    case 44: item = new RuinedPainting(); break;

                    case 45: item = new RuinedFallenChairB(); break;

                    case 46: item = new FullVialsWRack(); break;

                    case 47: item = new FullJar(); break;

                    case 48: item = new FullJars2(); break;

                    case 49: item = new FullJars3(); break;

                    case 50: item = new FullJars4(); break;

                    case 51: item = new GreenBeaker(); break;

                    case 52: item = new GreenBottle(); break;

                    case 53: item = new VioletStemmedBottle(); break;

                    case 54: item = new SpinningHourglass(); break;

                    case 55: item = new ArcheryButte(); break;

                    case 56: item = new PhillipsWoodenSteed(); break;

                    case 57: item = new PileOfGlacialSnow(); break;

                    case 58: item = new RedPoinsettia(); break;

                    case 59: item = new RoseOfTrinsic(); break;

                    case 60: item = new RaiseSwitch(); break;

                    case 61: item = new SpecialFishingNet(); break;

                    case 62: item = new SpecialHairDye(); break;

                    case 63: item = new SpecialBeardDye(); break;

                    case 64: item = new SnowPile(); break;

                    case 65: item = new StatueEast2(); break;

                    case 66: item = new StatuePegasus2(); break;

                    case 67: item = new StatueSouth2(); break;

                    case 68: item = new StatueSouthEast(); break;

                    case 69: item = new StatuetteDyeTub(); break;

                    case 70: item = new StatueWest(); break;

                    case 71: item = new TapestryOfSosaria(); break;

                    case 72: item = new WhitePoinsettia(); break;

                    case 73: item = new WindChimes(); break;

                    case 74: item = new ZoogiFungus(); break;

                    case 75: item = new RuinedFallenChairA(); break;

                    case 76: item = new RuinedDrawers(); break;

                    case 77: item = new RuinedClock(); break;

                    case 78: item = new RuinedChair(); break;

                    case 79: item = new RuinedBooks(); break;

                    case 80: item = new RuinedBookcase(); break;

                    case 81: item = new RuinedArmoire(); break;

                    case 82: item = new SmallStretchedHideSouthDeed(); break;

                    case 83: item = new SmallStretchedHideEastDeed(); break;

                    case 84: item = new PolarBearRugSouthDeed(); break;

                    case 85: item = new PolarBearRugEastDeed(); break;

                    case 86: item = new MediumStretchedHideSouthDeed(); break;

                    case 87: item = new MediumStretchedHideEastDeed(); break;

                    case 88: item = new LightFlowerTapestrySouthDeed(); break;

                    case 89: item = new LightFlowerTapestryEastDeed(); break;

                    case 90: item = new DarkFlowerTapestrySouthDeed(); break;

                    case 91: item = new DarkFlowerTapestryEastDeed(); break;

                    case 92: item = new BrownBearRugSouthDeed(); break;

                    case 93: item = new BrownBearRugEastDeed(); break;

                    case 94: item = new WallSconce(); break;

                    case 95: item = new WallTorch(); break;

                    case 96: item = new CandleShort(); break;

                    case 97: item = new CandleLarge(); break;

                    case 98: item = new DecorativeSwordNorth(); break;

                    case 99: item = new DecorativeSwordWest(); break;

                    case 100: item = new Tapestry1N(); break;

                    case 101: item = new Tapestry2N(); break;

                    case 102: item = new Tapestry2W(); break;

                    case 103: item = new Tapestry3N(); break;

                    case 104: item = new Tapestry3W(); break;

                    case 105: item = new Tapestry4N(); break;

                    case 106: item = new Tapestry4W(); break;

                    case 107: item = new Tapestry5N(); break;

                    case 108: item = new Tapestry5W(); break;

                    case 109: item = new Tapestry6N(); break;

                    default: item = new CandleSkull(); break;
                    }

                    item.LootType = LootType.Regular;
                    item.Movable  = true;
                    PackItem(item);
                }

                if (Utility.Random(100) < 10)
                {
                    Item item;

                    switch (Utility.Random(111))
                    {
                    case 0: item = new Tapestry6W(); break;

                    case 1: item = new MetalChest(); break;

                    case 2: item = new MetalGoldenChest(); break;

                    case 3: item = new MetalBox(); break;

                    case 4: item = new AniLargeVioletFlask(); break;

                    case 5: item = new AniRedRibbedFlask(); break;

                    case 6: item = new AniSmallBlueFlask(); break;

                    case 7: item = new BlueBeaker(); break;

                    case 8: item = new BlueCurvedFlask(); break;

                    case 9: item = new EmptyVial(); break;

                    case 10: item = new EmptyVialsWRack(); break;

                    case 11: item = new LargeFlask(); break;

                    case 12: item = new LargeVioletFlask(); break;

                    //case 13: item = new HourGlass(); break;
                    //case 14: item = new HourGlassAni(); break;
                    case 15: item = new DecorativeDAxeWest(); break;

                    case 16: item = new DecorativeDAxeNorth(); break;

                    case 17: item = new DecorativeBowWest(); break;

                    case 18: item = new DecorativeBowNorth(); break;

                    case 19: item = new DecorativeAxeWest(); break;

                    case 20: item = new DecorativeAxeNorth(); break;

                    case 21: item = new DecorativeShieldSword2West(); break;

                    case 22: item = new DecorativeShieldSword2North(); break;

                    case 23: item = new DecorativeShieldSword1West(); break;

                    case 24: item = new DecorativeShieldSword1North(); break;

                    case 25: item = new DecorativeShield11(); break;

                    case 26: item = new DecorativeShield10(); break;

                    case 27: item = new DecorativeShield9(); break;

                    case 28: item = new DecorativeShield8(); break;

                    case 29: item = new DecorativeShield7(); break;

                    case 30: item = new DecorativeShield6(); break;

                    case 31: item = new DecorativeShield5(); break;

                    case 32: item = new DecorativeShield4(); break;

                    case 33: item = new DecorativeShield3(); break;

                    case 34: item = new DecorativeShield2(); break;

                    case 35: item = new DecorativeShield1(); break;

                    case 36: item = new Whip(); break;

                    case 37: item = new SilverWire(); break;

                    case 38: item = new Rope(); break;

                    case 39: item = new PaintsAndBrush(); break;

                    case 40: item = new IronWire(); break;

                    case 41: item = new GoldWire(); break;

                    case 42: item = new CopperWire(); break;

                    case 43: item = new WoodDebris(); break;

                    case 44: item = new RuinedPainting(); break;

                    case 45: item = new RuinedFallenChairB(); break;

                    case 46: item = new FullVialsWRack(); break;

                    case 47: item = new FullJar(); break;

                    case 48: item = new FullJars2(); break;

                    case 49: item = new FullJars3(); break;

                    case 50: item = new FullJars4(); break;

                    case 51: item = new GreenBeaker(); break;

                    case 52: item = new GreenBottle(); break;

                    case 53: item = new VioletStemmedBottle(); break;

                    case 54: item = new SpinningHourglass(); break;

                    case 55: item = new ArcheryButte(); break;

                    case 56: item = new PhillipsWoodenSteed(); break;

                    case 57: item = new PileOfGlacialSnow(); break;

                    case 58: item = new RedPoinsettia(); break;

                    case 59: item = new RoseOfTrinsic(); break;

                    case 60: item = new RaiseSwitch(); break;

                    case 61: item = new SpecialFishingNet(); break;

                    case 62: item = new SpecialHairDye(); break;

                    case 63: item = new SpecialBeardDye(); break;

                    case 64: item = new SnowPile(); break;

                    case 65: item = new StatueEast2(); break;

                    case 66: item = new StatuePegasus2(); break;

                    case 67: item = new StatueSouth2(); break;

                    case 68: item = new StatueSouthEast(); break;

                    case 69: item = new StatuetteDyeTub(); break;

                    case 70: item = new StatueWest(); break;

                    case 71: item = new TapestryOfSosaria(); break;

                    case 72: item = new WhitePoinsettia(); break;

                    case 73: item = new WindChimes(); break;

                    case 74: item = new ZoogiFungus(); break;

                    case 75: item = new RuinedFallenChairA(); break;

                    case 76: item = new RuinedDrawers(); break;

                    case 77: item = new RuinedClock(); break;

                    case 78: item = new RuinedChair(); break;

                    case 79: item = new RuinedBooks(); break;

                    case 80: item = new RuinedBookcase(); break;

                    case 81: item = new RuinedArmoire(); break;

                    case 82: item = new SmallStretchedHideSouthDeed(); break;

                    case 83: item = new SmallStretchedHideEastDeed(); break;

                    case 84: item = new PolarBearRugSouthDeed(); break;

                    case 85: item = new PolarBearRugEastDeed(); break;

                    case 86: item = new MediumStretchedHideSouthDeed(); break;

                    case 87: item = new MediumStretchedHideEastDeed(); break;

                    case 88: item = new LightFlowerTapestrySouthDeed(); break;

                    case 89: item = new LightFlowerTapestryEastDeed(); break;

                    case 90: item = new DarkFlowerTapestrySouthDeed(); break;

                    case 91: item = new DarkFlowerTapestryEastDeed(); break;

                    case 92: item = new BrownBearRugSouthDeed(); break;

                    case 93: item = new BrownBearRugEastDeed(); break;

                    case 94: item = new WallSconce(); break;

                    case 95: item = new WallTorch(); break;

                    case 96: item = new CandleShort(); break;

                    case 97: item = new CandleLarge(); break;

                    case 98: item = new DecorativeSwordNorth(); break;

                    case 99: item = new DecorativeSwordWest(); break;

                    case 100: item = new Tapestry1N(); break;

                    case 101: item = new Tapestry2N(); break;

                    case 102: item = new Tapestry2W(); break;

                    case 103: item = new Tapestry3N(); break;

                    case 104: item = new Tapestry3W(); break;

                    case 105: item = new Tapestry4N(); break;

                    case 106: item = new Tapestry4W(); break;

                    case 107: item = new Tapestry5N(); break;

                    case 108: item = new Tapestry5W(); break;

                    case 109: item = new Tapestry6N(); break;

                    default: item = new CandleSkull(); break;
                    }

                    item.LootType = LootType.Regular;
                    item.Movable  = true;
                    PackItem(item);
                }
            }
        }
        public override void OnResponse(NetState sender, RelayInfo info)
        {
            switch (info.ButtonID)
            {
            case 0:
            {
                break;
            }

            case (int)Buttons.Iron:
            {
                m_step[m_itemnum] = new IronIngot();
                m_itemnum        += 1;
                m_player.SendGump(new AlloyGump(m_player, m_amt, m_itemnum, m_step[1], m_step[2], m_step[3], m_step[4], m_step[5], m_step[6]));
                break;
            }

            case (int)Buttons.DullCopper:
            {
                m_step[m_itemnum] = new DullCopperIngot();
                m_itemnum        += 1;
                m_player.SendGump(new AlloyGump(m_player, m_amt, m_itemnum, m_step[1], m_step[2], m_step[3], m_step[4], m_step[5], m_step[6]));
                break;
            }

            case (int)Buttons.ShadowIron:
            {
                m_step[m_itemnum] = new ShadowIronIngot();
                m_itemnum        += 1;
                m_player.SendGump(new AlloyGump(m_player, m_amt, m_itemnum, m_step[1], m_step[2], m_step[3], m_step[4], m_step[5], m_step[6]));
                break;
            }

            case (int)Buttons.Copper:
            {
                m_step[m_itemnum] = new CopperIngot();
                m_itemnum        += 1;
                m_player.SendGump(new AlloyGump(m_player, m_amt, m_itemnum, m_step[1], m_step[2], m_step[3], m_step[4], m_step[5], m_step[6]));
                break;
            }

            case (int)Buttons.Bronze:
            {
                m_step[m_itemnum] = new BronzeIngot();
                m_itemnum        += 1;
                m_player.SendGump(new AlloyGump(m_player, m_amt, m_itemnum, m_step[1], m_step[2], m_step[3], m_step[4], m_step[5], m_step[6]));
                break;
            }

            case (int)Buttons.Gold:
            {
                m_step[m_itemnum] = new GoldIngot();
                m_itemnum        += 1;
                m_player.SendGump(new AlloyGump(m_player, m_amt, m_itemnum, m_step[1], m_step[2], m_step[3], m_step[4], m_step[5], m_step[6]));
                break;
            }

            case (int)Buttons.Agapite:
            {
                m_step[m_itemnum] = new AgapiteIngot();
                m_itemnum        += 1;
                m_player.SendGump(new AlloyGump(m_player, m_amt, m_itemnum, m_step[1], m_step[2], m_step[3], m_step[4], m_step[5], m_step[6]));
                break;
            }

            case (int)Buttons.Verite:
            {
                m_step[m_itemnum] = new VeriteIngot();
                m_itemnum        += 1;
                m_player.SendGump(new AlloyGump(m_player, m_amt, m_itemnum, m_step[1], m_step[2], m_step[3], m_step[4], m_step[5], m_step[6]));
                break;
            }

            case (int)Buttons.Valorite:
            {
                m_step[m_itemnum] = new ValoriteIngot();
                m_itemnum        += 1;
                m_player.SendGump(new AlloyGump(m_player, m_amt, m_itemnum, m_step[1], m_step[2], m_step[3], m_step[4], m_step[5], m_step[6]));
                break;
            }

            case (int)Buttons.Oak:
            {
                m_step[m_itemnum] = new Log();
                m_itemnum        += 1;
                m_player.SendGump(new AlloyGump(m_player, m_amt, m_itemnum, m_step[1], m_step[2], m_step[3], m_step[4], m_step[5], m_step[6]));
                break;
            }

            case (int)Buttons.Pine:
            {
                m_step[m_itemnum] = new PineLog();
                m_itemnum        += 1;
                m_player.SendGump(new AlloyGump(m_player, m_amt, m_itemnum, m_step[1], m_step[2], m_step[3], m_step[4], m_step[5], m_step[6]));
                break;
            }

            case (int)Buttons.Redwood:
            {
                m_step[m_itemnum] = new RedwoodLog();
                m_itemnum        += 1;
                m_player.SendGump(new AlloyGump(m_player, m_amt, m_itemnum, m_step[1], m_step[2], m_step[3], m_step[4], m_step[5], m_step[6]));
                break;
            }

            case (int)Buttons.WhitePine:
            {
                m_step[m_itemnum] = new WhitePineLog();
                m_itemnum        += 1;
                m_player.SendGump(new AlloyGump(m_player, m_amt, m_itemnum, m_step[1], m_step[2], m_step[3], m_step[4], m_step[5], m_step[6]));
                break;
            }

            case (int)Buttons.Ashwood:
            {
                m_step[m_itemnum] = new AshwoodLog();
                m_itemnum        += 1;
                m_player.SendGump(new AlloyGump(m_player, m_amt, m_itemnum, m_step[1], m_step[2], m_step[3], m_step[4], m_step[5], m_step[6]));
                break;
            }

            case (int)Buttons.SilverBirch:
            {
                m_step[m_itemnum] = new SilverBirchLog();
                m_itemnum        += 1;
                m_player.SendGump(new AlloyGump(m_player, m_amt, m_itemnum, m_step[1], m_step[2], m_step[3], m_step[4], m_step[5], m_step[6]));
                break;
            }

            case (int)Buttons.Silver:
            {
                m_step[m_itemnum] = new SilverIngot();
                m_itemnum        += 1;
                m_player.SendGump(new AlloyGump(m_player, m_amt, m_itemnum, m_step[1], m_step[2], m_step[3], m_step[4], m_step[5], m_step[6]));
                break;
            }

            case (int)Buttons.Yew:
            {
                m_step[m_itemnum] = new YewLog();
                m_itemnum        += 1;
                m_player.SendGump(new AlloyGump(m_player, m_amt, m_itemnum, m_step[1], m_step[2], m_step[3], m_step[4], m_step[5], m_step[6]));
                break;
            }

            case (int)Buttons.BlackOak:
            {
                m_step[m_itemnum] = new BlackOakLog();
                m_itemnum        += 1;
                m_player.SendGump(new AlloyGump(m_player, m_amt, m_itemnum, m_step[1], m_step[2], m_step[3], m_step[4], m_step[5], m_step[6]));
                break;
            }

            case (int)Buttons.SulfurousAsh:
            {
                m_step[m_itemnum] = new SulfurousAsh();
                m_itemnum        += 1;
                m_player.SendGump(new AlloyGump(m_player, m_amt, m_itemnum, m_step[1], m_step[2], m_step[3], m_step[4], m_step[5], m_step[6]));
                break;
            }

            case (int)Buttons.ZoogiFungus:
            {
                m_step[m_itemnum] = new ZoogiFungus();
                m_itemnum        += 1;
                m_player.SendGump(new AlloyGump(m_player, m_amt, m_itemnum, m_step[1], m_step[2], m_step[3], m_step[4], m_step[5], m_step[6]));
                break;
            }

            case (int)Buttons.FertileDirt:
            {
                m_step[m_itemnum] = new FertileDirt();
                m_itemnum        += 1;
                m_player.SendGump(new AlloyGump(m_player, m_amt, m_itemnum, m_step[1], m_step[2], m_step[3], m_step[4], m_step[5], m_step[6]));
                break;
            }

            case (int)Buttons.PigIron:
            {
                m_step[m_itemnum] = new PigIron();
                m_itemnum        += 1;
                m_player.SendGump(new AlloyGump(m_player, m_amt, m_itemnum, m_step[1], m_step[2], m_step[3], m_step[4], m_step[5], m_step[6]));
                break;
            }

            case (int)Buttons.NoxCrystal:
            {
                m_step[m_itemnum] = new NoxCrystal();
                m_itemnum        += 1;
                m_player.SendGump(new AlloyGump(m_player, m_amt, m_itemnum, m_step[1], m_step[2], m_step[3], m_step[4], m_step[5], m_step[6]));
                break;
            }

            case (int)Buttons.Diamond:
            {
                m_step[m_itemnum] = new Diamond();
                m_itemnum        += 1;
                m_player.SendGump(new AlloyGump(m_player, m_amt, m_itemnum, m_step[1], m_step[2], m_step[3], m_step[4], m_step[5], m_step[6]));
                break;
            }

            case (int)Buttons.Wool:
            {
                m_step[m_itemnum] = new Wool();
                m_itemnum        += 1;
                m_player.SendGump(new AlloyGump(m_player, m_amt, m_itemnum, m_step[1], m_step[2], m_step[3], m_step[4], m_step[5], m_step[6]));
                break;
            }

            case (int)Buttons.Bone:
            {
                m_step[m_itemnum] = new Bone();
                m_itemnum        += 1;
                m_player.SendGump(new AlloyGump(m_player, m_amt, m_itemnum, m_step[1], m_step[2], m_step[3], m_step[4], m_step[5], m_step[6]));
                break;
            }

            case (int)Buttons.Citrine:
            {
                m_step[m_itemnum] = new Citrine();
                m_itemnum        += 1;
                m_player.SendGump(new AlloyGump(m_player, m_amt, m_itemnum, m_step[1], m_step[2], m_step[3], m_step[4], m_step[5], m_step[6]));
                break;
            }

            case (int)Buttons.BlackPearl:
            {
                m_step[m_itemnum] = new BlackPearl();
                m_itemnum        += 1;
                m_player.SendGump(new AlloyGump(m_player, m_amt, m_itemnum, m_step[1], m_step[2], m_step[3], m_step[4], m_step[5], m_step[6]));
                break;
            }

            case (int)Buttons.Decrease:
            {
                if (m_amt > 1)
                {
                    m_amt -= 1;
                }
                m_player.SendGump(new AlloyGump(m_player, m_amt, m_itemnum, m_step[1], m_step[2], m_step[3], m_step[4], m_step[5], m_step[6]));
                break;
            }

            case (int)Buttons.Increase:
            {
                m_amt += 1;
                m_player.SendGump(new AlloyGump(m_player, m_amt, m_itemnum, m_step[1], m_step[2], m_step[3], m_step[4], m_step[5], m_step[6]));
                break;
            }

            case (int)Buttons.Cancel:
            {
                m_player.SendGump(new AlloyGump(m_player, 1, 1, null, null, null, null, null, null));
                break;
            }

            case (int)Buttons.OK:
            {
                //check for and consume ingredients here
                Container pack = m_player.Backpack;

                if (m_step[6] == null)
                {
                    m_player.SendMessage("You must pick 6 steps");
                    m_player.SendGump(new AlloyGump(m_player, 1, 1, null, null, null, null, null, null));
                    break;
                }

                bool allres = true;

                for (int i = 1; i < 7; i++)
                {
                    Item itm     = (Item)m_step[i];
                    int  packamt = m_player.Backpack.GetAmount(itm.GetType());
                    if (packamt < m_amt)
                    {
                        m_player.SendMessage("You do not have enough {0} to attempt this", itm.GetType().Name);
                        allres = false;
                    }
                }

                if (allres)
                {
                    for (int i = 1; i < 7; i++)
                    {
                        Item itm = (Item)m_step[i];
                        m_player.Backpack.ConsumeTotal(m_step[i].GetType(), m_amt);
                        m_player.SendMessage("Step {0} consumes {1} {2}", i.ToString(), m_amt.ToString(), itm.GetType().Name);
                    }
                }
                else
                {
                    m_player.SendMessage("Please try again when you have all of the needed resources");
                    return;
                }


                if (m_step[1] is AgapiteIngot && m_step[2] is BlackOakLog && m_step[3] is AgapiteIngot && m_step[4] is ShadowIronIngot && m_step[5] is Bone && m_step[6] is AgapiteIngot)
                {
                    if (m_player.Backpack != null)
                    {
                        m_player.AddToBackpack(new BloodrockIngot(m_amt));
                    }
                    break;
                }

                if (m_step[1] is ValoriteIngot && m_step[2] is WhitePineLog && m_step[3] is ValoriteIngot && m_step[4] is CopperIngot && m_step[5] is FertileDirt && m_step[6] is SilverBirchLog)
                {
                    if (m_player.Backpack != null)
                    {
                        m_player.AddToBackpack(new SteelIngot(m_amt));
                    }
                    break;
                }

                if (m_step[1] is ShadowIronIngot && m_step[2] is AshwoodLog && m_step[3] is VeriteIngot && m_step[4] is ShadowIronIngot && m_step[5] is NoxCrystal && m_step[6] is ShadowIronIngot)
                {
                    if (m_player.Backpack != null)
                    {
                        m_player.AddToBackpack(new AdamantiteIngot(m_amt));
                    }
                    break;
                }

                if (m_step[1] is IronIngot && m_step[2] is SilverBirchLog && m_step[3] is ValoriteIngot && m_step[4] is IronIngot && m_step[5] is Citrine && m_step[6] is SilverBirchLog)
                {
                    if (m_player.Backpack != null)
                    {
                        m_player.AddToBackpack(new IthilmarIngot(m_amt));
                    }
                    break;
                }

                if (m_step[1] is SilverIngot && m_step[2] is GoldIngot && m_step[3] is Diamond && m_step[4] is SilverIngot && m_step[5] is GoldIngot && m_step[6] is SilverIngot)
                {
                    if (m_player.Backpack != null)
                    {
                        m_player.AddToBackpack(new ElectrumIngot(m_amt));
                    }
                    break;
                }

                if (m_step[1] is PigIron && m_player.IsGoblin())
                {
                    if (m_player.Backpack != null)
                    {
                        m_player.AddToBackpack(new SkazzIngot(m_amt));
                    }
                    break;
                }

                m_player.SendMessage("You fail to create a new alloy and your materials are lost");
                m_player.SendGump(new AlloyGump(m_player, 1, 1, null, null, null, null, null, null));
                break;
            }
            }
        }