mirror of
https://github.com/pmmp/PocketMine-MP.git
synced 2025-04-21 08:17:34 +00:00
Concrete and ConcretePowder colour is now dynamic
This commit is contained in:
parent
3aca03d262
commit
0ef0848c44
@ -470,8 +470,6 @@ class BlockFactory{
|
||||
return $color->getDisplayName() . " " . $name;
|
||||
};
|
||||
$this->register(new Carpet(new BID(Ids::CARPET, $colorIdMap->toId($color)), $coloredName("Carpet")));
|
||||
$this->register(new Concrete(new BID(Ids::CONCRETE, $colorIdMap->toId($color)), $coloredName("Concrete")));
|
||||
$this->register(new ConcretePowder(new BID(Ids::CONCRETE_POWDER, $colorIdMap->toId($color)), $coloredName("Concrete Powder")));
|
||||
$this->register(new Glass(new BID(Ids::STAINED_GLASS, $colorIdMap->toId($color)), $coloredName("Stained Glass")));
|
||||
$this->register(new GlassPane(new BID(Ids::STAINED_GLASS_PANE, $colorIdMap->toId($color)), $coloredName("Stained Glass Pane")));
|
||||
$this->register(new GlazedTerracotta(BlockLegacyIdHelper::getGlazedTerracottaIdentifier($color), $coloredName("Glazed Terracotta")));
|
||||
@ -480,6 +478,8 @@ class BlockFactory{
|
||||
$this->register(new HardenedGlassPane(new BID(Ids::HARD_STAINED_GLASS_PANE, $colorIdMap->toId($color)), "Hardened " . $coloredName("Stained Glass Pane")));
|
||||
$this->register(new Wool(new BID(Ids::WOOL, $colorIdMap->toId($color)), $coloredName("Wool")));
|
||||
}
|
||||
$this->register(new Concrete(new BID(Ids::CONCRETE), "Concrete"));
|
||||
$this->register(new ConcretePowder(new BID(Ids::CONCRETE_POWDER), "Concrete Powder"));
|
||||
|
||||
$this->register(new Wall(new BID(Ids::COBBLESTONE_WALL, Meta::WALL_ANDESITE), "Andesite Wall"));
|
||||
$this->register(new Wall(new BID(Ids::COBBLESTONE_WALL, Meta::WALL_BRICK), "Brick Wall"));
|
||||
|
@ -23,9 +23,11 @@ declare(strict_types=1);
|
||||
|
||||
namespace pocketmine\block;
|
||||
|
||||
use pocketmine\block\utils\ColorInMetadataTrait;
|
||||
use pocketmine\item\ToolTier;
|
||||
|
||||
class Concrete extends Opaque{
|
||||
use ColorInMetadataTrait;
|
||||
|
||||
public function __construct(BlockIdentifier $idInfo, string $name, ?BlockBreakInfo $breakInfo = null){
|
||||
parent::__construct($idInfo, $name, $breakInfo ?? new BlockBreakInfo(1.8, BlockToolType::PICKAXE, ToolTier::WOOD()->getHarvestLevel()));
|
||||
|
@ -23,11 +23,13 @@ declare(strict_types=1);
|
||||
|
||||
namespace pocketmine\block;
|
||||
|
||||
use pocketmine\block\utils\ColorInMetadataTrait;
|
||||
use pocketmine\block\utils\Fallable;
|
||||
use pocketmine\block\utils\FallableTrait;
|
||||
use pocketmine\math\Facing;
|
||||
|
||||
class ConcretePowder extends Opaque implements Fallable{
|
||||
use ColorInMetadataTrait;
|
||||
use FallableTrait {
|
||||
onNearbyBlockChange as protected startFalling;
|
||||
}
|
||||
@ -54,7 +56,7 @@ class ConcretePowder extends Opaque implements Fallable{
|
||||
continue;
|
||||
}
|
||||
if($this->getSide($i) instanceof Water){
|
||||
return BlockFactory::getInstance()->get(BlockLegacyIds::CONCRETE, $this->idInfo->getVariant());
|
||||
return VanillaBlocks::CONCRETE()->setColor($this->color);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -79,16 +79,12 @@ use function assert;
|
||||
* @method static WallSign BIRCH_WALL_SIGN()
|
||||
* @method static Wood BIRCH_WOOD()
|
||||
* @method static Carpet BLACK_CARPET()
|
||||
* @method static Concrete BLACK_CONCRETE()
|
||||
* @method static ConcretePowder BLACK_CONCRETE_POWDER()
|
||||
* @method static GlazedTerracotta BLACK_GLAZED_TERRACOTTA()
|
||||
* @method static HardenedClay BLACK_STAINED_CLAY()
|
||||
* @method static Glass BLACK_STAINED_GLASS()
|
||||
* @method static GlassPane BLACK_STAINED_GLASS_PANE()
|
||||
* @method static Wool BLACK_WOOL()
|
||||
* @method static Carpet BLUE_CARPET()
|
||||
* @method static Concrete BLUE_CONCRETE()
|
||||
* @method static ConcretePowder BLUE_CONCRETE_POWDER()
|
||||
* @method static GlazedTerracotta BLUE_GLAZED_TERRACOTTA()
|
||||
* @method static BlueIce BLUE_ICE()
|
||||
* @method static Flower BLUE_ORCHID()
|
||||
@ -105,8 +101,6 @@ use function assert;
|
||||
* @method static Wall BRICK_WALL()
|
||||
* @method static Opaque BRICKS()
|
||||
* @method static Carpet BROWN_CARPET()
|
||||
* @method static Concrete BROWN_CONCRETE()
|
||||
* @method static ConcretePowder BROWN_CONCRETE_POWDER()
|
||||
* @method static GlazedTerracotta BROWN_GLAZED_TERRACOTTA()
|
||||
* @method static BrownMushroom BROWN_MUSHROOM()
|
||||
* @method static BrownMushroomBlock BROWN_MUSHROOM_BLOCK()
|
||||
@ -135,6 +129,8 @@ use function assert;
|
||||
* @method static Cobweb COBWEB()
|
||||
* @method static CocoaBlock COCOA_POD()
|
||||
* @method static ChemistryTable COMPOUND_CREATOR()
|
||||
* @method static Concrete CONCRETE()
|
||||
* @method static ConcretePowder CONCRETE_POWDER()
|
||||
* @method static Flower CORNFLOWER()
|
||||
* @method static Opaque CRACKED_STONE_BRICKS()
|
||||
* @method static CraftingTable CRAFTING_TABLE()
|
||||
@ -143,8 +139,6 @@ use function assert;
|
||||
* @method static Opaque CUT_SANDSTONE()
|
||||
* @method static Slab CUT_SANDSTONE_SLAB()
|
||||
* @method static Carpet CYAN_CARPET()
|
||||
* @method static Concrete CYAN_CONCRETE()
|
||||
* @method static ConcretePowder CYAN_CONCRETE_POWDER()
|
||||
* @method static GlazedTerracotta CYAN_GLAZED_TERRACOTTA()
|
||||
* @method static HardenedClay CYAN_STAINED_CLAY()
|
||||
* @method static Glass CYAN_STAINED_GLASS()
|
||||
@ -334,16 +328,12 @@ use function assert;
|
||||
* @method static GrassPath GRASS_PATH()
|
||||
* @method static Gravel GRAVEL()
|
||||
* @method static Carpet GRAY_CARPET()
|
||||
* @method static Concrete GRAY_CONCRETE()
|
||||
* @method static ConcretePowder GRAY_CONCRETE_POWDER()
|
||||
* @method static GlazedTerracotta GRAY_GLAZED_TERRACOTTA()
|
||||
* @method static HardenedClay GRAY_STAINED_CLAY()
|
||||
* @method static Glass GRAY_STAINED_GLASS()
|
||||
* @method static GlassPane GRAY_STAINED_GLASS_PANE()
|
||||
* @method static Wool GRAY_WOOL()
|
||||
* @method static Carpet GREEN_CARPET()
|
||||
* @method static Concrete GREEN_CONCRETE()
|
||||
* @method static ConcretePowder GREEN_CONCRETE_POWDER()
|
||||
* @method static GlazedTerracotta GREEN_GLAZED_TERRACOTTA()
|
||||
* @method static HardenedClay GREEN_STAINED_CLAY()
|
||||
* @method static Glass GREEN_STAINED_GLASS()
|
||||
@ -429,16 +419,12 @@ use function assert;
|
||||
* @method static Opaque LEGACY_STONECUTTER()
|
||||
* @method static Lever LEVER()
|
||||
* @method static Carpet LIGHT_BLUE_CARPET()
|
||||
* @method static Concrete LIGHT_BLUE_CONCRETE()
|
||||
* @method static ConcretePowder LIGHT_BLUE_CONCRETE_POWDER()
|
||||
* @method static GlazedTerracotta LIGHT_BLUE_GLAZED_TERRACOTTA()
|
||||
* @method static HardenedClay LIGHT_BLUE_STAINED_CLAY()
|
||||
* @method static Glass LIGHT_BLUE_STAINED_GLASS()
|
||||
* @method static GlassPane LIGHT_BLUE_STAINED_GLASS_PANE()
|
||||
* @method static Wool LIGHT_BLUE_WOOL()
|
||||
* @method static Carpet LIGHT_GRAY_CARPET()
|
||||
* @method static Concrete LIGHT_GRAY_CONCRETE()
|
||||
* @method static ConcretePowder LIGHT_GRAY_CONCRETE_POWDER()
|
||||
* @method static GlazedTerracotta LIGHT_GRAY_GLAZED_TERRACOTTA()
|
||||
* @method static HardenedClay LIGHT_GRAY_STAINED_CLAY()
|
||||
* @method static Glass LIGHT_GRAY_STAINED_GLASS()
|
||||
@ -448,8 +434,6 @@ use function assert;
|
||||
* @method static Flower LILY_OF_THE_VALLEY()
|
||||
* @method static WaterLily LILY_PAD()
|
||||
* @method static Carpet LIME_CARPET()
|
||||
* @method static Concrete LIME_CONCRETE()
|
||||
* @method static ConcretePowder LIME_CONCRETE_POWDER()
|
||||
* @method static GlazedTerracotta LIME_GLAZED_TERRACOTTA()
|
||||
* @method static HardenedClay LIME_STAINED_CLAY()
|
||||
* @method static Glass LIME_STAINED_GLASS()
|
||||
@ -457,8 +441,6 @@ use function assert;
|
||||
* @method static Wool LIME_WOOL()
|
||||
* @method static LitPumpkin LIT_PUMPKIN()
|
||||
* @method static Carpet MAGENTA_CARPET()
|
||||
* @method static Concrete MAGENTA_CONCRETE()
|
||||
* @method static ConcretePowder MAGENTA_CONCRETE_POWDER()
|
||||
* @method static GlazedTerracotta MAGENTA_GLAZED_TERRACOTTA()
|
||||
* @method static HardenedClay MAGENTA_STAINED_CLAY()
|
||||
* @method static Glass MAGENTA_STAINED_GLASS()
|
||||
@ -508,8 +490,6 @@ use function assert;
|
||||
* @method static Wood OAK_WOOD()
|
||||
* @method static Opaque OBSIDIAN()
|
||||
* @method static Carpet ORANGE_CARPET()
|
||||
* @method static Concrete ORANGE_CONCRETE()
|
||||
* @method static ConcretePowder ORANGE_CONCRETE_POWDER()
|
||||
* @method static GlazedTerracotta ORANGE_GLAZED_TERRACOTTA()
|
||||
* @method static HardenedClay ORANGE_STAINED_CLAY()
|
||||
* @method static Glass ORANGE_STAINED_GLASS()
|
||||
@ -520,8 +500,6 @@ use function assert;
|
||||
* @method static PackedIce PACKED_ICE()
|
||||
* @method static DoublePlant PEONY()
|
||||
* @method static Carpet PINK_CARPET()
|
||||
* @method static Concrete PINK_CONCRETE()
|
||||
* @method static ConcretePowder PINK_CONCRETE_POWDER()
|
||||
* @method static GlazedTerracotta PINK_GLAZED_TERRACOTTA()
|
||||
* @method static HardenedClay PINK_STAINED_CLAY()
|
||||
* @method static Glass PINK_STAINED_GLASS()
|
||||
@ -551,8 +529,6 @@ use function assert;
|
||||
* @method static Opaque PUMPKIN()
|
||||
* @method static PumpkinStem PUMPKIN_STEM()
|
||||
* @method static Carpet PURPLE_CARPET()
|
||||
* @method static Concrete PURPLE_CONCRETE()
|
||||
* @method static ConcretePowder PURPLE_CONCRETE_POWDER()
|
||||
* @method static GlazedTerracotta PURPLE_GLAZED_TERRACOTTA()
|
||||
* @method static HardenedClay PURPLE_STAINED_CLAY()
|
||||
* @method static Glass PURPLE_STAINED_GLASS()
|
||||
@ -569,8 +545,6 @@ use function assert;
|
||||
* @method static Stair QUARTZ_STAIRS()
|
||||
* @method static Rail RAIL()
|
||||
* @method static Carpet RED_CARPET()
|
||||
* @method static Concrete RED_CONCRETE()
|
||||
* @method static ConcretePowder RED_CONCRETE_POWDER()
|
||||
* @method static GlazedTerracotta RED_GLAZED_TERRACOTTA()
|
||||
* @method static RedMushroom RED_MUSHROOM()
|
||||
* @method static RedMushroomBlock RED_MUSHROOM_BLOCK()
|
||||
@ -660,8 +634,6 @@ use function assert;
|
||||
* @method static WeightedPressurePlateLight WEIGHTED_PRESSURE_PLATE_LIGHT()
|
||||
* @method static Wheat WHEAT()
|
||||
* @method static Carpet WHITE_CARPET()
|
||||
* @method static Concrete WHITE_CONCRETE()
|
||||
* @method static ConcretePowder WHITE_CONCRETE_POWDER()
|
||||
* @method static GlazedTerracotta WHITE_GLAZED_TERRACOTTA()
|
||||
* @method static HardenedClay WHITE_STAINED_CLAY()
|
||||
* @method static Glass WHITE_STAINED_GLASS()
|
||||
@ -669,8 +641,6 @@ use function assert;
|
||||
* @method static Flower WHITE_TULIP()
|
||||
* @method static Wool WHITE_WOOL()
|
||||
* @method static Carpet YELLOW_CARPET()
|
||||
* @method static Concrete YELLOW_CONCRETE()
|
||||
* @method static ConcretePowder YELLOW_CONCRETE_POWDER()
|
||||
* @method static GlazedTerracotta YELLOW_GLAZED_TERRACOTTA()
|
||||
* @method static HardenedClay YELLOW_STAINED_CLAY()
|
||||
* @method static Glass YELLOW_STAINED_GLASS()
|
||||
@ -754,16 +724,12 @@ final class VanillaBlocks{
|
||||
self::register("birch_wall_sign", $factory->get(442, 2));
|
||||
self::register("birch_wood", $factory->get(467, 2));
|
||||
self::register("black_carpet", $factory->get(171, 15));
|
||||
self::register("black_concrete", $factory->get(236, 15));
|
||||
self::register("black_concrete_powder", $factory->get(237, 15));
|
||||
self::register("black_glazed_terracotta", $factory->get(235, 2));
|
||||
self::register("black_stained_clay", $factory->get(159, 15));
|
||||
self::register("black_stained_glass", $factory->get(241, 15));
|
||||
self::register("black_stained_glass_pane", $factory->get(160, 15));
|
||||
self::register("black_wool", $factory->get(35, 15));
|
||||
self::register("blue_carpet", $factory->get(171, 11));
|
||||
self::register("blue_concrete", $factory->get(236, 11));
|
||||
self::register("blue_concrete_powder", $factory->get(237, 11));
|
||||
self::register("blue_glazed_terracotta", $factory->get(231, 2));
|
||||
self::register("blue_ice", $factory->get(266));
|
||||
self::register("blue_orchid", $factory->get(38, 1));
|
||||
@ -780,8 +746,6 @@ final class VanillaBlocks{
|
||||
self::register("brick_wall", $factory->get(139, 6));
|
||||
self::register("bricks", $factory->get(45));
|
||||
self::register("brown_carpet", $factory->get(171, 12));
|
||||
self::register("brown_concrete", $factory->get(236, 12));
|
||||
self::register("brown_concrete_powder", $factory->get(237, 12));
|
||||
self::register("brown_glazed_terracotta", $factory->get(232, 2));
|
||||
self::register("brown_mushroom", $factory->get(39));
|
||||
self::register("brown_mushroom_block", $factory->get(99));
|
||||
@ -810,6 +774,8 @@ final class VanillaBlocks{
|
||||
self::register("cobweb", $factory->get(30));
|
||||
self::register("cocoa_pod", $factory->get(127));
|
||||
self::register("compound_creator", $factory->get(238));
|
||||
self::register("concrete", $factory->get(236));
|
||||
self::register("concrete_powder", $factory->get(237));
|
||||
self::register("cornflower", $factory->get(38, 9));
|
||||
self::register("cracked_stone_bricks", $factory->get(98, 2));
|
||||
self::register("crafting_table", $factory->get(58));
|
||||
@ -818,8 +784,6 @@ final class VanillaBlocks{
|
||||
self::register("cut_sandstone", $factory->get(24, 2));
|
||||
self::register("cut_sandstone_slab", $factory->get(421, 3));
|
||||
self::register("cyan_carpet", $factory->get(171, 9));
|
||||
self::register("cyan_concrete", $factory->get(236, 9));
|
||||
self::register("cyan_concrete_powder", $factory->get(237, 9));
|
||||
self::register("cyan_glazed_terracotta", $factory->get(229, 2));
|
||||
self::register("cyan_stained_clay", $factory->get(159, 9));
|
||||
self::register("cyan_stained_glass", $factory->get(241, 9));
|
||||
@ -1009,16 +973,12 @@ final class VanillaBlocks{
|
||||
self::register("grass_path", $factory->get(198));
|
||||
self::register("gravel", $factory->get(13));
|
||||
self::register("gray_carpet", $factory->get(171, 7));
|
||||
self::register("gray_concrete", $factory->get(236, 7));
|
||||
self::register("gray_concrete_powder", $factory->get(237, 7));
|
||||
self::register("gray_glazed_terracotta", $factory->get(227, 2));
|
||||
self::register("gray_stained_clay", $factory->get(159, 7));
|
||||
self::register("gray_stained_glass", $factory->get(241, 7));
|
||||
self::register("gray_stained_glass_pane", $factory->get(160, 7));
|
||||
self::register("gray_wool", $factory->get(35, 7));
|
||||
self::register("green_carpet", $factory->get(171, 13));
|
||||
self::register("green_concrete", $factory->get(236, 13));
|
||||
self::register("green_concrete_powder", $factory->get(237, 13));
|
||||
self::register("green_glazed_terracotta", $factory->get(233, 2));
|
||||
self::register("green_stained_clay", $factory->get(159, 13));
|
||||
self::register("green_stained_glass", $factory->get(241, 13));
|
||||
@ -1104,16 +1064,12 @@ final class VanillaBlocks{
|
||||
self::register("legacy_stonecutter", $factory->get(245));
|
||||
self::register("lever", $factory->get(69));
|
||||
self::register("light_blue_carpet", $factory->get(171, 3));
|
||||
self::register("light_blue_concrete", $factory->get(236, 3));
|
||||
self::register("light_blue_concrete_powder", $factory->get(237, 3));
|
||||
self::register("light_blue_glazed_terracotta", $factory->get(223, 2));
|
||||
self::register("light_blue_stained_clay", $factory->get(159, 3));
|
||||
self::register("light_blue_stained_glass", $factory->get(241, 3));
|
||||
self::register("light_blue_stained_glass_pane", $factory->get(160, 3));
|
||||
self::register("light_blue_wool", $factory->get(35, 3));
|
||||
self::register("light_gray_carpet", $factory->get(171, 8));
|
||||
self::register("light_gray_concrete", $factory->get(236, 8));
|
||||
self::register("light_gray_concrete_powder", $factory->get(237, 8));
|
||||
self::register("light_gray_glazed_terracotta", $factory->get(228, 2));
|
||||
self::register("light_gray_stained_clay", $factory->get(159, 8));
|
||||
self::register("light_gray_stained_glass", $factory->get(241, 8));
|
||||
@ -1123,8 +1079,6 @@ final class VanillaBlocks{
|
||||
self::register("lily_of_the_valley", $factory->get(38, 10));
|
||||
self::register("lily_pad", $factory->get(111));
|
||||
self::register("lime_carpet", $factory->get(171, 5));
|
||||
self::register("lime_concrete", $factory->get(236, 5));
|
||||
self::register("lime_concrete_powder", $factory->get(237, 5));
|
||||
self::register("lime_glazed_terracotta", $factory->get(225, 2));
|
||||
self::register("lime_stained_clay", $factory->get(159, 5));
|
||||
self::register("lime_stained_glass", $factory->get(241, 5));
|
||||
@ -1132,8 +1086,6 @@ final class VanillaBlocks{
|
||||
self::register("lime_wool", $factory->get(35, 5));
|
||||
self::register("lit_pumpkin", $factory->get(91));
|
||||
self::register("magenta_carpet", $factory->get(171, 2));
|
||||
self::register("magenta_concrete", $factory->get(236, 2));
|
||||
self::register("magenta_concrete_powder", $factory->get(237, 2));
|
||||
self::register("magenta_glazed_terracotta", $factory->get(222, 2));
|
||||
self::register("magenta_stained_clay", $factory->get(159, 2));
|
||||
self::register("magenta_stained_glass", $factory->get(241, 2));
|
||||
@ -1183,8 +1135,6 @@ final class VanillaBlocks{
|
||||
self::register("oak_wood", $factory->get(467));
|
||||
self::register("obsidian", $factory->get(49));
|
||||
self::register("orange_carpet", $factory->get(171, 1));
|
||||
self::register("orange_concrete", $factory->get(236, 1));
|
||||
self::register("orange_concrete_powder", $factory->get(237, 1));
|
||||
self::register("orange_glazed_terracotta", $factory->get(221, 2));
|
||||
self::register("orange_stained_clay", $factory->get(159, 1));
|
||||
self::register("orange_stained_glass", $factory->get(241, 1));
|
||||
@ -1195,8 +1145,6 @@ final class VanillaBlocks{
|
||||
self::register("packed_ice", $factory->get(174));
|
||||
self::register("peony", $factory->get(175, 5));
|
||||
self::register("pink_carpet", $factory->get(171, 6));
|
||||
self::register("pink_concrete", $factory->get(236, 6));
|
||||
self::register("pink_concrete_powder", $factory->get(237, 6));
|
||||
self::register("pink_glazed_terracotta", $factory->get(226, 2));
|
||||
self::register("pink_stained_clay", $factory->get(159, 6));
|
||||
self::register("pink_stained_glass", $factory->get(241, 6));
|
||||
@ -1226,8 +1174,6 @@ final class VanillaBlocks{
|
||||
self::register("pumpkin", $factory->get(86));
|
||||
self::register("pumpkin_stem", $factory->get(104));
|
||||
self::register("purple_carpet", $factory->get(171, 10));
|
||||
self::register("purple_concrete", $factory->get(236, 10));
|
||||
self::register("purple_concrete_powder", $factory->get(237, 10));
|
||||
self::register("purple_glazed_terracotta", $factory->get(219, 2));
|
||||
self::register("purple_stained_clay", $factory->get(159, 10));
|
||||
self::register("purple_stained_glass", $factory->get(241, 10));
|
||||
@ -1244,8 +1190,6 @@ final class VanillaBlocks{
|
||||
self::register("quartz_stairs", $factory->get(156));
|
||||
self::register("rail", $factory->get(66));
|
||||
self::register("red_carpet", $factory->get(171, 14));
|
||||
self::register("red_concrete", $factory->get(236, 14));
|
||||
self::register("red_concrete_powder", $factory->get(237, 14));
|
||||
self::register("red_glazed_terracotta", $factory->get(234, 2));
|
||||
self::register("red_mushroom", $factory->get(40));
|
||||
self::register("red_mushroom_block", $factory->get(100));
|
||||
@ -1335,8 +1279,6 @@ final class VanillaBlocks{
|
||||
self::register("weighted_pressure_plate_light", $factory->get(147));
|
||||
self::register("wheat", $factory->get(59));
|
||||
self::register("white_carpet", $factory->get(171));
|
||||
self::register("white_concrete", $factory->get(236));
|
||||
self::register("white_concrete_powder", $factory->get(237));
|
||||
self::register("white_glazed_terracotta", $factory->get(220, 2));
|
||||
self::register("white_stained_clay", $factory->get(159));
|
||||
self::register("white_stained_glass", $factory->get(241));
|
||||
@ -1344,8 +1286,6 @@ final class VanillaBlocks{
|
||||
self::register("white_tulip", $factory->get(38, 6));
|
||||
self::register("white_wool", $factory->get(35));
|
||||
self::register("yellow_carpet", $factory->get(171, 4));
|
||||
self::register("yellow_concrete", $factory->get(236, 4));
|
||||
self::register("yellow_concrete_powder", $factory->get(237, 4));
|
||||
self::register("yellow_glazed_terracotta", $factory->get(224, 2));
|
||||
self::register("yellow_stained_clay", $factory->get(159, 4));
|
||||
self::register("yellow_stained_glass", $factory->get(241, 4));
|
||||
|
59
src/block/utils/ColorInMetadataTrait.php
Normal file
59
src/block/utils/ColorInMetadataTrait.php
Normal file
@ -0,0 +1,59 @@
|
||||
<?php
|
||||
|
||||
/*
|
||||
*
|
||||
* ____ _ _ __ __ _ __ __ ____
|
||||
* | _ \ ___ ___| | _____| |_| \/ (_)_ __ ___ | \/ | _ \
|
||||
* | |_) / _ \ / __| |/ / _ \ __| |\/| | | '_ \ / _ \_____| |\/| | |_) |
|
||||
* | __/ (_) | (__| < __/ |_| | | | | | | | __/_____| | | | __/
|
||||
* |_| \___/ \___|_|\_\___|\__|_| |_|_|_| |_|\___| |_| |_|_|
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Lesser General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* @author PocketMine Team
|
||||
* @link http://www.pocketmine.net/
|
||||
*
|
||||
*
|
||||
*/
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace pocketmine\block\utils;
|
||||
|
||||
use pocketmine\block\Block;
|
||||
use pocketmine\data\bedrock\DyeColorIdMap;
|
||||
|
||||
trait ColorInMetadataTrait{
|
||||
use ColoredTrait;
|
||||
|
||||
/**
|
||||
* @see Block::readStateFromData()
|
||||
*/
|
||||
public function readStateFromData(int $id, int $stateMeta) : void{
|
||||
$this->color = DyeColorIdMap::getInstance()->fromId($stateMeta);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see Block::writeStateToMeta()
|
||||
*/
|
||||
protected function writeStateToMeta() : int{
|
||||
return DyeColorIdMap::getInstance()->toId($this->color);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see Block::getStateBitmask()
|
||||
*/
|
||||
public function getStateBitmask() : int{
|
||||
return 0b1111;
|
||||
}
|
||||
|
||||
/**
|
||||
* @see Block::getNonPersistentStateBitmask()
|
||||
*/
|
||||
public function getNonPersistentStateBitmask() : int{
|
||||
return 0;
|
||||
}
|
||||
}
|
37
src/block/utils/ColoredTrait.php
Normal file
37
src/block/utils/ColoredTrait.php
Normal file
@ -0,0 +1,37 @@
|
||||
<?php
|
||||
|
||||
/*
|
||||
*
|
||||
* ____ _ _ __ __ _ __ __ ____
|
||||
* | _ \ ___ ___| | _____| |_| \/ (_)_ __ ___ | \/ | _ \
|
||||
* | |_) / _ \ / __| |/ / _ \ __| |\/| | | '_ \ / _ \_____| |\/| | |_) |
|
||||
* | __/ (_) | (__| < __/ |_| | | | | | | | __/_____| | | | __/
|
||||
* |_| \___/ \___|_|\_\___|\__|_| |_|_|_| |_|\___| |_| |_|_|
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Lesser General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* @author PocketMine Team
|
||||
* @link http://www.pocketmine.net/
|
||||
*
|
||||
*
|
||||
*/
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace pocketmine\block\utils;
|
||||
|
||||
trait ColoredTrait{
|
||||
/** @var DyeColor */
|
||||
private $color;
|
||||
|
||||
public function getColor() : DyeColor{ return $this->color; }
|
||||
|
||||
/** @return $this */
|
||||
public function setColor(DyeColor $color) : self{
|
||||
$this->color = $color;
|
||||
return $this;
|
||||
}
|
||||
}
|
File diff suppressed because one or more lines are too long
Loading…
x
Reference in New Issue
Block a user