private Item CreateItem(int ItemID)         // Create the appropriate item class - Defaults to a Static Item
        {
            Item item = null;

            switch (ItemID)
            {
                #region MobileSaver
            case 0x0001:                     // Now used for Mobile Importing.
            {
                item = new Static(0x1);
                break;
            }

                #endregion
            case 0x1F19:                     // Add any unwanted items here.
            case 0x0FB7:                     // TODO: Boat parts: planks, tillerman, etc.
                break;



            case 0x0FB1:                      //forge
                item = new SmallForgeAddon();
                break;

            case 0x0FAF:                      //anvil east
                item = new AnvilEastAddon();
                break;

            case 0x0FB0:                      //anvil south
                item = new AnvilSouthAddon();
                break;

            case 0x2DD8:                     //Elven Forge
                item = new ElvenForgeAddon();
                break;

            case 0x1922:                     //FlourMill East
                item = new FlourMillEastAddon();
                break;

            case 0x1920:
            case 0x1924: break;              //Don't add those items since the addon has them.

            case 0x192E:                     //FlourMill South
                item = new FlourMillSouthAddon();
                break;

            case 0x192C:
            case 0x1930: break;              //Don't add those items since the addon has them.

            case 0x1060:                     //Loom East
                item = new LoomEastAddon();
                break;

            case 0x105F: break;              //Don't add those items since the addon has them.

            case 0x1061:                     //Loom South
                item = new LoomSouthAddon();
                break;

            case 0x1062: break;              //Don't add those items since the addon has them.

            case 0x1019:                     //Spinningwheel East
                item = new SpinningwheelEastAddon();
                break;

            case 0x1015:                     //Spinningwheel South
                item = new SpinningwheelSouthAddon();
                break;


            // Housing Metal Doors
            case 0x679:
                item = new NorthWestDoor();
                break;

            case 0x67B:
                item = new NorthEastDoor();
                break;

            case 0x675:
                item = new SouthWestDoor();
                break;

            case 0x677:
                item = new SouthEastDoor();
                break;

            case 0x683:
                item = new WestNorthDoor();
                break;

            case 0x681:
                item = new WestSouthDoor();
                break;

            case 0x67F:
                item = new EastNorthDoor();
                break;

            case 0x67D:
                item = new EastSouthDoor();
                break;

            /*
             * case 0x0675: // Metal Doors 2 NOTE: Some doors seem to open the wrong way, but there's no way to determine correct CCW/CW from the POL file.
             *      item = new MetalDoor2( DoorFacing.WestCW );
             *      break;
             * case 0x0677:
             *      item = new MetalDoor2( DoorFacing.EastCCW );
             *      break;
             * case 0x067D:
             *      item = new MetalDoor2( DoorFacing.SouthCW );
             *      break;
             * case 0x067F:
             *      item = new MetalDoor2( DoorFacing.NorthCCW );
             *      break;
             */

            case 0x0685:                     // Barred Metal Doors
                item = new BarredMetalDoor(DoorFacing.WestCW);
                break;

            case 0x0687:
                item = new BarredMetalDoor(DoorFacing.EastCCW);
                break;

            case 0x068D:
                item = new BarredMetalDoor(DoorFacing.SouthCW);
                break;

            case 0x068F:
                item = new BarredMetalDoor(DoorFacing.NorthCCW);
                break;

            case 0x0695:                     // Rattan Doors
                item = new RattanDoor(DoorFacing.WestCW);
                break;

            case 0x0697:
                item = new RattanDoor(DoorFacing.EastCCW);
                break;

            case 0x069D:
                item = new RattanDoor(DoorFacing.SouthCW);
                break;

            case 0x069F:
                item = new RattanDoor(DoorFacing.NorthCCW);
                break;

            case 0x06A5:                     // Dark Wood Doors
                item = new DarkWoodDoor(DoorFacing.WestCW);
                break;

            case 0x06A7:
                item = new DarkWoodDoor(DoorFacing.EastCCW);
                break;

            case 0x06AD:
                item = new DarkWoodDoor(DoorFacing.SouthCW);
                break;

            case 0x06AF:
                item = new DarkWoodDoor(DoorFacing.NorthCCW);
                break;

            case 0x06B5:                     // Medium Wood Doors
                item = new MediumWoodDoor(DoorFacing.WestCW);
                break;

            case 0x06B7:
                item = new MediumWoodDoor(DoorFacing.EastCCW);
                break;

            case 0x06BD:
                item = new MediumWoodDoor(DoorFacing.SouthCW);
                break;

            case 0x06BF:
                item = new MediumWoodDoor(DoorFacing.NorthCCW);
                break;

            /*
             * case 0x06C5: // Metal Doors
             *      item = new MetalDoor( DoorFacing.WestCW );
             *      break;
             * case 0x06C7:
             *      item = new MetalDoor( DoorFacing.EastCCW );
             *      break;
             * case 0x06CD:
             *      item = new MetalDoor( DoorFacing.SouthCW );
             *      break;
             * case 0x06CF:
             *      item = new MetalDoor( DoorFacing.NorthCCW );
             *      break;
             */

            case 0x06D5:                     // Light Wood Doors
                item = new LightWoodDoor(DoorFacing.WestCW);
                break;

            case 0x06D7:
                item = new LightWoodDoor(DoorFacing.EastCCW);
                break;

            case 0x06DD:
                item = new LightWoodDoor(DoorFacing.SouthCW);
                break;

            case 0x06DF:
                item = new LightWoodDoor(DoorFacing.NorthCCW);
                break;

            case 0x06E5:                     // Strong Wood Doors
                item = new StrongWoodDoor(DoorFacing.WestCW);
                break;

            case 0x06E7:
                item = new StrongWoodDoor(DoorFacing.EastCCW);
                break;

            case 0x06ED:
                item = new StrongWoodDoor(DoorFacing.SouthCW);
                break;

            case 0x06EF:
                item = new StrongWoodDoor(DoorFacing.NorthCCW);
                break;

            case 0x2A05:                     //South facing West half Paper door (SE)
                item = new SWPaperSEDoor();
                break;

            case 0x2A07:                     //South facing East half Paper door (SE)
                item = new SEPaperSEDoor();
                break;

            case 0x2A09:                     //East facing South half Paper door (SE)
                item = new ESPaperSEDoor();
                break;

            case 0x2A0B:                     //East facing North half Paper door (SE)
                item = new ENPaperSEDoor();
                break;

            case 0x2A0D:                     //South facing West half Cloth door (SE)
                item = new SWClothSEDoor();
                break;

            case 0x2A0F:                     //South facing East half Cloth door (SE)
                item = new SEClothSEDoor();
                break;

            case 0x2A11:                     //East facing South half Cloth door (SE)
                item = new ESClothSEDoor();
                break;

            case 0x2A13:                     //East facing North half Cloth door (SE)
                item = new ENClothSEDoor();
                break;

            case 0x2A16:                     //South facing West half Wooden door (SE)
                item = new SWWoodenSEDoor();
                break;

            case 0x2A17:                     //South facing East half Wooden door (SE)
                item = new SEWoodenSEDoor();
                break;

            case 0x2A19:                     //East facing South half Wooden door (SE)
                item = new ESWoodenSEDoor();
                break;

            case 0x2A1B:                     //East facing North half Wooden door (SE)
                item = new ENWoodenSEDoor();
                break;



            case 0xE77:                     //Barrel
                item         = new Barrel();
                item.Movable = false;
                break;

            case 0xE7F:                     //Keg
                item         = new Keg();
                item.Movable = false;
                break;

            case 0xE7A:                     //PicnicBasket
                item         = new PicnicBasket();
                item.Movable = false;
                break;

            case 0x990:                     //Basket
                item         = new Basket();
                item.Movable = false;
                break;

            case 0x9AA:                     //WoodenBox (0xE7D)
                item         = new WoodenBox();
                item.Movable = false;
                break;

            case 0xE7D:                     //WoodenBox (0xE7D)
                item         = new WoodenBox();
                item.Movable = false;
                item.ItemID  = 0xE7D;
                break;

            case 0x9A9:                     //SmallCrate (0xE7E)
                item         = new SmallCrate();
                item.Movable = false;
                break;

            case 0xE7E:                     //SmallCrate (0xE7E)
                item         = new SmallCrate();
                item.Movable = false;
                item.ItemID  = 0xE7E;
                break;

            case 0xE3F:                     //MediumCrate (0xE3E)
                item         = new MediumCrate();
                item.Movable = false;
                break;

            case 0xE3E:                     //MediumCrate (0xE3E)
                item         = new MediumCrate();
                item.Movable = false;
                item.ItemID  = 0xE3E;
                break;

            case 0xE3D:                     //LargeCrate (0xE3C)
                item         = new LargeCrate();
                item.Movable = false;
                break;

            case 0xE3C:                     //LargeCrate (0xE3C)
                item         = new LargeCrate();
                item.Movable = false;
                item.ItemID  = 0xE3C;
                break;

            case 0x9A8:                     //MetalBox (0xE80)
                item         = new MetalBox();
                item.Movable = false;
                break;

            case 0xE80:                     //MetalBox (0xE80)
                item         = new MetalBox();
                item.Movable = false;
                item.ItemID  = 0xE80;
                break;

            case 0x9AB:                     //MetalChest (0xE7C)
                item         = new MetalChest();
                item.Movable = false;
                break;

            case 0xE7C:                     //MetalChest (0xE7C)
                item         = new MetalChest();
                item.Movable = false;
                item.ItemID  = 0xE7C;
                break;

            case 0xE41:                     //MetalGoldenChest (0xE40)
                item         = new MetalGoldenChest();
                item.Movable = false;
                break;

            case 0xE40:                     //MetalGoldenChest (0xE40)
                item         = new MetalGoldenChest();
                item.Movable = false;
                item.ItemID  = 0xE40;
                break;

            case 0xe43:                     //WoodenChest (0xe42)
                item         = new WoodenChest();
                item.Movable = false;
                break;

            case 0xe42:                     //WoodenChest (0xe42)
                item         = new WoodenChest();
                item.Movable = false;
                item.ItemID  = 0xe42;
                break;

            case 0x280B:                     //PlainWoodenChest (0x280C)
                item         = new PlainWoodenChest();
                item.Movable = false;
                break;

            case 0x280C:                     //PlainWoodenChest (0x280C)
                item         = new PlainWoodenChest();
                item.Movable = false;
                item.ItemID  = 0x280C;
                break;

            case 0x280D:                     //OrnateWoodenChest (0x280E)
                item         = new OrnateWoodenChest();
                item.Movable = false;
                break;

            case 0x280E:                     //OrnateWoodenChest (0x280E)
                item         = new OrnateWoodenChest();
                item.Movable = false;
                item.ItemID  = 0x280E;
                break;

            case 0x280F:                     //GildedWoodenChest (0x2810)
                item         = new GildedWoodenChest();
                item.Movable = false;
                break;

            case 0x2810:                     //GildedWoodenChest (0x2810)
                item         = new GildedWoodenChest();
                item.Movable = false;
                item.ItemID  = 0x2810;
                break;

            case 0x2811:                     //WoodenFootLocker (0x2812)
                item         = new WoodenFootLocker();
                item.Movable = false;
                break;

            case 0x2812:                     //WoodenFootLocker (0x2812)
                item         = new WoodenFootLocker();
                item.Movable = false;
                item.ItemID  = 0x2812;
                break;

            case 0x2813:                     //FinishedWoodenChest (0x2814)
                item         = new FinishedWoodenChest();
                item.Movable = false;
                break;

            case 0x2814:                     //FinishedWoodenChest (0x2814)
                item         = new FinishedWoodenChest();
                item.Movable = false;
                item.ItemID  = 0x2814;
                break;

            case 0x2815:                     //TallCabinet (0x2816)
                item         = new TallCabinet();
                item.Movable = false;
                break;

            case 0x2816:                     //TallCabinet (0x2816)
                item         = new TallCabinet();
                item.Movable = false;
                item.ItemID  = 0x2816;
                break;

            case 0x2817:                     //ShortCabinet (0x2818)
                item         = new ShortCabinet();
                item.Movable = false;
                break;

            case 0x2818:                     //ShortCabinet (0x2818)
                item         = new ShortCabinet();
                item.Movable = false;
                item.ItemID  = 0x2818;
                break;

            case 0x2857:                     //RedArmoire (0x2858)
                item         = new RedArmoire();
                item.Movable = false;
                break;

            case 0x2858:                     //RedArmoire (0x2858)
                item         = new RedArmoire();
                item.Movable = false;
                item.ItemID  = 0x2858;
                break;

            case 0x285D:                     //CherryArmoire (0x285E)
                item         = new CherryArmoire();
                item.Movable = false;
                break;

            case 0x285E:                     //CherryArmoire (0x285E)
                item         = new CherryArmoire();
                item.Movable = false;
                item.ItemID  = 0x285E;
                break;

            case 0x285B:                     //MapleArmoire (0x285C)
                item         = new MapleArmoire();
                item.Movable = false;
                break;

            case 0x285C:                     //MapleArmoire (0x285C)
                item         = new MapleArmoire();
                item.Movable = false;
                item.ItemID  = 0x285C;
                break;

            case 0x2859:                     //ElegantArmoire (0x285A)
                item         = new ElegantArmoire();
                item.Movable = false;
                break;

            case 0x285A:                     //ElegantArmoire (0x285A)
                item         = new ElegantArmoire();
                item.Movable = false;
                item.ItemID  = 0x285A;
                break;

            case 0xA97:                     //FullBookcase (0xa97, 0xa99, 0xa98, 0xa9a, 0xa9b, 0xa9c)
                item         = new FullBookcase();
                item.Movable = false;
                break;

            case 0xA99:                     //FullBookcase (0xa97, 0xa99, 0xa98, 0xa9a, 0xa9b, 0xa9c)
                item         = new FullBookcase();
                item.Movable = false;
                item.ItemID  = 0xa99;
                break;

            case 0xA98:                     //FullBookcase (0xa97, 0xa99, 0xa98, 0xa9a, 0xa9b, 0xa9c)
                item         = new FullBookcase();
                item.Movable = false;
                item.ItemID  = 0xa98;
                break;

            case 0xA9a:                     //FullBookcase (0xa97, 0xa99, 0xa98, 0xa9a, 0xa9b, 0xa9c)
                item         = new FullBookcase();
                item.Movable = false;
                item.ItemID  = 0xa9a;
                break;

            case 0xA9b:                     //FullBookcase (0xa97, 0xa99, 0xa98, 0xa9a, 0xa9b, 0xa9c)
                item         = new FullBookcase();
                item.Movable = false;
                item.ItemID  = 0xa9b;
                break;

            case 0xA9c:                     //FullBookcase (0xa97, 0xa99, 0xa98, 0xa9a, 0xa9b, 0xa9c)
                item         = new FullBookcase();
                item.Movable = false;
                item.ItemID  = 0xa9c;
                break;

            case 0xA9D:                     //EmptyBookcase (0xa9e)
                item         = new EmptyBookcase();
                item.Movable = false;
                break;

            case 0xa9e:                     //EmptyBookcase (0xa9e)
                item         = new EmptyBookcase();
                item.Movable = false;
                item.ItemID  = 0xa9e;
                break;

            case 0xA2C:                     //Drawer (0xa34)
                item         = new Drawer();
                item.Movable = false;
                break;

            case 0xa34:                     //Drawer (0xa34)
                item         = new Drawer();
                item.Movable = false;
                item.ItemID  = 0xa34;
                break;

            case 0xA30:                     //FancyDrawer (0xa38)
                item         = new FancyDrawer();
                item.Movable = false;
                break;

            case 0xa38:                     //FancyDrawer (0xa38)
                item         = new FancyDrawer();
                item.Movable = false;
                item.ItemID  = 0xa38;
                break;

            case 0xA4F:                     //Armoire (0xa53)
                item         = new Armoire();
                item.Movable = false;
                break;

            case 0xa53:                     //Armoire (0xa53)
                item         = new Armoire();
                item.Movable = false;
                item.ItemID  = 0xa53;
                break;

            case 0xA4D:                     //FancyArmoire (0xa51)
                item         = new FancyArmoire();
                item.Movable = false;
                break;

            case 0xa51:                     //FancyArmoire (0xa51)
                item         = new FancyArmoire();
                item.Movable = false;
                item.ItemID  = 0xa51;
                break;



            default:
                item         = new Static(ItemID);
                item.Movable = false;
                break;
            }

            return(item);
        }
