Как сделать так, чтобы игроки в креативе не могли ломать бедрок?
public function onBreak(BlockBreakEvent $event){
$player = $event->getPlayer();
if($event->getBlock()->getId() == <айди бедрок>) $event->setCancelled($player->isCreative());
}
Я дико извиняюсь, но куду это добавлять?
В любой плагин -_-
Абсолютно в любой плагин где ещё не используется данный ивент
<?php
/**
* @author Gaprix
* @name DenyBedrockBreak
* @main Gaprix\DenyBedrockBreak
* @api 4.0.0
* @version 1.0.0
*/
namespace Gaprix;
use pocketmine\event\EventPriority;
use pocketmine\plugin\PluginBase;
use pocketmine\event\block\BlockBreakEvent;
use pocketmine\player\GameMode;
use pocketmine\block\VanillaBlocks;
class DenyBedrockBreak extends PluginBase{
public function onEnable(): void{
$this->getServer()->getPluginManager()->registerEvent(BlockBreakEvent::class, function(BlockBreakEvent $event) : void{
if($event->getBlock()->isSameType(VanillaBlocks::BEDROCK()) &&
$event->getPlayer()->getGamemode() == GameMode::CREATIVE()){
$event->cancel();
}
}, EventPriority::NORMAL, $this, true);
}
}
2 лайка
Спасибо друзья!
Обновил ответ на готовый скрипт (вставить в DenyBedrockBreak.php и положить в папку plugins
)
Просто создать этот файл и закинуть в папка плагин? ( без src )
Да
Хорошо, спасибо большое!
не важно куда. Прото надо код пихнуть в любое место
Я уже решил проблему!