pocketmine\math\AxisAlignedBB::setBounds PHP Метод

setBounds() публичный Метод

public setBounds ( $minX, $minY, $minZ, $maxX, $maxY, $maxZ )
    public function setBounds($minX, $minY, $minZ, $maxX, $maxY, $maxZ)
    {
        $this->minX = $minX;
        $this->minY = $minY;
        $this->minZ = $minZ;
        $this->maxX = $maxX;
        $this->maxY = $maxY;
        $this->maxZ = $maxZ;
        return $this;
    }

Usage Example

Пример #1
0
 protected function recalculateBoundingBox()
 {
     $f = 0.1875;
     $damage = $this->getFullDamage();
     $bb = new AxisAlignedBB($this->x, $this->y, $this->z, $this->x + 1, $this->y + 2, $this->z + 1);
     $j = $damage & 0x3;
     $isOpen = ($damage & 0x4) > 0;
     $isRight = ($damage & 0x10) > 0;
     if ($j === 0) {
         if ($isOpen) {
             if (!$isRight) {
                 $bb->setBounds($this->x, $this->y, $this->z, $this->x + 1, $this->y + 1, $this->z + $f);
             } else {
                 $bb->setBounds($this->x, $this->y, $this->z + 1 - $f, $this->x + 1, $this->y + 1, $this->z + 1);
             }
         } else {
             $bb->setBounds($this->x, $this->y, $this->z, $this->x + $f, $this->y + 1, $this->z + 1);
         }
     } elseif ($j === 1) {
         if ($isOpen) {
             if (!$isRight) {
                 $bb->setBounds($this->x + 1 - $f, $this->y, $this->z, $this->x + 1, $this->y + 1, $this->z + 1);
             } else {
                 $bb->setBounds($this->x, $this->y, $this->z, $this->x + $f, $this->y + 1, $this->z + 1);
             }
         } else {
             $bb->setBounds($this->x, $this->y, $this->z, $this->x + 1, $this->y + 1, $this->z + $f);
         }
     } elseif ($j === 2) {
         if ($isOpen) {
             if (!$isRight) {
                 $bb->setBounds($this->x, $this->y, $this->z + 1 - $f, $this->x + 1, $this->y + 1, $this->z + 1);
             } else {
                 $bb->setBounds($this->x, $this->y, $this->z, $this->x + 1, $this->y + 1, $this->z + $f);
             }
         } else {
             $bb->setBounds($this->x + 1 - $f, $this->y, $this->z, $this->x + 1, $this->y + 1, $this->z + 1);
         }
     } elseif ($j === 3) {
         if ($isOpen) {
             if (!$isRight) {
                 $bb->setBounds($this->x, $this->y, $this->z, $this->x + $f, $this->y + 1, $this->z + 1);
             } else {
                 $bb->setBounds($this->x + 1 - $f, $this->y, $this->z, $this->x + 1, $this->y + 1, $this->z + 1);
             }
         } else {
             $bb->setBounds($this->x, $this->y, $this->z + 1 - $f, $this->x + 1, $this->y + 1, $this->z + 1);
         }
     }
     return $bb;
 }
All Usage Examples Of pocketmine\math\AxisAlignedBB::setBounds