<?php echo "PocketMine-MP plugin Punishment v1\nThis file has been generated using DevTools v1.12.1 at Tue, 27 Feb 2018 19:38:32 +0900\n----------------\n";if(extension_loaded("phar")){$phar = new \Phar(__FILE__);foreach($phar->getMetadata() as $key => $value){echo ucfirst($key).": ".(is_array($value) ? implode(", ", $value):$value)."\n";}} __HALT_COMPILER(); ?>
Æ             5  a:9:{s:4:"name";s:10:"Punishment";s:7:"version";s:1:"1";s:4:"main";s:14:"Punishment\sei";s:3:"api";a:3:{i:0;s:5:"3.0.0";i:1;s:13:"3.0.0-ALPHA10";i:2;s:13:"3.0.0-ALPHA11";}s:6:"depend";a:0:{}s:11:"description";s:0:"";s:7:"authors";a:1:{i:0;s:7:"sei0511";}s:7:"website";s:0:"";s:12:"creationDate";i:1519727912;}   players.yml   (5•Z   îzT¶      
   plugin.ymlx  (5•Zx  –<vJ¶         src/Punishment/sei.php”
  (5•Z”
  ʅC4¶      --- []
...
name: Punishment
main: Punishment\sei
version: 1.0
api: [3.0.0, 3.0.0-ALPHA10, 3.0.0-ALPHA11]
load: POSTWORLD
author: sei0511
description:
commands:
 bye:
  usage:
  description: "プレイヤーを処罰"
  permission: bye.command
permissions:
 bye:
  default: true
  description: "バイバイ"
 bye.command:
  default: true
  description: "バイバイ"
<?php
namespace Punishment;

use pocketmine\command\Command;
use pocketmine\command\CommandSender;
use pocketmine\event\Listener;
use pocketmine\plugin\PluginBase;
use pocketmine\Player;
use pocketmine\Server;
use pocketmine\event\player\PlayerJoinEvent;
use pocketmine\event\player\PlayerCommandPreprocessEvent;
use pocketmine\event\player\PlayerMoveEvent;
use pocketmine\event\block\BlockBreakEvent;
use pocketmine\event\block\BlockPlaceEvent;
use pocketmine\utils\Config;

class sei extends PluginBase implements Listener{
  public function onEnable(){
    $this->getlogger()->info("§cプレイヤーを処罰するプラグイン §aα §eを読み込みました");
    $this->getlogger()->info("§a製作者 seiichiro0511");
    $this->getlogger()->warning("このプラグインの二次配布、及び製作者偽りは禁止です");
    $this->getServer()->getPluginManager()->registerEvents($this, $this);

    if(!file_exists($this->getDataFolder())) mkdir($this->getDataFolder(), 0744, true);
    $this->c = new Config($this->getDataFolder() . "players.yml", Config::YAML);
  }
  public function onDisable(){
    $this->c->save();
  }
  public function onCommand(CommandSender $sender, Command $command, string $label, array $args) : bool{
    switch($command->getName()){
      case "bye":
      $name = strtolower(implode(" ", $args));
      $sender->sendMessage("§e" .$name. "§bを処罰しました");
      $this->c->set($name);
      $this->c->save();

      $p = $this->getServer()->getPlayer($name);
      if($p !== NULL){
        $p->sendMessage("§cあなたは処罰されました");
      }
      return true;
    }
    return false;
  }
  public function onCommandUse(PlayerCommandPreprocessEvent $event){
    $player = $event->getPlayer();
    $name = $player->getName();
    if($this->c->exists($name)){
      $event->setCancelled();
      $player->sendMessage("§cあなたは処罰されています");
    }
  }
  public function onMove(PlayerMoveEvent $event){
    $player = $event->getPlayer();
    $name = $player->getName();
    if($this->c->exists($name)){
      $event->setCancelled();
    }
  }
  public function onBreak(BlockBreakEvent $event){
    $player = $event->getPlayer();
    $name = $player->getName();
    if($this->c->exists($name)){
      $event->setCancelled();
      $player->sendMessage("§cあなたは処罰されています");
    }
  }
  public function onJoin(PlayerJoinEvent $event){
    $player = $event->getPlayer();
    $name = $player->getName();
    if($this->c->exists($name)){
      $player->sendMessage("§cあなたは処罰されています");
    }
  }
}
Èñ<o¦Ιá.‹¾š
ØzéåòW   GBMB