<?php __HALT_COMPILER(); ?>
j                     src/HitNumber/Main.php  O[  O70      
   plugin.yml   O[   {M      <?php

namespace HitNumber;

use pocketmine\utils\TextFormat;
use pocketmine\event\player\PlayerJoinEvent;
use pocketmine\tile\Sign;
use pocketmine\block\Block;
use pocketmine\plugin\PluginBase;
use pocketmine\utils\Config;
use pocketmine\Player;
use pocketmine\Server;
use pocketmine\event\block\BlockBreakEvent;
use pocketmine\command\Command;
use pocketmine\command\CommandSender;
use pocketmine\event\Listener;
use pocketmine\scheduler\Task;
use pocketmine\item\Item;
use pocketmine\math\Vector3;
use pocketmine\event\block\SignChangeEvent;
use pocketmine\nbt\NBT;
use onebone\economyapi\EconomyAPI;
use pocketmine\scheduler\PluginTask;
use pocketmine\event\player\PlayerCommandPreprocessEvent;
use poker\event\PlayerInteractEvent;
use MixCoinSystem\MixCoinSystem;

class Main extends PluginBase implements Listener {

    public static $config = [];


    public function onEnable() {
        $this->getServer()->getPluginManager()->registerEvents($this,$this);
        $this->getScheduler()->scheduleRepeatingTask(new Send($this),20*60*10);
        $this->getScheduler()->scheduleRepeatingTask(new time($this),20*60*3);
        $this->getLogger()->info("§aHitNumber読み込みました! by mixpowder");
        if (!file_exists($this->getDataFolder())) {
            @mkdir($this->getDataFolder(), 0744, true);
        }
        self::$config = new Config($this->getDataFolder()."Player.yml",Config::YAML);
              if($this->getServer()->getPluginManager()->getPlugin("MixCoinSystem") == NULL){
          $this->getLogger()->error("MixCoinSystemが入れられていません。入れてきてください");                
          $this->getServer()->shutdown();
        }else{
        $this->getLogger()->notice(Textformat::AQUA."MixCoinSystemを確認しました");
        }

                  }

                  
    public static function setconfig(){
        return self::$config;
}

   public function onCommand(CommandSender $sender, Command $command, string $label, array $args): bool{
        switch($command->getName()){

        case "joinpoint":
        if(!isset($args[0])){
        $sender->sendMessage("/joinpoint <掛ける数字(1-36)> <掛けるcoinの枚数>");
        }elseif(!isset($args[1])){
        $sender->sendMessage("/joinpoint <掛ける数字(1-36)> <掛けるcoinの枚数>");
        }elseif($args[0] > 36 or 1 > $args[0]){
        $sender->sendMessage("掛ける数字は1-36の間にしてください");
        }elseif($args[1] > MixCoinSystem::getInstance()->GetCoin($sender)){
        $sender->sendMessage("coinの数が足りません");
    }else{
    MixCoinSystem::getInstance()->MinusCoin($sender,$args[1]);
    self::$config->set($sender->getName(),["point" => $args[0],"coin" => $args[1],"name" => $sender->getName()]);
    self::$config->save();
    $sender->sendMessage("掛けた数字: {$args[0]} 掛けるcoin枚数: {$args[1]}");
    }



        }
        return true;
    }
}



class Send extends Task{

    public function onRun(int $tick){
        $rand = mt_rand(1,36);
        $p = Main::setconfig()->getAll(true);
        foreach($p as $data => $player){
        $a = Main::setconfig()->get($player);
        if($rand == $a["point"]){
        MixCoinSystem::getInstance()->PlusCoin($player,$a["coin"]*36);
         foreach(Server::getInstance()->getOnlinePlayers() as $player){
        $player->sendMessage("{$a["name"]}さんが数字を当てました！");
        }
    }
    }
        foreach($p as $player){
        Main::setconfig()->remove($player);
        Main::setconfig()->save();
    }
        foreach(Server::getInstance()->getOnlinePlayers() as $player){
        $player->sendMessage("結果は".$rand."でした！また十分後に結果です！");
        }

    }
}
    

class time extends Task{

    public function onRun(int $tick){
        foreach(Server::getInstance()->getOnlinePlayers() as $player){
        $player->sendMessage("/joinpointでかけをしてみよう！");
        }

    }
}

name: HitNumber
main: HitNumber\Main
version: 1.0.0
api: [3.0.0,4.0.0]
author: mixpowder
commands:
 joinpoint:
  usage: /joinpoint <掛ける数字> <掛けるCoin枚数>
  description: 掛ける数字の設定e#tcƢ%_RDY   GBMB