pocketmine\inventory\ChestInventory::onOpen PHP Method

onOpen() public method

public onOpen ( Player $who )
$who pocketmine\Player
    public function onOpen(Player $who)
    {
        parent::onOpen($who);
        if (count($this->getViewers()) === 1) {
            $pk = new BlockEventPacket();
            $pk->x = $this->getHolder()->getX();
            $pk->y = $this->getHolder()->getY();
            $pk->z = $this->getHolder()->getZ();
            $pk->case1 = 1;
            $pk->case2 = 2;
            if (($level = $this->getHolder()->getLevel()) instanceof Level) {
                $level->addChunkPacket($this->getHolder()->getX() >> 4, $this->getHolder()->getZ() >> 4, $pk);
            }
        }
        if ($this->getHolder()->getLevel() instanceof Level) {
            /** @var TrappedChest $block */
            $block = $this->getHolder()->getBlock();
            if ($block instanceof TrappedChest) {
                if (!$block->isActivated()) {
                    $block->activate();
                }
            }
        }
    }

Usage Example

コード例 #1
0
 public function onOpen(Player $who)
 {
     parent::onOpen($who);
     if (count($this->getViewers()) === 1) {
         $pk = new BlockEventPacket();
         $pk->x = $this->right->getHolder()->getX();
         $pk->y = $this->right->getHolder()->getY();
         $pk->z = $this->right->getHolder()->getZ();
         $pk->case1 = 1;
         $pk->case2 = 2;
         if (($level = $this->right->getHolder()->getLevel()) instanceof Level) {
             $level->addChunkPacket($this->right->getHolder()->getX() >> 4, $this->right->getHolder()->getZ() >> 4, $pk);
         }
     }
 }
All Usage Examples Of pocketmine\inventory\ChestInventory::onOpen