RuntimeDataDescriber: Introduce boundedIntAuto, replacing boundedInt

closes #6096
boundedIntAuto automatically calculates the correct number of bits to use based on the given bounds. The bounds must be constant, of course.
This commit is contained in:
Dylan K. Taylor
2023-10-17 12:03:43 +01:00
parent 18b711aca8
commit d0d16cdeb7
23 changed files with 78 additions and 29 deletions

View File

@ -24,7 +24,6 @@ declare(strict_types=1);
namespace pocketmine\block\utils;
use pocketmine\data\runtime\RuntimeDataDescriber;
use function log;
/**
* This trait is used for blocks that have an age property.
@ -34,7 +33,7 @@ trait AgeableTrait{
protected int $age = 0;
protected function describeBlockOnlyState(RuntimeDataDescriber $w) : void{
$w->boundedInt(((int) log(self::MAX_AGE, 2)) + 1, 0, self::MAX_AGE, $this->age);
$w->boundedIntAuto(0, self::MAX_AGE, $this->age);
}
public function getAge() : int{ return $this->age; }