Remove obsolete TreeType magic numbers

This commit is contained in:
Dylan K. Taylor
2022-08-26 17:07:35 +01:00
parent 64ac20173b
commit 4bd2325828

View File

@@ -44,42 +44,20 @@ final class TreeType{
__construct as Enum___construct; __construct as Enum___construct;
} }
/** @var TreeType[] */
private static array $numericIdMap = [];
protected static function setup() : void{ protected static function setup() : void{
self::registerAll( self::registerAll(
new TreeType("oak", "Oak", 0), new TreeType("oak", "Oak"),
new TreeType("spruce", "Spruce", 1), new TreeType("spruce", "Spruce"),
new TreeType("birch", "Birch", 2), new TreeType("birch", "Birch"),
new TreeType("jungle", "Jungle", 3), new TreeType("jungle", "Jungle"),
new TreeType("acacia", "Acacia", 4), new TreeType("acacia", "Acacia"),
new TreeType("dark_oak", "Dark Oak", 5) new TreeType("dark_oak", "Dark Oak")
); );
} }
protected static function register(TreeType $type) : void{
self::Enum_register($type);
self::$numericIdMap[$type->getMagicNumber()] = $type;
}
/**
* @internal
*
* @throws \InvalidArgumentException
*/
public static function fromMagicNumber(int $magicNumber) : TreeType{
self::checkInit();
if(!isset(self::$numericIdMap[$magicNumber])){
throw new \InvalidArgumentException("Unknown tree type magic number $magicNumber");
}
return self::$numericIdMap[$magicNumber];
}
private function __construct( private function __construct(
string $enumName, string $enumName,
private string $displayName, private string $displayName
private int $magicNumber
){ ){
$this->Enum___construct($enumName); $this->Enum___construct($enumName);
} }
@@ -87,8 +65,4 @@ final class TreeType{
public function getDisplayName() : string{ public function getDisplayName() : string{
return $this->displayName; return $this->displayName;
} }
public function getMagicNumber() : int{
return $this->magicNumber;
}
} }