Дайте плагин на освящения. ща обьясню. игрок заходит и ему выдаёться эффект ночного видения. при смерти снова выдаеться эффект ночного видения. можно отключить командой. у кого есть скиньте пожалуйста. очень нужно!
1 лайк
Не нашёл, сделал код. Незнаю должно работать. Апишка для 2.0.0
<?php
declare(strict_types=1);
namespace NightVision;
use pocketmine\event\Listener;
use pocketmine\event\player\PlayerJoinEvent;
use pocketmine\event\player\PlayerRespawnEvent;
use pocketmine\plugin\PluginBase;
use pocketmine\command\Command;
use pocketmine\command\CommandSender;
use pocketmine\entity\Effect;
use pocketmine\entity\EffectInstance;
class Main extends PluginBase implements Listener{
private $nv = [];
public function onEnable(){
$this->getServer()->getPluginManager()->registerEvents($this, $this);
}
public function onJoin(PlayerJoinEvent $event){
$player = $event->getPlayer();
if(!isset($this->nv[$player->getName()])){
$this->nv[$player->getName()] = true;
}
if($this->nv[$player->getName()]){
$effect = new EffectInstance(Effect::getEffect(Effect::NIGHT_VISION), INT32_MAX, 0, false);
$player->addEffect($effect);
}
}
public function onRespawn(PlayerRespawnEvent $event){
$player = $event->getPlayer();
if($this->nv[$player->getName()]){
$effect = new EffectInstance(Effect::getEffect(Effect::NIGHT_VISION), INT32_MAX, 0, false);
$player->addEffect($effect);
}
}
public function onCommand(CommandSender $sender, Command $cmd, string $label, array $args) : bool{
if($cmd->getName() == "fb"){
if(isset($args[0])){
if($args[0] == "on"){
$this->nv[$sender->getName()] = true;
$effect = new EffectInstance(Effect::getEffect(Effect::NIGHT_VISION), INT32_MAX, 0, false);
$sender->addEffect($effect);
$sender->sendMessage("Ночное виденье включено!");
}elseif($args[0] == "off"){
$this->nv[$sender->getName()] = false;
$sender->removeEffect(Effect::NIGHT_VISION);
$sender->sendMessage("Ночное виденье отключено!");
}else{
$sender->sendMessage("§cИспользование: /fb <on|off>");
}
}else{
$sender->sendMessage("§cИспользование: /fb <on|off>");
}
}
return true;
}
}
1 лайк
Не получится. Надо запланировать выдачу как минимум на 1 тик
можете скинуть файлом. а то я в браузере код немогу копировать
не работает. вот дамп
CrashDump_Sun_Jul_2-13.49.48-UTC_2023.log (2,7 КБ)
убери @MaxXxon41k
Error: Declaration of NightVision\Main::onCommand(pocketmine\command\CommandSender $sender, pocketmine\command\Command $cmd, string $label, array $args): bool (Как в коде) must be compatible with pocketmine\plugin\PluginBase::onCommand(pocketmine\command\CommandSender $sender, pocketmine\command\Command $command, $label, array $args) (Как в ядре)
тоже самое
дайте просто рабочий
не юзай генку
Эта тема была автоматически закрыта через 12 часов после последнего ответа. В ней больше нельзя отвечать.