Пример #2
0
        public static void Generate(Mobile m)
        {
            #region Gravewater Lake Finish

            CommandSystem.Handle(m, Server.Commands.CommandSystem.Prefix + "XmlLoad Spawns/GravewaterLake.xml");

            CommandSystem.Handle(m, Server.Commands.CommandSystem.Prefix + "GenWinchAssembly");

            // StorageLocker

            StorageLocker storagelocker = new StorageLocker(Parts.Flywheel);
            storagelocker.MoveToWorld(new Point3D(6421, 1753, 0), Map.Trammel);
            storagelocker.Active = true;

            storagelocker = new StorageLocker(Parts.BearingAssembly);
            storagelocker.MoveToWorld(new Point3D(6441, 1753, 0), Map.Trammel);
            storagelocker.Active = true;

            storagelocker = new StorageLocker(Parts.PowerCore);
            storagelocker.MoveToWorld(new Point3D(6441, 1733, 0), Map.Trammel);
            storagelocker.Active = true;

            storagelocker = new StorageLocker(Parts.WireSpool);
            storagelocker.MoveToWorld(new Point3D(6421, 1733, 0), Map.Trammel);
            storagelocker.Active = true;

            Item door = new LightWoodDoor(DoorFacing.SouthCW);
            door.Hue = 2952;
            door.MoveToWorld(new Point3D(6427, 1735, 0), Map.Trammel);

            door     = new LightWoodDoor(DoorFacing.SouthCW);
            door.Hue = 2952;
            door.MoveToWorld(new Point3D(6427, 1752, 0), Map.Trammel);

            door     = new LightWoodDoor(DoorFacing.SouthCCW);
            door.Hue = 2952;
            door.MoveToWorld(new Point3D(6435, 1735, 0), Map.Trammel);

            door     = new LightWoodDoor(DoorFacing.SouthCCW);
            door.Hue = 2952;
            door.MoveToWorld(new Point3D(6435, 1752, 0), Map.Trammel);

            door     = new LightWoodDoor(DoorFacing.WestCW);
            door.Hue = 2952;
            door.MoveToWorld(new Point3D(6431, 1727, 0), Map.Trammel);

            door     = new LightWoodDoor(DoorFacing.EastCCW);
            door.Hue = 2952;
            door.MoveToWorld(new Point3D(6432, 1727, 0), Map.Trammel);

            Static decor = new Static(0x1EAF);
            decor.MoveToWorld(new Point3D(6310, 1704, 11), Map.Trammel);

            decor = new Static(0x1ED5);
            decor.MoveToWorld(new Point3D(6310, 1705, -5), Map.Trammel);

            decor = new Static(0x10A4);
            decor.MoveToWorld(new Point3D(6310, 1703, 8), Map.Trammel);

            decor = new Static(0x2E3D);
            decor.MoveToWorld(new Point3D(6311, 1703, 19), Map.Trammel);

            decor = new Static(0x3A8);
            decor.MoveToWorld(new Point3D(6309, 1704, 20), Map.Trammel);

            decor = new Static(0x3A8);
            decor.MoveToWorld(new Point3D(6310, 1704, 20), Map.Trammel);

            decor = new Static(0x3A6);
            decor.MoveToWorld(new Point3D(6309, 1703, 24), Map.Trammel);

            decor = new Static(0x3A6);
            decor.MoveToWorld(new Point3D(6310, 1703, 24), Map.Trammel);

            Item ladder = new ShipLadder(new Point3D(6302, 1672, 0), Map.Trammel, 0x08A6);
            ladder.MoveToWorld(new Point3D(6431, 1699, 0), Map.Trammel);

            ladder = new ShipLadder(new Point3D(6432, 1699, 0), Map.Trammel, 0x08A6);
            ladder.MoveToWorld(new Point3D(6304, 1672, -5), Map.Trammel);

            ladder = new ShipLadder(new Point3D(6292, 1720, 0), Map.Trammel, 0x08A1);
            ladder.MoveToWorld(new Point3D(6400, 1656, 0), Map.Trammel);

            ladder = new ShipLadder(new Point3D(1699, 1646, -115), Map.Malas, 0x14FA);
            ladder.MoveToWorld(new Point3D(6278, 1773, 0), Map.Trammel);

            Item sign = new ShipSign(0xBD2, 1154461); // Use Ladder to Return to Foredeck
            sign.MoveToWorld(new Point3D(6400, 1658, 0), Map.Trammel);

            sign = new ShipSign(0xBCF, 1154492); // Use the rope to return to the surface
            sign.MoveToWorld(new Point3D(6278, 1773, 0), Map.Trammel);

            sign = new ShipSign(0xBD1, 1154463); // Warning! Only those with proper gear may enter the lake for salvage operations! Enter at your own risk! No Pets!
            sign.MoveToWorld(new Point3D(1698, 1566, -110), Map.Malas);

            // CaptainsLogScroll
            Item scroll = new CaptainsLogScroll();
            scroll.MoveToWorld(new Point3D(6430, 1743, 0), Map.Trammel);

            Item tele = new Teleporter(new Point3D(6445, 1743, 0), Map.Trammel);
            tele.MoveToWorld(new Point3D(6321, 1710, -35), Map.Trammel);

            tele = new Teleporter(new Point3D(6445, 1743, 0), Map.Trammel);
            tele.MoveToWorld(new Point3D(6321, 1711, -35), Map.Trammel);

            tele = new Teleporter(new Point3D(6322, 1710, -35), Map.Trammel);
            tele.MoveToWorld(new Point3D(6447, 1741, 1), Map.Trammel);

            tele = new Teleporter(new Point3D(6322, 1710, -35), Map.Trammel);
            tele.MoveToWorld(new Point3D(6447, 1742, 1), Map.Trammel);

            tele = new Teleporter(new Point3D(6322, 1710, -35), Map.Trammel);
            tele.MoveToWorld(new Point3D(6447, 1743, 1), Map.Trammel);

            tele = new Teleporter(new Point3D(6322, 1710, -35), Map.Trammel);
            tele.MoveToWorld(new Point3D(6447, 1744, 1), Map.Trammel);

            tele = new Teleporter(new Point3D(6322, 1710, -35), Map.Trammel);
            tele.MoveToWorld(new Point3D(6447, 1745, 1), Map.Trammel);

            tele = new Whirlpool(new Point3D(6274, 1787, 0), Map.Trammel);
            tele.MoveToWorld(new Point3D(1700, 1638, -115), Map.Malas);

            Item item = new AnkhWest();
            item.MoveToWorld(new Point3D(1694, 1562, -109), Map.Malas);

            item = new DungeonHitchingPost();
            item.MoveToWorld(new Point3D(1702, 1552, -109), Map.Malas);

            #endregion

            #region Quester Spawns

            XmlSpawner sp;

            sp            = new XmlSpawner("GipsyGemologist");
            sp.SpawnRange = 1;
            sp.HomeRange  = 5;
            sp.MoveToWorld(new Point3D(1509, 618, -16), Map.Ilshenar);
            sp.Respawn();

            sp            = new XmlSpawner("ChampHuthwait");
            sp.SpawnRange = 1;
            sp.HomeRange  = 5;
            sp.MoveToWorld(new Point3D(2995, 635, 0), Map.Trammel);
            sp.Respawn();

            sp            = new XmlSpawner("JosefSkimmons");
            sp.SpawnRange = 1;
            sp.HomeRange  = 5;
            sp.MoveToWorld(new Point3D(2630, 2092, 10), Map.Trammel);
            sp.Respawn();

            sp            = new XmlSpawner("MadelineHarte");
            sp.SpawnRange = 1;
            sp.HomeRange  = 5;
            sp.MoveToWorld(new Point3D(1364, 3780, 0), Map.Trammel);
            sp.Respawn();

            sp            = new XmlSpawner("CousteauPerron");
            sp.SpawnRange = 1;
            sp.HomeRange  = 5;
            sp.MoveToWorld(new Point3D(5212, 2314, 28), Map.Trammel);
            sp.Respawn();

            sp            = new XmlSpawner("HeplerPaulson");
            sp.SpawnRange = 1;
            sp.HomeRange  = 5;
            sp.MoveToWorld(new Point3D(2039, 2842, 0), Map.Trammel);
            sp.Respawn();

            #endregion

            #region Custeau Perron House
            door = new CusteauPerronHouseDoor();
            door.MoveToWorld(new Point3D(1651, 1551, 25), Map.Trammel);

            scroll = new MasterThinkerSchematics();
            scroll.MoveToWorld(new Point3D(1649, 1547, 54), Map.Trammel);

            decor = new Static(0xB7F);
            decor.MoveToWorld(new Point3D(1651, 1549, 45), Map.Trammel);

            decor = new Static(0xB80);
            decor.MoveToWorld(new Point3D(1652, 1549, 45), Map.Trammel);

            decor = new Static(0xB7E);
            decor.MoveToWorld(new Point3D(1653, 1549, 45), Map.Trammel);

            item = new MasterThinkerContoller();
            item.MoveToWorld(new Point3D(1652, 1547, 45), Map.Trammel);
            #endregion

            #region Ice Dungeon
            Item addon = new CousteauPerronAddon();
            addon.MoveToWorld(new Point3D(5211, 2312, 28), Map.Trammel);

            item = new IceCrystals();
            item.MoveToWorld(new Point3D(5799, 234, -5), Map.Trammel);

            item = new IceCrystals();
            item.MoveToWorld(new Point3D(5799, 235, -4), Map.Trammel);

            item = new IceCrystals();
            item.MoveToWorld(new Point3D(5800, 236, -8), Map.Trammel);

            item = new IceCrystals();
            item.MoveToWorld(new Point3D(5802, 234, -4), Map.Trammel);

            item = new IceCrystals();
            item.MoveToWorld(new Point3D(5801, 239, -7), Map.Trammel);

            item = new IceCrystals();
            item.MoveToWorld(new Point3D(5801, 240, -4), Map.Trammel);

            item = new IceCrystals();
            item.MoveToWorld(new Point3D(5803, 243, -2), Map.Trammel);

            item = new IceCrystals();
            item.MoveToWorld(new Point3D(5806, 244, -6), Map.Trammel);

            item = new IceCrystals();
            item.MoveToWorld(new Point3D(5807, 240, -2), Map.Trammel);

            item = new IceCrystals();
            item.MoveToWorld(new Point3D(5808, 237, -3), Map.Trammel);

            #endregion

            #region Sorcerers Dungeon

            sp = new XmlSpawner(2, 5, 5, 0, 5, 1, "RockMite");
            sp.MoveToWorld(new Point3D(122, 10, -28), Map.Ilshenar);
            sp.Respawn();

            CommandSystem.Handle(m, Server.Commands.CommandSystem.Prefix + "GenSorcerersPlate");

            #endregion

            #region Scroll
            scroll = new WillemHarteScroll();
            scroll.MoveToWorld(new Point3D(1359, 3779, 7), Map.Trammel);

            scroll = new MadelineHarteScroll();
            scroll.MoveToWorld(new Point3D(1359, 3780, 7), Map.Trammel);

            scroll = new LiamDeFoeScroll();
            scroll.MoveToWorld(new Point3D(1364, 3778, 1), Map.Trammel);

            scroll = new CalculationsScroll();
            scroll.MoveToWorld(new Point3D(2997, 632, 9), Map.Trammel);

            scroll = new SuspicionsScroll();
            scroll.MoveToWorld(new Point3D(2993, 632, 14), Map.Trammel);

            scroll = new SealedLettersScroll();
            scroll.MoveToWorld(new Point3D(2992, 636, 5), Map.Trammel);

            scroll = new LedgerScroll();
            scroll.MoveToWorld(new Point3D(2580, 1118, 5), Map.Trammel);

            scroll = new JournalScroll();
            scroll.MoveToWorld(new Point3D(2578, 1120, 0), Map.Trammel);

            scroll = new SorcerersScroll();
            scroll.MoveToWorld(new Point3D(101, 42, -22), Map.Ilshenar);
            #endregion
        }
