diff --git a/SubstrateCS/Source/AnvilWorld.cs b/SubstrateCS/Source/AnvilWorld.cs index a99a7177..83185204 100644 --- a/SubstrateCS/Source/AnvilWorld.cs +++ b/SubstrateCS/Source/AnvilWorld.cs @@ -169,6 +169,12 @@ public override void Save () } } + public override void SaveBlocks() { + foreach (KeyValuePair cm in _chunkMgrs) { + cm.Value.Save(); + } + } + /// /// Gets the currently managing chunks in the default dimension. /// diff --git a/SubstrateCS/Source/BlockInfo.cs b/SubstrateCS/Source/BlockInfo.cs index 4d0702f0..8900defc 100644 --- a/SubstrateCS/Source/BlockInfo.cs +++ b/SubstrateCS/Source/BlockInfo.cs @@ -184,6 +184,11 @@ public static class BlockType public const int CARPET = 171; public const int HARDENED_CLAY = 172; public const int COAL_BLOCK = 173; + public const int CONCRETE = 251; + public const int CONCRETE_POWDER = 252; + public const int SEA_LANTERN = 169; + public const int STANDING_BANNER = 176; + public const int WALL_BANNER = 177; } /// @@ -729,10 +734,13 @@ public bool TestData (int data) public static BlockInfoEx Dropper; public static BlockInfo StainedClay; public static BlockInfo StainedGlassPane; + public static BlockInfo AcaciaWood; public static BlockInfo HayBlock; public static BlockInfo Carpet; public static BlockInfo HardenedClay; public static BlockInfo CoalBlock; + public static BlockInfoEx StandingBanner; + public static BlockInfoEx WallBanner; static BlockInfo () { @@ -906,10 +914,13 @@ static BlockInfo () Dropper = (BlockInfoEx)new BlockInfoEx(158, "Dropper").SetTick(10); StainedClay = new BlockInfo(159, "Stained Clay"); StainedGlassPane = new BlockInfo(160, "Stained Glass Pane").SetOpacity(0); + AcaciaWood = new BlockInfo(162, "Acacia Wood"); HayBlock = new BlockInfo(170, "Hay Block"); Carpet = new BlockInfo(171, "Carpet").SetOpacity(0); HardenedClay = new BlockInfo(172, "Hardened Clay"); CoalBlock = new BlockInfo(173, "Block of Coal"); + WallBanner = new BlockInfoEx(BlockType.WALL_BANNER, "Wall Banner"); + StandingBanner = new BlockInfoEx(BlockType.STANDING_BANNER, "Standing Banner"); for (int i = 0; i < MAX_BLOCKS; i++) { if (_blockTable[i] == null) { @@ -951,8 +962,8 @@ static BlockInfo () Chest.SetTileEntity("Chest"); Furnace.SetTileEntity("Furnace"); BurningFurnace.SetTileEntity("Furnace"); - SignPost.SetTileEntity("Sign"); - WallSign.SetTileEntity("Sign"); + SignPost.SetTileEntity("minecraft:sign"); + WallSign.SetTileEntity("minecraft:sign"); EnchantmentTable.SetTileEntity("EnchantTable"); BrewingStand.SetTileEntity("Cauldron"); EndPortal.SetTileEntity("Airportal"); @@ -962,6 +973,8 @@ static BlockInfo () TrappedChest.SetTileEntity("Chest"); Hopper.SetTileEntity("Hopper"); Dropper.SetTileEntity("Dropper"); + StandingBanner.SetTileEntity("minecraft:banner"); + WallBanner.SetTileEntity("minecraft:banner"); // Set Data Limits diff --git a/SubstrateCS/Source/BlockManager.cs b/SubstrateCS/Source/BlockManager.cs index f9c328f8..0be6eb1f 100644 --- a/SubstrateCS/Source/BlockManager.cs +++ b/SubstrateCS/Source/BlockManager.cs @@ -98,6 +98,23 @@ public bool AutoTileTick set { _autoTileTick = value; } } + public int ChunkXLog { + get { + return chunkXLog; + } + } + public int ChunkYLog { + get { + return chunkYLog; + } + } + + public int ChunkZLog { + get { + return chunkZLog; + } + } + /// /// Constructs a new instance on top of the given . /// diff --git a/SubstrateCS/Source/Core/BlockLight.cs b/SubstrateCS/Source/Core/BlockLight.cs index 89c78b26..0cf5e632 100644 --- a/SubstrateCS/Source/Core/BlockLight.cs +++ b/SubstrateCS/Source/Core/BlockLight.cs @@ -861,7 +861,7 @@ private void TestSkyLight (IBoundedLitBlockCollection chunk, int x1, int y1, int private IBoundedLitBlockCollection OnResolveNeighbor (int relX, int relY, int relZ) { - if (ResolveNeighbor != null) { + if (ResolveNeighbor != null && relX >= 0 && relY >= 0 && relZ >= 0) { IBoundedLitBlockCollection n = ResolveNeighbor(relX, relY, relZ); if (n == null) { diff --git a/SubstrateCS/Source/Data.cs b/SubstrateCS/Source/Data.cs index 4314a472..09420766 100644 --- a/SubstrateCS/Source/Data.cs +++ b/SubstrateCS/Source/Data.cs @@ -12,6 +12,7 @@ public enum WoodType OAK = 0, SPRUCE = 1, BIRCH = 2, + JUNGLE = 3, } public enum LeafType @@ -217,6 +218,16 @@ public enum WallSignOrientation SOUTH = 5, } + public enum StoneType { + STONE = 0, + GRANITE = 1, + POLISHED_GRANITE = 2, + DIORITE = 3, + POLISHED_DORITE = 4, + ANDESITE = 5, + POLISHED_ANDESITE = 6 + } + public enum FurnaceOrientation { EAST = 2, @@ -247,6 +258,8 @@ public enum SlabType COBBLESTONE = 3, BRICK = 4, STONE_BRICK = 5, + NETHER_BRICK = 6, + QUARTZ = 7 } [Flags] @@ -343,6 +356,7 @@ public enum StoneBrickType NORMAL = 0, MOSSY = 1, CRACKED = 2, + CHISELED = 3, } public enum HugeMushroomType diff --git a/SubstrateCS/Source/Item.cs b/SubstrateCS/Source/Item.cs index 28cdd8e5..8629e829 100644 --- a/SubstrateCS/Source/Item.cs +++ b/SubstrateCS/Source/Item.cs @@ -12,7 +12,7 @@ public class Item : INbtObject, ICopyable { private static readonly SchemaNodeCompound _schema = new SchemaNodeCompound("") { - new SchemaNodeScaler("id", TagType.TAG_SHORT), + new SchemaNodeScaler("id", TagType.TAG_STRING), new SchemaNodeScaler("Damage", TagType.TAG_SHORT), new SchemaNodeScaler("Count", TagType.TAG_BYTE), new SchemaNodeCompound("tag", new SchemaNodeCompound("") { @@ -25,7 +25,7 @@ public class Item : INbtObject, ICopyable private TagNodeCompound _source; - private short _id; + private string _id; private byte _count; private short _damage; @@ -44,10 +44,10 @@ public Item () /// Constructs an instance representing the given item id. /// /// An item id. - public Item (int id) + public Item (string id) : this() { - _id = (short)id; + _id = id; } #region Properties @@ -57,16 +57,22 @@ public Item (int id) /// public ItemInfo Info { - get { return ItemInfo.ItemTable[_id]; } + get { + ItemInfo itemInfo; + if (ItemInfo.StrTable.TryGetValue(_id, out itemInfo)) { + return itemInfo; + } + return null; + } } /// /// Gets or sets the current type (id) of the item. /// - public int ID + public string ID { get { return _id; } - set { _id = (short)value; } + set { _id = value; } } /// @@ -149,7 +155,7 @@ public Item LoadTree (TagNode tree) _enchantments.Clear(); - _id = ctree["id"].ToTagShort(); + _id = ctree["id"].ToTagString(); _count = ctree["Count"].ToTagByte(); _damage = ctree["Damage"].ToTagShort(); @@ -183,7 +189,7 @@ public Item LoadTreeSafe (TagNode tree) public TagNode BuildTree () { TagNodeCompound tree = new TagNodeCompound(); - tree["id"] = new TagNodeShort(_id); + tree["id"] = new TagNodeString(_id); tree["Count"] = new TagNodeByte(_count); tree["Damage"] = new TagNodeShort(_damage); diff --git a/SubstrateCS/Source/ItemInfo.cs b/SubstrateCS/Source/ItemInfo.cs index a779e2a6..0bb4d2b8 100644 --- a/SubstrateCS/Source/ItemInfo.cs +++ b/SubstrateCS/Source/ItemInfo.cs @@ -226,13 +226,20 @@ IEnumerator IEnumerable.GetEnumerator () } } - private static readonly Dictionary _itemTable; + private static readonly Dictionary _itemTable = new Dictionary(); + private static readonly Dictionary _strTable = new Dictionary(); + + public static Dictionary StrTable { + get { + return _strTable; + } + } private int _id = 0; - private string _name = ""; + private string _name = "", _stringId = null; private int _stack = 1; - private static readonly CacheTableDict _itemTableCache; + private static readonly CacheTableDict _itemTableCache = new CacheTableDict(_itemTable); /// /// Gets the lookup table for id-to-info values. @@ -258,6 +265,12 @@ public string Name get { return _name; } } + public string StringId { + get { + return _stringId; + } + } + /// /// Gets the maximum stack size allowed for this item type. /// @@ -281,11 +294,14 @@ public ItemInfo (int id) /// /// The id of an item type. /// The name of an item type. - public ItemInfo (int id, string name) - { + public ItemInfo(int id, int meta, string name, string stringId = null) { _id = id; _name = name; + _stringId = stringId; _itemTable[_id] = this; + if (stringId != null) { + _strTable[stringId] = this; + } } /// @@ -309,350 +325,717 @@ public static ItemInfo GetRandomItem () return list[_rand.Next(list.Count)]; } - public static ItemInfo IronShovel; - public static ItemInfo IronPickaxe; - public static ItemInfo IronAxe; - public static ItemInfo FlintAndSteel; - public static ItemInfo Apple; - public static ItemInfo Bow; - public static ItemInfo Arrow; - public static ItemInfo Coal; - public static ItemInfo Diamond; - public static ItemInfo IronIngot; - public static ItemInfo GoldIngot; - public static ItemInfo IronSword; - public static ItemInfo WoodenSword; - public static ItemInfo WoodenShovel; - public static ItemInfo WoodenPickaxe; - public static ItemInfo WoodenAxe; - public static ItemInfo StoneSword; - public static ItemInfo StoneShovel; - public static ItemInfo StonePickaxe; - public static ItemInfo StoneAxe; - public static ItemInfo DiamondSword; - public static ItemInfo DiamondShovel; - public static ItemInfo DiamondPickaxe; - public static ItemInfo DiamondAxe; - public static ItemInfo Stick; - public static ItemInfo Bowl; - public static ItemInfo MushroomSoup; - public static ItemInfo GoldSword; - public static ItemInfo GoldShovel; - public static ItemInfo GoldPickaxe; - public static ItemInfo GoldAxe; - public static ItemInfo String; - public static ItemInfo Feather; - public static ItemInfo Gunpowder; - public static ItemInfo WoodenHoe; - public static ItemInfo StoneHoe; - public static ItemInfo IronHoe; - public static ItemInfo DiamondHoe; - public static ItemInfo GoldHoe; - public static ItemInfo Seeds; - public static ItemInfo Wheat; - public static ItemInfo Bread; - public static ItemInfo LeatherCap; - public static ItemInfo LeatherTunic; - public static ItemInfo LeatherPants; - public static ItemInfo LeatherBoots; - public static ItemInfo ChainHelmet; - public static ItemInfo ChainChestplate; - public static ItemInfo ChainLeggings; - public static ItemInfo ChainBoots; - public static ItemInfo IronHelmet; - public static ItemInfo IronChestplate; - public static ItemInfo IronLeggings; - public static ItemInfo IronBoots; - public static ItemInfo DiamondHelmet; - public static ItemInfo DiamondChestplate; - public static ItemInfo DiamondLeggings; - public static ItemInfo DiamondBoots; - public static ItemInfo GoldHelmet; - public static ItemInfo GoldChestplate; - public static ItemInfo GoldLeggings; - public static ItemInfo GoldBoots; - public static ItemInfo Flint; - public static ItemInfo RawPorkchop; - public static ItemInfo CookedPorkchop; - public static ItemInfo Painting; - public static ItemInfo GoldenApple; - public static ItemInfo Sign; - public static ItemInfo WoodenDoor; - public static ItemInfo Bucket; - public static ItemInfo WaterBucket; - public static ItemInfo LavaBucket; - public static ItemInfo Minecart; - public static ItemInfo Saddle; - public static ItemInfo IronDoor; - public static ItemInfo RedstoneDust; - public static ItemInfo Snowball; - public static ItemInfo Boat; - public static ItemInfo Leather; - public static ItemInfo Milk; - public static ItemInfo ClayBrick; - public static ItemInfo Clay; - public static ItemInfo SugarCane; - public static ItemInfo Paper; - public static ItemInfo Book; - public static ItemInfo Slimeball; - public static ItemInfo StorageMinecart; - public static ItemInfo PoweredMinecart; - public static ItemInfo Egg; - public static ItemInfo Compass; - public static ItemInfo FishingRod; - public static ItemInfo Clock; - public static ItemInfo GlowstoneDust; - public static ItemInfo RawFish; - public static ItemInfo CookedFish; - public static ItemInfo Dye; - public static ItemInfo Bone; - public static ItemInfo Sugar; - public static ItemInfo Cake; - public static ItemInfo Bed; - public static ItemInfo RedstoneRepeater; - public static ItemInfo Cookie; - public static ItemInfo Map; - public static ItemInfo Shears; - public static ItemInfo MelonSlice; - public static ItemInfo PumpkinSeeds; - public static ItemInfo MelonSeeds; - public static ItemInfo RawBeef; - public static ItemInfo Steak; - public static ItemInfo RawChicken; - public static ItemInfo CookedChicken; - public static ItemInfo RottenFlesh; - public static ItemInfo EnderPearl; - public static ItemInfo BlazeRod; - public static ItemInfo GhastTear; - public static ItemInfo GoldNugget; - public static ItemInfo NetherWart; - public static ItemInfo Potion; - public static ItemInfo GlassBottle; - public static ItemInfo SpiderEye; - public static ItemInfo FermentedSpiderEye; - public static ItemInfo BlazePowder; - public static ItemInfo MagmaCream; - public static ItemInfo BrewingStand; - public static ItemInfo Cauldron; - public static ItemInfo EyeOfEnder; - public static ItemInfo GlisteringMelon; - public static ItemInfo SpawnEgg; - public static ItemInfo BottleOEnchanting; - public static ItemInfo FireCharge; - public static ItemInfo BookAndQuill; - public static ItemInfo WrittenBook; - public static ItemInfo Emerald; - public static ItemInfo ItemFrame; - public static ItemInfo FlowerPot; - public static ItemInfo Carrot; - public static ItemInfo Potato; - public static ItemInfo BakedPotato; - public static ItemInfo PoisonPotato; - public static ItemInfo EmptyMap; - public static ItemInfo GoldenCarrot; - public static ItemInfo MobHead; - public static ItemInfo CarrotOnStick; - public static ItemInfo NetherStar; - public static ItemInfo PumpkinPie; - public static ItemInfo FireworkRocket; - public static ItemInfo FireworkStar; - public static ItemInfo EnchantedBook; - public static ItemInfo RedstoneComparator; - public static ItemInfo NetherBrick; - public static ItemInfo NetherQuartz; - public static ItemInfo TntMinecart; - public static ItemInfo HopperMinecart; - public static ItemInfo IronHorseArmor; - public static ItemInfo GoldHorseArmor; - public static ItemInfo DiamondHorseArmor; - public static ItemInfo Lead; - public static ItemInfo NameTag; - public static ItemInfo MusicDisc13; - public static ItemInfo MusicDiscCat; - public static ItemInfo MusicDiscBlocks; - public static ItemInfo MusicDiscChirp; - public static ItemInfo MusicDiscFar; - public static ItemInfo MusicDiscMall; - public static ItemInfo MusicDiscMellohi; - public static ItemInfo MusicDiscStal; - public static ItemInfo MusicDiscStrad; - public static ItemInfo MusicDiscWard; - public static ItemInfo MusicDisc11; - - static ItemInfo () - { - _itemTable = new Dictionary(); - _itemTableCache = new CacheTableDict(_itemTable); - - IronShovel = new ItemInfo(256, "Iron Shovel"); - IronPickaxe = new ItemInfo(257, "Iron Pickaxe"); - IronAxe = new ItemInfo(258, "Iron Axe"); - FlintAndSteel = new ItemInfo(259, "Flint and Steel"); - Apple = new ItemInfo(260, "Apple").SetStackSize(64); - Bow = new ItemInfo(261, "Bow"); - Arrow = new ItemInfo(262, "Arrow").SetStackSize(64); - Coal = new ItemInfo(263, "Coal").SetStackSize(64); - Diamond = new ItemInfo(264, "Diamond").SetStackSize(64); - IronIngot = new ItemInfo(265, "Iron Ingot").SetStackSize(64); - GoldIngot = new ItemInfo(266, "Gold Ingot").SetStackSize(64); - IronSword = new ItemInfo(267, "Iron Sword"); - WoodenSword = new ItemInfo(268, "Wooden Sword"); - WoodenShovel = new ItemInfo(269, "Wooden Shovel"); - WoodenPickaxe = new ItemInfo(270, "Wooden Pickaxe"); - WoodenAxe = new ItemInfo(271, "Wooden Axe"); - StoneSword = new ItemInfo(272, "Stone Sword"); - StoneShovel = new ItemInfo(273, "Stone Shovel"); - StonePickaxe = new ItemInfo(274, "Stone Pickaxe"); - StoneAxe = new ItemInfo(275, "Stone Axe"); - DiamondSword = new ItemInfo(276, "Diamond Sword"); - DiamondShovel = new ItemInfo(277, "Diamond Shovel"); - DiamondPickaxe = new ItemInfo(278, "Diamond Pickaxe"); - DiamondAxe = new ItemInfo(279, "Diamond Axe"); - Stick = new ItemInfo(280, "Stick").SetStackSize(64); - Bowl = new ItemInfo(281, "Bowl").SetStackSize(64); - MushroomSoup = new ItemInfo(282, "Mushroom Soup"); - GoldSword = new ItemInfo(283, "Gold Sword"); - GoldShovel = new ItemInfo(284, "Gold Shovel"); - GoldPickaxe = new ItemInfo(285, "Gold Pickaxe"); - GoldAxe = new ItemInfo(286, "Gold Axe"); - String = new ItemInfo(287, "String").SetStackSize(64); - Feather = new ItemInfo(288, "Feather").SetStackSize(64); - Gunpowder = new ItemInfo(289, "Gunpowder").SetStackSize(64); - WoodenHoe = new ItemInfo(290, "Wooden Hoe"); - StoneHoe = new ItemInfo(291, "Stone Hoe"); - IronHoe = new ItemInfo(292, "Iron Hoe"); - DiamondHoe = new ItemInfo(293, "Diamond Hoe"); - GoldHoe = new ItemInfo(294, "Gold Hoe"); - Seeds = new ItemInfo(295, "Seeds").SetStackSize(64); - Wheat = new ItemInfo(296, "Wheat").SetStackSize(64); - Bread = new ItemInfo(297, "Bread").SetStackSize(64); - LeatherCap = new ItemInfo(298, "Leather Cap"); - LeatherTunic = new ItemInfo(299, "Leather Tunic"); - LeatherPants = new ItemInfo(300, "Leather Pants"); - LeatherBoots = new ItemInfo(301, "Leather Boots"); - ChainHelmet = new ItemInfo(302, "Chain Helmet"); - ChainChestplate = new ItemInfo(303, "Chain Chestplate"); - ChainLeggings = new ItemInfo(304, "Chain Leggings"); - ChainBoots = new ItemInfo(305, "Chain Boots"); - IronHelmet = new ItemInfo(306, "Iron Helmet"); - IronChestplate = new ItemInfo(307, "Iron Chestplate"); - IronLeggings = new ItemInfo(308, "Iron Leggings"); - IronBoots = new ItemInfo(309, "Iron Boots"); - DiamondHelmet = new ItemInfo(310, "Diamond Helmet"); - DiamondChestplate = new ItemInfo(311, "Diamond Chestplate"); - DiamondLeggings = new ItemInfo(312, "Diamond Leggings"); - DiamondBoots = new ItemInfo(313, "Diamond Boots"); - GoldHelmet = new ItemInfo(314, "Gold Helmet"); - GoldChestplate = new ItemInfo(315, "Gold Chestplate"); - GoldLeggings = new ItemInfo(316, "Gold Leggings"); - GoldBoots = new ItemInfo(317, "Gold Boots"); - Flint = new ItemInfo(318, "Flint").SetStackSize(64); - RawPorkchop = new ItemInfo(319, "Raw Porkchop").SetStackSize(64); - CookedPorkchop = new ItemInfo(320, "Cooked Porkchop").SetStackSize(64); - Painting = new ItemInfo(321, "Painting").SetStackSize(64); - GoldenApple = new ItemInfo(322, "Golden Apple").SetStackSize(64); - Sign = new ItemInfo(323, "Sign"); - WoodenDoor = new ItemInfo(324, "Door"); - Bucket = new ItemInfo(325, "Bucket"); - WaterBucket = new ItemInfo(326, "Water Bucket"); - LavaBucket = new ItemInfo(327, "Lava Bucket"); - Minecart = new ItemInfo(328, "Minecart"); - Saddle = new ItemInfo(329, "Saddle"); - IronDoor = new ItemInfo(330, "Iron Door"); - RedstoneDust = new ItemInfo(331, "Redstone Dust").SetStackSize(64); - Snowball = new ItemInfo(332, "Snowball").SetStackSize(16); - Boat = new ItemInfo(333, "Boat"); - Leather = new ItemInfo(334, "Leather").SetStackSize(64); - Milk = new ItemInfo(335, "Milk"); - ClayBrick = new ItemInfo(336, "Clay Brick").SetStackSize(64); - Clay = new ItemInfo(337, "Clay").SetStackSize(64); - SugarCane = new ItemInfo(338, "Sugar Cane").SetStackSize(64); - Paper = new ItemInfo(339, "Paper").SetStackSize(64); - Book = new ItemInfo(340, "Book").SetStackSize(64); - Slimeball = new ItemInfo(341, "Slimeball").SetStackSize(64); - StorageMinecart = new ItemInfo(342, "Storage Minecart"); - PoweredMinecart = new ItemInfo(343, "Powered Minecart"); - Egg = new ItemInfo(344, "Egg").SetStackSize(16); - Compass = new ItemInfo(345, "Compass"); - FishingRod = new ItemInfo(346, "Fishing Rod"); - Clock = new ItemInfo(347, "Clock"); - GlowstoneDust = new ItemInfo(348, "Glowstone Dust").SetStackSize(64); - RawFish = new ItemInfo(349, "Raw Fish").SetStackSize(64); - CookedFish = new ItemInfo(350, "Cooked Fish").SetStackSize(64); - Dye = new ItemInfo(351, "Dye").SetStackSize(64); - Bone = new ItemInfo(352, "Bone").SetStackSize(64); - Sugar = new ItemInfo(353, "Sugar").SetStackSize(64); - Cake = new ItemInfo(354, "Cake"); - Bed = new ItemInfo(355, "Bed"); - RedstoneRepeater = new ItemInfo(356, "Redstone Repeater").SetStackSize(64); - Cookie = new ItemInfo(357, "Cookie").SetStackSize(8); - Map = new ItemInfo(358, "Map"); - Shears = new ItemInfo(359, "Shears"); - MelonSlice = new ItemInfo(360, "Melon Slice").SetStackSize(64); - PumpkinSeeds = new ItemInfo(361, "Pumpkin Seeds").SetStackSize(64); - MelonSeeds = new ItemInfo(362, "Melon Seeds").SetStackSize(64); - RawBeef = new ItemInfo(363, "Raw Beef").SetStackSize(64); - Steak = new ItemInfo(364, "Steak").SetStackSize(64); - RawChicken = new ItemInfo(365, "Raw Chicken").SetStackSize(64); - CookedChicken = new ItemInfo(366, "Cooked Chicken").SetStackSize(64); - RottenFlesh = new ItemInfo(367, "Rotten Flesh").SetStackSize(64); - EnderPearl = new ItemInfo(368, "Ender Pearl").SetStackSize(64); - BlazeRod = new ItemInfo(369, "Blaze Rod").SetStackSize(64); - GhastTear = new ItemInfo(370, "Ghast Tear").SetStackSize(64); - GoldNugget = new ItemInfo(371, "Gold Nugget").SetStackSize(64); - NetherWart = new ItemInfo(372, "Nether Wart").SetStackSize(64); - Potion = new ItemInfo(373, "Potion"); - GlassBottle = new ItemInfo(374, "Glass Bottle").SetStackSize(64); - SpiderEye = new ItemInfo(375, "Spider Eye").SetStackSize(64); - FermentedSpiderEye = new ItemInfo(376, "Fermented Spider Eye").SetStackSize(64); - BlazePowder = new ItemInfo(377, "Blaze Powder").SetStackSize(64); - MagmaCream = new ItemInfo(378, "Magma Cream").SetStackSize(64); - BrewingStand = new ItemInfo(379, "Brewing Stand").SetStackSize(64); - Cauldron = new ItemInfo(380, "Cauldron"); - EyeOfEnder = new ItemInfo(381, "Eye of Ender").SetStackSize(64); - GlisteringMelon = new ItemInfo(382, "Glistering Melon").SetStackSize(64); - SpawnEgg = new ItemInfo(383, "Spawn Egg").SetStackSize(64); - BottleOEnchanting = new ItemInfo(384, "Bottle O' Enchanting").SetStackSize(64); - FireCharge = new ItemInfo(385, "Fire Charge").SetStackSize(64); - BookAndQuill = new ItemInfo(386, "Book and Quill"); - WrittenBook = new ItemInfo(387, "Written Book"); - Emerald = new ItemInfo(388, "Emerald").SetStackSize(64); - ItemFrame = new ItemInfo(389, "Item Frame").SetStackSize(64); - FlowerPot = new ItemInfo(390, "Flower Pot").SetStackSize(64); - Carrot = new ItemInfo(391, "Carrot").SetStackSize(64); - Potato = new ItemInfo(392, "Potato").SetStackSize(64); - BakedPotato = new ItemInfo(393, "Baked Potato").SetStackSize(64); - PoisonPotato = new ItemInfo(394, "Poisonous Potato").SetStackSize(64); - EmptyMap = new ItemInfo(395, "Empty Map").SetStackSize(64); - GoldenCarrot = new ItemInfo(396, "Golden Carrot").SetStackSize(64); - MobHead = new ItemInfo(397, "Mob Head").SetStackSize(64); - CarrotOnStick = new ItemInfo(398, "Carrot on a Stick"); - NetherStar = new ItemInfo(399, "Nether Star").SetStackSize(64); - PumpkinPie = new ItemInfo(400, "Pumpkin Pie").SetStackSize(64); - FireworkRocket = new ItemInfo(401, "Firework Rocket"); - FireworkStar = new ItemInfo(402, "Firework Star").SetStackSize(64); - EnchantedBook = new ItemInfo(403, "Enchanted Book"); - RedstoneComparator = new ItemInfo(404, "Redstone Comparator").SetStackSize(64); - NetherBrick = new ItemInfo(405, "Nether Brick").SetStackSize(64); - NetherQuartz = new ItemInfo(406, "Nether Quartz").SetStackSize(64); - TntMinecart = new ItemInfo(407, "Minecart with TNT"); - HopperMinecart = new ItemInfo(408, "Minecart with Hopper"); - IronHorseArmor = new ItemInfo(417, "Iron Horse Armor"); - GoldHorseArmor = new ItemInfo(418, "Gold Horse Armor"); - DiamondHorseArmor = new ItemInfo(419, "Diamond Horse Armor"); - Lead = new ItemInfo(420, "Lead").SetStackSize(64); - NameTag = new ItemInfo(421, "Name Tag").SetStackSize(64); - MusicDisc13 = new ItemInfo(2256, "13 Disc"); - MusicDiscCat = new ItemInfo(2257, "Cat Disc"); - MusicDiscBlocks = new ItemInfo(2258, "Blocks Disc"); - MusicDiscChirp = new ItemInfo(2259, "Chirp Disc"); - MusicDiscFar = new ItemInfo(2260, "Far Disc"); - MusicDiscMall = new ItemInfo(2261, "Mall Disc"); - MusicDiscMellohi = new ItemInfo(2262, "Mellohi Disc"); - MusicDiscStal = new ItemInfo(2263, "Stal Disc"); - MusicDiscStrad = new ItemInfo(2264, "Strad Disc"); - MusicDiscWard = new ItemInfo(2265, "Ward Disc"); - MusicDisc11 = new ItemInfo(2266, "11 Disc"); - } + public static ItemInfo Air = new ItemInfo(0, 0, "Air", "minecraft:air"); + public static ItemInfo Stone = new ItemInfo(1, 0, "Stone", "minecraft:stone"); + public static ItemInfo Granite = new ItemInfo(1, 1, "Granite", "minecraft:stone"); + public static ItemInfo PolishedGranite = new ItemInfo(1, 2, "Polished Granite", "minecraft:stone"); + public static ItemInfo Diorite = new ItemInfo(1, 3, "Diorite", "minecraft:stone"); + public static ItemInfo PolishedDiorite = new ItemInfo(1, 4, "Polished Diorite", "minecraft:stone"); + public static ItemInfo Andesite = new ItemInfo(1, 5, "Andesite", "minecraft:stone"); + public static ItemInfo PolishedAndesite = new ItemInfo(1, 6, "Polished Andesite", "minecraft:stone"); + public static ItemInfo Grass = new ItemInfo(2, 0, "Grass", "minecraft:grass"); + public static ItemInfo Dirt = new ItemInfo(3, 0, "Dirt", "minecraft:dirt"); + public static ItemInfo CoarseDirt = new ItemInfo(3, 1, "Coarse Dirt", "minecraft:dirt"); + public static ItemInfo Podzol = new ItemInfo(3, 2, "Podzol", "minecraft:dirt"); + public static ItemInfo Cobblestone = new ItemInfo(4, 0, "Cobblestone", "minecraft:cobblestone"); + public static ItemInfo OakWoodPlank = new ItemInfo(5, 0, "Oak Wood Plank", "minecraft:planks"); + public static ItemInfo SpruceWoodPlank = new ItemInfo(5, 1, "Spruce Wood Plank", "minecraft:planks"); + public static ItemInfo BirchWoodPlank = new ItemInfo(5, 2, "Birch Wood Plank", "minecraft:planks"); + public static ItemInfo JungleWoodPlank = new ItemInfo(5, 3, "Jungle Wood Plank", "minecraft:planks"); + public static ItemInfo AcaciaWoodPlank = new ItemInfo(5, 4, "Acacia Wood Plank", "minecraft:planks"); + public static ItemInfo DarkOakWoodPlank = new ItemInfo(5, 5, "Dark Oak Wood Plank", "minecraft:planks"); + public static ItemInfo OakSapling = new ItemInfo(6, 0, "Oak Sapling", "minecraft:sapling"); + public static ItemInfo SpruceSapling = new ItemInfo(6, 1, "Spruce Sapling", "minecraft:sapling"); + public static ItemInfo BirchSapling = new ItemInfo(6, 2, "Birch Sapling", "minecraft:sapling"); + public static ItemInfo JungleSapling = new ItemInfo(6, 3, "Jungle Sapling", "minecraft:sapling"); + public static ItemInfo AcaciaSapling = new ItemInfo(6, 4, "Acacia Sapling", "minecraft:sapling"); + public static ItemInfo DarkOakSapling = new ItemInfo(6, 5, "Dark Oak Sapling", "minecraft:sapling"); + public static ItemInfo Bedrock = new ItemInfo(7, 0, "Bedrock", "minecraft:bedrock"); + public static ItemInfo FlowingWater = new ItemInfo(8, 0, "Flowing Water", "minecraft:flowing_water"); + public static ItemInfo StillWater = new ItemInfo(9, 0, "Still Water", "minecraft:water"); + public static ItemInfo FlowingLava = new ItemInfo(10, 0, "Flowing Lava", "minecraft:flowing_lava"); + public static ItemInfo StillLava = new ItemInfo(11, 0, "Still Lava", "minecraft:lava"); + public static ItemInfo Sand = new ItemInfo(12, 0, "Sand", "minecraft:sand"); + public static ItemInfo RedSand = new ItemInfo(12, 1, "Red Sand", "minecraft:sand"); + public static ItemInfo Gravel = new ItemInfo(13, 0, "Gravel", "minecraft:gravel"); + public static ItemInfo GoldOre = new ItemInfo(14, 0, "Gold Ore", "minecraft:gold_ore"); + public static ItemInfo IronOre = new ItemInfo(15, 0, "Iron Ore", "minecraft:iron_ore"); + public static ItemInfo CoalOre = new ItemInfo(16, 0, "Coal Ore", "minecraft:coal_ore"); + public static ItemInfo OakWood = new ItemInfo(17, 0, "Oak Wood", "minecraft:log"); + public static ItemInfo SpruceWood = new ItemInfo(17, 1, "Spruce Wood", "minecraft:log"); + public static ItemInfo BirchWood = new ItemInfo(17, 2, "Birch Wood", "minecraft:log"); + public static ItemInfo JungleWood = new ItemInfo(17, 3, "Jungle Wood", "minecraft:log"); + public static ItemInfo OakLeaves = new ItemInfo(18, 0, "Oak Leaves", "minecraft:leaves"); + public static ItemInfo SpruceLeaves = new ItemInfo(18, 1, "Spruce Leaves", "minecraft:leaves"); + public static ItemInfo BirchLeaves = new ItemInfo(18, 2, "Birch Leaves", "minecraft:leaves"); + public static ItemInfo JungleLeaves = new ItemInfo(18, 3, "Jungle Leaves", "minecraft:leaves"); + public static ItemInfo Sponge = new ItemInfo(19, 0, "Sponge", "minecraft:sponge"); + public static ItemInfo WetSponge = new ItemInfo(19, 1, "Wet Sponge", "minecraft:sponge"); + public static ItemInfo Glass = new ItemInfo(20, 0, "Glass", "minecraft:glass"); + public static ItemInfo LapisLazuliOre = new ItemInfo(21, 0, "Lapis Lazuli Ore", "minecraft:lapis_ore"); + public static ItemInfo LapisLazuliBlock = new ItemInfo(22, 0, "Lapis Lazuli Block", "minecraft:lapis_block"); + public static ItemInfo Dispenser = new ItemInfo(23, 0, "Dispenser", "minecraft:dispenser"); + public static ItemInfo Sandstone = new ItemInfo(24, 0, "Sandstone", "minecraft:sandstone"); + public static ItemInfo ChiseledSandstone = new ItemInfo(24, 1, "Chiseled Sandstone", "minecraft:sandstone"); + public static ItemInfo SmoothSandstone = new ItemInfo(24, 2, "Smooth Sandstone", "minecraft:sandstone"); + public static ItemInfo NoteBlock = new ItemInfo(25, 0, "Note Block", "minecraft:noteblock"); + public static ItemInfo Bed = new ItemInfo(26, 0, "Bed", "minecraft:bed"); + public static ItemInfo PoweredRail = new ItemInfo(27, 0, "Powered Rail", "minecraft:golden_rail"); + public static ItemInfo DetectorRail = new ItemInfo(28, 0, "Detector Rail", "minecraft:detector_rail"); + public static ItemInfo StickyPiston = new ItemInfo(29, 0, "Sticky Piston", "minecraft:sticky_piston"); + public static ItemInfo Cobweb = new ItemInfo(30, 0, "Cobweb", "minecraft:web"); + public static ItemInfo DeadShrub = new ItemInfo(31, 0, "Dead Shrub", "minecraft:tallgrass"); + public static ItemInfo TallGrass = new ItemInfo(31, 1, "Grass", "minecraft:tallgrass"); + public static ItemInfo Fern = new ItemInfo(31, 2, "Fern", "minecraft:tallgrass"); + public static ItemInfo DeadBush = new ItemInfo(32, 0, "Dead Bush", "minecraft:deadbush"); + public static ItemInfo Piston = new ItemInfo(33, 0, "Piston", "minecraft:piston"); + public static ItemInfo PistonHead = new ItemInfo(34, 0, "Piston Head", "minecraft:piston_head"); + public static ItemInfo WhiteWool = new ItemInfo(35, 0, "White Wool", "minecraft:wool"); + public static ItemInfo OrangeWool = new ItemInfo(35, 1, "Orange Wool", "minecraft:wool"); + public static ItemInfo MagentaWool = new ItemInfo(35, 2, "Magenta Wool", "minecraft:wool"); + public static ItemInfo LightBlueWool = new ItemInfo(35, 3, "Light Blue Wool", "minecraft:wool"); + public static ItemInfo YellowWool = new ItemInfo(35, 4, "Yellow Wool", "minecraft:wool"); + public static ItemInfo LimeWool = new ItemInfo(35, 5, "Lime Wool", "minecraft:wool"); + public static ItemInfo PinkWool = new ItemInfo(35, 6, "Pink Wool", "minecraft:wool"); + public static ItemInfo GrayWool = new ItemInfo(35, 7, "Gray Wool", "minecraft:wool"); + public static ItemInfo LightGrayWool = new ItemInfo(35, 8, "Light Gray Wool", "minecraft:wool"); + public static ItemInfo CyanWool = new ItemInfo(35, 9, "Cyan Wool", "minecraft:wool"); + public static ItemInfo PurpleWool = new ItemInfo(35, 10, "Purple Wool", "minecraft:wool"); + public static ItemInfo BlueWool = new ItemInfo(35, 11, "Blue Wool", "minecraft:wool"); + public static ItemInfo BrownWool = new ItemInfo(35, 12, "Brown Wool", "minecraft:wool"); + public static ItemInfo GreenWool = new ItemInfo(35, 13, "Green Wool", "minecraft:wool"); + public static ItemInfo RedWool = new ItemInfo(35, 14, "Red Wool", "minecraft:wool"); + public static ItemInfo BlackWool = new ItemInfo(35, 15, "Black Wool", "minecraft:wool"); + public static ItemInfo Dandelion = new ItemInfo(37, 0, "Dandelion", "minecraft:yellow_flower"); + public static ItemInfo Poppy = new ItemInfo(38, 0, "Poppy", "minecraft:red_flower"); + public static ItemInfo BlueOrchid = new ItemInfo(38, 1, "Blue Orchid", "minecraft:red_flower"); + public static ItemInfo Allium = new ItemInfo(38, 2, "Allium", "minecraft:red_flower"); + public static ItemInfo AzureBluet = new ItemInfo(38, 3, "Azure Bluet", "minecraft:red_flower"); + public static ItemInfo RedTulip = new ItemInfo(38, 4, "Red Tulip", "minecraft:red_flower"); + public static ItemInfo OrangeTulip = new ItemInfo(38, 5, "Orange Tulip", "minecraft:red_flower"); + public static ItemInfo WhiteTulip = new ItemInfo(38, 6, "White Tulip", "minecraft:red_flower"); + public static ItemInfo PinkTulip = new ItemInfo(38, 7, "Pink Tulip", "minecraft:red_flower"); + public static ItemInfo OxeyeDaisy = new ItemInfo(38, 8, "Oxeye Daisy", "minecraft:red_flower"); + public static ItemInfo BrownMushroom = new ItemInfo(39, 0, "Brown Mushroom", "minecraft:brown_mushroom"); + public static ItemInfo RedMushroom = new ItemInfo(40, 0, "Red Mushroom", "minecraft:red_mushroom"); + public static ItemInfo GoldBlock = new ItemInfo(41, 0, "Gold Block", "minecraft:gold_block"); + public static ItemInfo IronBlock = new ItemInfo(42, 0, "Iron Block", "minecraft:iron_block"); + public static ItemInfo DoubleStoneSlab = new ItemInfo(43, 0, "Double Stone Slab", "minecraft:double_stone_slab"); + public static ItemInfo DoubleSandstoneSlab = new ItemInfo(43, 1, "Double Sandstone Slab", "minecraft:double_stone_slab"); + public static ItemInfo DoubleWoodenSlab = new ItemInfo(43, 2, "Double Wooden Slab", "minecraft:double_stone_slab"); + public static ItemInfo DoubleCobblestoneSlab = new ItemInfo(43, 3, "Double Cobblestone Slab", "minecraft:double_stone_slab"); + public static ItemInfo DoubleBrickSlab = new ItemInfo(43, 4, "Double Brick Slab", "minecraft:double_stone_slab"); + public static ItemInfo DoubleStoneBrickSlab = new ItemInfo(43, 5, "Double Stone Brick Slab", "minecraft:double_stone_slab"); + public static ItemInfo DoubleNetherBrickSlab = new ItemInfo(43, 6, "Double Nether Brick Slab", "minecraft:double_stone_slab"); + public static ItemInfo DoubleQuartzSlab = new ItemInfo(43, 7, "Double Quartz Slab", "minecraft:double_stone_slab"); + public static ItemInfo StoneSlab = new ItemInfo(44, 0, "Stone Slab", "minecraft:stone_slab"); + public static ItemInfo SandstoneSlab = new ItemInfo(44, 1, "Sandstone Slab", "minecraft:stone_slab"); + public static ItemInfo WoodenSlab = new ItemInfo(44, 2, "Wooden Slab", "minecraft:stone_slab"); + public static ItemInfo CobblestoneSlab = new ItemInfo(44, 3, "Cobblestone Slab", "minecraft:stone_slab"); + public static ItemInfo BrickSlab = new ItemInfo(44, 4, "Brick Slab", "minecraft:stone_slab"); + public static ItemInfo StoneBrickSlab = new ItemInfo(44, 5, "Stone Brick Slab", "minecraft:stone_slab"); + public static ItemInfo NetherBrickSlab = new ItemInfo(44, 6, "Nether Brick Slab", "minecraft:stone_slab"); + public static ItemInfo QuartzSlab = new ItemInfo(44, 7, "Quartz Slab", "minecraft:stone_slab"); + public static ItemInfo Bricks = new ItemInfo(45, 0, "Bricks", "minecraft:brick_block"); + public static ItemInfo Tnt = new ItemInfo(46, 0, "TNT", "minecraft:tnt"); + public static ItemInfo Bookshelf = new ItemInfo(47, 0, "Bookshelf", "minecraft:bookshelf"); + public static ItemInfo MossStone = new ItemInfo(48, 0, "Moss Stone", "minecraft:mossy_cobblestone"); + public static ItemInfo Obsidian = new ItemInfo(49, 0, "Obsidian", "minecraft:obsidian"); + public static ItemInfo Torch = new ItemInfo(50, 0, "Torch", "minecraft:torch"); + public static ItemInfo Fire = new ItemInfo(51, 0, "Fire", "minecraft:fire"); + public static ItemInfo MonsterSpawner = new ItemInfo(52, 0, "Monster Spawner", "minecraft:mob_spawner"); + public static ItemInfo OakWoodStairs = new ItemInfo(53, 0, "Oak Wood Stairs", "minecraft:oak_stairs"); + public static ItemInfo Chest = new ItemInfo(54, 0, "Chest", "minecraft:chest"); + public static ItemInfo RedstoneWire = new ItemInfo(55, 0, "Redstone Wire", "minecraft:redstone_wire"); + public static ItemInfo DiamondOre = new ItemInfo(56, 0, "Diamond Ore", "minecraft:diamond_ore"); + public static ItemInfo DiamondBlock = new ItemInfo(57, 0, "Diamond Block", "minecraft:diamond_block"); + public static ItemInfo CraftingTable = new ItemInfo(58, 0, "Crafting Table", "minecraft:crafting_table"); + public static ItemInfo WheatCrops = new ItemInfo(59, 0, "Wheat Crops", "minecraft:wheat"); + public static ItemInfo Farmland = new ItemInfo(60, 0, "Farmland", "minecraft:farmland"); + public static ItemInfo Furnace = new ItemInfo(61, 0, "Furnace", "minecraft:furnace"); + public static ItemInfo BurningFurnace = new ItemInfo(62, 0, "Burning Furnace", "minecraft:lit_furnace"); + public static ItemInfo StandingSignBlock = new ItemInfo(63, 0, "Standing Sign Block", "minecraft:standing_sign"); + public static ItemInfo OakDoorBlock = new ItemInfo(64, 0, "Oak Door Block", "minecraft:wooden_door"); + public static ItemInfo Ladder = new ItemInfo(65, 0, "Ladder", "minecraft:ladder"); + public static ItemInfo Rail = new ItemInfo(66, 0, "Rail", "minecraft:rail"); + public static ItemInfo CobblestoneStairs = new ItemInfo(67, 0, "Cobblestone Stairs", "minecraft:stone_stairs"); + public static ItemInfo WallMountedSignBlock = new ItemInfo(68, 0, "Wall-mounted Sign Block", "minecraft:wall_sign"); + public static ItemInfo Lever = new ItemInfo(69, 0, "Lever", "minecraft:lever"); + public static ItemInfo StonePressurePlate = new ItemInfo(70, 0, "Stone Pressure Plate", "minecraft:stone_pressure_plate"); + public static ItemInfo IronDoorBlock = new ItemInfo(71, 0, "Iron Door Block", "minecraft:iron_door"); + public static ItemInfo WoodenPressurePlate = new ItemInfo(72, 0, "Wooden Pressure Plate", "minecraft:wooden_pressure_plate"); + public static ItemInfo RedstoneOre = new ItemInfo(73, 0, "Redstone Ore", "minecraft:redstone_ore"); + public static ItemInfo GlowingRedstoneOre = new ItemInfo(74, 0, "Glowing Redstone Ore", "minecraft:lit_redstone_ore"); + public static ItemInfo RedstoneTorchOff = new ItemInfo(75, 0, "Redstone Torch (off)", "minecraft:unlit_redstone_torch"); + public static ItemInfo RedstoneTorchOn = new ItemInfo(76, 0, "Redstone Torch (on)", "minecraft:redstone_torch"); + public static ItemInfo StoneButton = new ItemInfo(77, 0, "Stone Button", "minecraft:stone_button"); + public static ItemInfo Snow = new ItemInfo(78, 0, "Snow", "minecraft:snow_layer"); + public static ItemInfo Ice = new ItemInfo(79, 0, "Ice", "minecraft:ice"); + public static ItemInfo SnowBlock = new ItemInfo(80, 0, "Snow Block", "minecraft:snow").SetStackSize(16); + public static ItemInfo Cactus = new ItemInfo(81, 0, "Cactus", "minecraft:cactus"); + public static ItemInfo Clay = new ItemInfo(82, 0, "Clay", "minecraft:clay"); + public static ItemInfo SugarCanes = new ItemInfo(83, 0, "Sugar Canes", "minecraft:reeds"); + public static ItemInfo Jukebox = new ItemInfo(84, 0, "Jukebox", "minecraft:jukebox"); + public static ItemInfo OakFence = new ItemInfo(85, 0, "Oak Fence", "minecraft:fence"); + public static ItemInfo Pumpkin = new ItemInfo(86, 0, "Pumpkin", "minecraft:pumpkin"); + public static ItemInfo Netherrack = new ItemInfo(87, 0, "Netherrack", "minecraft:netherrack"); + public static ItemInfo SoulSand = new ItemInfo(88, 0, "Soul Sand", "minecraft:soul_sand"); + public static ItemInfo Glowstone = new ItemInfo(89, 0, "Glowstone", "minecraft:glowstone"); + public static ItemInfo NetherPortal = new ItemInfo(90, 0, "Nether Portal", "minecraft:portal"); + public static ItemInfo JackOLantern = new ItemInfo(91, 0, "Jack o'Lantern", "minecraft:lit_pumpkin"); + public static ItemInfo CakeBlock = new ItemInfo(92, 0, "Cake Block", "minecraft:cake"); + public static ItemInfo RedstoneRepeaterBlockOff = new ItemInfo(93, 0, "Redstone Repeater Block (off)", "minecraft:unpowered_repeater"); + public static ItemInfo RedstoneRepeaterBlockOn = new ItemInfo(94, 0, "Redstone Repeater Block (on)", "minecraft:powered_repeater"); + public static ItemInfo WhiteStainedGlass = new ItemInfo(95, 0, "White Stained Glass", "minecraft:stained_glass"); + public static ItemInfo OrangeStainedGlass = new ItemInfo(95, 1, "Orange Stained Glass", "minecraft:stained_glass"); + public static ItemInfo MagentaStainedGlass = new ItemInfo(95, 2, "Magenta Stained Glass", "minecraft:stained_glass"); + public static ItemInfo LightBlueStainedGlass = new ItemInfo(95, 3, "Light Blue Stained Glass", "minecraft:stained_glass"); + public static ItemInfo YellowStainedGlass = new ItemInfo(95, 4, "Yellow Stained Glass", "minecraft:stained_glass"); + public static ItemInfo LimeStainedGlass = new ItemInfo(95, 5, "Lime Stained Glass", "minecraft:stained_glass"); + public static ItemInfo PinkStainedGlass = new ItemInfo(95, 6, "Pink Stained Glass", "minecraft:stained_glass"); + public static ItemInfo GrayStainedGlass = new ItemInfo(95, 7, "Gray Stained Glass", "minecraft:stained_glass"); + public static ItemInfo LightGrayStainedGlass = new ItemInfo(95, 8, "Light Gray Stained Glass", "minecraft:stained_glass"); + public static ItemInfo CyanStainedGlass = new ItemInfo(95, 9, "Cyan Stained Glass", "minecraft:stained_glass"); + public static ItemInfo PurpleStainedGlass = new ItemInfo(95, 10, "Purple Stained Glass", "minecraft:stained_glass"); + public static ItemInfo BlueStainedGlass = new ItemInfo(95, 11, "Blue Stained Glass", "minecraft:stained_glass"); + public static ItemInfo BrownStainedGlass = new ItemInfo(95, 12, "Brown Stained Glass", "minecraft:stained_glass"); + public static ItemInfo GreenStainedGlass = new ItemInfo(95, 13, "Green Stained Glass", "minecraft:stained_glass"); + public static ItemInfo RedStainedGlass = new ItemInfo(95, 14, "Red Stained Glass", "minecraft:stained_glass"); + public static ItemInfo BlackStainedGlass = new ItemInfo(95, 15, "Black Stained Glass", "minecraft:stained_glass"); + public static ItemInfo WoodenTrapdoor = new ItemInfo(96, 0, "Wooden Trapdoor", "minecraft:trapdoor"); + public static ItemInfo StoneMonsterEgg = new ItemInfo(97, 0, "Stone Monster Egg", "minecraft:monster_egg"); + public static ItemInfo CobblestoneMonsterEgg = new ItemInfo(97, 1, "Cobblestone Monster Egg", "minecraft:monster_egg"); + public static ItemInfo StoneBrickMonsterEgg = new ItemInfo(97, 2, "Stone Brick Monster Egg", "minecraft:monster_egg"); + public static ItemInfo MossyStoneBrickMonsterEgg = new ItemInfo(97, 3, "Mossy Stone Brick Monster Egg", "minecraft:monster_egg"); + public static ItemInfo CrackedStoneBrickMonsterEgg = new ItemInfo(97, 4, "Cracked Stone Brick Monster Egg", "minecraft:monster_egg"); + public static ItemInfo ChiseledStoneBrickMonsterEgg = new ItemInfo(97, 5, "Chiseled Stone Brick Monster Egg", "minecraft:monster_egg"); + public static ItemInfo StoneBricks = new ItemInfo(98, 0, "Stone Bricks", "minecraft:stonebrick"); + public static ItemInfo MossyStoneBricks = new ItemInfo(98, 1, "Mossy Stone Bricks", "minecraft:stonebrick"); + public static ItemInfo CrackedStoneBricks = new ItemInfo(98, 2, "Cracked Stone Bricks", "minecraft:stonebrick"); + public static ItemInfo ChiseledStoneBricks = new ItemInfo(98, 3, "Chiseled Stone Bricks", "minecraft:stonebrick"); + public static ItemInfo BrownMushroomBlock = new ItemInfo(99, 0, "Brown Mushroom Block", "minecraft:brown_mushroom_block"); + public static ItemInfo RedMushroomBlock = new ItemInfo(100, 0, "Red Mushroom Block", "minecraft:red_mushroom_block"); + public static ItemInfo IronBars = new ItemInfo(101, 0, "Iron Bars", "minecraft:iron_bars"); + public static ItemInfo GlassPane = new ItemInfo(102, 0, "Glass Pane", "minecraft:glass_pane"); + public static ItemInfo MelonBlock = new ItemInfo(103, 0, "Melon Block", "minecraft:melon_block"); + public static ItemInfo PumpkinStem = new ItemInfo(104, 0, "Pumpkin Stem", "minecraft:pumpkin_stem"); + public static ItemInfo MelonStem = new ItemInfo(105, 0, "Melon Stem", "minecraft:melon_stem"); + public static ItemInfo Vines = new ItemInfo(106, 0, "Vines", "minecraft:vine"); + public static ItemInfo OakFenceGate = new ItemInfo(107, 0, "Oak Fence Gate", "minecraft:fence_gate"); + public static ItemInfo BrickStairs = new ItemInfo(108, 0, "Brick Stairs", "minecraft:brick_stairs"); + public static ItemInfo StoneBrickStairs = new ItemInfo(109, 0, "Stone Brick Stairs", "minecraft:stone_brick_stairs"); + public static ItemInfo Mycelium = new ItemInfo(110, 0, "Mycelium", "minecraft:mycelium"); + public static ItemInfo LilyPad = new ItemInfo(111, 0, "Lily Pad", "minecraft:waterlily"); + public static ItemInfo NetherBrick = new ItemInfo(112, 0, "Nether Brick", "minecraft:nether_brick").SetStackSize(64); + public static ItemInfo NetherBrickFence = new ItemInfo(113, 0, "Nether Brick Fence", "minecraft:nether_brick_fence"); + public static ItemInfo NetherBrickStairs = new ItemInfo(114, 0, "Nether Brick Stairs", "minecraft:nether_brick_stairs"); + public static ItemInfo NetherWart = new ItemInfo(115, 0, "Nether Wart", "minecraft:nether_wart").SetStackSize(64); + public static ItemInfo EnchantmentTable = new ItemInfo(116, 0, "Enchantment Table", "minecraft:enchanting_table"); + public static ItemInfo BrewingStand = new ItemInfo(117, 0, "Brewing Stand", "minecraft:brewing_stand").SetStackSize(64); + public static ItemInfo Cauldron = new ItemInfo(118, 0, "Cauldron", "minecraft:cauldron"); + public static ItemInfo EndPortal = new ItemInfo(119, 0, "End Portal", "minecraft:end_portal"); + public static ItemInfo EndPortalFrame = new ItemInfo(120, 0, "End Portal Frame", "minecraft:end_portal_frame"); + public static ItemInfo EndStone = new ItemInfo(121, 0, "End Stone", "minecraft:end_stone"); + public static ItemInfo DragonEgg = new ItemInfo(122, 0, "Dragon Egg", "minecraft:dragon_egg"); + public static ItemInfo RedstoneLampInactive = new ItemInfo(123, 0, "Redstone Lamp (inactive)", "minecraft:redstone_lamp"); + public static ItemInfo RedstoneLampActive = new ItemInfo(124, 0, "Redstone Lamp (active)", "minecraft:lit_redstone_lamp"); + public static ItemInfo DoubleOakWoodSlab = new ItemInfo(125, 0, "Double Oak Wood Slab", "minecraft:double_wooden_slab"); + public static ItemInfo DoubleSpruceWoodSlab = new ItemInfo(125, 1, "Double Spruce Wood Slab", "minecraft:double_wooden_slab"); + public static ItemInfo DoubleBirchWoodSlab = new ItemInfo(125, 2, "Double Birch Wood Slab", "minecraft:double_wooden_slab"); + public static ItemInfo DoubleJungleWoodSlab = new ItemInfo(125, 3, "Double Jungle Wood Slab", "minecraft:double_wooden_slab"); + public static ItemInfo DoubleAcaciaWoodSlab = new ItemInfo(125, 4, "Double Acacia Wood Slab", "minecraft:double_wooden_slab"); + public static ItemInfo DoubleDarkOakWoodSlab = new ItemInfo(125, 5, "Double Dark Oak Wood Slab", "minecraft:double_wooden_slab"); + public static ItemInfo OakWoodSlab = new ItemInfo(126, 0, "Oak Wood Slab", "minecraft:wooden_slab"); + public static ItemInfo SpruceWoodSlab = new ItemInfo(126, 1, "Spruce Wood Slab", "minecraft:wooden_slab"); + public static ItemInfo BirchWoodSlab = new ItemInfo(126, 2, "Birch Wood Slab", "minecraft:wooden_slab"); + public static ItemInfo JungleWoodSlab = new ItemInfo(126, 3, "Jungle Wood Slab", "minecraft:wooden_slab"); + public static ItemInfo AcaciaWoodSlab = new ItemInfo(126, 4, "Acacia Wood Slab", "minecraft:wooden_slab"); + public static ItemInfo DarkOakWoodSlab = new ItemInfo(126, 5, "Dark Oak Wood Slab", "minecraft:wooden_slab"); + public static ItemInfo Cocoa = new ItemInfo(127, 0, "Cocoa", "minecraft:cocoa"); + public static ItemInfo SandstoneStairs = new ItemInfo(128, 0, "Sandstone Stairs", "minecraft:sandstone_stairs"); + public static ItemInfo EmeraldOre = new ItemInfo(129, 0, "Emerald Ore", "minecraft:emerald_ore"); + public static ItemInfo EnderChest = new ItemInfo(130, 0, "Ender Chest", "minecraft:ender_chest"); + public static ItemInfo TripwireHook = new ItemInfo(131, 0, "Tripwire Hook", "minecraft:tripwire_hook"); + public static ItemInfo Tripwire = new ItemInfo(132, 0, "Tripwire", "minecraft:tripwire_hook"); + public static ItemInfo EmeraldBlock = new ItemInfo(133, 0, "Emerald Block", "minecraft:emerald_block"); + public static ItemInfo SpruceWoodStairs = new ItemInfo(134, 0, "Spruce Wood Stairs", "minecraft:spruce_stairs"); + public static ItemInfo BirchWoodStairs = new ItemInfo(135, 0, "Birch Wood Stairs", "minecraft:birch_stairs"); + public static ItemInfo JungleWoodStairs = new ItemInfo(136, 0, "Jungle Wood Stairs", "minecraft:jungle_stairs"); + public static ItemInfo CommandBlock = new ItemInfo(137, 0, "Command Block", "minecraft:command_block"); + public static ItemInfo Beacon = new ItemInfo(138, 0, "Beacon", "minecraft:beacon"); + public static ItemInfo CobblestoneWall = new ItemInfo(139, 0, "Cobblestone Wall", "minecraft:cobblestone_wall"); + public static ItemInfo MossyCobblestoneWall = new ItemInfo(139, 1, "Mossy Cobblestone Wall", "minecraft:cobblestone_wall"); + public static ItemInfo FlowerPot = new ItemInfo(140, 0, "Flower Pot", "minecraft:flower_pot").SetStackSize(64); + public static ItemInfo Carrots = new ItemInfo(141, 0, "Carrots", "minecraft:carrots"); + public static ItemInfo Potatoes = new ItemInfo(142, 0, "Potatoes", "minecraft:potatoes"); + public static ItemInfo WoodenButton = new ItemInfo(143, 0, "Wooden Button", "minecraft:wooden_button"); + public static ItemInfo MobHead = new ItemInfo(144, 0, "Mob Head", "minecraft:skull"); + public static ItemInfo Anvil = new ItemInfo(145, 0, "Anvil", "minecraft:anvil"); + public static ItemInfo TrappedChest = new ItemInfo(146, 0, "Trapped Chest", "minecraft:trapped_chest"); + public static ItemInfo WeightedPressurePlateLight = new ItemInfo(147, 0, "Weighted Pressure Plate (light)", "minecraft:light_weighted_pressure_plate"); + public static ItemInfo WeightedPressurePlateHeavy = new ItemInfo(148, 0, "Weighted Pressure Plate (heavy)", "minecraft:heavy_weighted_pressure_plate"); + public static ItemInfo RedstoneComparatorInactive = new ItemInfo(149, 0, "Redstone Comparator (inactive)", "minecraft:unpowered_comparator"); + public static ItemInfo RedstoneComparatorActive = new ItemInfo(150, 0, "Redstone Comparator (active)", "minecraft:powered_comparator"); + public static ItemInfo DaylightSensor = new ItemInfo(151, 0, "Daylight Sensor", "minecraft:daylight_detector"); + public static ItemInfo RedstoneBlock = new ItemInfo(152, 0, "Redstone Block", "minecraft:redstone_block"); + public static ItemInfo NetherQuartzOre = new ItemInfo(153, 0, "Nether Quartz Ore", "minecraft:quartz_ore"); + public static ItemInfo Hopper = new ItemInfo(154, 0, "Hopper", "minecraft:hopper"); + public static ItemInfo QuartzBlock = new ItemInfo(155, 0, "Quartz Block", "minecraft:quartz_block"); + public static ItemInfo ChiseledQuartzBlock = new ItemInfo(155, 1, "Chiseled Quartz Block", "minecraft:quartz_block"); + public static ItemInfo PillarQuartzBlock = new ItemInfo(155, 2, "Pillar Quartz Block", "minecraft:quartz_block"); + public static ItemInfo QuartzStairs = new ItemInfo(156, 0, "Quartz Stairs", "minecraft:quartz_stairs"); + public static ItemInfo ActivatorRail = new ItemInfo(157, 0, "Activator Rail", "minecraft:activator_rail"); + public static ItemInfo Dropper = new ItemInfo(158, 0, "Dropper", "minecraft:dropper"); + public static ItemInfo WhiteHardenedClay = new ItemInfo(159, 0, "White Hardened Clay", "minecraft:stained_hardened_clay"); + public static ItemInfo OrangeHardenedClay = new ItemInfo(159, 1, "Orange Hardened Clay", "minecraft:stained_hardened_clay"); + public static ItemInfo MagentaHardenedClay = new ItemInfo(159, 2, "Magenta Hardened Clay", "minecraft:stained_hardened_clay"); + public static ItemInfo LightBlueHardenedClay = new ItemInfo(159, 3, "Light Blue Hardened Clay", "minecraft:stained_hardened_clay"); + public static ItemInfo YellowHardenedClay = new ItemInfo(159, 4, "Yellow Hardened Clay", "minecraft:stained_hardened_clay"); + public static ItemInfo LimeHardenedClay = new ItemInfo(159, 5, "Lime Hardened Clay", "minecraft:stained_hardened_clay"); + public static ItemInfo PinkHardenedClay = new ItemInfo(159, 6, "Pink Hardened Clay", "minecraft:stained_hardened_clay"); + public static ItemInfo GrayHardenedClay = new ItemInfo(159, 7, "Gray Hardened Clay", "minecraft:stained_hardened_clay"); + public static ItemInfo LightGrayHardenedClay = new ItemInfo(159, 8, "Light Gray Hardened Clay", "minecraft:stained_hardened_clay"); + public static ItemInfo CyanHardenedClay = new ItemInfo(159, 9, "Cyan Hardened Clay", "minecraft:stained_hardened_clay"); + public static ItemInfo PurpleHardenedClay = new ItemInfo(159, 10, "Purple Hardened Clay", "minecraft:stained_hardened_clay"); + public static ItemInfo BlueHardenedClay = new ItemInfo(159, 11, "Blue Hardened Clay", "minecraft:stained_hardened_clay"); + public static ItemInfo BrownHardenedClay = new ItemInfo(159, 12, "Brown Hardened Clay", "minecraft:stained_hardened_clay"); + public static ItemInfo GreenHardenedClay = new ItemInfo(159, 13, "Green Hardened Clay", "minecraft:stained_hardened_clay"); + public static ItemInfo RedHardenedClay = new ItemInfo(159, 14, "Red Hardened Clay", "minecraft:stained_hardened_clay"); + public static ItemInfo BlackHardenedClay = new ItemInfo(159, 15, "Black Hardened Clay", "minecraft:stained_hardened_clay"); + public static ItemInfo WhiteStainedGlassPane = new ItemInfo(160, 0, "White Stained Glass Pane", "minecraft:stained_glass_pane"); + public static ItemInfo OrangeStainedGlassPane = new ItemInfo(160, 1, "Orange Stained Glass Pane", "minecraft:stained_glass_pane"); + public static ItemInfo MagentaStainedGlassPane = new ItemInfo(160, 2, "Magenta Stained Glass Pane", "minecraft:stained_glass_pane"); + public static ItemInfo LightBlueStainedGlassPane = new ItemInfo(160, 3, "Light Blue Stained Glass Pane", "minecraft:stained_glass_pane"); + public static ItemInfo YellowStainedGlassPane = new ItemInfo(160, 4, "Yellow Stained Glass Pane", "minecraft:stained_glass_pane"); + public static ItemInfo LimeStainedGlassPane = new ItemInfo(160, 5, "Lime Stained Glass Pane", "minecraft:stained_glass_pane"); + public static ItemInfo PinkStainedGlassPane = new ItemInfo(160, 6, "Pink Stained Glass Pane", "minecraft:stained_glass_pane"); + public static ItemInfo GrayStainedGlassPane = new ItemInfo(160, 7, "Gray Stained Glass Pane", "minecraft:stained_glass_pane"); + public static ItemInfo LightGrayStainedGlassPane = new ItemInfo(160, 8, "Light Gray Stained Glass Pane", "minecraft:stained_glass_pane"); + public static ItemInfo CyanStainedGlassPane = new ItemInfo(160, 9, "Cyan Stained Glass Pane", "minecraft:stained_glass_pane"); + public static ItemInfo PurpleStainedGlassPane = new ItemInfo(160, 10, "Purple Stained Glass Pane", "minecraft:stained_glass_pane"); + public static ItemInfo BlueStainedGlassPane = new ItemInfo(160, 11, "Blue Stained Glass Pane", "minecraft:stained_glass_pane"); + public static ItemInfo BrownStainedGlassPane = new ItemInfo(160, 12, "Brown Stained Glass Pane", "minecraft:stained_glass_pane"); + public static ItemInfo GreenStainedGlassPane = new ItemInfo(160, 13, "Green Stained Glass Pane", "minecraft:stained_glass_pane"); + public static ItemInfo RedStainedGlassPane = new ItemInfo(160, 14, "Red Stained Glass Pane", "minecraft:stained_glass_pane"); + public static ItemInfo BlackStainedGlassPane = new ItemInfo(160, 15, "Black Stained Glass Pane", "minecraft:stained_glass_pane"); + public static ItemInfo AcaciaLeaves = new ItemInfo(161, 0, "Acacia Leaves", "minecraft:leaves2"); + public static ItemInfo DarkOakLeaves = new ItemInfo(161, 1, "Dark Oak Leaves", "minecraft:leaves2"); + public static ItemInfo AcaciaWood = new ItemInfo(162, 0, "Acacia Wood", "minecraft:log2"); + public static ItemInfo DarkOakWood = new ItemInfo(162, 1, "Dark Oak Wood", "minecraft:log2"); + public static ItemInfo AcaciaWoodStairs = new ItemInfo(163, 0, "Acacia Wood Stairs", "minecraft:acacia_stairs"); + public static ItemInfo DarkOakWoodStairs = new ItemInfo(164, 0, "Dark Oak Wood Stairs", "minecraft:dark_oak_stairs"); + public static ItemInfo SlimeBlock = new ItemInfo(165, 0, "Slime Block", "minecraft:slime"); + public static ItemInfo Barrier = new ItemInfo(166, 0, "Barrier", "minecraft:barrier"); + public static ItemInfo IronTrapdoor = new ItemInfo(167, 0, "Iron Trapdoor", "minecraft:iron_trapdoor"); + public static ItemInfo Prismarine = new ItemInfo(168, 0, "Prismarine", "minecraft:prismarine"); + public static ItemInfo PrismarineBricks = new ItemInfo(168, 1, "Prismarine Bricks", "minecraft:prismarine"); + public static ItemInfo DarkPrismarine = new ItemInfo(168, 2, "Dark Prismarine", "minecraft:prismarine"); + public static ItemInfo SeaLantern = new ItemInfo(169, 0, "Sea Lantern", "minecraft:sea_lantern"); + public static ItemInfo HayBale = new ItemInfo(170, 0, "Hay Bale", "minecraft:hay_block"); + public static ItemInfo WhiteCarpet = new ItemInfo(171, 0, "White Carpet", "minecraft:carpet"); + public static ItemInfo OrangeCarpet = new ItemInfo(171, 1, "Orange Carpet", "minecraft:carpet"); + public static ItemInfo MagentaCarpet = new ItemInfo(171, 2, "Magenta Carpet", "minecraft:carpet"); + public static ItemInfo LightBlueCarpet = new ItemInfo(171, 3, "Light Blue Carpet", "minecraft:carpet"); + public static ItemInfo YellowCarpet = new ItemInfo(171, 4, "Yellow Carpet", "minecraft:carpet"); + public static ItemInfo LimeCarpet = new ItemInfo(171, 5, "Lime Carpet", "minecraft:carpet"); + public static ItemInfo PinkCarpet = new ItemInfo(171, 6, "Pink Carpet", "minecraft:carpet"); + public static ItemInfo GrayCarpet = new ItemInfo(171, 7, "Gray Carpet", "minecraft:carpet"); + public static ItemInfo LightGrayCarpet = new ItemInfo(171, 8, "Light Gray Carpet", "minecraft:carpet"); + public static ItemInfo CyanCarpet = new ItemInfo(171, 9, "Cyan Carpet", "minecraft:carpet"); + public static ItemInfo PurpleCarpet = new ItemInfo(171, 10, "Purple Carpet", "minecraft:carpet"); + public static ItemInfo BlueCarpet = new ItemInfo(171, 11, "Blue Carpet", "minecraft:carpet"); + public static ItemInfo BrownCarpet = new ItemInfo(171, 12, "Brown Carpet", "minecraft:carpet"); + public static ItemInfo GreenCarpet = new ItemInfo(171, 13, "Green Carpet", "minecraft:carpet"); + public static ItemInfo RedCarpet = new ItemInfo(171, 14, "Red Carpet", "minecraft:carpet"); + public static ItemInfo BlackCarpet = new ItemInfo(171, 15, "Black Carpet", "minecraft:carpet"); + public static ItemInfo HardenedClay = new ItemInfo(172, 0, "Hardened Clay", "minecraft:hardened_clay"); + public static ItemInfo BlockOfCoal = new ItemInfo(173, 0, "Block of Coal", "minecraft:coal_block"); + public static ItemInfo PackedIce = new ItemInfo(174, 0, "Packed Ice", "minecraft:packed_ice"); + public static ItemInfo Sunflower = new ItemInfo(175, 0, "Sunflower", "minecraft:double_plant"); + public static ItemInfo Lilac = new ItemInfo(175, 1, "Lilac", "minecraft:double_plant"); + public static ItemInfo DoubleTallgrass = new ItemInfo(175, 2, "Double Tallgrass", "minecraft:double_plant"); + public static ItemInfo LargeFern = new ItemInfo(175, 3, "Large Fern", "minecraft:double_plant"); + public static ItemInfo RoseBush = new ItemInfo(175, 4, "Rose Bush", "minecraft:double_plant"); + public static ItemInfo Peony = new ItemInfo(175, 5, "Peony", "minecraft:double_plant"); + public static ItemInfo FreeStandingBanner = new ItemInfo(176, 0, "Free-standing Banner", "minecraft:standing_banner"); + public static ItemInfo WallMountedBanner = new ItemInfo(177, 0, "Wall-mounted Banner", "minecraft:wall_banner"); + public static ItemInfo InvertedDaylightSensor = new ItemInfo(178, 0, "Inverted Daylight Sensor", "minecraft:daylight_detector_inverted"); + public static ItemInfo RedSandstone = new ItemInfo(179, 0, "Red Sandstone", "minecraft:red_sandstone"); + public static ItemInfo ChiseledRedSandstone = new ItemInfo(179, 1, "Chiseled Red Sandstone", "minecraft:red_sandstone"); + public static ItemInfo SmoothRedSandstone = new ItemInfo(179, 2, "Smooth Red Sandstone", "minecraft:red_sandstone"); + public static ItemInfo RedSandstoneStairs = new ItemInfo(180, 0, "Red Sandstone Stairs", "minecraft:red_sandstone_stairs"); + public static ItemInfo DoubleRedSandstoneSlab = new ItemInfo(181, 0, "Double Red Sandstone Slab", "minecraft:double_stone_slab2"); + public static ItemInfo RedSandstoneSlab = new ItemInfo(182, 0, "Red Sandstone Slab", "minecraft:stone_slab2"); + public static ItemInfo SpruceFenceGate = new ItemInfo(183, 0, "Spruce Fence Gate", "minecraft:spruce_fence_gate"); + public static ItemInfo BirchFenceGate = new ItemInfo(184, 0, "Birch Fence Gate", "minecraft:birch_fence_gate"); + public static ItemInfo JungleFenceGate = new ItemInfo(185, 0, "Jungle Fence Gate", "minecraft:jungle_fence_gate"); + public static ItemInfo DarkOakFenceGate = new ItemInfo(186, 0, "Dark Oak Fence Gate", "minecraft:dark_oak_fence_gate"); + public static ItemInfo AcaciaFenceGate = new ItemInfo(187, 0, "Acacia Fence Gate", "minecraft:acacia_fence_gate"); + public static ItemInfo SpruceFence = new ItemInfo(188, 0, "Spruce Fence", "minecraft:spruce_fence"); + public static ItemInfo BirchFence = new ItemInfo(189, 0, "Birch Fence", "minecraft:birch_fence"); + public static ItemInfo JungleFence = new ItemInfo(190, 0, "Jungle Fence", "minecraft:jungle_fence"); + public static ItemInfo DarkOakFence = new ItemInfo(191, 0, "Dark Oak Fence", "minecraft:dark_oak_fence"); + public static ItemInfo AcaciaFence = new ItemInfo(192, 0, "Acacia Fence", "minecraft:acacia_fence"); + public static ItemInfo SpruceDoorBlock = new ItemInfo(193, 0, "Spruce Door Block", "minecraft:spruce_door"); + public static ItemInfo BirchDoorBlock = new ItemInfo(194, 0, "Birch Door Block", "minecraft:birch_door"); + public static ItemInfo JungleDoorBlock = new ItemInfo(195, 0, "Jungle Door Block", "minecraft:jungle_door"); + public static ItemInfo AcaciaDoorBlock = new ItemInfo(196, 0, "Acacia Door Block", "minecraft:acacia_door"); + public static ItemInfo DarkOakDoorBlock = new ItemInfo(197, 0, "Dark Oak Door Block", "minecraft:dark_oak_door"); + public static ItemInfo EndRod = new ItemInfo(198, 0, "End Rod", "minecraft:end_rod"); + public static ItemInfo ChorusPlant = new ItemInfo(199, 0, "Chorus Plant", "minecraft:chorus_plant"); + public static ItemInfo ChorusFlower = new ItemInfo(200, 0, "Chorus Flower", "minecraft:chorus_flower"); + public static ItemInfo PurpurBlock = new ItemInfo(201, 0, "Purpur Block", "minecraft:purpur_block"); + public static ItemInfo PurpurPillar = new ItemInfo(202, 0, "Purpur Pillar", "minecraft:purpur_pillar"); + public static ItemInfo PurpurStairs = new ItemInfo(203, 0, "Purpur Stairs", "minecraft:purpur_stairs"); + public static ItemInfo PurpurDoubleSlab = new ItemInfo(204, 0, "Purpur Double Slab", "minecraft:purpur_double_slab"); + public static ItemInfo PurpurSlab = new ItemInfo(205, 0, "Purpur Slab", "minecraft:purpur_slab"); + public static ItemInfo EndStoneBricks = new ItemInfo(206, 0, "End Stone Bricks", "minecraft:end_bricks"); + public static ItemInfo BeetrootBlock = new ItemInfo(207, 0, "Beetroot Block", "minecraft:beetroots"); + public static ItemInfo GrassPath = new ItemInfo(208, 0, "Grass Path", "minecraft:grass_path"); + public static ItemInfo EndGateway = new ItemInfo(209, 0, "End Gateway", "minecraft:end_gateway"); + public static ItemInfo RepeatingCommandBlock = new ItemInfo(210, 0, "Repeating Command Block", "minecraft:repeating_command_block"); + public static ItemInfo ChainCommandBlock = new ItemInfo(211, 0, "Chain Command Block", "minecraft:chain_command_block"); + public static ItemInfo FrostedIce = new ItemInfo(212, 0, "Frosted Ice", "minecraft:frosted_ice"); + public static ItemInfo MagmaBlock = new ItemInfo(213, 0, "Magma Block", "minecraft:magma"); + public static ItemInfo NetherWartBlock = new ItemInfo(214, 0, "Nether Wart Block", "minecraft:nether_wart_block"); + public static ItemInfo RedNetherBrick = new ItemInfo(215, 0, "Red Nether Brick", "minecraft:red_nether_brick"); + public static ItemInfo BoneBlock = new ItemInfo(216, 0, "Bone Block", "minecraft:bone_block"); + public static ItemInfo StructureVoid = new ItemInfo(217, 0, "Structure Void", "minecraft:structure_void"); + public static ItemInfo Observer = new ItemInfo(218, 0, "Observer", "minecraft:observer"); + public static ItemInfo WhiteShulkerBox = new ItemInfo(219, 0, "White Shulker Box", "minecraft:white_shulker_box"); + public static ItemInfo OrangeShulkerBox = new ItemInfo(220, 0, "Orange Shulker Box", "minecraft:orange_shulker_box"); + public static ItemInfo MagentaShulkerBox = new ItemInfo(221, 0, "Magenta Shulker Box", "minecraft:magenta_shulker_box"); + public static ItemInfo LightBlueShulkerBox = new ItemInfo(222, 0, "Light Blue Shulker Box", "minecraft:light_blue_shulker_box"); + public static ItemInfo YellowShulkerBox = new ItemInfo(223, 0, "Yellow Shulker Box", "minecraft:yellow_shulker_box"); + public static ItemInfo LimeShulkerBox = new ItemInfo(224, 0, "Lime Shulker Box", "minecraft:lime_shulker_box"); + public static ItemInfo PinkShulkerBox = new ItemInfo(225, 0, "Pink Shulker Box", "minecraft:pink_shulker_box"); + public static ItemInfo GrayShulkerBox = new ItemInfo(226, 0, "Gray Shulker Box", "minecraft:gray_shulker_box"); + public static ItemInfo LightGrayShulkerBox = new ItemInfo(227, 0, "Light Gray Shulker Box", "minecraft:silver_shulker_box"); + public static ItemInfo CyanShulkerBox = new ItemInfo(228, 0, "Cyan Shulker Box", "minecraft:cyan_shulker_box"); + public static ItemInfo PurpleShulkerBox = new ItemInfo(229, 0, "Purple Shulker Box", "minecraft:purple_shulker_box"); + public static ItemInfo BlueShulkerBox = new ItemInfo(230, 0, "Blue Shulker Box", "minecraft:blue_shulker_box"); + public static ItemInfo BrownShulkerBox = new ItemInfo(231, 0, "Brown Shulker Box", "minecraft:brown_shulker_box"); + public static ItemInfo GreenShulkerBox = new ItemInfo(232, 0, "Green Shulker Box", "minecraft:green_shulker_box"); + public static ItemInfo RedShulkerBox = new ItemInfo(233, 0, "Red Shulker Box", "minecraft:red_shulker_box"); + public static ItemInfo BlackShulkerBox = new ItemInfo(234, 0, "Black Shulker Box", "minecraft:black_shulker_box"); + public static ItemInfo WhiteGlazedTerracotta = new ItemInfo(235, 0, "White Glazed Terracotta", "minecraft:white_glazed_terracotta"); + public static ItemInfo OrangeGlazedTerracotta = new ItemInfo(236, 0, "Orange Glazed Terracotta", "minecraft:orange_glazed_terracotta"); + public static ItemInfo MagentaGlazedTerracotta = new ItemInfo(237, 0, "Magenta Glazed Terracotta", "minecraft:magenta_glazed_terracotta"); + public static ItemInfo LightBlueGlazedTerracotta = new ItemInfo(238, 0, "Light Blue Glazed Terracotta", "minecraft:light_blue_glazed_terracotta"); + public static ItemInfo YellowGlazedTerracotta = new ItemInfo(239, 0, "Yellow Glazed Terracotta", "minecraft:yellow_glazed_terracotta"); + public static ItemInfo LimeGlazedTerracotta = new ItemInfo(240, 0, "Lime Glazed Terracotta", "minecraft:lime_glazed_terracotta"); + public static ItemInfo PinkGlazedTerracotta = new ItemInfo(241, 0, "Pink Glazed Terracotta", "minecraft:pink_glazed_terracotta"); + public static ItemInfo GrayGlazedTerracotta = new ItemInfo(242, 0, "Gray Glazed Terracotta", "minecraft:gray_glazed_terracotta"); + public static ItemInfo LightGrayGlazedTerracotta = new ItemInfo(243, 0, "Light Gray Glazed Terracotta", "minecraft:light_gray_glazed_terracotta"); + public static ItemInfo CyanGlazedTerracotta = new ItemInfo(244, 0, "Cyan Glazed Terracotta", "minecraft:cyan_glazed_terracotta"); + public static ItemInfo PurpleGlazedTerracotta = new ItemInfo(245, 0, "Purple Glazed Terracotta", "minecraft:purple_glazed_terracotta"); + public static ItemInfo BlueGlazedTerracotta = new ItemInfo(246, 0, "Blue Glazed Terracotta", "minecraft:blue_glazed_terracotta"); + public static ItemInfo BrownGlazedTerracotta = new ItemInfo(247, 0, "Brown Glazed Terracotta", "minecraft:brown_glazed_terracotta"); + public static ItemInfo GreenGlazedTerracotta = new ItemInfo(248, 0, "Green Glazed Terracotta", "minecraft:green_glazed_terracotta"); + public static ItemInfo RedGlazedTerracotta = new ItemInfo(249, 0, "Red Glazed Terracotta", "minecraft:red_glazed_terracotta"); + public static ItemInfo BlackGlazedTerracotta = new ItemInfo(250, 0, "Black Glazed Terracotta", "minecraft:black_glazed_terracotta"); + public static ItemInfo WhiteConcrete = new ItemInfo(251, 0, "White Concrete", "minecraft:concrete"); + public static ItemInfo OrangeConcrete = new ItemInfo(251, 1, "Orange Concrete", "minecraft:concrete"); + public static ItemInfo MagentaConcrete = new ItemInfo(251, 2, "Magenta Concrete", "minecraft:concrete"); + public static ItemInfo LightBlueConcrete = new ItemInfo(251, 3, "Light Blue Concrete", "minecraft:concrete"); + public static ItemInfo YellowConcrete = new ItemInfo(251, 4, "Yellow Concrete", "minecraft:concrete"); + public static ItemInfo LimeConcrete = new ItemInfo(251, 5, "Lime Concrete", "minecraft:concrete"); + public static ItemInfo PinkConcrete = new ItemInfo(251, 6, "Pink Concrete", "minecraft:concrete"); + public static ItemInfo GrayConcrete = new ItemInfo(251, 7, "Gray Concrete", "minecraft:concrete"); + public static ItemInfo LightGrayConcrete = new ItemInfo(251, 8, "Light Gray Concrete", "minecraft:concrete"); + public static ItemInfo CyanConcrete = new ItemInfo(251, 9, "Cyan Concrete", "minecraft:concrete"); + public static ItemInfo PurpleConcrete = new ItemInfo(251, 10, "Purple Concrete", "minecraft:concrete"); + public static ItemInfo BlueConcrete = new ItemInfo(251, 11, "Blue Concrete", "minecraft:concrete"); + public static ItemInfo BrownConcrete = new ItemInfo(251, 12, "Brown Concrete", "minecraft:concrete"); + public static ItemInfo GreenConcrete = new ItemInfo(251, 13, "Green Concrete", "minecraft:concrete"); + public static ItemInfo RedConcrete = new ItemInfo(251, 14, "Red Concrete", "minecraft:concrete"); + public static ItemInfo BlackConcrete = new ItemInfo(251, 15, "Black Concrete", "minecraft:concrete"); + public static ItemInfo WhiteConcretePowder = new ItemInfo(252, 0, "White Concrete Powder", "minecraft:concrete_powder"); + public static ItemInfo OrangeConcretePowder = new ItemInfo(252, 1, "Orange Concrete Powder", "minecraft:concrete_powder"); + public static ItemInfo MagentaConcretePowder = new ItemInfo(252, 2, "Magenta Concrete Powder", "minecraft:concrete_powder"); + public static ItemInfo LightBlueConcretePowder = new ItemInfo(252, 3, "Light Blue Concrete Powder", "minecraft:concrete_powder"); + public static ItemInfo YellowConcretePowder = new ItemInfo(252, 4, "Yellow Concrete Powder", "minecraft:concrete_powder"); + public static ItemInfo LimeConcretePowder = new ItemInfo(252, 5, "Lime Concrete Powder", "minecraft:concrete_powder"); + public static ItemInfo PinkConcretePowder = new ItemInfo(252, 6, "Pink Concrete Powder", "minecraft:concrete_powder"); + public static ItemInfo GrayConcretePowder = new ItemInfo(252, 7, "Gray Concrete Powder", "minecraft:concrete_powder"); + public static ItemInfo LightGrayConcretePowder = new ItemInfo(252, 8, "Light Gray Concrete Powder", "minecraft:concrete_powder"); + public static ItemInfo CyanConcretePowder = new ItemInfo(252, 9, "Cyan Concrete Powder", "minecraft:concrete_powder"); + public static ItemInfo PurpleConcretePowder = new ItemInfo(252, 10, "Purple Concrete Powder", "minecraft:concrete_powder"); + public static ItemInfo BlueConcretePowder = new ItemInfo(252, 11, "Blue Concrete Powder", "minecraft:concrete_powder"); + public static ItemInfo BrownConcretePowder = new ItemInfo(252, 12, "Brown Concrete Powder", "minecraft:concrete_powder"); + public static ItemInfo GreenConcretePowder = new ItemInfo(252, 13, "Green Concrete Powder", "minecraft:concrete_powder"); + public static ItemInfo RedConcretePowder = new ItemInfo(252, 14, "Red Concrete Powder", "minecraft:concrete_powder"); + public static ItemInfo BlackConcretePowder = new ItemInfo(252, 15, "Black Concrete Powder", "minecraft:concrete_powder"); + public static ItemInfo StructureBlock = new ItemInfo(255, 0, "Structure Block", "minecraft:structure_block"); + public static ItemInfo IronShovel = new ItemInfo(256, 0, "Iron Shovel", "minecraft:iron_shovel"); + public static ItemInfo IronPickaxe = new ItemInfo(257, 0, "Iron Pickaxe", "minecraft:iron_pickaxe"); + public static ItemInfo IronAxe = new ItemInfo(258, 0, "Iron Axe", "minecraft:iron_axe"); + public static ItemInfo FlintAndSteel = new ItemInfo(259, 0, "Flint and Steel", "minecraft:flint_and_steel"); + public static ItemInfo Apple = new ItemInfo(260, 0, "Apple", "minecraft:apple").SetStackSize(64); + public static ItemInfo Bow = new ItemInfo(261, 0, "Bow", "minecraft:bow"); + public static ItemInfo Arrow = new ItemInfo(262, 0, "Arrow", "minecraft:arrow").SetStackSize(64); + public static ItemInfo Coal = new ItemInfo(263, 0, "Coal", "minecraft:coal").SetStackSize(64); + public static ItemInfo Charcoal = new ItemInfo(263, 1, "Charcoal", "minecraft:coal"); + public static ItemInfo Diamond = new ItemInfo(264, 0, "Diamond", "minecraft:diamond").SetStackSize(64); + public static ItemInfo IronIngot = new ItemInfo(265, 0, "Iron Ingot", "minecraft:iron_ingot").SetStackSize(64); + public static ItemInfo GoldIngot = new ItemInfo(266, 0, "Gold Ingot", "minecraft:gold_ingot").SetStackSize(64); + public static ItemInfo IronSword = new ItemInfo(267, 0, "Iron Sword", "minecraft:iron_sword"); + public static ItemInfo WoodenSword = new ItemInfo(268, 0, "Wooden Sword", "minecraft:wooden_sword"); + public static ItemInfo WoodenShovel = new ItemInfo(269, 0, "Wooden Shovel", "minecraft:wooden_shovel"); + public static ItemInfo WoodenPickaxe = new ItemInfo(270, 0, "Wooden Pickaxe", "minecraft:wooden_pickaxe"); + public static ItemInfo WoodenAxe = new ItemInfo(271, 0, "Wooden Axe", "minecraft:wooden_axe"); + public static ItemInfo StoneSword = new ItemInfo(272, 0, "Stone Sword", "minecraft:stone_sword"); + public static ItemInfo StoneShovel = new ItemInfo(273, 0, "Stone Shovel", "minecraft:stone_shovel"); + public static ItemInfo StonePickaxe = new ItemInfo(274, 0, "Stone Pickaxe", "minecraft:stone_pickaxe"); + public static ItemInfo StoneAxe = new ItemInfo(275, 0, "Stone Axe", "minecraft:stone_axe"); + public static ItemInfo DiamondSword = new ItemInfo(276, 0, "Diamond Sword", "minecraft:diamond_sword"); + public static ItemInfo DiamondShovel = new ItemInfo(277, 0, "Diamond Shovel", "minecraft:diamond_shovel"); + public static ItemInfo DiamondPickaxe = new ItemInfo(278, 0, "Diamond Pickaxe", "minecraft:diamond_pickaxe"); + public static ItemInfo DiamondAxe = new ItemInfo(279, 0, "Diamond Axe", "minecraft:diamond_axe"); + public static ItemInfo Stick = new ItemInfo(280, 0, "Stick", "minecraft:stick").SetStackSize(64); + public static ItemInfo Bowl = new ItemInfo(281, 0, "Bowl", "minecraft:bowl").SetStackSize(64); + public static ItemInfo MushroomStew = new ItemInfo(282, 0, "Mushroom Stew", "minecraft:mushroom_stew"); + public static ItemInfo GoldenSword = new ItemInfo(283, 0, "Golden Sword", "minecraft:golden_sword"); + public static ItemInfo GoldenShovel = new ItemInfo(284, 0, "Golden Shovel", "minecraft:golden_shovel"); + public static ItemInfo GoldenPickaxe = new ItemInfo(285, 0, "Golden Pickaxe", "minecraft:golden_pickaxe"); + public static ItemInfo GoldenAxe = new ItemInfo(286, 0, "Golden Axe", "minecraft:golden_axe"); + public static ItemInfo String = new ItemInfo(287, 0, "String", "minecraft:string").SetStackSize(64); + public static ItemInfo Feather = new ItemInfo(288, 0, "Feather", "minecraft:feather").SetStackSize(64); + public static ItemInfo Gunpowder = new ItemInfo(289, 0, "Gunpowder", "minecraft:gunpowder").SetStackSize(64); + public static ItemInfo WoodenHoe = new ItemInfo(290, 0, "Wooden Hoe", "minecraft:wooden_hoe"); + public static ItemInfo StoneHoe = new ItemInfo(291, 0, "Stone Hoe", "minecraft:stone_hoe"); + public static ItemInfo IronHoe = new ItemInfo(292, 0, "Iron Hoe", "minecraft:iron_hoe"); + public static ItemInfo DiamondHoe = new ItemInfo(293, 0, "Diamond Hoe", "minecraft:diamond_hoe"); + public static ItemInfo GoldenHoe = new ItemInfo(294, 0, "Golden Hoe", "minecraft:golden_hoe"); + public static ItemInfo WheatSeeds = new ItemInfo(295, 0, "Wheat Seeds", "minecraft:wheat_seeds").SetStackSize(64); + public static ItemInfo Wheat = new ItemInfo(296, 0, "Wheat", "minecraft:wheat").SetStackSize(64); + public static ItemInfo Bread = new ItemInfo(297, 0, "Bread", "minecraft:bread").SetStackSize(64); + public static ItemInfo LeatherHelmet = new ItemInfo(298, 0, "Leather Helmet", "minecraft:leather_helmet"); + public static ItemInfo LeatherTunic = new ItemInfo(299, 0, "Leather Tunic", "minecraft:leather_chestplate"); + public static ItemInfo LeatherPants = new ItemInfo(300, 0, "Leather Pants", "minecraft:leather_leggings"); + public static ItemInfo LeatherBoots = new ItemInfo(301, 0, "Leather Boots", "minecraft:leather_boots"); + public static ItemInfo ChainmailHelmet = new ItemInfo(302, 0, "Chainmail Helmet", "minecraft:chainmail_helmet"); + public static ItemInfo ChainmailChestplate = new ItemInfo(303, 0, "Chainmail Chestplate", "minecraft:chainmail_chestplate"); + public static ItemInfo ChainmailLeggings = new ItemInfo(304, 0, "Chainmail Leggings", "minecraft:chainmail_leggings"); + public static ItemInfo ChainmailBoots = new ItemInfo(305, 0, "Chainmail Boots", "minecraft:chainmail_boots"); + public static ItemInfo IronHelmet = new ItemInfo(306, 0, "Iron Helmet", "minecraft:iron_helmet"); + public static ItemInfo IronChestplate = new ItemInfo(307, 0, "Iron Chestplate", "minecraft:iron_chestplate"); + public static ItemInfo IronLeggings = new ItemInfo(308, 0, "Iron Leggings", "minecraft:iron_leggings"); + public static ItemInfo IronBoots = new ItemInfo(309, 0, "Iron Boots", "minecraft:iron_boots"); + public static ItemInfo DiamondHelmet = new ItemInfo(310, 0, "Diamond Helmet", "minecraft:diamond_helmet"); + public static ItemInfo DiamondChestplate = new ItemInfo(311, 0, "Diamond Chestplate", "minecraft:diamond_chestplate"); + public static ItemInfo DiamondLeggings = new ItemInfo(312, 0, "Diamond Leggings", "minecraft:diamond_leggings"); + public static ItemInfo DiamondBoots = new ItemInfo(313, 0, "Diamond Boots", "minecraft:diamond_boots"); + public static ItemInfo GoldenHelmet = new ItemInfo(314, 0, "Golden Helmet", "minecraft:golden_helmet"); + public static ItemInfo GoldenChestplate = new ItemInfo(315, 0, "Golden Chestplate", "minecraft:golden_chestplate"); + public static ItemInfo GoldenLeggings = new ItemInfo(316, 0, "Golden Leggings", "minecraft:golden_leggings"); + public static ItemInfo GoldenBoots = new ItemInfo(317, 0, "Golden Boots", "minecraft:golden_boots"); + public static ItemInfo Flint = new ItemInfo(318, 0, "Flint", "minecraft:flint").SetStackSize(64); + public static ItemInfo RawPorkchop = new ItemInfo(319, 0, "Raw Porkchop", "minecraft:porkchop").SetStackSize(64); + public static ItemInfo CookedPorkchop = new ItemInfo(320, 0, "Cooked Porkchop", "minecraft:cooked_porkchop").SetStackSize(64); + public static ItemInfo Painting = new ItemInfo(321, 0, "Painting", "minecraft:painting").SetStackSize(64); + public static ItemInfo GoldenApple = new ItemInfo(322, 0, "Golden Apple", "minecraft:golden_apple").SetStackSize(64); + public static ItemInfo EnchantedGoldenApple = new ItemInfo(322, 1, "Enchanted Golden Apple", "minecraft:golden_apple"); + public static ItemInfo Sign = new ItemInfo(323, 0, "Sign", "minecraft:sign"); + public static ItemInfo OakDoor = new ItemInfo(324, 0, "Oak Door", "minecraft:wooden_door"); + public static ItemInfo Bucket = new ItemInfo(325, 0, "Bucket", "minecraft:bucket"); + public static ItemInfo WaterBucket = new ItemInfo(326, 0, "Water Bucket", "minecraft:water_bucket"); + public static ItemInfo LavaBucket = new ItemInfo(327, 0, "Lava Bucket", "minecraft:lava_bucket"); + public static ItemInfo Minecart = new ItemInfo(328, 0, "Minecart", "minecraft:minecart"); + public static ItemInfo Saddle = new ItemInfo(329, 0, "Saddle", "minecraft:saddle"); + public static ItemInfo IronDoor = new ItemInfo(330, 0, "Iron Door", "minecraft:iron_door"); + public static ItemInfo Redstone = new ItemInfo(331, 0, "Redstone", "minecraft:redstone"); + public static ItemInfo Snowball = new ItemInfo(332, 0, "Snowball", "minecraft:snowball"); + public static ItemInfo OakBoat = new ItemInfo(333, 0, "Oak Boat", "minecraft:boat"); + public static ItemInfo Leather = new ItemInfo(334, 0, "Leather", "minecraft:leather").SetStackSize(64); + public static ItemInfo MilkBucket = new ItemInfo(335, 0, "Milk Bucket", "minecraft:milk_bucket"); + public static ItemInfo ClayBrick = new ItemInfo(336, 0, "Brick", "minecraft:brick").SetStackSize(64); + public static ItemInfo ClayBall = new ItemInfo(337, 0, "Clay", "minecraft:clay_ball").SetStackSize(64); + public static ItemInfo Paper = new ItemInfo(339, 0, "Paper", "minecraft:paper"); + public static ItemInfo Book = new ItemInfo(340, 0, "Book", "minecraft:book").SetStackSize(64); + public static ItemInfo Slimeball = new ItemInfo(341, 0, "Slimeball", "minecraft:slime_ball").SetStackSize(64); + public static ItemInfo MinecartWithChest = new ItemInfo(342, 0, "Minecart with Chest", "minecraft:chest_minecart"); + public static ItemInfo MinecartWithFurnace = new ItemInfo(343, 0, "Minecart with Furnace", "minecraft:furnace_minecart"); + public static ItemInfo Egg = new ItemInfo(344, 0, "Egg", "minecraft:egg").SetStackSize(16); + public static ItemInfo Compass = new ItemInfo(345, 0, "Compass", "minecraft:compass"); + public static ItemInfo FishingRod = new ItemInfo(346, 0, "Fishing Rod", "minecraft:fishing_rod"); + public static ItemInfo Clock = new ItemInfo(347, 0, "Clock", "minecraft:clock"); + public static ItemInfo GlowstoneDust = new ItemInfo(348, 0, "Glowstone Dust", "minecraft:glowstone_dust").SetStackSize(64); + public static ItemInfo RawFish = new ItemInfo(349, 0, "Raw Fish", "minecraft:fish").SetStackSize(64); + public static ItemInfo RawSalmon = new ItemInfo(349, 1, "Raw Salmon", "minecraft:fish").SetStackSize(64); + public static ItemInfo Clownfish = new ItemInfo(349, 2, "Clownfish", "minecraft:fish").SetStackSize(64); + public static ItemInfo Pufferfish = new ItemInfo(349, 3, "Pufferfish", "minecraft:fish").SetStackSize(64); + public static ItemInfo CookedFish = new ItemInfo(350, 0, "Cooked Fish", "minecraft:cooked_fish").SetStackSize(64); + public static ItemInfo CookedSalmon = new ItemInfo(350, 1, "Cooked Salmon", "minecraft:cooked_fish").SetStackSize(64); + public static ItemInfo InkSack = new ItemInfo(351, 0, "Ink Sack", "minecraft:dye").SetStackSize(64); + public static ItemInfo RoseRed = new ItemInfo(351, 1, "Rose Red", "minecraft:dye").SetStackSize(64); + public static ItemInfo CactusGreen = new ItemInfo(351, 2, "Cactus Green", "minecraft:dye").SetStackSize(64); + public static ItemInfo CocoBeans = new ItemInfo(351, 3, "Coco Beans", "minecraft:dye").SetStackSize(64); + public static ItemInfo LapisLazuli = new ItemInfo(351, 4, "Lapis Lazuli", "minecraft:dye").SetStackSize(64); + public static ItemInfo PurpleDye = new ItemInfo(351, 5, "Purple Dye", "minecraft:dye").SetStackSize(64); + public static ItemInfo CyanDye = new ItemInfo(351, 6, "Cyan Dye", "minecraft:dye").SetStackSize(64); + public static ItemInfo LightGrayDye = new ItemInfo(351, 7, "Light Gray Dye", "minecraft:dye").SetStackSize(64); + public static ItemInfo GrayDye = new ItemInfo(351, 8, "Gray Dye", "minecraft:dye").SetStackSize(64); + public static ItemInfo PinkDye = new ItemInfo(351, 9, "Pink Dye", "minecraft:dye").SetStackSize(64); + public static ItemInfo LimeDye = new ItemInfo(351, 10, "Lime Dye", "minecraft:dye").SetStackSize(64); + public static ItemInfo DandelionYellow = new ItemInfo(351, 11, "Dandelion Yellow", "minecraft:dye").SetStackSize(64); + public static ItemInfo LightBlueDye = new ItemInfo(351, 12, "Light Blue Dye", "minecraft:dye").SetStackSize(64); + public static ItemInfo MagentaDye = new ItemInfo(351, 13, "Magenta Dye", "minecraft:dye").SetStackSize(64); + public static ItemInfo OrangeDye = new ItemInfo(351, 14, "Orange Dye", "minecraft:dye").SetStackSize(64); + public static ItemInfo BoneMeal = new ItemInfo(351, 15, "Bone Meal", "minecraft:dye").SetStackSize(64); + public static ItemInfo Bone = new ItemInfo(352, 0, "Bone", "minecraft:bone"); + public static ItemInfo Sugar = new ItemInfo(353, 0, "Sugar", "minecraft:sugar").SetStackSize(64); + public static ItemInfo Cake = new ItemInfo(354, 0, "Cake", "minecraft:cake"); + public static ItemInfo RedstoneRepeater = new ItemInfo(356, 0, "Redstone Repeater", "minecraft:repeater").SetStackSize(64); + public static ItemInfo Cookie = new ItemInfo(357, 0, "Cookie", "minecraft:cookie").SetStackSize(64); + public static ItemInfo Map = new ItemInfo(358, 0, "Map", "minecraft:filled_map"); + public static ItemInfo Shears = new ItemInfo(359, 0, "Shears", "minecraft:shears"); + public static ItemInfo Melon = new ItemInfo(360, 0, "Melon", "minecraft:melon"); + public static ItemInfo PumpkinSeeds = new ItemInfo(361, 0, "Pumpkin Seeds", "minecraft:pumpkin_seeds").SetStackSize(64); + public static ItemInfo MelonSeeds = new ItemInfo(362, 0, "Melon Seeds", "minecraft:melon_seeds").SetStackSize(64); + public static ItemInfo RawBeef = new ItemInfo(363, 0, "Raw Beef", "minecraft:beef").SetStackSize(64); + public static ItemInfo Steak = new ItemInfo(364, 0, "Steak", "minecraft:cooked_beef").SetStackSize(64); + public static ItemInfo RawChicken = new ItemInfo(365, 0, "Raw Chicken", "minecraft:chicken").SetStackSize(64); + public static ItemInfo CookedChicken = new ItemInfo(366, 0, "Cooked Chicken", "minecraft:cooked_chicken").SetStackSize(64); + public static ItemInfo RottenFlesh = new ItemInfo(367, 0, "Rotten Flesh", "minecraft:rotten_flesh").SetStackSize(64); + public static ItemInfo EnderPearl = new ItemInfo(368, 0, "Ender Pearl", "minecraft:ender_pearl").SetStackSize(64); + public static ItemInfo BlazeRod = new ItemInfo(369, 0, "Blaze Rod", "minecraft:blaze_rod").SetStackSize(64); + public static ItemInfo GhastTear = new ItemInfo(370, 0, "Ghast Tear", "minecraft:ghast_tear").SetStackSize(64); + public static ItemInfo GoldNugget = new ItemInfo(371, 0, "Gold Nugget", "minecraft:gold_nugget").SetStackSize(64); + public static ItemInfo Potion = new ItemInfo(373, 0, "Potion", "minecraft:potion"); + public static ItemInfo GlassBottle = new ItemInfo(374, 0, "Glass Bottle", "minecraft:glass_bottle"); + public static ItemInfo SpiderEye = new ItemInfo(375, 0, "Spider Eye", "minecraft:spider_eye").SetStackSize(64); + public static ItemInfo FermentedSpiderEye = new ItemInfo(376, 0, "Fermented Spider Eye", "minecraft:fermented_spider_eye").SetStackSize(64); + public static ItemInfo BlazePowder = new ItemInfo(377, 0, "Blaze Powder", "minecraft:blaze_powder").SetStackSize(64); + public static ItemInfo MagmaCream = new ItemInfo(378, 0, "Magma Cream", "minecraft:magma_cream").SetStackSize(64); + public static ItemInfo EyeOfEnder = new ItemInfo(381, 0, "Eye of Ender", "minecraft:ender_eye").SetStackSize(64); + public static ItemInfo GlisteringMelon = new ItemInfo(382, 0, "Glistering Melon", "minecraft:speckled_melon"); + public static ItemInfo SpawnElderGuardian = new ItemInfo(383, 4, "Spawn Elder Guardian", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnWitherSkeleton = new ItemInfo(383, 5, "Spawn Wither Skeleton", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnStray = new ItemInfo(383, 6, "Spawn Stray", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnHusk = new ItemInfo(383, 23, "Spawn Husk", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnZombieVillager = new ItemInfo(383, 27, "Spawn Zombie Villager", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnSkeletonHorse = new ItemInfo(383, 28, "Spawn Skeleton Horse", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnZombieHorse = new ItemInfo(383, 29, "Spawn Zombie Horse", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnDonkey = new ItemInfo(383, 31, "Spawn Donkey", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnMule = new ItemInfo(383, 32, "Spawn Mule", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnEvoker = new ItemInfo(383, 34, "Spawn Evoker", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnVex = new ItemInfo(383, 35, "Spawn Vex", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnVindicator = new ItemInfo(383, 36, "Spawn Vindicator", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnCreeper = new ItemInfo(383, 50, "Spawn Creeper", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnSkeleton = new ItemInfo(383, 51, "Spawn Skeleton", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnSpider = new ItemInfo(383, 52, "Spawn Spider", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnZombie = new ItemInfo(383, 54, "Spawn Zombie", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnSlime = new ItemInfo(383, 55, "Spawn Slime", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnGhast = new ItemInfo(383, 56, "Spawn Ghast", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnZombiePigman = new ItemInfo(383, 57, "Spawn Zombie Pigman", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnEnderman = new ItemInfo(383, 58, "Spawn Enderman", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnCaveSpider = new ItemInfo(383, 59, "Spawn Cave Spider", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnSilverfish = new ItemInfo(383, 60, "Spawn Silverfish", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnBlaze = new ItemInfo(383, 61, "Spawn Blaze", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnMagmaCube = new ItemInfo(383, 62, "Spawn Magma Cube", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnBat = new ItemInfo(383, 65, "Spawn Bat", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnWitch = new ItemInfo(383, 66, "Spawn Witch", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnEndermite = new ItemInfo(383, 67, "Spawn Endermite", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnGuardian = new ItemInfo(383, 68, "Spawn Guardian", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnShulker = new ItemInfo(383, 69, "Spawn Shulker", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnPig = new ItemInfo(383, 90, "Spawn Pig", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnSheep = new ItemInfo(383, 91, "Spawn Sheep", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnCow = new ItemInfo(383, 92, "Spawn Cow", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnChicken = new ItemInfo(383, 93, "Spawn Chicken", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnSquid = new ItemInfo(383, 94, "Spawn Squid", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnWolf = new ItemInfo(383, 95, "Spawn Wolf", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnMooshroom = new ItemInfo(383, 96, "Spawn Mooshroom", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnOcelot = new ItemInfo(383, 98, "Spawn Ocelot", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnHorse = new ItemInfo(383, 100, "Spawn Horse", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnRabbit = new ItemInfo(383, 101, "Spawn Rabbit", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnPolarBear = new ItemInfo(383, 102, "Spawn Polar Bear", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnLlama = new ItemInfo(383, 103, "Spawn Llama", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnParrot = new ItemInfo(383, 105, "Spawn Parrot", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo SpawnVillager = new ItemInfo(383, 120, "Spawn Villager", "minecraft:spawn_egg").SetStackSize(64); + public static ItemInfo BottleOEnchanting = new ItemInfo(384, 0, "Bottle o' Enchanting", "minecraft:experience_bottle").SetStackSize(64); + public static ItemInfo FireCharge = new ItemInfo(385, 0, "Fire Charge", "minecraft:fire_charge").SetStackSize(64); + public static ItemInfo BookAndQuill = new ItemInfo(386, 0, "Book and Quill", "minecraft:writable_book"); + public static ItemInfo WrittenBook = new ItemInfo(387, 0, "Written Book", "minecraft:written_book"); + public static ItemInfo Emerald = new ItemInfo(388, 0, "Emerald", "minecraft:emerald").SetStackSize(64); + public static ItemInfo ItemFrame = new ItemInfo(389, 0, "Item Frame", "minecraft:item_frame").SetStackSize(64); + public static ItemInfo Carrot = new ItemInfo(391, 0, "Carrot", "minecraft:carrot").SetStackSize(64); + public static ItemInfo Potato = new ItemInfo(392, 0, "Potato", "minecraft:potato").SetStackSize(64); + public static ItemInfo BakedPotato = new ItemInfo(393, 0, "Baked Potato", "minecraft:baked_potato").SetStackSize(64); + public static ItemInfo PoisonousPotato = new ItemInfo(394, 0, "Poisonous Potato", "minecraft:poisonous_potato").SetStackSize(64); + public static ItemInfo EmptyMap = new ItemInfo(395, 0, "Empty Map", "minecraft:map").SetStackSize(64); + public static ItemInfo GoldenCarrot = new ItemInfo(396, 0, "Golden Carrot", "minecraft:golden_carrot").SetStackSize(64); + public static ItemInfo MobHeadSkeleton = new ItemInfo(397, 0, "Mob Head (Skeleton)", "minecraft:skull").SetStackSize(64); + public static ItemInfo MobHeadWitherSkeleton = new ItemInfo(397, 1, "Mob Head (Wither Skeleton)", "minecraft:skull").SetStackSize(64); + public static ItemInfo MobHeadZombie = new ItemInfo(397, 2, "Mob Head (Zombie)", "minecraft:skull").SetStackSize(64); + public static ItemInfo MobHeadHuman = new ItemInfo(397, 3, "Mob Head (Human)", "minecraft:skull").SetStackSize(64); + public static ItemInfo MobHeadCreeper = new ItemInfo(397, 4, "Mob Head (Creeper)", "minecraft:skull").SetStackSize(64); + public static ItemInfo MobHeadDragon = new ItemInfo(397, 5, "Mob Head (Dragon)", "minecraft:skull").SetStackSize(64); + public static ItemInfo CarrotOnAStick = new ItemInfo(398, 0, "Carrot on a Stick", "minecraft:carrot_on_a_stick"); + public static ItemInfo NetherStar = new ItemInfo(399, 0, "Nether Star", "minecraft:nether_star").SetStackSize(64); + public static ItemInfo PumpkinPie = new ItemInfo(400, 0, "Pumpkin Pie", "minecraft:pumpkin_pie").SetStackSize(64); + public static ItemInfo FireworkRocket = new ItemInfo(401, 0, "Firework Rocket", "minecraft:fireworks"); + public static ItemInfo FireworkStar = new ItemInfo(402, 0, "Firework Star", "minecraft:firework_charge").SetStackSize(64); + public static ItemInfo EnchantedBook = new ItemInfo(403, 0, "Enchanted Book", "minecraft:enchanted_book"); + public static ItemInfo RedstoneComparator = new ItemInfo(404, 0, "Redstone Comparator", "minecraft:comparator").SetStackSize(64); + public static ItemInfo NetherQuartz = new ItemInfo(406, 0, "Nether Quartz", "minecraft:quartz").SetStackSize(64); + public static ItemInfo MinecartWithTnt = new ItemInfo(407, 0, "Minecart with TNT", "minecraft:tnt_minecart"); + public static ItemInfo MinecartWithHopper = new ItemInfo(408, 0, "Minecart with Hopper", "minecraft:hopper_minecart"); + public static ItemInfo PrismarineShard = new ItemInfo(409, 0, "Prismarine Shard", "minecraft:prismarine_shard"); + public static ItemInfo PrismarineCrystals = new ItemInfo(410, 0, "Prismarine Crystals", "minecraft:prismarine_crystals"); + public static ItemInfo RawRabbit = new ItemInfo(411, 0, "Raw Rabbit", "minecraft:rabbit"); + public static ItemInfo CookedRabbit = new ItemInfo(412, 0, "Cooked Rabbit", "minecraft:cooked_rabbit"); + public static ItemInfo RabbitStew = new ItemInfo(413, 0, "Rabbit Stew", "minecraft:rabbit_stew"); + public static ItemInfo RabbitSFoot = new ItemInfo(414, 0, "Rabbit's Foot", "minecraft:rabbit_foot"); + public static ItemInfo RabbitHide = new ItemInfo(415, 0, "Rabbit Hide", "minecraft:rabbit_hide"); + public static ItemInfo ArmorStand = new ItemInfo(416, 0, "Armor Stand", "minecraft:armor_stand"); + public static ItemInfo IronHorseArmor = new ItemInfo(417, 0, "Iron Horse Armor", "minecraft:iron_horse_armor"); + public static ItemInfo GoldenHorseArmor = new ItemInfo(418, 0, "Golden Horse Armor", "minecraft:golden_horse_armor"); + public static ItemInfo DiamondHorseArmor = new ItemInfo(419, 0, "Diamond Horse Armor", "minecraft:diamond_horse_armor"); + public static ItemInfo Lead = new ItemInfo(420, 0, "Lead", "minecraft:lead").SetStackSize(64); + public static ItemInfo NameTag = new ItemInfo(421, 0, "Name Tag", "minecraft:name_tag").SetStackSize(64); + public static ItemInfo MinecartWithCommandBlock = new ItemInfo(422, 0, "Minecart with Command Block", "minecraft:command_block_minecart"); + public static ItemInfo RawMutton = new ItemInfo(423, 0, "Raw Mutton", "minecraft:mutton"); + public static ItemInfo CookedMutton = new ItemInfo(424, 0, "Cooked Mutton", "minecraft:cooked_mutton"); + public static ItemInfo Banner = new ItemInfo(425, 0, "Banner", "minecraft:banner"); + public static ItemInfo EndCrystal = new ItemInfo(426, 0, "End Crystal", "minecraft:end_crystal"); + public static ItemInfo SpruceDoor = new ItemInfo(427, 0, "Spruce Door", "minecraft:spruce_door"); + public static ItemInfo BirchDoor = new ItemInfo(428, 0, "Birch Door", "minecraft:birch_door"); + public static ItemInfo JungleDoor = new ItemInfo(429, 0, "Jungle Door", "minecraft:jungle_door"); + public static ItemInfo AcaciaDoor = new ItemInfo(430, 0, "Acacia Door", "minecraft:acacia_door"); + public static ItemInfo DarkOakDoor = new ItemInfo(431, 0, "Dark Oak Door", "minecraft:dark_oak_door"); + public static ItemInfo ChorusFruit = new ItemInfo(432, 0, "Chorus Fruit", "minecraft:chorus_fruit"); + public static ItemInfo PoppedChorusFruit = new ItemInfo(433, 0, "Popped Chorus Fruit", "minecraft:popped_chorus_fruit"); + public static ItemInfo Beetroot = new ItemInfo(434, 0, "Beetroot", "minecraft:beetroot"); + public static ItemInfo BeetrootSeeds = new ItemInfo(435, 0, "Beetroot Seeds", "minecraft:beetroot_seeds").SetStackSize(64); + public static ItemInfo BeetrootSoup = new ItemInfo(436, 0, "Beetroot Soup", "minecraft:beetroot_soup"); + public static ItemInfo DragonSBreath = new ItemInfo(437, 0, "Dragon's Breath", "minecraft:dragon_breath"); + public static ItemInfo SplashPotion = new ItemInfo(438, 0, "Splash Potion", "minecraft:splash_potion"); + public static ItemInfo SpectralArrow = new ItemInfo(439, 0, "Spectral Arrow", "minecraft:spectral_arrow"); + public static ItemInfo TippedArrow = new ItemInfo(440, 0, "Tipped Arrow", "minecraft:tipped_arrow"); + public static ItemInfo LingeringPotion = new ItemInfo(441, 0, "Lingering Potion", "minecraft:lingering_potion"); + public static ItemInfo Shield = new ItemInfo(442, 0, "Shield", "minecraft:shield"); + public static ItemInfo Elytra = new ItemInfo(443, 0, "Elytra", "minecraft:elytra"); + public static ItemInfo SpruceBoat = new ItemInfo(444, 0, "Spruce Boat", "minecraft:spruce_boat"); + public static ItemInfo BirchBoat = new ItemInfo(445, 0, "Birch Boat", "minecraft:birch_boat"); + public static ItemInfo JungleBoat = new ItemInfo(446, 0, "Jungle Boat", "minecraft:jungle_boat"); + public static ItemInfo AcaciaBoat = new ItemInfo(447, 0, "Acacia Boat", "minecraft:acacia_boat"); + public static ItemInfo DarkOakBoat = new ItemInfo(448, 0, "Dark Oak Boat", "minecraft:dark_oak_boat"); + public static ItemInfo TotemOfUndying = new ItemInfo(449, 0, "Totem of Undying", "minecraft:totem_of_undying"); + public static ItemInfo ShulkerShell = new ItemInfo(450, 0, "Shulker Shell", "minecraft:shulker_shell"); + public static ItemInfo IronNugget = new ItemInfo(452, 0, "Iron Nugget", "minecraft:iron_nugget"); + public static ItemInfo KnowledgeBook = new ItemInfo(453, 0, "Knowledge Book", "minecraft:knowledge_book"); + public static ItemInfo Music13Disc = new ItemInfo(2256, 0, "13 Disc", "minecraft:record_13"); + public static ItemInfo MusicCatDisc = new ItemInfo(2257, 0, "Cat Disc", "minecraft:record_cat"); + public static ItemInfo MusicBlocksDisc = new ItemInfo(2258, 0, "Blocks Disc", "minecraft:record_blocks"); + public static ItemInfo MusicChirpDisc = new ItemInfo(2259, 0, "Chirp Disc", "minecraft:record_chirp"); + public static ItemInfo MusicFarDisc = new ItemInfo(2260, 0, "Far Disc", "minecraft:record_far"); + public static ItemInfo MusicMallDisc = new ItemInfo(2261, 0, "Mall Disc", "minecraft:record_mall"); + public static ItemInfo MusicMellohiDisc = new ItemInfo(2262, 0, "Mellohi Disc", "minecraft:record_mellohi"); + public static ItemInfo MusicStalDisc = new ItemInfo(2263, 0, "Stal Disc", "minecraft:record_stal"); + public static ItemInfo MusicStradDisc = new ItemInfo(2264, 0, "Strad Disc", "minecraft:record_strad"); + public static ItemInfo MusicWardDisc = new ItemInfo(2265, 0, "Ward Disc", "minecraft:record_ward"); + public static ItemInfo Music11Disc = new ItemInfo(2266, 0, "11 Disc", "minecraft:record_11"); + public static ItemInfo MusicWaitDisc = new ItemInfo(2267, 0, "Wait Disc", "minecraft:record_wait"); } } diff --git a/SubstrateCS/Source/Level.cs b/SubstrateCS/Source/Level.cs index 8faf5822..7d7e43a7 100644 --- a/SubstrateCS/Source/Level.cs +++ b/SubstrateCS/Source/Level.cs @@ -136,7 +136,7 @@ public class Level : INbtObject, ICopyable { new SchemaNodeCompound("Data") { - new SchemaNodeScaler("Time", TagType.TAG_LONG), + new SchemaNodeScaler("Time", TagType.TAG_LONG, SchemaOptions.CREATE_ON_MISSING), new SchemaNodeScaler("LastPlayed", TagType.TAG_LONG, SchemaOptions.CREATE_ON_MISSING), new SchemaNodeCompound("Player", Player.Schema, SchemaOptions.OPTIONAL), new SchemaNodeScaler("SpawnX", TagType.TAG_INT), diff --git a/SubstrateCS/Source/Nbt/NbtVerifier.cs b/SubstrateCS/Source/Nbt/NbtVerifier.cs index 34067ef0..47326078 100644 --- a/SubstrateCS/Source/Nbt/NbtVerifier.cs +++ b/SubstrateCS/Source/Nbt/NbtVerifier.cs @@ -68,7 +68,7 @@ public SchemaNode Schema } /// - /// Constructs a new event argument set. + /// Constructs a event argument set. /// /// The expected name of a . public TagEventArgs (string tagName) @@ -158,225 +158,7 @@ private bool Verify (TagNode parent, TagNode tag, SchemaNode schema) return OnMissingTag(new TagEventArgs(schema.Name)); } - SchemaNodeScaler scaler = schema as SchemaNodeScaler; - if (scaler != null) { - return VerifyScaler(tag, scaler); - } - - SchemaNodeString str = schema as SchemaNodeString; - if (str != null) { - return VerifyString(tag, str); - } - - SchemaNodeArray array = schema as SchemaNodeArray; - if (array != null) { - return VerifyArray(tag, array); - } - - SchemaNodeIntArray intarray = schema as SchemaNodeIntArray; - if (intarray != null) { - return VerifyIntArray(tag, intarray); - } - - SchemaNodeLongArray longarray = schema as SchemaNodeLongArray; - if (longarray != null) { - return VerifyLongArray(tag, longarray); - } - - SchemaNodeShortArray shortarray = schema as SchemaNodeShortArray; - if (shortarray != null) { - return VerifyShortArray(tag, shortarray); - } - - SchemaNodeList list = schema as SchemaNodeList; - if (list != null) { - return VerifyList(tag, list); - } - - SchemaNodeCompound compound = schema as SchemaNodeCompound; - if (compound != null) { - return VerifyCompound(tag, compound); - } - - return OnInvalidTagType(new TagEventArgs(schema.Name, tag)); - } - - private bool VerifyScaler (TagNode tag, SchemaNodeScaler schema) - { - if (!tag.IsCastableTo(schema.Type)) { - if (!OnInvalidTagType(new TagEventArgs(schema.Name, tag))) { - return false; - } - } - - return true; - } - - private bool VerifyString (TagNode tag, SchemaNodeString schema) - { - TagNodeString stag = tag as TagNodeString; - if (stag == null) { - if (!OnInvalidTagType(new TagEventArgs(schema, tag))) { - return false; - } - } - if (schema.Length > 0 && stag.Length > schema.Length) { - if (!OnInvalidTagValue(new TagEventArgs(schema, tag))) { - return false; - } - } - if (schema.Value != null && stag.Data != schema.Value) { - if (!OnInvalidTagValue(new TagEventArgs(schema, tag))) { - return false; - } - } - - return true; - } - - - private bool VerifyArray (TagNode tag, SchemaNodeArray schema) - { - TagNodeByteArray atag = tag as TagNodeByteArray; - if (atag == null) { - if (!OnInvalidTagType(new TagEventArgs(schema, tag))) { - return false; - } - } - if (schema.Length > 0 && atag.Length != schema.Length) { - if (!OnInvalidTagValue(new TagEventArgs(schema, tag))) { - return false; - } - } - - return true; - } - - private bool VerifyIntArray (TagNode tag, SchemaNodeIntArray schema) - { - TagNodeIntArray atag = tag as TagNodeIntArray; - if (atag == null) { - if (!OnInvalidTagType(new TagEventArgs(schema, tag))) { - return false; - } - } - if (schema.Length > 0 && atag.Length != schema.Length) { - if (!OnInvalidTagValue(new TagEventArgs(schema, tag))) { - return false; - } - } - - return true; - } - - private bool VerifyLongArray (TagNode tag, SchemaNodeLongArray schema) - { - TagNodeLongArray atag = tag as TagNodeLongArray; - if (atag == null) { - if (!OnInvalidTagType(new TagEventArgs(schema, tag))) { - return false; - } - } - if (schema.Length > 0 && atag.Length != schema.Length) { - if (!OnInvalidTagValue(new TagEventArgs(schema, tag))) { - return false; - } - } - - return true; - } - - private bool VerifyShortArray (TagNode tag, SchemaNodeShortArray schema) - { - TagNodeShortArray atag = tag as TagNodeShortArray; - if (atag == null) { - if (!OnInvalidTagType(new TagEventArgs(schema, tag))) { - return false; - } - } - if (schema.Length > 0 && atag.Length != schema.Length) { - if (!OnInvalidTagValue(new TagEventArgs(schema, tag))) { - return false; - } - } - - return true; - } - - private bool VerifyList (TagNode tag, SchemaNodeList schema) - { - TagNodeList ltag = tag as TagNodeList; - if (ltag == null) { - if (!OnInvalidTagType(new TagEventArgs(schema, tag))) { - return false; - } - } - if (ltag.Count > 0 && ltag.ValueType != schema.Type) { - if (!OnInvalidTagValue(new TagEventArgs(schema, tag))) { - return false; - } - } - if (schema.Length > 0 && ltag.Count != schema.Length) { - if (!OnInvalidTagValue(new TagEventArgs(schema, tag))) { - return false; - } - } - - // Patch up empty lists - //if (schema.Length == 0) { - // tag = new NBT_List(schema.Type); - //} - - bool pass = true; - - // If a subschema is set, test all items in list against it - - if (schema.SubSchema != null) { - foreach (TagNode v in ltag) { - pass = Verify(tag, v, schema.SubSchema) && pass; - } - } - - return pass; - } - - private bool VerifyCompound (TagNode tag, SchemaNodeCompound schema) - { - TagNodeCompound ctag = tag as TagNodeCompound; - if (ctag == null) { - if (!OnInvalidTagType(new TagEventArgs(schema, tag))) { - return false; - } - } - - bool pass = true; - - Dictionary _scratch = new Dictionary(); - - foreach (SchemaNode node in schema) { - TagNode value; - ctag.TryGetValue(node.Name, out value); - - if (value == null) { - if ((node.Options & SchemaOptions.CREATE_ON_MISSING) == SchemaOptions.CREATE_ON_MISSING) { - _scratch[node.Name] = node.BuildDefaultTree(); - continue; - } - else if ((node.Options & SchemaOptions.OPTIONAL) == SchemaOptions.OPTIONAL) { - continue; - } - } - - pass = Verify(tag, value, node) && pass; - } - - foreach (KeyValuePair item in _scratch) { - ctag[item.Key] = item.Value; - } - - _scratch.Clear(); - - return pass; + return schema.Verify(this, tag); } #region Event Handlers @@ -387,66 +169,66 @@ private bool VerifyCompound (TagNode tag, SchemaNodeCompound schema) /// Arguments for this event. /// Status indicating whether this event can be ignored. protected virtual bool OnMissingTag (TagEventArgs e) - { - if (MissingTag != null) { - foreach (VerifierEventHandler func in MissingTag.GetInvocationList()) { - TagEventCode code = func(e); - switch (code) { - case TagEventCode.FAIL: - return false; - case TagEventCode.PASS: - return true; + { + if (MissingTag != null) { + foreach (VerifierEventHandler func in MissingTag.GetInvocationList()) { + TagEventCode code = func(e); + switch (code) { + case TagEventCode.FAIL: + return false; + case TagEventCode.PASS: + return true; + } } } - } - return false; - } - - /// - /// Processes registered events for whenever an expected is of the wrong type and cannot be cast. - /// - /// Arguments for this event. - /// Status indicating whether this event can be ignored. - protected virtual bool OnInvalidTagType (TagEventArgs e) - { - if (InvalidTagType != null) { - foreach (VerifierEventHandler func in InvalidTagType.GetInvocationList()) { - TagEventCode code = func(e); - switch (code) { - case TagEventCode.FAIL: - return false; - case TagEventCode.PASS: - return true; + return false; + } + + /// + /// Processes registered events for whenever an expected is of the wrong type and cannot be cast. + /// + /// Arguments for this event. + /// Status indicating whether this event can be ignored. + public virtual bool OnInvalidTagType (TagEventArgs e) + { + if (InvalidTagType != null) { + foreach (VerifierEventHandler func in InvalidTagType.GetInvocationList()) { + TagEventCode code = func(e); + switch (code) { + case TagEventCode.FAIL: + return false; + case TagEventCode.PASS: + return true; + } } } - } - - return false; - } - /// - /// Processes registered events for whenever an expected has a value that violates the schema. - /// - /// Arguments for this event. - /// Status indicating whether this event can be ignored. - protected virtual bool OnInvalidTagValue (TagEventArgs e) - { - if (InvalidTagValue != null) { - foreach (VerifierEventHandler func in InvalidTagValue.GetInvocationList()) { - TagEventCode code = func(e); - switch (code) { - case TagEventCode.FAIL: - return false; - case TagEventCode.PASS: - return true; + return false; + } + + /// + /// Processes registered events for whenever an expected has a value that violates the schema. + /// + /// Arguments for this event. + /// Status indicating whether this event can be ignored. + public virtual bool OnInvalidTagValue (TagEventArgs e) + { + if (InvalidTagValue != null) { + foreach (VerifierEventHandler func in InvalidTagValue.GetInvocationList()) { + TagEventCode code = func(e); + switch (code) { + case TagEventCode.FAIL: + return false; + case TagEventCode.PASS: + return true; + } } } + + return false; } - return false; +#endregion } - - #endregion } -} diff --git a/SubstrateCS/Source/Nbt/SchemaNode.cs b/SubstrateCS/Source/Nbt/SchemaNode.cs index e8d34ce0..43cc7017 100644 --- a/SubstrateCS/Source/Nbt/SchemaNode.cs +++ b/SubstrateCS/Source/Nbt/SchemaNode.cs @@ -56,5 +56,9 @@ public virtual TagNode BuildDefaultTree () { return null; } + + public virtual bool Verify(NbtVerifier verifier, TagNode tag) { + return verifier.OnInvalidTagType(new TagEventArgs(Name, tag)); + } } } diff --git a/SubstrateCS/Source/Nbt/SchemaNodeArray.cs b/SubstrateCS/Source/Nbt/SchemaNodeArray.cs index 9d3f3544..01fce687 100644 --- a/SubstrateCS/Source/Nbt/SchemaNodeArray.cs +++ b/SubstrateCS/Source/Nbt/SchemaNodeArray.cs @@ -77,5 +77,22 @@ public override TagNode BuildDefaultTree () { return new TagNodeByteArray(new byte[_length]); } + + public override bool Verify(NbtVerifier verifier, TagNode tag) { + TagNodeByteArray atag = tag as TagNodeByteArray; + if (atag == null) { + if (!verifier.OnInvalidTagType(new TagEventArgs(this, tag))) { + return false; + } + } + if (Length > 0 && atag.Length != Length) { + if (!verifier.OnInvalidTagValue(new TagEventArgs(this, tag))) { + return false; + } + } + + return true; + + } } } diff --git a/SubstrateCS/Source/Nbt/SchemaNodeCompound.cs b/SubstrateCS/Source/Nbt/SchemaNodeCompound.cs index a7670f9b..eb418396 100644 --- a/SubstrateCS/Source/Nbt/SchemaNodeCompound.cs +++ b/SubstrateCS/Source/Nbt/SchemaNodeCompound.cs @@ -215,5 +215,42 @@ public override TagNode BuildDefaultTree () return list; } + + public override bool Verify(NbtVerifier verifier, TagNode tag) { + TagNodeCompound ctag = tag as TagNodeCompound; + if (ctag == null) { + if (!verifier.OnInvalidTagType(new TagEventArgs(this, tag))) { + return false; + } + } + + bool pass = true; + + Dictionary _scratch = new Dictionary(); + + foreach (SchemaNode node in this) { + TagNode value; + ctag.TryGetValue(node.Name, out value); + + if (value == null) { + if ((node.Options & SchemaOptions.CREATE_ON_MISSING) == SchemaOptions.CREATE_ON_MISSING) { + _scratch[node.Name] = node.BuildDefaultTree(); + continue; + } else if ((node.Options & SchemaOptions.OPTIONAL) == SchemaOptions.OPTIONAL) { + continue; + } + } + + pass = node.Verify(verifier, value) && pass; + } + + foreach (KeyValuePair item in _scratch) { + ctag[item.Key] = item.Value; + } + + _scratch.Clear(); + + return pass; + } } } diff --git a/SubstrateCS/Source/Nbt/SchemaNodeIntArray.cs b/SubstrateCS/Source/Nbt/SchemaNodeIntArray.cs index 086b67fb..c81ea0ab 100644 --- a/SubstrateCS/Source/Nbt/SchemaNodeIntArray.cs +++ b/SubstrateCS/Source/Nbt/SchemaNodeIntArray.cs @@ -79,5 +79,22 @@ public override TagNode BuildDefaultTree () { return new TagNodeIntArray(new int[_length]); } + + public override bool Verify(NbtVerifier verifier, TagNode tag) { + TagNodeIntArray atag = tag as TagNodeIntArray; + if (atag == null) { + if (!verifier.OnInvalidTagType(new TagEventArgs(this, tag))) { + return false; + } + } + if (Length > 0 && atag.Length != Length) { + if (!verifier.OnInvalidTagValue(new TagEventArgs(this, tag))) { + return false; + } + } + + return true; + + } } } diff --git a/SubstrateCS/Source/Nbt/SchemaNodeList.cs b/SubstrateCS/Source/Nbt/SchemaNodeList.cs index d7bf6e2a..10dad639 100644 --- a/SubstrateCS/Source/Nbt/SchemaNodeList.cs +++ b/SubstrateCS/Source/Nbt/SchemaNodeList.cs @@ -168,5 +168,41 @@ public override TagNode BuildDefaultTree () return list; } + + public override bool Verify(NbtVerifier verifier, TagNode tag) { + TagNodeList ltag = tag as TagNodeList; + if (ltag == null) { + if (!verifier.OnInvalidTagType(new TagEventArgs(this, tag))) { + return false; + } + } + if (ltag.Count > 0 && ltag.ValueType != Type) { + if (!verifier.OnInvalidTagValue(new TagEventArgs(this, tag))) { + return false; + } + } + if (Length > 0 && ltag.Count != Length) { + if (!verifier.OnInvalidTagValue(new TagEventArgs(this, tag))) { + return false; + } + } + + // Patch up empty lists + //if (schema.Length == 0) { + // tag = new NBT_List(schema.Type); + //} + + bool pass = true; + + // If a subschema is set, test all items in list against it + + if (SubSchema != null) { + foreach (TagNode v in ltag) { + pass = SubSchema.Verify(verifier, v) && pass; + } + } + + return pass; + } } } diff --git a/SubstrateCS/Source/Nbt/SchemaNodeLongArray.cs b/SubstrateCS/Source/Nbt/SchemaNodeLongArray.cs index 702bed1a..cb847f53 100644 --- a/SubstrateCS/Source/Nbt/SchemaNodeLongArray.cs +++ b/SubstrateCS/Source/Nbt/SchemaNodeLongArray.cs @@ -79,5 +79,22 @@ public override TagNode BuildDefaultTree () { return new TagNodeLongArray(new long[_length]); } + + public override bool Verify(NbtVerifier verifier, TagNode tag) { + TagNodeLongArray atag = tag as TagNodeLongArray; + if (atag == null) { + if (!verifier.OnInvalidTagType(new TagEventArgs(this, tag))) { + return false; + } + } + if (Length > 0 && atag.Length != Length) { + if (!verifier.OnInvalidTagValue(new TagEventArgs(this, tag))) { + return false; + } + } + + return true; + + } } } diff --git a/SubstrateCS/Source/Nbt/SchemaNodeScaler.cs b/SubstrateCS/Source/Nbt/SchemaNodeScaler.cs index b156c8d8..6449b9fa 100644 --- a/SubstrateCS/Source/Nbt/SchemaNodeScaler.cs +++ b/SubstrateCS/Source/Nbt/SchemaNodeScaler.cs @@ -71,5 +71,16 @@ public override TagNode BuildDefaultTree () return null; } + + public override bool Verify(NbtVerifier verifier, TagNode tag) { + if (!tag.IsCastableTo(Type)) { + if (!verifier.OnInvalidTagType(new TagEventArgs(Name, tag))) { + return false; + } + } + + return true; + + } } } diff --git a/SubstrateCS/Source/Nbt/SchemaNodeShortArray.cs b/SubstrateCS/Source/Nbt/SchemaNodeShortArray.cs index d6e1e8f1..5b562229 100644 --- a/SubstrateCS/Source/Nbt/SchemaNodeShortArray.cs +++ b/SubstrateCS/Source/Nbt/SchemaNodeShortArray.cs @@ -79,5 +79,22 @@ public override TagNode BuildDefaultTree () { return new TagNodeShortArray(new short[_length]); } + + public override bool Verify(NbtVerifier verifier, TagNode tag) { + TagNodeShortArray atag = tag as TagNodeShortArray; + if (atag == null) { + if (!verifier.OnInvalidTagType(new TagEventArgs(this, tag))) { + return false; + } + } + if (Length > 0 && atag.Length != Length) { + if (!verifier.OnInvalidTagValue(new TagEventArgs(this, tag))) { + return false; + } + } + + return true; + + } } } diff --git a/SubstrateCS/Source/Nbt/SchemaNodeString.cs b/SubstrateCS/Source/Nbt/SchemaNodeString.cs index 54c1f9b2..a5f3f205 100644 --- a/SubstrateCS/Source/Nbt/SchemaNodeString.cs +++ b/SubstrateCS/Source/Nbt/SchemaNodeString.cs @@ -112,5 +112,26 @@ public override TagNode BuildDefaultTree () return new TagNodeString(); } + + public override bool Verify(NbtVerifier verifier, TagNode tag) { + TagNodeString stag = tag as TagNodeString; + if (stag == null) { + if (!verifier.OnInvalidTagType(new TagEventArgs(this, tag))) { + return false; + } + } + if (Length > 0 && stag.Length > Length) { + if (!verifier.OnInvalidTagValue(new TagEventArgs(this, tag))) { + return false; + } + } + if (Value != null && stag.Data != Value) { + if (!verifier.OnInvalidTagValue(new TagEventArgs(this, tag))) { + return false; + } + } + + return true; + } } } diff --git a/SubstrateCS/Source/NbtWorld.cs b/SubstrateCS/Source/NbtWorld.cs index bbb31004..bbef5a15 100644 --- a/SubstrateCS/Source/NbtWorld.cs +++ b/SubstrateCS/Source/NbtWorld.cs @@ -151,6 +151,10 @@ public static NbtWorld Open (string path) /// public abstract void Save (); + public virtual void SaveBlocks() { + Save(); + } + /// /// Raised when is called, used to find a concrete type that can open the world. /// diff --git a/SubstrateCS/Source/RegionChunkManager.cs b/SubstrateCS/Source/RegionChunkManager.cs index e3e8cca0..6ba9a975 100644 --- a/SubstrateCS/Source/RegionChunkManager.cs +++ b/SubstrateCS/Source/RegionChunkManager.cs @@ -14,8 +14,8 @@ public class RegionChunkManager : IChunkManager, IEnumerable private const int REGION_XLEN = 32; private const int REGION_ZLEN = 32; - private const int REGION_XLOG = 5; - private const int REGION_ZLOG = 5; + public const int REGION_XLOG = 5; + public const int REGION_ZLOG = 5; private const int REGION_XMASK = 0x1F; private const int REGION_ZMASK = 0x1F; diff --git a/SubstrateCS/Source/TileEntities/TileEntityBanner.cs b/SubstrateCS/Source/TileEntities/TileEntityBanner.cs new file mode 100644 index 00000000..967b3944 --- /dev/null +++ b/SubstrateCS/Source/TileEntities/TileEntityBanner.cs @@ -0,0 +1,162 @@ +using Substrate.Nbt; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; + +namespace Substrate.TileEntities { + public class TileEntityBanner : TileEntity { + public static readonly SchemaNodeCompound BannerSchema = TileEntity.Schema.MergeInto(new SchemaNodeCompound("") { + new SchemaNodeString("id", TypeId), + new SchemaNodeScaler("CustomName", TagType.TAG_STRING, SchemaOptions.OPTIONAL), + new SchemaNodeScaler("Base", TagType.TAG_INT), + new SchemaNodeList( + "Patterns", + TagType.TAG_LIST, + new SchemaNodeCompound() { + new SchemaNodeScaler("Color", TagType.TAG_INT), + new SchemaNodeScaler("Pattern", TagType.TAG_STRING) + }, + SchemaOptions.OPTIONAL + ) + }); + + public BannerColor BaseColor { + get; + set; + } + + public TileEntityBanner() : base(TypeId) { + Patterns = new BannerPattern[0]; + } + + public TileEntityBanner(TileEntity te) : base(te) { + var teb = te as TileEntityBanner; + if (teb != null) { + CustomName = teb.CustomName; + Patterns = (BannerPattern[])teb.Patterns.Clone(); + BaseColor = teb.BaseColor; + } else { + Patterns = new BannerPattern[0]; + } + } + + public static string TypeId { + get { return "minecraft:banner"; } + } + + public string CustomName { + get; + set; + } + + public BannerPattern[] Patterns { + get; + set; + } + + public override TileEntity Copy() { + return new TileEntityBanner(this); + } + + #region INBTObject Members + + public override TileEntity LoadTree(TagNode tree) { + TagNodeCompound ctree = tree as TagNodeCompound; + if (ctree == null || base.LoadTree(tree) == null) { + return null; + } + + TagNode node; + if (ctree.TryGetValue("CustomName", out node)) { + CustomName = node.ToTagString(); + } + BaseColor = (BannerColor)(int)ctree["Base"].ToTagInt(); + if (ctree.TryGetValue("Patterns", out node)) { + var items = node.ToTagList(); + List patterns = new List(); + foreach (var item in items) { + patterns.Add( + new BannerPattern( + (BannerColor)(int)(item.ToTagCompound()["Color"].ToTagInt()), + item.ToTagCompound()["Pattern"].ToTagString() + ) + ); + } + Patterns = patterns.ToArray(); + } else { + Patterns = new BannerPattern[0]; + } + + return this; + } + + public override TagNode BuildTree() { + TagNodeCompound tree = base.BuildTree() as TagNodeCompound; + if (CustomName != null) { + tree["CustomName"] = new TagNodeString(CustomName); + } + tree["Base"] = new TagNodeInt((int)BaseColor); + if (Patterns.Length != 0) { + tree["Patterns"] = new TagNodeList( + TagType.TAG_COMPOUND, + Patterns.Select(x => new TagNodeCompound() { + {"Color", new TagNodeInt((int)x.Color) }, + {"Pattern", new TagNodeString(x.Pattern) } + }).ToList() + ); + } + + return tree; + } + + public override bool ValidateTree(TagNode tree) { + return new NbtVerifier(tree, BannerSchema).Verify(); + } + + #endregion + } + + // TODO: https://minecraft.gamepedia.com/Banner/Patterns + public class BannerStyles { + public const string TopTriangle = "tt"; + public const string BottomTriangle = "bt"; + public const string MiddleCircle = "mc"; + public const string CurlyBorder = "cbo"; + public const string Border = "bo"; + public const string BottomStripe = "bs"; + public const string TopStripe = "ts"; + public const string tr = "tr"; + public const string MiddleRectangle = "mr"; + } + + + public struct BannerPattern { + public readonly BannerColor Color; + public readonly string Pattern; + + public BannerPattern(BannerColor color, string pattern) { + Color = color; + Pattern = pattern; + } + } + + public enum BannerColor { + Black, + Red, + Green, + Brown, + Blue, + Purple, + Cyan, + LightGray, + DaryGray, + Pink, + LightGreen, + Yellow, + LightBlue, + LightPurple, + Orange, + White + } +} diff --git a/SubstrateCS/Source/TileEntities/TileEntitySign.cs b/SubstrateCS/Source/TileEntities/TileEntitySign.cs index 1c0c72bf..40c6e1c4 100644 --- a/SubstrateCS/Source/TileEntities/TileEntitySign.cs +++ b/SubstrateCS/Source/TileEntities/TileEntitySign.cs @@ -19,7 +19,7 @@ public class TileEntitySign : TileEntity public static string TypeId { - get { return "Sign"; } + get { return "minecraft:sign"; } } private string _text1 = ""; @@ -30,30 +30,31 @@ public static string TypeId public string Text1 { get { return _text1; } - set { _text1 = value.Length > 14 ? value.Substring(0, 14) : value; } + set { _text1 = value; } } public string Text2 { get { return _text2; } - set { _text2 = value.Length > 14 ? value.Substring(0, 14) : value; } + set { _text2 = value; } } public string Text3 { get { return _text3; } - set { _text3 = value.Length > 14 ? value.Substring(0, 14) : value; } + set { _text3 = value; } } public string Text4 { get { return _text4; } - set { _text4 = value.Length > 14 ? value.Substring(0, 14) : value; } + set { _text4 = value; } } protected TileEntitySign (string id) : base(id) { + Text1 = Text2 = Text3 = Text4 = "{\"text\":\"\"}"; } public TileEntitySign () diff --git a/SubstrateCS/Source/TileEntityFactory.cs b/SubstrateCS/Source/TileEntityFactory.cs index 6704c648..2946843a 100644 --- a/SubstrateCS/Source/TileEntityFactory.cs +++ b/SubstrateCS/Source/TileEntityFactory.cs @@ -125,6 +125,7 @@ static TileEntityFactory () _registry[TileEntityRecordPlayer.TypeId] = typeof(TileEntityRecordPlayer); _registry[TileEntitySign.TypeId] = typeof(TileEntitySign); _registry[TileEntityTrap.TypeId] = typeof(TileEntityTrap); + _registry[TileEntityBanner.TypeId] = typeof(TileEntityBanner); } } diff --git a/SubstrateCS/Substrate (NET4).csproj b/SubstrateCS/Substrate (NET4).csproj index f293012e..394cefe7 100644 --- a/SubstrateCS/Substrate (NET4).csproj +++ b/SubstrateCS/Substrate (NET4).csproj @@ -211,6 +211,7 @@ +