BlockFactory: added getAllKnownStates()

This commit is contained in:
Dylan K. Taylor 2019-02-24 13:40:59 +00:00
parent 73305a7425
commit 6edd4fd9c7

View File

@ -31,6 +31,7 @@ use pocketmine\block\utils\TreeType;
use pocketmine\item\ItemIds; use pocketmine\item\ItemIds;
use pocketmine\level\Position; use pocketmine\level\Position;
use function array_fill; use function array_fill;
use function array_filter;
use function file_get_contents; use function file_get_contents;
use function get_class; use function get_class;
use function json_decode; use function json_decode;
@ -675,4 +676,11 @@ class BlockFactory{
self::$legacyIdMap[$staticRuntimeId] = ($legacyId << 4) | $legacyMeta; self::$legacyIdMap[$staticRuntimeId] = ($legacyId << 4) | $legacyMeta;
self::$lastRuntimeId = max(self::$lastRuntimeId, $staticRuntimeId); self::$lastRuntimeId = max(self::$lastRuntimeId, $staticRuntimeId);
} }
/**
* @return Block[]
*/
public static function getAllKnownStates() : array{
return array_filter(self::$fullList->toArray(), function(?Block $v) : bool{ return $v !== null; });
}
} }