Дайте код умоляю

Как можно сделать что бы если нажал на блок давались деньги и текст ,бонус, и брат можно было ращ в рестарт

Конечно брат, только ради тебя брат, всё для тебя брат, ауф ауф ауф, щя все будет брат, сек брат

1 лайк

Брать" Я ошибся

<?php

namespace AcsBonus;

use pocketmine\plugin\PluginBase;
use pocketmine\event\Listener;
use onebone\economyapi\EconomyAPI;
use pocketmine\event\player\PlayerInteractEvent;
use pocketmine\event\player\PlayerJoinEvent;
use pocketmine\level\sound\AnvilFallSound;
use pocketmine\Player;

class AcsMain extends PluginBase implements Listener{
    private EconomyAPI $eco;
    private int $bonusBlockId;
    private array $bonus = [];

    public function onEnable(){
        $this->getServer()->getPluginManager()->registerEvents($this, $this);
        $this->saveDefaultConfig();
        $this->bonusBlockId = $this->getConfig()->get("id");
        $this->getLogger()->info("Плагин на бонус был успешно включен! Автор");
    }

    public function onDisable(){
        $this->getLogger()->info("Плагин на бонус был успешно выключен! Автор");
    }

    public function onBonus(PlayerInteractEvent $event){
        $player = $event->getPlayer();
        $block = $event->getBlock();
        $configId = $this->bonusBlockId;

        if($block->getId() === $configId){
            if(isset($this->bonus[$player->getName()])){
                $event->setCancelled(true);
                $player->sendTitle("§l§cБ§6О§eН§aУ§bС§r", "§fВы уже брали бонус, попробуйте после §aрестарта!");
            } else {
                $event->setCancelled(true);
                $this->bonus[$player->getName()] = true;
                $min = $this->getConfig()->get("min");
                $max = $this->getConfig()->get("max");
                $rm = mt_rand($min, $max);
                $this->getEconomy()->addMoney($player, $rm);
                $player->getLevel()->addSound(new AnvilFallSound($player));
                $player->sendTitle("§l§cБ§6О§eН§aУ§bС", "§fВы получили§a§l ".$rm."$");
            }
        }
    }

    private function getEconomy(): EconomyAPI {
        if ($this->eco === null) {
            $this->eco = $this->getServer()->getPluginManager()->getPlugin("EconomyAPI");
        }
        return $this->eco;
    }
}
?>

Держи БрАт)
P.s оригинальный код был написан TheCloufer, я вырезал текст партикль и чуть переписал

1 лайк

Ориг код:

<?php
#                     ____          _               
#      /\            / __ \        | |              
#     /  \   ___ ___| |  | |_ __ __| | ___ _ __ ___ 
#    / /\ \ / __/ __| |  | | '__/ _` |/ _ \ '__/ __|
#   / ____ \ (__\__ \ |__| | | | (_| |  __/ |  \__ \
#  /_/    \_\___|___/\____/|_|  \__,_|\___|_|  |___/
#                                                   
#   @author TheClouferPC
#   @groups vk.com/acsorders
#

namespace AcsBonus;

use pocketmine\plugin\PluginBase;
use pocketmine\event\Listener;
use pocketmine\utils\Config;
use onebone\economyapi\EconomyAPI;
use pocketmine\event\player\PlayerInteractEvent;
use pocketmine\event\player\PlayerJoinEvent;
use pocketmine\level\Level;
use pocketmine\level\particle\FloatingTextParticle;
use pocketmine\math\Vector3;
use pocketmine\level\sound\ExpPickupSound;
use pocketmine\level\particle\DustParticle;
use pocketmine\level\sound\AnvilFallSound;
use pocketmine\Player;
class AcsMain extends PluginBase implements Listener{
public $eco;
public function onEnable(){
$this->getServer()->getPluginManager()->registerEvents($this, $this);
$this->saveDefaultConfig();
$this->eco = $this->getServer()->getPluginManager()->getPlugin("EconomyAPI");
$this->getLogger()->info("Плагин на бонус, был успешно включен! Автор -> TheCloufer");
}
public function onDisable(){
$this->getLogger()->info("Плагин на бонус, был успешно выключен! Автор -> TheCloufer");
}
public function onPart(PlayerJoinEvent $event){
$player = $event->getPlayer();
$text = new FloatingTextParticle(new Vector3(-25.5, 28.5, 349.5), null, "");
$this->getServer()->getDefaultLevel()->addParticle($text, array($player));
}
public function onBonus(PlayerInteractEvent $event){
$player = $event->getPlayer();
$block = $event->getBlock();
if($block->getId() == $this->getConfig()->get("id")){
if(isset($this->bonus[$player->getName()])){
$event->setCancelled(true);
$player->sendTitle("§l§aБОНУС§r","§fВы уже брали бонус, попробуйте после §aрестарта!");
}else{
$event->setCancelled(true);
$this->bonus[$player->getName()] = true;
$min = $this->getConfig()->get("min");
$max = $this->getConfig()->get("max");
$rm = mt_rand($min,$max);
$this->eco->addMoney($player,$rm);
$player->getLevel()->addSound(new AnvilFallSound($player));
$player->sendTitle("§l§aБOНУС","§fВы получили§a§l ".$rm."$");
}
}
}
}
?>
1 лайк

Спасибо большое

Спасибо

Эта тема была автоматически закрыта через 12 часов после последнего ответа. В ней больше нельзя отвечать.