Level: Avoid creating useless throwaway objects in sensitive functions

This commit is contained in:
Dylan K. Taylor 2018-05-18 11:05:41 +01:00
parent 29fd26627e
commit 24295ce02f

View File

@ -1119,13 +1119,12 @@ class Level implements ChunkManager, Metadatable{
* @return Block[] * @return Block[]
*/ */
public function getCollisionBlocks(AxisAlignedBB $bb, bool $targetFirst = false) : array{ public function getCollisionBlocks(AxisAlignedBB $bb, bool $targetFirst = false) : array{
$bbPlusOne = $bb->grow(1, 1, 1); $minX = Math::floorFloat($bb->minX - 1);
$minX = Math::floorFloat($bbPlusOne->minX); $minY = Math::floorFloat($bb->minY - 1);
$minY = Math::floorFloat($bbPlusOne->minY); $minZ = Math::floorFloat($bb->minZ - 1);
$minZ = Math::floorFloat($bbPlusOne->minZ); $maxX = Math::ceilFloat($bb->maxX + 1);
$maxX = Math::ceilFloat($bbPlusOne->maxX); $maxY = Math::ceilFloat($bb->maxY + 1);
$maxY = Math::ceilFloat($bbPlusOne->maxY); $maxZ = Math::ceilFloat($bb->maxZ + 1);
$maxZ = Math::ceilFloat($bbPlusOne->maxZ);
$collides = []; $collides = [];
@ -1183,13 +1182,12 @@ class Level implements ChunkManager, Metadatable{
* @return AxisAlignedBB[] * @return AxisAlignedBB[]
*/ */
public function getCollisionCubes(Entity $entity, AxisAlignedBB $bb, bool $entities = true) : array{ public function getCollisionCubes(Entity $entity, AxisAlignedBB $bb, bool $entities = true) : array{
$bbPlusOne = $bb->grow(1, 1, 1); $minX = Math::floorFloat($bb->minX - 1);
$minX = Math::floorFloat($bbPlusOne->minX); $minY = Math::floorFloat($bb->minY - 1);
$minY = Math::floorFloat($bbPlusOne->minY); $minZ = Math::floorFloat($bb->minZ - 1);
$minZ = Math::floorFloat($bbPlusOne->minZ); $maxX = Math::ceilFloat($bb->maxX + 1);
$maxX = Math::ceilFloat($bbPlusOne->maxX); $maxY = Math::ceilFloat($bb->maxY + 1);
$maxY = Math::ceilFloat($bbPlusOne->maxY); $maxZ = Math::ceilFloat($bb->maxZ + 1);
$maxZ = Math::ceilFloat($bbPlusOne->maxZ);
$collides = []; $collides = [];