本文整理汇总了PHP中pocketmine\event\block\BlockPlaceEvent::getBlock方法的典型用法代码示例。如果您正苦于以下问题:PHP BlockPlaceEvent::getBlock方法的具体用法?PHP BlockPlaceEvent::getBlock怎么用?PHP BlockPlaceEvent::getBlock使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类pocketmine\event\block\BlockPlaceEvent
的用法示例。
在下文中一共展示了BlockPlaceEvent::getBlock方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: blockPlace
public function blockPlace(BlockPlaceEvent $event)
{
//2
$id = $event->getItem()->getId();
if ($id == $this->id) {
$player = $event->getPlayer();
$username = $player->getName();
if (empty($this->data[$user][2])) {
$x = $event->getBlock()->x;
$y = $event->getBlock()->y;
$z = $event->getBlock()->z;
$this->data[$user][2] = array($x, $y, $z);
$ms = "";
if (isset($this->data[$user][2])) {
//片方がセットされていたら
$ms = "[FiredNubesco] Second position has been set to: {$x}, {$y}, {$z}";
$size = $this->countBlocks($player);
if ($num != false) {
$ms .= " (Size: " . $size[0] . "X" . $size[1] . ")";
}
} else {
$ms = "[FiredNubesco] First position has been set to: {$x}, {$y}, {$z}";
}
$player->sendMessage($ms);
$event->setCancelled(true);
}
}
return true;
}
示例2: onPlace
public function onPlace(BlockPlaceEvent $event)
{
if ($event->getBlock()->getId() != Block::CHEST) {
return;
}
$block = $event->getBlock();
if ($this->sideCheck($block->x + 1, $block->y, $block->z, $block->getLevel(), $event->getPlayer()->getName()) == Block::CHEST or $this->sideCheck($block->x - 1, $block->y, $block->z, $block->getLevel(), $event->getPlayer()->getName()) == Block::CHEST or $this->sideCheck($block->x, $block->y, $block->z + 1, $block->getLevel(), $event->getPlayer()->getName()) == Block::CHEST or $this->sideCheck($block->x, $block->y, $block->z - 1, $block->getLevel(), $event->getPlayer()->getName()) == Block::CHEST) {
$event->getPlayer()->sendMessage(TextFormat::RED . "바로 옆에 다른사람의 상자가 있습니다, 설치 불가능 !");
return;
}
$this->configData["{$block->x}:{$block->y}:{$block->z}"] = $event->getPlayer()->getName();
}
示例3: onBlockPlace
public function onBlockPlace(BlockPlaceEvent $event)
{
$block = $event->getBlock()->getName();
if ($block == "Chest") {
$this->arenaManager->onChestPlaced($event);
}
}
示例4: PlaceQueeue
public function PlaceQueeue(BlockPlaceEvent $event)
{
$block = $event->getBlock();
if ($block->getID() === Item::BED_BLOCK) {
$player = $event->getPlayer();
$this->placeQueeue[$player->getName()] = 1;
}
}
示例5: onBlockPlace
public function onBlockPlace(BlockPlaceEvent $event)
{
$player = $event->getPlayer();
$block = $event->getBlock();
if ($player->hasPermission('log.placed.block')) {
$this->plugin->addPlacedBlock($block, $player);
// ADD TIME
}
}
示例6: onBlockPlace
/**
* @param BlockPlaceEvent $event
*
* @priority HIGH
*/
public function onBlockPlace(BlockPlaceEvent $event)
{
// PowerTool
if ($this->getAPI()->executePowerTool($event->getPlayer(), $event->getItem())) {
$event->setCancelled(true);
} elseif ($this->getAPI()->isUnlimitedEnabled($event->getPlayer())) {
$event->setCancelled(true);
$pos = new Vector3($event->getBlockReplaced()->getX(), $event->getBlockReplaced()->getY(), $event->getBlockReplaced()->getZ());
$event->getPlayer()->getLevel()->setBlock($pos, $event->getBlock(), true);
}
}
示例7: onBanblock
public function onBanblock(BlockPlaceEvent $event)
{
$blocklist = array("46", "327", "10", "11");
foreach ($blocklist as $Bancode) {
if ($event->getBlock()->getId() == $Bancode) {
$event->setCancelled(true);
$player = $event->getPlayer();
$player->sendMessage(TextFormat::RED . $player->getName() . "님이 금지된 아이템을 사용하였습니다");
}
}
}
示例8: onPlace
public function onPlace(BlockPlaceEvent $event)
{
if (!$event->getPlayer()->hasPermission("customareas.bypass")) {
foreach ($this->plugin->areas as $area) {
if ($area->isInside($event->getBlock()) and !$area->canBuild($event->getPlayer())) {
$event->setCancelled();
$event->getPlayer()->sendMessage("This is " . $area->owner . "'s private area");
}
}
}
}
示例9: onBlockPlace
/**
* @priority HIGHEST
*/
public function onBlockPlace(BlockPlaceEvent $event)
{
if (!$event->isCancelled()) {
$block = $event->getBlock();
if (isset($this->levelTickBlocks[$levelName = $block->getLevel()->getFolderName()]) && isset($this->randomTickBlocks[$levelName])) {
if (in_array($block->getID(), $this->randomTickBlocks[$levelName]) && $block->getID() !== Block::GLASS && !isset($this->levelTickBlocks[$levelName][$posKey = $block->x . ":" . $block->y . ":" . $block->z])) {
$this->levelTickBlocks[$levelName][$posKey] = new Position($block->x, $block->y, $block->z, $block->level);
}
}
}
}
示例10: onPlace
public function onPlace(BlockPlaceEvent $bpe)
{
$pl = $bpe->getPlayer();
$name = $pl->getName();
$bl = $bpe->getBlock();
$blname = $bl->getName();
$lvl = $pl->getLevel()->getName();
$x = $pl->getX();
$y = $pl->getY();
$z = $pl->getZ();
$this->getLogger()->info(C::YELLOW . "{$name}" . C::DARK_AQUA . " Placed/tried to Place (a)" . C::YELLOW . " {$blname}" . C::DARK_AQUA . " in World:" . C::YELLOW . " {$lvl}" . C::DARK_AQUA . " at Position:" . C::YELLOW . " {$x}, {$y}, {$z}");
}
示例11: place
public function place(BlockPlaceEvent $place)
{
$block = $place->getBlock();
$player = $place->getPlayer();
if ($block->getId() === 46) {
$place->setCancelled();
$mot = (new Random())->nextSignedFloat() * M_PI * 2;
$tnt = Entity::createEntity("PrimedTNT", $block->getLevel()->getChunk($block->x >> 4, $block->z >> 4), new Compound("", ["Pos" => new EnumTag("Pos", [new DoubleTag("", $block->x + 0.5), new DoubleTag("", $block->y), new DoubleTag("", $block->z + 0.5)]), "Motion" => new EnumTag("Motion", [new DoubleTag("", -sin($mot) * 0.02), new DoubleTag("", 0.2), new DoubleTag("", -cos($mot) * 0.02)]), "Rotation" => new EnumTag("Rotation", [new FloatTag("", 0), new FloatTag("", 0)]), "Fuse" => new ByteTag("Fuse", 100)]));
$tnt->spawnToAll();
$player->getLevel()->addSound(new AnviluseSound($player), array($player));
return true;
}
}
示例12: onBlockPlace
public function onBlockPlace(BlockPlaceEvent $event)
{
if ($this->plugin->cfg->get("debugmode") == "true") {
$this->plugin->getServer()->getLogger()->info(MT::GREEN . "CommandTest BPosition Place");
}
$id = $event->getPlayer()->getID();
if (in_array($id, $this->schalter)) {
$bl = $event->getBlock();
$n = strtolower($event->getPlayer()->getName());
$this->pos[$n] = new Vector3($bl->getX(), $bl->getY(), $bl->getZ());
$event->getPlayer()->sendMessage(MT::GOLD . "Position(" . $this->pos[$n]->getX() . "," . $this->pos[$n]->getY() . "," . $this->pos[$n]->getZ() . ")");
$event->setCancelled(true);
}
}
示例13: playerBlockPlace
public function playerBlockPlace(BlockPlaceEvent $event)
{
$id = $event->getBlock()->getID();
$player = $event->getPlayer();
if ($id == in_array($id, $this->config->get("banned-items"))) {
if ($player->isOp()) {
if (!$this->config->get("ops-can-use-items") == true) {
$player->sendMessage($this->config->get("msg-item-use"));
$event->setCancelled();
}
} else {
$player->sendMessage($this->config->get("msg-item-use"));
$event->setCancelled();
}
}
}
示例14: onBlockPlace
/**
* @param BlockPlaceEvent $event
*
* @priority HIGH
* @ignoreCancelled true
*/
public function onBlockPlace(BlockPlaceEvent $event)
{
$player = $event->getPlayer();
if ($player->isOp()) {
return;
}
foreach ($this->plugin->getAllZones() as $zone) {
if ($zone->isIn($event->getBlock())) {
if ($player->hasPermission($zone->getName() . MEMBER)) {
break;
}
$event->setCancelled(true);
$player->sendMessage("[iZone] This is a private area.");
break;
}
}
}
示例15: blockPlace
public function blockPlace(BlockPlaceEvent $event)
{
$block = $event->getBlock();
if ($block->getId() == 52) {
$block->setDamage(32);
$event->setCancelled();
$block->getLevel()->setBlock($block, $block);
}
}