<?php __HALT_COMPILER(); ?>
i                     src/MGTWorld/Main.phpÒ)  ì•j[Ò)  ¾ÃŸl¶      
   plugin.yml¦  ì•j[¦  VÄÒ;¶      <?php

namespace MGTWorld;

use pocketmine\utils\TextFormat;
use pocketmine\Server;
use pocketmine\event\player\PlayerInteractEvent;
use pocketmine\event\player\PlayerJoinEvent;
use pocketmine\plugin\PluginBase;
use pocketmine\utils\Config;
use pocketmine\level\Level;
use pocketmine\level\generator\generatorManager;
use pocketmine\level\generator\generator;
use pocketmine\event\Listener;
use pocketmine\command\Command;
use pocketmine\command\CommandSender;

class Main extends PluginBase implements Listener {

    public function onEnable() {
        $this->getLogger()->info("Â§aMGTWorldã‚’èª­ã¿è¾¼ã‚“ã  by mixpowder");
        if (!file_exists($this->getDataFolder())) {
            @mkdir($this->getDataFolder(), 0744, true);
        }
      $this->world = new Config($this->getDataFolder() . "CommandOP.yml", Config::YAML,array(
        'wp-op' => 'true',
        'gwd-op' => 'true',
        'gwf-op' => 'true',
        'load-op' => 'true',
        'unload-op' => 'true',
        'loadworld-op' => 'true'
      ));
}


      public function onCommand(CommandSender $sender, Command $command, string $label, array $args): bool{
          $Level = strtolower(implode($args));
        switch($command->getName()){
        
        case "Help":
            $sender->sendMessage("/wp <ãƒ¯ãƒ¼ãƒ«ãƒ‰å>ã§ãã®ãƒ¯ãƒ¼ãƒ«ãƒ‰ã«ãƒ†ãƒ¬ãƒãƒ¼ãƒˆã§ãã¾ã™ï¼");
            $sender->sendMessage("/gwd <ãƒ¯ãƒ¼ãƒ«ãƒ‰å>ã§æ™®é€šã®ãƒ¯ãƒ¼ãƒ«ãƒ‰ã‚’ç”Ÿæˆã§ãã¾ã™ï¼");
            $sender->sendMessage("/gwf <ãƒ¯ãƒ¼ãƒ«ãƒ‰å>ã§ãƒ•ãƒ©ãƒƒãƒˆã®ãƒ¯ãƒ¼ãƒ«ãƒ‰ã‚’ä½œã‚‹ã“ã¨ãŒã§ãã¾ã™ï¼");
            $sender->sendMessage("/load <ãƒ¯ãƒ¼ãƒ«ãƒ‰å>ã§ãã®ãƒ¯ãƒ¼ãƒ«ãƒ‰èª­ã¿è¾¼ã‚€ã“ã¨ãŒã§ãã¾ã™ï¼");
            $sender->sendMessage("/unload <ãƒ¯ãƒ¼ãƒ«ãƒ‰å>ã§ãã®ãƒ¯ãƒ¼ãƒ«ãƒ‰ã®èª­ã¿è¾¼ã¿ã‚’è§£é™¤ã§ãã¾ã™ï¼");
            $sender->sendMessage("/loadworld ã§èª­ã¿è¾¼ã¾ã‚Œã¦ã„ã‚‹ãƒ¯ãƒ¼ãƒ«ãƒ‰ã‚’ç¢ºèªã§ãã¾ã™ï¼");
        break;

        case "wp":

        switch($this->world->get("wp-op")){
        case "true":
          if(!($sender->getName() == "CONSOLE")){
          if($sender->isOp()){
          if("$Level" == ""){
            $sender->sendMessage("Â§d/wp <ãƒ¯ãƒ¼ãƒ«ãƒ‰å>ã¨æ‰“ã£ã¦ãã ã•ã„");
        }else{
          if($this->getServer()->loadLevel("$Level") == null){
            $sender->sendMessage("Â§dãƒ¯ãƒ¼ãƒ«ãƒ‰: ".$Level." ãŒå­˜åœ¨ã—ã¾ã›ã‚“ã€‚");
        }else{
            $sender->teleport($this->getServer()->getLevelByName("$Level")->getSafeSpawn());
            $sender->sendMessage("Â§bãƒ¯ãƒ¼ãƒ«ãƒ‰: ".$Level." ã«ãƒ†ãƒ¬ãƒãƒ¼ãƒˆã—ã¾ã—ãŸã€‚");
          }
          }
        }else{
            $sender->sendMessage("Â§4opã§ã¯ãªã„ã¨ä½¿ã†ã“ã¨ãŒã§ãã¾ã›ã‚“");
          }
        }else{
            $sender->sendMessage("ã‚²ãƒ¼ãƒ å†…ã§ä½¿ç”¨ã—ã¦ãã ã•ã„");
          }
        break;

        case "false":
          if(!($sender->getName() == "CONSOLE")){
          if("$Level" == ""){
            $sender->sendMessage("Â§d/wp <ãƒ¯ãƒ¼ãƒ«ãƒ‰å>ã¨æ‰“ã£ã¦ãã ã•ã„");
        }else{
          if($this->getServer()->loadLevel("$Level") == null){
            $sender->sendMessage("Â§dãƒ¯ãƒ¼ãƒ«ãƒ‰: ".$Level." ãŒå­˜åœ¨ã—ã¾ã›ã‚“ã€‚");
        }else{
            $sender->teleport($this->getServer()->getLevelByName("$Level")->getSafeSpawn());
            $sender->sendMessage("Â§bãƒ¯ãƒ¼ãƒ«ãƒ‰: ".$Level." ã«ãƒ†ãƒ¬ãƒãƒ¼ãƒˆã—ã¾ã—ãŸã€‚");
          }
          }
        }else{
            $sender->sendMessage("ã‚²ãƒ¼ãƒ å†…ã§ä½¿ç”¨ã—ã¦ãã ã•ã„");
          }
        break;
          }
        break;

        case "gwf":
        switch($this->world->get("gwf-op")){
        case "true":
          if($sender->isOp()){
          if("$Level" == ""){
            $sender->sendMessage("Â§d/gwf <ãƒ¯ãƒ¼ãƒ«ãƒ‰å>ã¨æ‰“ã£ã¦ãã ã•ã„");
        }else{
          if($this->getServer()->loadLevel("$Level") == null){
            $sender->sendMessage("Â§b(flat)ãƒ¯ãƒ¼ãƒ«ãƒ‰: ".$Level." ä½œæˆä¸­");
            $this->getServer()->generateLevel("$Level", time(), generatorManager::getGenerator("Flat"));
            sleep("1");
            $sender->sendMessage("Â§bå®Œäº†ã—ã¾ã—ãŸ");
        }else{
            $sender->sendMessage("Â§4ãƒ¯ãƒ¼ãƒ«ãƒ‰: ".$Level." ã¯ã™ã§ã«å­˜åœ¨ã—ã¾ã™ã€‚");
            $this->getServer()->unloadLevel($this->getServer()->getLevelByName("$Level"));
          }
          }
        }else{
            $sender->sendMessage("Â§4opã§ã¯ãªã„ã¨ä½¿ã†ã“ã¨ãŒã§ãã¾ã›ã‚“");
          }
        break;

      case "false":
        if("$Level" == ""){
        $sender->sendMessage("Â§d/gwf <ãƒ¯ãƒ¼ãƒ«ãƒ‰å>ã¨æ‰“ã£ã¦ãã ã•ã„");
      }else{
        if($this->getServer()->loadLevel("$Level") == null){
        $sender->sendMessage("Â§b(flat)ãƒ¯ãƒ¼ãƒ«ãƒ‰: ".$Level." ä½œæˆä¸­");
        $this->getServer()->generateLevel("$Level", time(), generatorManager::getGenerator("Flat"));
        sleep("1");
        $sender->sendMessage("Â§bå®Œäº†ã—ã¾ã—ãŸ");
      }else{
        $sender->sendMessage("Â§4ãƒ¯ãƒ¼ãƒ«ãƒ‰: ".$Level." ã¯ã™ã§ã«å­˜åœ¨ã—ã¾ã™ã€‚");
        $this->getServer()->unloadLevel($this->getServer()->getLevelByName("$Level"));
        }
        }
      break;
        }

      break;

      case "gwd":
      switch($this->world->get("gwd-op")){
      case "true":
        if($sender->isOp()){
        if("$Level" == ""){
        $sender->sendMessage("Â§d/gwd <ãƒ¯ãƒ¼ãƒ«ãƒ‰å>ã¨æ‰“ã£ã¦ãã ã•ã„");
      }else{
        if($this->getServer()->loadLevel("$Level") == null){
        $sender->sendMessage("Â§b(default)ãƒ¯ãƒ¼ãƒ«ãƒ‰: ".$Level." ä½œæˆä¸­");
        $this->getServer()->generateLevel("$Level", time(), generatorManager::getGenerator("default"));
        sleep("1");
        $sender->sendMessage("Â§bå®Œäº†ã—ã¾ã—ãŸ");
      }else{
        $sender->sendMessage("Â§4ãƒ¯ãƒ¼ãƒ«ãƒ‰: ".$Level." ã¯ã™ã§ã«å­˜åœ¨ã—ã¾ã™ã€‚");
        $this->getServer()->unloadLevel($this->getServer()->getLevelByName("$Level"));
        }
        }
      }else{
        $sender->sendMessage("Â§4opã§ã¯ãªã„ã¨ä½¿ã†ã“ã¨ãŒã§ãã¾ã›ã‚“");
        }
      return true;
      break;
      case "false":
        if("$Level" == ""){
        $sender->sendMessage("Â§d/gwd <ãƒ¯ãƒ¼ãƒ«ãƒ‰å>ã¨æ‰“ã£ã¦ãã ã•ã„");
      }else{
        if($this->getServer()->loadLevel("$Level") == null){
        $sender->sendMessage("Â§b(default)ãƒ¯ãƒ¼ãƒ«ãƒ‰: ".$Level." ä½œæˆä¸­");
        $this->getServer()->generateLevel("$Level", time(), generatorManager::getGenerator("default"));
        sleep("1");
        $sender->sendMessage("Â§bå®Œäº†ã—ã¾ã—ãŸ");
      }else{
        $sender->sendMessage("Â§4ãƒ¯ãƒ¼ãƒ«ãƒ‰: ".$Level." ã¯ã™ã§ã«å­˜åœ¨ã—ã¾ã™ã€‚");
        $this->getServer()->unloadLevel($this->getServer()->getLevelByName("$Level"));
        }
        }
      break;
        }
      return true;
      break;

      case "load":
      switch($this->world->get("load-op")){
      case "true":
        if($sender->isOp()){
        if("$Level" == ""){
        $sender->sendMessage("Â§d/load <ãƒ¯ãƒ¼ãƒ«ãƒ‰å>ã¨æ‰“ã£ã¦ãã ã•ã„");
      }else{
        if($this->getServer()->getLevelByName("$Level") !== null){
        $sender->sendMessage("Â§aã™ã§ã«ãƒ¯ãƒ¼ãƒ«ãƒ‰: ".$Level." ã¯èª­ã¿è¾¼ã¾ã‚Œã¦ã¾ã™ã€‚");
      }else{
        if($this->getServer()->loadLevel("$Level") == null){
        $sender->sendMessage("Â§4ãƒ¯ãƒ¼ãƒ«ãƒ‰: ".$Level." ãŒå­˜åœ¨ã—ã¾ã›ã‚“ã€‚");
      }else{
        $sender->sendMessage("Â§bãƒ¯ãƒ¼ãƒ«ãƒ‰: ".$Level." ã®èª­ã¿è¾¼ã¿ã«æˆåŠŸã—ã¾ã—ãŸã€‚");
        }
        }
        }
      }else{
        $sender->sendMessage("Â§4opã§ã¯ãªã„ã¨ä½¿ã†ã“ã¨ãŒã§ãã¾ã›ã‚“");
        }
      return true;
      break;

    case "false":
    if("$Level" == ""){
        $sender->sendMessage("Â§d/load <ãƒ¯ãƒ¼ãƒ«ãƒ‰å>ã¨æ‰“ã£ã¦ãã ã•ã„");
      }else{
  if($this->getServer()->getLevelByName("$Level") !== null){
    $sender->sendMessage("Â§aã™ã§ã«ãƒ¯ãƒ¼ãƒ«ãƒ‰: ".$Level." ã¯èª­ã¿è¾¼ã¾ã‚Œã¦ã¾ã™ã€‚");
    }else{
      if($this->getServer()->loadLevel("$Level") == null){
      $sender->sendMessage("Â§4ãƒ¯ãƒ¼ãƒ«ãƒ‰: ".$Level." ãŒå­˜åœ¨ã—ã¾ã›ã‚“ã€‚");
      }else{
    $sender->sendMessage("Â§bãƒ¯ãƒ¼ãƒ«ãƒ‰: ".$Level." ã®èª­ã¿è¾¼ã¿ã«æˆåŠŸã—ã¾ã—ãŸã€‚");
      }
      }
    }
    return true;
      break;
  }
      return true;
      break;

  case "unload":
  switch($this->world->get("unload-op")){
    case "true":
  if($sender->isOp()){
  if("$Level" == ""){
        $sender->sendMessage("Â§d/unload <ãƒ¯ãƒ¼ãƒ«ãƒ‰å>ã¨æ‰“ã£ã¦ãã ã•ã„");
      }else{
  if($this->getServer()->getLevelByName("$Level") !== null){
    if($this->getServer()->getDefaultLevel()->getName() == "$Level"){
  $sender->sendMessage("Â§4ã“ã®ãƒ¯ãƒ¼ãƒ«ãƒ‰ã®èª­ã¿è¾¼ã¿ã‚’è§£é™¤ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“ã€‚");
    }else{
  $sender->sendMessage("Â§bãƒ¯ãƒ¼ãƒ«ãƒ‰: ".$Level." ã®èª­ã¿è¾¼ã¿ã‚’è§£é™¤ã—ã¾ã—ãŸã€‚");
  $this->getServer()->unloadLevel($this->getServer()->getLevelByName("$Level"));

    }

}else{
  $sender->sendMessage("Â§dãƒ¯ãƒ¼ãƒ«ãƒ‰: ".$Level." ã¯èª­ã¿è¾¼ã¾ã‚Œã¦ã„ã¾ã›ã‚“ã€‚");
}
}
}else{
$sender->sendMessage("Â§4opã§ã¯ãªã„ã¨ä½¿ã†ã“ã¨ãŒã§ãã¾ã›ã‚“");
}
      break;
      case "false":
      if("$Level" == ""){
        $sender->sendMessage("Â§d/unload <ãƒ¯ãƒ¼ãƒ«ãƒ‰å>ã¨æ‰“ã£ã¦ãã ã•ã„");
      }else{
  if($this->getServer()->getLevelByName("$Level") !== null){
    if($this->getServer()->getDefaultLevel()->getName() == "$Level"){
  $sender->sendMessage("Â§4ã“ã®ãƒ¯ãƒ¼ãƒ«ãƒ‰ã®èª­ã¿è¾¼ã¿ã‚’è§£é™¤ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“ã€‚");
    }else{
  $this->getServer()->unloadLevel($this->getServer()->getLevelByName("$Level"));
  $sender->sendMessage("Â§bãƒ¯ãƒ¼ãƒ«ãƒ‰: ".$Level." ã®èª­ã¿è¾¼ã¿ã‚’è§£é™¤ã—ã¾ã—ãŸã€‚");
}
}else{
  $sender->sendMessage("Â§dãƒ¯ãƒ¼ãƒ«ãƒ‰: ".$Level." ã¯èª­ã¿è¾¼ã¾ã‚Œã¦ã„ã¾ã›ã‚“ã€‚");
}
}
  break;
}
  break;

  case "loadworld":
  switch($this->world->get("loadworld-op")){
    case "true":
  if($sender->isOp()){
foreach($this->getServer()->getLevels() as $level){
$sender->sendMessage(TextFormat::AQUA.$level->getName());
}
}else{
  $sender->sendMessage("Â§4opã§ã¯ãªã„ã¨ä½¿ã†ã“ã¨ãŒã§ãã¾ã›ã‚“");
}
break;
    case "false":
    foreach($this->getServer()->getLevels() as $level){
    $sender->sendMessage(TextFormat::AQUA.$level->getName());
}

}
  break;
  }
  return true;
}
}name: MGTWorld
api: [3.0.0,4.0.0]
main: MGTWorld\Main
version: 4.5.0
description: ãƒ¯ãƒ¼ãƒ«ãƒ‰ç®¡ç†
author: mixpowder
commands:
 Help:
  usage: /Help
  description: ã‚³ãƒžãƒ³ãƒ‰ã®èª¬æ˜Ž 
 wp:
  usage: /wp <ãƒ¯ãƒ¼ãƒ«ãƒ‰å>
  description: ãƒ¯ãƒ¼ãƒ«ãƒ‰ç§»å‹•
 gwf:
  usage: /gwf <ãƒ¯ãƒ¼ãƒ«ãƒ‰å>
  description: ãƒ¯ãƒ¼ãƒ«ãƒ‰ä½œæˆ(flat)
 gwd:
  usage: /gwd <ãƒ¯ãƒ¼ãƒ«ãƒ‰å>
  description: ãƒ¯ãƒ¼ãƒ«ãƒ‰ä½œæˆ(default)
 load:
  usage: /load <ãƒ¯ãƒ¼ãƒ«ãƒ‰å>
  description: ãƒ¯ãƒ¼ãƒ«ãƒ‰èª­ã¿è¾¼ã¿
 unload:
  usage: /unload <ãƒ¯ãƒ¼ãƒ«ãƒ‰å>
  description: ãƒ¯ãƒ¼ãƒ«ãƒ‰èª­ã¿è¾¼ã¿è§£é™¤
 loadworld:
  usage: /loadworld
  description: èª­ã¿è¾¼ã¾ã‚Œã¦ã„ã‚‹ãƒ¯ãƒ¼ãƒ«ãƒ‰æ¤œç´¢
Õ7g¶¾«@b+fòÖÇ˜ë÷k   GBMB