From af2435f199adc9fe584141c181c9fad97f98a478 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Thu, 15 Feb 2018 17:42:03 +0000 Subject: [PATCH] Removed redundant checks from ItemFactory::init() and BlockFactory::init() These are never called accidentally, or at least it's highly unlikely to do so. It might be reasonable to throw exceptions for this, but for the meantime they are redundant - extra indentation for no good reason. This also removes the $force parameter from BlockFactory::init(). --- src/pocketmine/block/BlockFactory.php | 508 +++++++++++++------------- src/pocketmine/item/ItemFactory.php | 410 +++++++++++---------- tests/plugins/PocketMine-TesterPlugin | 2 +- 3 files changed, 457 insertions(+), 463 deletions(-) diff --git a/src/pocketmine/block/BlockFactory.php b/src/pocketmine/block/BlockFactory.php index 2467baa77..ddf0b1f3e 100644 --- a/src/pocketmine/block/BlockFactory.php +++ b/src/pocketmine/block/BlockFactory.php @@ -53,277 +53,273 @@ class BlockFactory{ /** * Initializes the block factory. By default this is called only once on server start, however you may wish to use * this if you need to reset the block factory back to its original defaults for whatever reason. - * - * @param bool $force */ - public static function init(bool $force = false) : void{ - if(self::$list === null or $force){ - self::$list = new \SplFixedArray(256); - self::$fullList = new \SplFixedArray(4096); + public static function init() : void{ + self::$list = new \SplFixedArray(256); + self::$fullList = new \SplFixedArray(4096); - self::$light = new \SplFixedArray(256); - self::$lightFilter = new \SplFixedArray(256); - self::$solid = new \SplFixedArray(256); - self::$hardness = new \SplFixedArray(256); - self::$transparent = new \SplFixedArray(256); - self::$diffusesSkyLight = new \SplFixedArray(256); - self::$blastResistance = new \SplFixedArray(256); + self::$light = new \SplFixedArray(256); + self::$lightFilter = new \SplFixedArray(256); + self::$solid = new \SplFixedArray(256); + self::$hardness = new \SplFixedArray(256); + self::$transparent = new \SplFixedArray(256); + self::$diffusesSkyLight = new \SplFixedArray(256); + self::$blastResistance = new \SplFixedArray(256); - self::registerBlock(new Air()); - self::registerBlock(new Stone()); - self::registerBlock(new Grass()); - self::registerBlock(new Dirt()); - self::registerBlock(new Cobblestone()); - self::registerBlock(new Planks()); - self::registerBlock(new Sapling()); - self::registerBlock(new Bedrock()); - self::registerBlock(new Water()); - self::registerBlock(new StillWater()); - self::registerBlock(new Lava()); - self::registerBlock(new StillLava()); - self::registerBlock(new Sand()); - self::registerBlock(new Gravel()); - self::registerBlock(new GoldOre()); - self::registerBlock(new IronOre()); - self::registerBlock(new CoalOre()); - self::registerBlock(new Wood()); - self::registerBlock(new Leaves()); - self::registerBlock(new Sponge()); - self::registerBlock(new Glass()); - self::registerBlock(new LapisOre()); - self::registerBlock(new Lapis()); - //TODO: DISPENSER - self::registerBlock(new Sandstone()); - self::registerBlock(new NoteBlock()); - self::registerBlock(new Bed()); - self::registerBlock(new PoweredRail()); - self::registerBlock(new DetectorRail()); - //TODO: STICKY_PISTON - self::registerBlock(new Cobweb()); - self::registerBlock(new TallGrass()); - self::registerBlock(new DeadBush()); - //TODO: PISTON - //TODO: PISTONARMCOLLISION - self::registerBlock(new Wool()); + self::registerBlock(new Air()); + self::registerBlock(new Stone()); + self::registerBlock(new Grass()); + self::registerBlock(new Dirt()); + self::registerBlock(new Cobblestone()); + self::registerBlock(new Planks()); + self::registerBlock(new Sapling()); + self::registerBlock(new Bedrock()); + self::registerBlock(new Water()); + self::registerBlock(new StillWater()); + self::registerBlock(new Lava()); + self::registerBlock(new StillLava()); + self::registerBlock(new Sand()); + self::registerBlock(new Gravel()); + self::registerBlock(new GoldOre()); + self::registerBlock(new IronOre()); + self::registerBlock(new CoalOre()); + self::registerBlock(new Wood()); + self::registerBlock(new Leaves()); + self::registerBlock(new Sponge()); + self::registerBlock(new Glass()); + self::registerBlock(new LapisOre()); + self::registerBlock(new Lapis()); + //TODO: DISPENSER + self::registerBlock(new Sandstone()); + self::registerBlock(new NoteBlock()); + self::registerBlock(new Bed()); + self::registerBlock(new PoweredRail()); + self::registerBlock(new DetectorRail()); + //TODO: STICKY_PISTON + self::registerBlock(new Cobweb()); + self::registerBlock(new TallGrass()); + self::registerBlock(new DeadBush()); + //TODO: PISTON + //TODO: PISTONARMCOLLISION + self::registerBlock(new Wool()); - self::registerBlock(new Dandelion()); - self::registerBlock(new Flower()); - self::registerBlock(new BrownMushroom()); - self::registerBlock(new RedMushroom()); - self::registerBlock(new Gold()); - self::registerBlock(new Iron()); - self::registerBlock(new DoubleStoneSlab()); - self::registerBlock(new StoneSlab()); - self::registerBlock(new Bricks()); - self::registerBlock(new TNT()); - self::registerBlock(new Bookshelf()); - self::registerBlock(new MossyCobblestone()); - self::registerBlock(new Obsidian()); - self::registerBlock(new Torch()); - self::registerBlock(new Fire()); - self::registerBlock(new MonsterSpawner()); - self::registerBlock(new WoodenStairs(Block::OAK_STAIRS, 0, "Oak Stairs")); - self::registerBlock(new Chest()); - //TODO: REDSTONE_WIRE - self::registerBlock(new DiamondOre()); - self::registerBlock(new Diamond()); - self::registerBlock(new CraftingTable()); - self::registerBlock(new Wheat()); - self::registerBlock(new Farmland()); - self::registerBlock(new Furnace()); - self::registerBlock(new BurningFurnace()); - self::registerBlock(new SignPost()); - self::registerBlock(new WoodenDoor(Block::OAK_DOOR_BLOCK, 0, "Oak Door", Item::OAK_DOOR)); - self::registerBlock(new Ladder()); - self::registerBlock(new Rail()); - self::registerBlock(new CobblestoneStairs()); - self::registerBlock(new WallSign()); - self::registerBlock(new Lever()); - self::registerBlock(new StonePressurePlate()); - self::registerBlock(new IronDoor()); - self::registerBlock(new WoodenPressurePlate()); - self::registerBlock(new RedstoneOre()); - self::registerBlock(new GlowingRedstoneOre()); - self::registerBlock(new RedstoneTorchUnlit()); - self::registerBlock(new RedstoneTorch()); - self::registerBlock(new StoneButton()); - self::registerBlock(new SnowLayer()); - self::registerBlock(new Ice()); - self::registerBlock(new Snow()); - self::registerBlock(new Cactus()); - self::registerBlock(new Clay()); - self::registerBlock(new Sugarcane()); - //TODO: JUKEBOX - self::registerBlock(new WoodenFence()); - self::registerBlock(new Pumpkin()); - self::registerBlock(new Netherrack()); - self::registerBlock(new SoulSand()); - self::registerBlock(new Glowstone()); - //TODO: PORTAL - self::registerBlock(new LitPumpkin()); - self::registerBlock(new Cake()); - //TODO: REPEATER_BLOCK - //TODO: POWERED_REPEATER - //TODO: INVISIBLEBEDROCK - self::registerBlock(new Trapdoor()); - //TODO: MONSTER_EGG - self::registerBlock(new StoneBricks()); - self::registerBlock(new BrownMushroomBlock()); - self::registerBlock(new RedMushroomBlock()); - self::registerBlock(new IronBars()); - self::registerBlock(new GlassPane()); - self::registerBlock(new Melon()); - self::registerBlock(new PumpkinStem()); - self::registerBlock(new MelonStem()); - self::registerBlock(new Vine()); - self::registerBlock(new FenceGate(Block::OAK_FENCE_GATE, 0, "Oak Fence Gate")); - self::registerBlock(new BrickStairs()); - self::registerBlock(new StoneBrickStairs()); - self::registerBlock(new Mycelium()); - self::registerBlock(new WaterLily()); - self::registerBlock(new NetherBrick(Block::NETHER_BRICK_BLOCK, 0, "Nether Bricks")); - self::registerBlock(new NetherBrickFence()); - self::registerBlock(new NetherBrickStairs()); - self::registerBlock(new NetherWartPlant()); - self::registerBlock(new EnchantingTable()); - self::registerBlock(new BrewingStand()); - //TODO: CAULDRON_BLOCK - //TODO: END_PORTAL - self::registerBlock(new EndPortalFrame()); - self::registerBlock(new EndStone()); - //TODO: DRAGON_EGG - self::registerBlock(new RedstoneLamp()); - self::registerBlock(new LitRedstoneLamp()); - //TODO: DROPPER - self::registerBlock(new ActivatorRail()); - self::registerBlock(new CocoaBlock()); - self::registerBlock(new SandstoneStairs()); - self::registerBlock(new EmeraldOre()); - self::registerBlock(new EnderChest()); - self::registerBlock(new TripwireHook()); - self::registerBlock(new Tripwire()); - self::registerBlock(new Emerald()); - self::registerBlock(new WoodenStairs(Block::SPRUCE_STAIRS, 0, "Spruce Stairs")); - self::registerBlock(new WoodenStairs(Block::BIRCH_STAIRS, 0, "Birch Stairs")); - self::registerBlock(new WoodenStairs(Block::JUNGLE_STAIRS, 0, "Jungle Stairs")); - //TODO: COMMAND_BLOCK - //TODO: BEACON - self::registerBlock(new CobblestoneWall()); - self::registerBlock(new FlowerPot()); - self::registerBlock(new Carrot()); - self::registerBlock(new Potato()); - self::registerBlock(new WoodenButton()); - self::registerBlock(new Skull()); - self::registerBlock(new Anvil()); - self::registerBlock(new TrappedChest()); - self::registerBlock(new WeightedPressurePlateLight()); - self::registerBlock(new WeightedPressurePlateHeavy()); - //TODO: COMPARATOR_BLOCK - //TODO: POWERED_COMPARATOR - self::registerBlock(new DaylightSensor()); - self::registerBlock(new Redstone()); - self::registerBlock(new NetherQuartzOre()); - //TODO: HOPPER_BLOCK - self::registerBlock(new Quartz()); - self::registerBlock(new QuartzStairs()); - self::registerBlock(new DoubleWoodenSlab()); - self::registerBlock(new WoodenSlab()); - self::registerBlock(new StainedClay()); - self::registerBlock(new StainedGlassPane()); - self::registerBlock(new Leaves2()); - self::registerBlock(new Wood2()); - self::registerBlock(new WoodenStairs(Block::ACACIA_STAIRS, 0, "Acacia Stairs")); - self::registerBlock(new WoodenStairs(Block::DARK_OAK_STAIRS, 0, "Dark Oak Stairs")); - //TODO: SLIME + self::registerBlock(new Dandelion()); + self::registerBlock(new Flower()); + self::registerBlock(new BrownMushroom()); + self::registerBlock(new RedMushroom()); + self::registerBlock(new Gold()); + self::registerBlock(new Iron()); + self::registerBlock(new DoubleStoneSlab()); + self::registerBlock(new StoneSlab()); + self::registerBlock(new Bricks()); + self::registerBlock(new TNT()); + self::registerBlock(new Bookshelf()); + self::registerBlock(new MossyCobblestone()); + self::registerBlock(new Obsidian()); + self::registerBlock(new Torch()); + self::registerBlock(new Fire()); + self::registerBlock(new MonsterSpawner()); + self::registerBlock(new WoodenStairs(Block::OAK_STAIRS, 0, "Oak Stairs")); + self::registerBlock(new Chest()); + //TODO: REDSTONE_WIRE + self::registerBlock(new DiamondOre()); + self::registerBlock(new Diamond()); + self::registerBlock(new CraftingTable()); + self::registerBlock(new Wheat()); + self::registerBlock(new Farmland()); + self::registerBlock(new Furnace()); + self::registerBlock(new BurningFurnace()); + self::registerBlock(new SignPost()); + self::registerBlock(new WoodenDoor(Block::OAK_DOOR_BLOCK, 0, "Oak Door", Item::OAK_DOOR)); + self::registerBlock(new Ladder()); + self::registerBlock(new Rail()); + self::registerBlock(new CobblestoneStairs()); + self::registerBlock(new WallSign()); + self::registerBlock(new Lever()); + self::registerBlock(new StonePressurePlate()); + self::registerBlock(new IronDoor()); + self::registerBlock(new WoodenPressurePlate()); + self::registerBlock(new RedstoneOre()); + self::registerBlock(new GlowingRedstoneOre()); + self::registerBlock(new RedstoneTorchUnlit()); + self::registerBlock(new RedstoneTorch()); + self::registerBlock(new StoneButton()); + self::registerBlock(new SnowLayer()); + self::registerBlock(new Ice()); + self::registerBlock(new Snow()); + self::registerBlock(new Cactus()); + self::registerBlock(new Clay()); + self::registerBlock(new Sugarcane()); + //TODO: JUKEBOX + self::registerBlock(new WoodenFence()); + self::registerBlock(new Pumpkin()); + self::registerBlock(new Netherrack()); + self::registerBlock(new SoulSand()); + self::registerBlock(new Glowstone()); + //TODO: PORTAL + self::registerBlock(new LitPumpkin()); + self::registerBlock(new Cake()); + //TODO: REPEATER_BLOCK + //TODO: POWERED_REPEATER + //TODO: INVISIBLEBEDROCK + self::registerBlock(new Trapdoor()); + //TODO: MONSTER_EGG + self::registerBlock(new StoneBricks()); + self::registerBlock(new BrownMushroomBlock()); + self::registerBlock(new RedMushroomBlock()); + self::registerBlock(new IronBars()); + self::registerBlock(new GlassPane()); + self::registerBlock(new Melon()); + self::registerBlock(new PumpkinStem()); + self::registerBlock(new MelonStem()); + self::registerBlock(new Vine()); + self::registerBlock(new FenceGate(Block::OAK_FENCE_GATE, 0, "Oak Fence Gate")); + self::registerBlock(new BrickStairs()); + self::registerBlock(new StoneBrickStairs()); + self::registerBlock(new Mycelium()); + self::registerBlock(new WaterLily()); + self::registerBlock(new NetherBrick(Block::NETHER_BRICK_BLOCK, 0, "Nether Bricks")); + self::registerBlock(new NetherBrickFence()); + self::registerBlock(new NetherBrickStairs()); + self::registerBlock(new NetherWartPlant()); + self::registerBlock(new EnchantingTable()); + self::registerBlock(new BrewingStand()); + //TODO: CAULDRON_BLOCK + //TODO: END_PORTAL + self::registerBlock(new EndPortalFrame()); + self::registerBlock(new EndStone()); + //TODO: DRAGON_EGG + self::registerBlock(new RedstoneLamp()); + self::registerBlock(new LitRedstoneLamp()); + //TODO: DROPPER + self::registerBlock(new ActivatorRail()); + self::registerBlock(new CocoaBlock()); + self::registerBlock(new SandstoneStairs()); + self::registerBlock(new EmeraldOre()); + self::registerBlock(new EnderChest()); + self::registerBlock(new TripwireHook()); + self::registerBlock(new Tripwire()); + self::registerBlock(new Emerald()); + self::registerBlock(new WoodenStairs(Block::SPRUCE_STAIRS, 0, "Spruce Stairs")); + self::registerBlock(new WoodenStairs(Block::BIRCH_STAIRS, 0, "Birch Stairs")); + self::registerBlock(new WoodenStairs(Block::JUNGLE_STAIRS, 0, "Jungle Stairs")); + //TODO: COMMAND_BLOCK + //TODO: BEACON + self::registerBlock(new CobblestoneWall()); + self::registerBlock(new FlowerPot()); + self::registerBlock(new Carrot()); + self::registerBlock(new Potato()); + self::registerBlock(new WoodenButton()); + self::registerBlock(new Skull()); + self::registerBlock(new Anvil()); + self::registerBlock(new TrappedChest()); + self::registerBlock(new WeightedPressurePlateLight()); + self::registerBlock(new WeightedPressurePlateHeavy()); + //TODO: COMPARATOR_BLOCK + //TODO: POWERED_COMPARATOR + self::registerBlock(new DaylightSensor()); + self::registerBlock(new Redstone()); + self::registerBlock(new NetherQuartzOre()); + //TODO: HOPPER_BLOCK + self::registerBlock(new Quartz()); + self::registerBlock(new QuartzStairs()); + self::registerBlock(new DoubleWoodenSlab()); + self::registerBlock(new WoodenSlab()); + self::registerBlock(new StainedClay()); + self::registerBlock(new StainedGlassPane()); + self::registerBlock(new Leaves2()); + self::registerBlock(new Wood2()); + self::registerBlock(new WoodenStairs(Block::ACACIA_STAIRS, 0, "Acacia Stairs")); + self::registerBlock(new WoodenStairs(Block::DARK_OAK_STAIRS, 0, "Dark Oak Stairs")); + //TODO: SLIME - self::registerBlock(new IronTrapdoor()); - self::registerBlock(new Prismarine()); - self::registerBlock(new SeaLantern()); - self::registerBlock(new HayBale()); - self::registerBlock(new Carpet()); - self::registerBlock(new HardenedClay()); - self::registerBlock(new Coal()); - self::registerBlock(new PackedIce()); - self::registerBlock(new DoublePlant()); - self::registerBlock(new StandingBanner()); - self::registerBlock(new WallBanner()); - //TODO: DAYLIGHT_DETECTOR_INVERTED - self::registerBlock(new RedSandstone()); - self::registerBlock(new RedSandstoneStairs()); - self::registerBlock(new DoubleStoneSlab2()); - self::registerBlock(new StoneSlab2()); - self::registerBlock(new FenceGate(Block::SPRUCE_FENCE_GATE, 0, "Spruce Fence Gate")); - self::registerBlock(new FenceGate(Block::BIRCH_FENCE_GATE, 0, "Birch Fence Gate")); - self::registerBlock(new FenceGate(Block::JUNGLE_FENCE_GATE, 0, "Jungle Fence Gate")); - self::registerBlock(new FenceGate(Block::DARK_OAK_FENCE_GATE, 0, "Dark Oak Fence Gate")); - self::registerBlock(new FenceGate(Block::ACACIA_FENCE_GATE, 0, "Acacia Fence Gate")); - //TODO: REPEATING_COMMAND_BLOCK - //TODO: CHAIN_COMMAND_BLOCK + self::registerBlock(new IronTrapdoor()); + self::registerBlock(new Prismarine()); + self::registerBlock(new SeaLantern()); + self::registerBlock(new HayBale()); + self::registerBlock(new Carpet()); + self::registerBlock(new HardenedClay()); + self::registerBlock(new Coal()); + self::registerBlock(new PackedIce()); + self::registerBlock(new DoublePlant()); + self::registerBlock(new StandingBanner()); + self::registerBlock(new WallBanner()); + //TODO: DAYLIGHT_DETECTOR_INVERTED + self::registerBlock(new RedSandstone()); + self::registerBlock(new RedSandstoneStairs()); + self::registerBlock(new DoubleStoneSlab2()); + self::registerBlock(new StoneSlab2()); + self::registerBlock(new FenceGate(Block::SPRUCE_FENCE_GATE, 0, "Spruce Fence Gate")); + self::registerBlock(new FenceGate(Block::BIRCH_FENCE_GATE, 0, "Birch Fence Gate")); + self::registerBlock(new FenceGate(Block::JUNGLE_FENCE_GATE, 0, "Jungle Fence Gate")); + self::registerBlock(new FenceGate(Block::DARK_OAK_FENCE_GATE, 0, "Dark Oak Fence Gate")); + self::registerBlock(new FenceGate(Block::ACACIA_FENCE_GATE, 0, "Acacia Fence Gate")); + //TODO: REPEATING_COMMAND_BLOCK + //TODO: CHAIN_COMMAND_BLOCK - self::registerBlock(new WoodenDoor(Block::SPRUCE_DOOR_BLOCK, 0, "Spruce Door", Item::SPRUCE_DOOR)); - self::registerBlock(new WoodenDoor(Block::BIRCH_DOOR_BLOCK, 0, "Birch Door", Item::BIRCH_DOOR)); - self::registerBlock(new WoodenDoor(Block::JUNGLE_DOOR_BLOCK, 0, "Jungle Door", Item::JUNGLE_DOOR)); - self::registerBlock(new WoodenDoor(Block::ACACIA_DOOR_BLOCK, 0, "Acacia Door", Item::ACACIA_DOOR)); - self::registerBlock(new WoodenDoor(Block::DARK_OAK_DOOR_BLOCK, 0, "Dark Oak Door", Item::DARK_OAK_DOOR)); - self::registerBlock(new GrassPath()); - self::registerBlock(new ItemFrame()); - //TODO: CHORUS_FLOWER - self::registerBlock(new Purpur()); + self::registerBlock(new WoodenDoor(Block::SPRUCE_DOOR_BLOCK, 0, "Spruce Door", Item::SPRUCE_DOOR)); + self::registerBlock(new WoodenDoor(Block::BIRCH_DOOR_BLOCK, 0, "Birch Door", Item::BIRCH_DOOR)); + self::registerBlock(new WoodenDoor(Block::JUNGLE_DOOR_BLOCK, 0, "Jungle Door", Item::JUNGLE_DOOR)); + self::registerBlock(new WoodenDoor(Block::ACACIA_DOOR_BLOCK, 0, "Acacia Door", Item::ACACIA_DOOR)); + self::registerBlock(new WoodenDoor(Block::DARK_OAK_DOOR_BLOCK, 0, "Dark Oak Door", Item::DARK_OAK_DOOR)); + self::registerBlock(new GrassPath()); + self::registerBlock(new ItemFrame()); + //TODO: CHORUS_FLOWER + self::registerBlock(new Purpur()); - self::registerBlock(new PurpurStairs()); + self::registerBlock(new PurpurStairs()); - //TODO: UNDYED_SHULKER_BOX - self::registerBlock(new EndStoneBricks()); - //TODO: FROSTED_ICE - self::registerBlock(new EndRod()); - //TODO: END_GATEWAY + //TODO: UNDYED_SHULKER_BOX + self::registerBlock(new EndStoneBricks()); + //TODO: FROSTED_ICE + self::registerBlock(new EndRod()); + //TODO: END_GATEWAY - self::registerBlock(new Magma()); - self::registerBlock(new NetherWartBlock()); - self::registerBlock(new NetherBrick(Block::RED_NETHER_BRICK, 0, "Red Nether Bricks")); - self::registerBlock(new BoneBlock()); + self::registerBlock(new Magma()); + self::registerBlock(new NetherWartBlock()); + self::registerBlock(new NetherBrick(Block::RED_NETHER_BRICK, 0, "Red Nether Bricks")); + self::registerBlock(new BoneBlock()); - //TODO: SHULKER_BOX - self::registerBlock(new GlazedTerracotta(Block::PURPLE_GLAZED_TERRACOTTA, 0, "Purple Glazed Terracotta")); - self::registerBlock(new GlazedTerracotta(Block::WHITE_GLAZED_TERRACOTTA, 0, "White Glazed Terracotta")); - self::registerBlock(new GlazedTerracotta(Block::ORANGE_GLAZED_TERRACOTTA, 0, "Orange Glazed Terracotta")); - self::registerBlock(new GlazedTerracotta(Block::MAGENTA_GLAZED_TERRACOTTA, 0, "Magenta Glazed Terracotta")); - self::registerBlock(new GlazedTerracotta(Block::LIGHT_BLUE_GLAZED_TERRACOTTA, 0, "Light Blue Glazed Terracotta")); - self::registerBlock(new GlazedTerracotta(Block::YELLOW_GLAZED_TERRACOTTA, 0, "Yellow Glazed Terracotta")); - self::registerBlock(new GlazedTerracotta(Block::LIME_GLAZED_TERRACOTTA, 0, "Lime Glazed Terracotta")); - self::registerBlock(new GlazedTerracotta(Block::PINK_GLAZED_TERRACOTTA, 0, "Pink Glazed Terracotta")); - self::registerBlock(new GlazedTerracotta(Block::GRAY_GLAZED_TERRACOTTA, 0, "Grey Glazed Terracotta")); - self::registerBlock(new GlazedTerracotta(Block::SILVER_GLAZED_TERRACOTTA, 0, "Light Grey Glazed Terracotta")); - self::registerBlock(new GlazedTerracotta(Block::CYAN_GLAZED_TERRACOTTA, 0, "Cyan Glazed Terracotta")); + //TODO: SHULKER_BOX + self::registerBlock(new GlazedTerracotta(Block::PURPLE_GLAZED_TERRACOTTA, 0, "Purple Glazed Terracotta")); + self::registerBlock(new GlazedTerracotta(Block::WHITE_GLAZED_TERRACOTTA, 0, "White Glazed Terracotta")); + self::registerBlock(new GlazedTerracotta(Block::ORANGE_GLAZED_TERRACOTTA, 0, "Orange Glazed Terracotta")); + self::registerBlock(new GlazedTerracotta(Block::MAGENTA_GLAZED_TERRACOTTA, 0, "Magenta Glazed Terracotta")); + self::registerBlock(new GlazedTerracotta(Block::LIGHT_BLUE_GLAZED_TERRACOTTA, 0, "Light Blue Glazed Terracotta")); + self::registerBlock(new GlazedTerracotta(Block::YELLOW_GLAZED_TERRACOTTA, 0, "Yellow Glazed Terracotta")); + self::registerBlock(new GlazedTerracotta(Block::LIME_GLAZED_TERRACOTTA, 0, "Lime Glazed Terracotta")); + self::registerBlock(new GlazedTerracotta(Block::PINK_GLAZED_TERRACOTTA, 0, "Pink Glazed Terracotta")); + self::registerBlock(new GlazedTerracotta(Block::GRAY_GLAZED_TERRACOTTA, 0, "Grey Glazed Terracotta")); + self::registerBlock(new GlazedTerracotta(Block::SILVER_GLAZED_TERRACOTTA, 0, "Light Grey Glazed Terracotta")); + self::registerBlock(new GlazedTerracotta(Block::CYAN_GLAZED_TERRACOTTA, 0, "Cyan Glazed Terracotta")); - self::registerBlock(new GlazedTerracotta(Block::BLUE_GLAZED_TERRACOTTA, 0, "Blue Glazed Terracotta")); - self::registerBlock(new GlazedTerracotta(Block::BROWN_GLAZED_TERRACOTTA, 0, "Brown Glazed Terracotta")); - self::registerBlock(new GlazedTerracotta(Block::GREEN_GLAZED_TERRACOTTA, 0, "Green Glazed Terracotta")); - self::registerBlock(new GlazedTerracotta(Block::RED_GLAZED_TERRACOTTA, 0, "Red Glazed Terracotta")); - self::registerBlock(new GlazedTerracotta(Block::BLACK_GLAZED_TERRACOTTA, 0, "Black Glazed Terracotta")); - self::registerBlock(new Concrete()); - self::registerBlock(new ConcretePowder()); + self::registerBlock(new GlazedTerracotta(Block::BLUE_GLAZED_TERRACOTTA, 0, "Blue Glazed Terracotta")); + self::registerBlock(new GlazedTerracotta(Block::BROWN_GLAZED_TERRACOTTA, 0, "Brown Glazed Terracotta")); + self::registerBlock(new GlazedTerracotta(Block::GREEN_GLAZED_TERRACOTTA, 0, "Green Glazed Terracotta")); + self::registerBlock(new GlazedTerracotta(Block::RED_GLAZED_TERRACOTTA, 0, "Red Glazed Terracotta")); + self::registerBlock(new GlazedTerracotta(Block::BLACK_GLAZED_TERRACOTTA, 0, "Black Glazed Terracotta")); + self::registerBlock(new Concrete()); + self::registerBlock(new ConcretePowder()); - //TODO: CHORUS_PLANT - self::registerBlock(new StainedGlass()); + //TODO: CHORUS_PLANT + self::registerBlock(new StainedGlass()); - self::registerBlock(new Podzol()); - self::registerBlock(new Beetroot()); - self::registerBlock(new Stonecutter()); - self::registerBlock(new GlowingObsidian()); - self::registerBlock(new NetherReactor()); - //TODO: INFO_UPDATE - //TODO: INFO_UPDATE2 - //TODO: MOVINGBLOCK - //TODO: OBSERVER - //TODO: STRUCTURE_BLOCK + self::registerBlock(new Podzol()); + self::registerBlock(new Beetroot()); + self::registerBlock(new Stonecutter()); + self::registerBlock(new GlowingObsidian()); + self::registerBlock(new NetherReactor()); + //TODO: INFO_UPDATE + //TODO: INFO_UPDATE2 + //TODO: MOVINGBLOCK + //TODO: OBSERVER + //TODO: STRUCTURE_BLOCK - //TODO: RESERVED6 + //TODO: RESERVED6 - foreach(self::$list as $id => $block){ - if($block === null){ - self::registerBlock(new UnknownBlock($id)); - } + foreach(self::$list as $id => $block){ + if($block === null){ + self::registerBlock(new UnknownBlock($id)); } } } diff --git a/src/pocketmine/item/ItemFactory.php b/src/pocketmine/item/ItemFactory.php index 638e401ef..cfcc1be1b 100644 --- a/src/pocketmine/item/ItemFactory.php +++ b/src/pocketmine/item/ItemFactory.php @@ -36,224 +36,222 @@ class ItemFactory{ private static $list = null; public static function init(){ - if(self::$list === null){ - self::$list = new \SplFixedArray(65536); + self::$list = new \SplFixedArray(65536); - self::registerItem(new Shovel(Item::IRON_SHOVEL, 0, "Iron Shovel", TieredTool::TIER_IRON)); - self::registerItem(new Pickaxe(Item::IRON_PICKAXE, 0, "Iron Pickaxe", TieredTool::TIER_IRON)); - self::registerItem(new Axe(Item::IRON_AXE, 0, "Iron Axe", TieredTool::TIER_IRON)); - self::registerItem(new FlintSteel()); - self::registerItem(new Apple()); - self::registerItem(new Bow()); - self::registerItem(new Arrow()); - self::registerItem(new Coal()); - self::registerItem(new Item(Item::DIAMOND, 0, "Diamond")); - self::registerItem(new Item(Item::IRON_INGOT, 0, "Iron Ingot")); - self::registerItem(new Item(Item::GOLD_INGOT, 0, "Gold Ingot")); - self::registerItem(new Sword(Item::IRON_SWORD, 0, "Iron Sword", TieredTool::TIER_IRON)); - self::registerItem(new Sword(Item::WOODEN_SWORD, 0, "Wooden Sword", TieredTool::TIER_WOODEN)); - self::registerItem(new Shovel(Item::WOODEN_SHOVEL, 0, "Wooden Shovel", TieredTool::TIER_WOODEN)); - self::registerItem(new Pickaxe(Item::WOODEN_PICKAXE, 0, "Wooden Pickaxe", TieredTool::TIER_WOODEN)); - self::registerItem(new Axe(Item::WOODEN_AXE, 0, "Wooden Axe", TieredTool::TIER_WOODEN)); - self::registerItem(new Sword(Item::STONE_SWORD, 0, "Stone Sword", TieredTool::TIER_STONE)); - self::registerItem(new Shovel(Item::STONE_SHOVEL, 0, "Stone Shovel", TieredTool::TIER_STONE)); - self::registerItem(new Pickaxe(Item::STONE_PICKAXE, 0, "Stone Pickaxe", TieredTool::TIER_STONE)); - self::registerItem(new Axe(Item::STONE_AXE, 0, "Stone Axe", TieredTool::TIER_STONE)); - self::registerItem(new Sword(Item::DIAMOND_SWORD, 0, "Diamond Sword", TieredTool::TIER_DIAMOND)); - self::registerItem(new Shovel(Item::DIAMOND_SHOVEL, 0, "Diamond Shovel", TieredTool::TIER_DIAMOND)); - self::registerItem(new Pickaxe(Item::DIAMOND_PICKAXE, 0, "Diamond Pickaxe", TieredTool::TIER_DIAMOND)); - self::registerItem(new Axe(Item::DIAMOND_AXE, 0, "Diamond Axe", TieredTool::TIER_DIAMOND)); - self::registerItem(new Stick()); - self::registerItem(new Bowl()); - self::registerItem(new MushroomStew()); - self::registerItem(new Sword(Item::GOLDEN_SWORD, 0, "Gold Sword", TieredTool::TIER_GOLD)); - self::registerItem(new Shovel(Item::GOLDEN_SHOVEL, 0, "Gold Shovel", TieredTool::TIER_GOLD)); - self::registerItem(new Pickaxe(Item::GOLDEN_PICKAXE, 0, "Gold Pickaxe", TieredTool::TIER_GOLD)); - self::registerItem(new Axe(Item::GOLDEN_AXE, 0, "Gold Axe", TieredTool::TIER_GOLD)); - self::registerItem(new StringItem()); - self::registerItem(new Item(Item::FEATHER, 0, "Feather")); - self::registerItem(new Item(Item::GUNPOWDER, 0, "Gunpowder")); - self::registerItem(new Hoe(Item::WOODEN_HOE, 0, "Wooden Hoe", TieredTool::TIER_WOODEN)); - self::registerItem(new Hoe(Item::STONE_HOE, 0, "Stone Hoe", TieredTool::TIER_STONE)); - self::registerItem(new Hoe(Item::IRON_HOE, 0, "Iron Hoe", TieredTool::TIER_IRON)); - self::registerItem(new Hoe(Item::DIAMOND_HOE, 0, "Diamond Hoe", TieredTool::TIER_DIAMOND)); - self::registerItem(new Hoe(Item::GOLDEN_HOE, 0, "Golden Hoe", TieredTool::TIER_GOLD)); - self::registerItem(new WheatSeeds()); - self::registerItem(new Item(Item::WHEAT, 0, "Wheat")); - self::registerItem(new Bread()); - self::registerItem(new LeatherCap()); - self::registerItem(new LeatherTunic()); - self::registerItem(new LeatherPants()); - self::registerItem(new LeatherBoots()); - self::registerItem(new ChainHelmet()); - self::registerItem(new ChainChestplate()); - self::registerItem(new ChainLeggings()); - self::registerItem(new ChainBoots()); - self::registerItem(new IronHelmet()); - self::registerItem(new IronChestplate()); - self::registerItem(new IronLeggings()); - self::registerItem(new IronBoots()); - self::registerItem(new DiamondHelmet()); - self::registerItem(new DiamondChestplate()); - self::registerItem(new DiamondLeggings()); - self::registerItem(new DiamondBoots()); - self::registerItem(new GoldHelmet()); - self::registerItem(new GoldChestplate()); - self::registerItem(new GoldLeggings()); - self::registerItem(new GoldBoots()); - self::registerItem(new Item(Item::FLINT, 0, "Flint")); - self::registerItem(new RawPorkchop()); - self::registerItem(new CookedPorkchop()); - self::registerItem(new Painting()); - self::registerItem(new GoldenApple()); - self::registerItem(new Sign()); - self::registerItem(new ItemBlock(Block::OAK_DOOR_BLOCK, 0, Item::OAK_DOOR)); - self::registerItem(new Bucket()); + self::registerItem(new Shovel(Item::IRON_SHOVEL, 0, "Iron Shovel", TieredTool::TIER_IRON)); + self::registerItem(new Pickaxe(Item::IRON_PICKAXE, 0, "Iron Pickaxe", TieredTool::TIER_IRON)); + self::registerItem(new Axe(Item::IRON_AXE, 0, "Iron Axe", TieredTool::TIER_IRON)); + self::registerItem(new FlintSteel()); + self::registerItem(new Apple()); + self::registerItem(new Bow()); + self::registerItem(new Arrow()); + self::registerItem(new Coal()); + self::registerItem(new Item(Item::DIAMOND, 0, "Diamond")); + self::registerItem(new Item(Item::IRON_INGOT, 0, "Iron Ingot")); + self::registerItem(new Item(Item::GOLD_INGOT, 0, "Gold Ingot")); + self::registerItem(new Sword(Item::IRON_SWORD, 0, "Iron Sword", TieredTool::TIER_IRON)); + self::registerItem(new Sword(Item::WOODEN_SWORD, 0, "Wooden Sword", TieredTool::TIER_WOODEN)); + self::registerItem(new Shovel(Item::WOODEN_SHOVEL, 0, "Wooden Shovel", TieredTool::TIER_WOODEN)); + self::registerItem(new Pickaxe(Item::WOODEN_PICKAXE, 0, "Wooden Pickaxe", TieredTool::TIER_WOODEN)); + self::registerItem(new Axe(Item::WOODEN_AXE, 0, "Wooden Axe", TieredTool::TIER_WOODEN)); + self::registerItem(new Sword(Item::STONE_SWORD, 0, "Stone Sword", TieredTool::TIER_STONE)); + self::registerItem(new Shovel(Item::STONE_SHOVEL, 0, "Stone Shovel", TieredTool::TIER_STONE)); + self::registerItem(new Pickaxe(Item::STONE_PICKAXE, 0, "Stone Pickaxe", TieredTool::TIER_STONE)); + self::registerItem(new Axe(Item::STONE_AXE, 0, "Stone Axe", TieredTool::TIER_STONE)); + self::registerItem(new Sword(Item::DIAMOND_SWORD, 0, "Diamond Sword", TieredTool::TIER_DIAMOND)); + self::registerItem(new Shovel(Item::DIAMOND_SHOVEL, 0, "Diamond Shovel", TieredTool::TIER_DIAMOND)); + self::registerItem(new Pickaxe(Item::DIAMOND_PICKAXE, 0, "Diamond Pickaxe", TieredTool::TIER_DIAMOND)); + self::registerItem(new Axe(Item::DIAMOND_AXE, 0, "Diamond Axe", TieredTool::TIER_DIAMOND)); + self::registerItem(new Stick()); + self::registerItem(new Bowl()); + self::registerItem(new MushroomStew()); + self::registerItem(new Sword(Item::GOLDEN_SWORD, 0, "Gold Sword", TieredTool::TIER_GOLD)); + self::registerItem(new Shovel(Item::GOLDEN_SHOVEL, 0, "Gold Shovel", TieredTool::TIER_GOLD)); + self::registerItem(new Pickaxe(Item::GOLDEN_PICKAXE, 0, "Gold Pickaxe", TieredTool::TIER_GOLD)); + self::registerItem(new Axe(Item::GOLDEN_AXE, 0, "Gold Axe", TieredTool::TIER_GOLD)); + self::registerItem(new StringItem()); + self::registerItem(new Item(Item::FEATHER, 0, "Feather")); + self::registerItem(new Item(Item::GUNPOWDER, 0, "Gunpowder")); + self::registerItem(new Hoe(Item::WOODEN_HOE, 0, "Wooden Hoe", TieredTool::TIER_WOODEN)); + self::registerItem(new Hoe(Item::STONE_HOE, 0, "Stone Hoe", TieredTool::TIER_STONE)); + self::registerItem(new Hoe(Item::IRON_HOE, 0, "Iron Hoe", TieredTool::TIER_IRON)); + self::registerItem(new Hoe(Item::DIAMOND_HOE, 0, "Diamond Hoe", TieredTool::TIER_DIAMOND)); + self::registerItem(new Hoe(Item::GOLDEN_HOE, 0, "Golden Hoe", TieredTool::TIER_GOLD)); + self::registerItem(new WheatSeeds()); + self::registerItem(new Item(Item::WHEAT, 0, "Wheat")); + self::registerItem(new Bread()); + self::registerItem(new LeatherCap()); + self::registerItem(new LeatherTunic()); + self::registerItem(new LeatherPants()); + self::registerItem(new LeatherBoots()); + self::registerItem(new ChainHelmet()); + self::registerItem(new ChainChestplate()); + self::registerItem(new ChainLeggings()); + self::registerItem(new ChainBoots()); + self::registerItem(new IronHelmet()); + self::registerItem(new IronChestplate()); + self::registerItem(new IronLeggings()); + self::registerItem(new IronBoots()); + self::registerItem(new DiamondHelmet()); + self::registerItem(new DiamondChestplate()); + self::registerItem(new DiamondLeggings()); + self::registerItem(new DiamondBoots()); + self::registerItem(new GoldHelmet()); + self::registerItem(new GoldChestplate()); + self::registerItem(new GoldLeggings()); + self::registerItem(new GoldBoots()); + self::registerItem(new Item(Item::FLINT, 0, "Flint")); + self::registerItem(new RawPorkchop()); + self::registerItem(new CookedPorkchop()); + self::registerItem(new Painting()); + self::registerItem(new GoldenApple()); + self::registerItem(new Sign()); + self::registerItem(new ItemBlock(Block::OAK_DOOR_BLOCK, 0, Item::OAK_DOOR)); + self::registerItem(new Bucket()); - self::registerItem(new Minecart()); - //TODO: SADDLE - self::registerItem(new ItemBlock(Block::IRON_DOOR_BLOCK, 0, Item::IRON_DOOR)); - self::registerItem(new Redstone()); - self::registerItem(new Snowball()); - self::registerItem(new Boat()); - self::registerItem(new Item(Item::LEATHER, 0, "Leather")); + self::registerItem(new Minecart()); + //TODO: SADDLE + self::registerItem(new ItemBlock(Block::IRON_DOOR_BLOCK, 0, Item::IRON_DOOR)); + self::registerItem(new Redstone()); + self::registerItem(new Snowball()); + self::registerItem(new Boat()); + self::registerItem(new Item(Item::LEATHER, 0, "Leather")); - self::registerItem(new Item(Item::BRICK, 0, "Brick")); - self::registerItem(new Item(Item::CLAY_BALL, 0, "Clay")); - self::registerItem(new ItemBlock(Block::SUGARCANE_BLOCK, 0, Item::SUGARCANE)); - self::registerItem(new Item(Item::PAPER, 0, "Paper")); - self::registerItem(new Book()); - self::registerItem(new Item(Item::SLIME_BALL, 0, "Slimeball")); - //TODO: CHEST_MINECART + self::registerItem(new Item(Item::BRICK, 0, "Brick")); + self::registerItem(new Item(Item::CLAY_BALL, 0, "Clay")); + self::registerItem(new ItemBlock(Block::SUGARCANE_BLOCK, 0, Item::SUGARCANE)); + self::registerItem(new Item(Item::PAPER, 0, "Paper")); + self::registerItem(new Book()); + self::registerItem(new Item(Item::SLIME_BALL, 0, "Slimeball")); + //TODO: CHEST_MINECART - self::registerItem(new Egg()); - self::registerItem(new Compass()); - self::registerItem(new FishingRod()); - self::registerItem(new Clock()); - self::registerItem(new Item(Item::GLOWSTONE_DUST, 0, "Glowstone Dust")); - self::registerItem(new Fish()); - self::registerItem(new CookedFish()); - self::registerItem(new Dye()); - self::registerItem(new Item(Item::BONE, 0, "Bone")); - self::registerItem(new Item(Item::SUGAR, 0, "Sugar")); - self::registerItem(new ItemBlock(Block::CAKE_BLOCK, 0, Item::CAKE)); - self::registerItem(new Bed()); - self::registerItem(new ItemBlock(Block::REPEATER_BLOCK, 0, Item::REPEATER)); - self::registerItem(new Cookie()); - //TODO: FILLED_MAP - self::registerItem(new Shears()); - self::registerItem(new Melon()); - self::registerItem(new PumpkinSeeds()); - self::registerItem(new MelonSeeds()); - self::registerItem(new RawBeef()); - self::registerItem(new Steak()); - self::registerItem(new RawChicken()); - self::registerItem(new CookedChicken()); - self::registerItem(new RottenFlesh()); - //TODO: ENDER_PEARL - self::registerItem(new BlazeRod()); - self::registerItem(new Item(Item::GHAST_TEAR, 0, "Ghast Tear")); - self::registerItem(new Item(Item::GOLD_NUGGET, 0, "Gold Nugget")); - self::registerItem(new ItemBlock(Block::NETHER_WART_PLANT, 0, Item::NETHER_WART)); - self::registerItem(new Potion()); - self::registerItem(new GlassBottle()); - self::registerItem(new SpiderEye()); - self::registerItem(new Item(Item::FERMENTED_SPIDER_EYE, 0, "Fermented Spider Eye")); - self::registerItem(new Item(Item::BLAZE_POWDER, 0, "Blaze Powder")); - self::registerItem(new Item(Item::MAGMA_CREAM, 0, "Magma Cream")); - self::registerItem(new ItemBlock(Block::BREWING_STAND_BLOCK, 0, Item::BREWING_STAND)); - self::registerItem(new ItemBlock(Block::CAULDRON_BLOCK, 0, Item::CAULDRON)); - //TODO: ENDER_EYE - self::registerItem(new Item(Item::GLISTERING_MELON, 0, "Glistering Melon")); - self::registerItem(new SpawnEgg()); - //TODO: BOTTLE_O_ENCHANTING - //TODO: FIREBALL - self::registerItem(new WritableBook()); - self::registerItem(new WrittenBook()); - self::registerItem(new Item(Item::EMERALD, 0, "Emerald")); - self::registerItem(new ItemBlock(Block::ITEM_FRAME_BLOCK, 0, Item::ITEM_FRAME)); - self::registerItem(new ItemBlock(Block::FLOWER_POT_BLOCK, 0, Item::FLOWER_POT)); - self::registerItem(new Carrot()); - self::registerItem(new Potato()); - self::registerItem(new BakedPotato()); - //TODO: POISONOUS_POTATO - //TODO: EMPTYMAP - self::registerItem(new GoldenCarrot()); - self::registerItem(new ItemBlock(Block::SKULL_BLOCK, 0, Item::SKULL)); - //TODO: CARROTONASTICK - self::registerItem(new Item(Item::NETHER_STAR, 0, "Nether Star")); - self::registerItem(new PumpkinPie()); - //TODO: FIREWORKS - //TODO: FIREWORKSCHARGE - //TODO: ENCHANTED_BOOK - self::registerItem(new ItemBlock(Block::COMPARATOR_BLOCK, 0, Item::COMPARATOR)); - self::registerItem(new Item(Item::NETHER_BRICK, 0, "Nether Brick")); - self::registerItem(new Item(Item::NETHER_QUARTZ, 0, "Nether Quartz")); - //TODO: MINECART_WITH_TNT - //TODO: HOPPER_MINECART - self::registerItem(new Item(Item::PRISMARINE_SHARD, 0, "Prismarine Shard")); - self::registerItem(new ItemBlock(Block::HOPPER_BLOCK, 0, Item::HOPPER)); - //TODO: RABBIT - self::registerItem(new CookedRabbit()); - //TODO: RABBIT_STEW - self::registerItem(new Item(Item::RABBIT_FOOT, 0, "Rabbit's Foot")); - self::registerItem(new Item(Item::RABBIT_HIDE, 0, "Rabbit Hide")); - //TODO: HORSEARMORLEATHER - //TODO: HORSEARMORIRON - //TODO: GOLD_HORSE_ARMOR - //TODO: DIAMOND_HORSE_ARMOR - //TODO: LEAD - //TODO: NAMETAG - self::registerItem(new Item(Item::PRISMARINE_CRYSTALS, 0, "Prismarine Crystals")); - //TODO: MUTTONRAW - //TODO: COOKED_MUTTON - //TODO: ARMOR_STAND - //TODO: END_CRYSTAL - self::registerItem(new ItemBlock(Block::SPRUCE_DOOR_BLOCK, 0, Item::SPRUCE_DOOR)); - self::registerItem(new ItemBlock(Block::BIRCH_DOOR_BLOCK, 0, Item::BIRCH_DOOR)); - self::registerItem(new ItemBlock(Block::JUNGLE_DOOR_BLOCK, 0, Item::JUNGLE_DOOR)); - self::registerItem(new ItemBlock(Block::ACACIA_DOOR_BLOCK, 0, Item::ACACIA_DOOR)); - self::registerItem(new ItemBlock(Block::DARK_OAK_DOOR_BLOCK, 0, Item::DARK_OAK_DOOR)); - self::registerItem(new ChorusFruit()); - self::registerItem(new Item(Item::CHORUS_FRUIT_POPPED, 0, "Popped Chorus Fruit")); + self::registerItem(new Egg()); + self::registerItem(new Compass()); + self::registerItem(new FishingRod()); + self::registerItem(new Clock()); + self::registerItem(new Item(Item::GLOWSTONE_DUST, 0, "Glowstone Dust")); + self::registerItem(new Fish()); + self::registerItem(new CookedFish()); + self::registerItem(new Dye()); + self::registerItem(new Item(Item::BONE, 0, "Bone")); + self::registerItem(new Item(Item::SUGAR, 0, "Sugar")); + self::registerItem(new ItemBlock(Block::CAKE_BLOCK, 0, Item::CAKE)); + self::registerItem(new Bed()); + self::registerItem(new ItemBlock(Block::REPEATER_BLOCK, 0, Item::REPEATER)); + self::registerItem(new Cookie()); + //TODO: FILLED_MAP + self::registerItem(new Shears()); + self::registerItem(new Melon()); + self::registerItem(new PumpkinSeeds()); + self::registerItem(new MelonSeeds()); + self::registerItem(new RawBeef()); + self::registerItem(new Steak()); + self::registerItem(new RawChicken()); + self::registerItem(new CookedChicken()); + self::registerItem(new RottenFlesh()); + //TODO: ENDER_PEARL + self::registerItem(new BlazeRod()); + self::registerItem(new Item(Item::GHAST_TEAR, 0, "Ghast Tear")); + self::registerItem(new Item(Item::GOLD_NUGGET, 0, "Gold Nugget")); + self::registerItem(new ItemBlock(Block::NETHER_WART_PLANT, 0, Item::NETHER_WART)); + self::registerItem(new Potion()); + self::registerItem(new GlassBottle()); + self::registerItem(new SpiderEye()); + self::registerItem(new Item(Item::FERMENTED_SPIDER_EYE, 0, "Fermented Spider Eye")); + self::registerItem(new Item(Item::BLAZE_POWDER, 0, "Blaze Powder")); + self::registerItem(new Item(Item::MAGMA_CREAM, 0, "Magma Cream")); + self::registerItem(new ItemBlock(Block::BREWING_STAND_BLOCK, 0, Item::BREWING_STAND)); + self::registerItem(new ItemBlock(Block::CAULDRON_BLOCK, 0, Item::CAULDRON)); + //TODO: ENDER_EYE + self::registerItem(new Item(Item::GLISTERING_MELON, 0, "Glistering Melon")); + self::registerItem(new SpawnEgg()); + //TODO: BOTTLE_O_ENCHANTING + //TODO: FIREBALL + self::registerItem(new WritableBook()); + self::registerItem(new WrittenBook()); + self::registerItem(new Item(Item::EMERALD, 0, "Emerald")); + self::registerItem(new ItemBlock(Block::ITEM_FRAME_BLOCK, 0, Item::ITEM_FRAME)); + self::registerItem(new ItemBlock(Block::FLOWER_POT_BLOCK, 0, Item::FLOWER_POT)); + self::registerItem(new Carrot()); + self::registerItem(new Potato()); + self::registerItem(new BakedPotato()); + //TODO: POISONOUS_POTATO + //TODO: EMPTYMAP + self::registerItem(new GoldenCarrot()); + self::registerItem(new ItemBlock(Block::SKULL_BLOCK, 0, Item::SKULL)); + //TODO: CARROTONASTICK + self::registerItem(new Item(Item::NETHER_STAR, 0, "Nether Star")); + self::registerItem(new PumpkinPie()); + //TODO: FIREWORKS + //TODO: FIREWORKSCHARGE + //TODO: ENCHANTED_BOOK + self::registerItem(new ItemBlock(Block::COMPARATOR_BLOCK, 0, Item::COMPARATOR)); + self::registerItem(new Item(Item::NETHER_BRICK, 0, "Nether Brick")); + self::registerItem(new Item(Item::NETHER_QUARTZ, 0, "Nether Quartz")); + //TODO: MINECART_WITH_TNT + //TODO: HOPPER_MINECART + self::registerItem(new Item(Item::PRISMARINE_SHARD, 0, "Prismarine Shard")); + self::registerItem(new ItemBlock(Block::HOPPER_BLOCK, 0, Item::HOPPER)); + //TODO: RABBIT + self::registerItem(new CookedRabbit()); + //TODO: RABBIT_STEW + self::registerItem(new Item(Item::RABBIT_FOOT, 0, "Rabbit's Foot")); + self::registerItem(new Item(Item::RABBIT_HIDE, 0, "Rabbit Hide")); + //TODO: HORSEARMORLEATHER + //TODO: HORSEARMORIRON + //TODO: GOLD_HORSE_ARMOR + //TODO: DIAMOND_HORSE_ARMOR + //TODO: LEAD + //TODO: NAMETAG + self::registerItem(new Item(Item::PRISMARINE_CRYSTALS, 0, "Prismarine Crystals")); + //TODO: MUTTONRAW + //TODO: COOKED_MUTTON + //TODO: ARMOR_STAND + //TODO: END_CRYSTAL + self::registerItem(new ItemBlock(Block::SPRUCE_DOOR_BLOCK, 0, Item::SPRUCE_DOOR)); + self::registerItem(new ItemBlock(Block::BIRCH_DOOR_BLOCK, 0, Item::BIRCH_DOOR)); + self::registerItem(new ItemBlock(Block::JUNGLE_DOOR_BLOCK, 0, Item::JUNGLE_DOOR)); + self::registerItem(new ItemBlock(Block::ACACIA_DOOR_BLOCK, 0, Item::ACACIA_DOOR)); + self::registerItem(new ItemBlock(Block::DARK_OAK_DOOR_BLOCK, 0, Item::DARK_OAK_DOOR)); + self::registerItem(new ChorusFruit()); + self::registerItem(new Item(Item::CHORUS_FRUIT_POPPED, 0, "Popped Chorus Fruit")); - //TODO: DRAGON_BREATH - //TODO: SPLASH_POTION + //TODO: DRAGON_BREATH + //TODO: SPLASH_POTION - //TODO: LINGERING_POTION + //TODO: LINGERING_POTION - //TODO: COMMAND_BLOCK_MINECART - //TODO: ELYTRA - self::registerItem(new Item(Item::SHULKER_SHELL, 0, "Shulker Shell")); - self::registerItem(new Banner()); + //TODO: COMMAND_BLOCK_MINECART + //TODO: ELYTRA + self::registerItem(new Item(Item::SHULKER_SHELL, 0, "Shulker Shell")); + self::registerItem(new Banner()); - //TODO: TOTEM + //TODO: TOTEM - self::registerItem(new Item(Item::IRON_NUGGET, 0, "Iron Nugget")); + self::registerItem(new Item(Item::IRON_NUGGET, 0, "Iron Nugget")); - self::registerItem(new Beetroot()); - self::registerItem(new BeetrootSeeds()); - self::registerItem(new BeetrootSoup()); - //TODO: RAW_SALMON - //TODO: CLOWNFISH - //TODO: PUFFERFISH - //TODO: COOKED_SALMON + self::registerItem(new Beetroot()); + self::registerItem(new BeetrootSeeds()); + self::registerItem(new BeetrootSoup()); + //TODO: RAW_SALMON + //TODO: CLOWNFISH + //TODO: PUFFERFISH + //TODO: COOKED_SALMON - self::registerItem(new GoldenAppleEnchanted()); + self::registerItem(new GoldenAppleEnchanted()); - //TODO: RECORD_13 - //TODO: RECORD_CAT - //TODO: RECORD_BLOCKS - //TODO: RECORD_CHIRP - //TODO: RECORD_FAR - //TODO: RECORD_MALL - //TODO: RECORD_MELLOHI - //TODO: RECORD_STAL - //TODO: RECORD_STRAD - //TODO: RECORD_WARD - //TODO: RECORD_11 - //TODO: RECORD_WAIT - } + //TODO: RECORD_13 + //TODO: RECORD_CAT + //TODO: RECORD_BLOCKS + //TODO: RECORD_CHIRP + //TODO: RECORD_FAR + //TODO: RECORD_MALL + //TODO: RECORD_MELLOHI + //TODO: RECORD_STAL + //TODO: RECORD_STRAD + //TODO: RECORD_WARD + //TODO: RECORD_11 + //TODO: RECORD_WAIT } /** diff --git a/tests/plugins/PocketMine-TesterPlugin b/tests/plugins/PocketMine-TesterPlugin index cc9a6402e..b41d9836e 160000 --- a/tests/plugins/PocketMine-TesterPlugin +++ b/tests/plugins/PocketMine-TesterPlugin @@ -1 +1 @@ -Subproject commit cc9a6402efa486e5dd7c39732f81702af1569707 +Subproject commit b41d9836e4edec015cb92e3a4b42cfdaa566b34b