pocketmine\block\FlowerPot::onActivate PHP Метод

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

public onActivate ( Item $item, Player $player = null )
$item pocketmine\item\Item
$player pocketmine\Player
    public function onActivate(Item $item, Player $player = null)
    {
        $tile = $this->getLevel()->getTile($this);
        if ($tile instanceof FlowerPotTile) {
            if ($tile->getFlowerPotItem() === Item::AIR) {
                switch ($item->getId()) {
                    case Item::TALL_GRASS:
                        if ($item->getDamage() === 1) {
                            break;
                        }
                    case Item::SAPLING:
                    case Item::DEAD_BUSH:
                    case Item::DANDELION:
                    case Item::RED_FLOWER:
                    case Item::BROWN_MUSHROOM:
                    case Item::RED_MUSHROOM:
                    case Item::CACTUS:
                        $tile->setFlowerPotData($item->getId(), $item->getDamage());
                        $this->setDamage($item->getId());
                        $this->getLevel()->setBlock($this, $this, true, false);
                        if ($player->isSurvival()) {
                            $item->setCount($item->getCount() - 1);
                            $player->getInventory()->setItemInHand($item->getCount() > 0 ? $item : Item::get(Item::AIR));
                        }
                        return true;
                        break;
                }
            }
        }
        return false;
    }