diff --git a/src/data/bedrock/block/upgrade/BlockStateUpgradeSchemaUtils.php b/src/data/bedrock/block/upgrade/BlockStateUpgradeSchemaUtils.php index 64f79663e..03019aeab 100644 --- a/src/data/bedrock/block/upgrade/BlockStateUpgradeSchemaUtils.php +++ b/src/data/bedrock/block/upgrade/BlockStateUpgradeSchemaUtils.php @@ -150,9 +150,9 @@ final class BlockStateUpgradeSchemaUtils{ foreach(Utils::stringifyKeys($model->remappedStates ?? []) as $oldBlockName => $remaps){ foreach($remaps as $remap){ $result->remappedStates[$oldBlockName][] = new BlockStateUpgradeSchemaBlockRemap( - array_map(fn(BlockStateUpgradeSchemaModelTag $tag) => self::jsonModelToTag($tag), $remap->oldState), + array_map(fn(BlockStateUpgradeSchemaModelTag $tag) => self::jsonModelToTag($tag), $remap->oldState ?? []), $remap->newName, - array_map(fn(BlockStateUpgradeSchemaModelTag $tag) => self::jsonModelToTag($tag), $remap->newState), + array_map(fn(BlockStateUpgradeSchemaModelTag $tag) => self::jsonModelToTag($tag), $remap->newState ?? []), ); } } diff --git a/src/data/bedrock/block/upgrade/model/BlockStateUpgradeSchemaModelBlockRemap.php b/src/data/bedrock/block/upgrade/model/BlockStateUpgradeSchemaModelBlockRemap.php index be601d51b..0991e5469 100644 --- a/src/data/bedrock/block/upgrade/model/BlockStateUpgradeSchemaModelBlockRemap.php +++ b/src/data/bedrock/block/upgrade/model/BlockStateUpgradeSchemaModelBlockRemap.php @@ -23,24 +23,25 @@ declare(strict_types=1); namespace pocketmine\data\bedrock\block\upgrade\model; +use function count; + final class BlockStateUpgradeSchemaModelBlockRemap{ /** - * @var BlockStateUpgradeSchemaModelTag[] - * @phpstan-var array + * @var BlockStateUpgradeSchemaModelTag[]|null + * @phpstan-var array|null * @required */ - public array $oldState; + public ?array $oldState; /** @required */ public string $newName; /** - * @var BlockStateUpgradeSchemaModelTag[] - * @phpstan-var array - * @required + * @var BlockStateUpgradeSchemaModelTag[]|null + * @phpstan-var array|null */ - public array $newState; + public ?array $newState; /** * @param BlockStateUpgradeSchemaModelTag[] $oldState @@ -49,8 +50,8 @@ final class BlockStateUpgradeSchemaModelBlockRemap{ * @phpstan-param array $newState */ public function __construct(array $oldState, string $newName, array $newState){ - $this->oldState = $oldState; + $this->oldState = count($oldState) === 0 ? null : $oldState; $this->newName = $newName; - $this->newState = $newState; + $this->newState = count($newState) === 0 ? null : $newState; } }