public static function growTree(ChunkManager $level, $x, $y, $z, Random $random, $type = 0, bool $noBigTree = true)
{
switch ($type) {
case Sapling::SPRUCE:
$tree = new SpruceTree();
break;
case Sapling::BIRCH:
if ($random->nextBoundedInt(39) === 0) {
$tree = new BirchTree(true);
} else {
$tree = new BirchTree();
}
break;
case Sapling::JUNGLE:
$tree = new JungleTree();
break;
case Sapling::ACACIA:
$tree = new AcaciaTree();
break;
case Sapling::DARK_OAK:
$tree = new DarkOakTree();
break;
case Sapling::OAK:
default:
if (!$noBigTree and $random->nextRange(0, 9) === 0) {
$tree = new BigTree();
} else {
$tree = new OakTree();
}
break;
}
if ($tree->canPlaceObject($level, $x, $y, $z, $random)) {
$tree->placeObject($level, $x, $y, $z, $random);
}
}