Пример #3
0
        // Create the appropriate item class - Defaults to a Static Item
        private Item CreateItem(int ItemID)
        {
            Item item = null;

            switch (ItemID)
            {
            // Don't import nodraw, node crystals, odd items, etc.
            // Add any unwanted items here.
            // TODO: Boat parts: planks, tillerman, etc.
            case 0x0001:
            case 0x1F19:
            case 0x0FB7:
                break;

            /*
             * Put all usable items here, for example, forges, anvils,
             * training dummies, lights, containers, messageboards, etc.
             * We'll need to wait until some of them are scripted.
             *
             * The following are some examples, I intend to finish things
             * up as quickly as I can.
             */
            case 0x0FB1:                      //forge
                item = new SmallForgeAddon();
                break;

            case 0x0FAF:                      //anvil east
                item = new AnvilEastAddon();
                break;

            case 0x0FB0:                      //anvil south
                item = new AnvilSouthAddon();
                break;

            // TODO: Gates

            /*
             * Now create all of the doors according to graphic.
             * NOTE: Some doors seem to open the wrong way, but
             *       there's no way to determine correct CCW/CW
             *       from the POL file.
             */

            // Metal Doors 2
            case 0x0675:
                item = new MetalDoor2(DoorFacing.WestCW);
                break;

            case 0x0677:
                item = new MetalDoor2(DoorFacing.EastCCW);
                break;

            case 0x067D:
                item = new MetalDoor2(DoorFacing.SouthCW);
                break;

            case 0x067F:
                item = new MetalDoor2(DoorFacing.NorthCCW);
                break;

            // Barred Metal Doors
            case 0x0685:
                item = new BarredMetalDoor(DoorFacing.WestCW);
                break;

            case 0x0687:
                item = new BarredMetalDoor(DoorFacing.EastCCW);
                break;

            case 0x068D:
                item = new BarredMetalDoor(DoorFacing.SouthCW);
                break;

            case 0x068F:
                item = new BarredMetalDoor(DoorFacing.NorthCCW);
                break;

            // Rattan Doors
            case 0x0695:
                item = new RattanDoor(DoorFacing.WestCW);
                break;

            case 0x0697:
                item = new RattanDoor(DoorFacing.EastCCW);
                break;

            case 0x069D:
                item = new RattanDoor(DoorFacing.SouthCW);
                break;

            case 0x069F:
                item = new RattanDoor(DoorFacing.NorthCCW);
                break;

            // Dark Wood Doors
            case 0x06A5:
                item = new DarkWoodDoor(DoorFacing.WestCW);
                break;

            case 0x06A7:
                item = new DarkWoodDoor(DoorFacing.EastCCW);
                break;

            case 0x06AD:
                item = new DarkWoodDoor(DoorFacing.SouthCW);
                break;

            case 0x06AF:
                item = new DarkWoodDoor(DoorFacing.NorthCCW);
                break;

            // Medium Wood Doors
            case 0x06B5:
                item = new MediumWoodDoor(DoorFacing.WestCW);
                break;

            case 0x06B7:
                item = new MediumWoodDoor(DoorFacing.EastCCW);
                break;

            case 0x06BD:
                item = new MediumWoodDoor(DoorFacing.SouthCW);
                break;

            case 0x06BF:
                item = new MediumWoodDoor(DoorFacing.NorthCCW);
                break;

            // Metal Doors
            case 0x06C5:
                item = new MetalDoor(DoorFacing.WestCW);
                break;

            case 0x06C7:
                item = new MetalDoor(DoorFacing.EastCCW);
                break;

            case 0x06CD:
                item = new MetalDoor(DoorFacing.SouthCW);
                break;

            case 0x06CF:
                item = new MetalDoor(DoorFacing.NorthCCW);
                break;

            // Light Wood Doors
            case 0x06D5:
                item = new LightWoodDoor(DoorFacing.WestCW);
                break;

            case 0x06D7:
                item = new LightWoodDoor(DoorFacing.EastCCW);
                break;

            case 0x06DD:
                item = new LightWoodDoor(DoorFacing.SouthCW);
                break;

            case 0x06DF:
                item = new LightWoodDoor(DoorFacing.NorthCCW);
                break;

            // Strong Wood Doors
            case 0x06E5:
                item = new StrongWoodDoor(DoorFacing.WestCW);
                break;

            case 0x06E7:
                item = new StrongWoodDoor(DoorFacing.EastCCW);
                break;

            case 0x06ED:
                item = new StrongWoodDoor(DoorFacing.SouthCW);
                break;

            case 0x06EF:
                item = new StrongWoodDoor(DoorFacing.NorthCCW);
                break;

            default:
                item         = new Static(ItemID);
                item.Movable = false;
                break;
            }

            return(item);
        }