<?php echo "PocketMine-MP plugin CompassTp v1\nThis file has been generated using DevTools v1.12.10 at Sun, 10 Jun 2018 19:42:57 +0930\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(); ?>
}               a:9:{s:4:"name";s:9:"CompassTp";s:7:"version";s:1:"1";s:4:"main";s:18:"HamuKatu\CompassTp";s:3:"api";a:1:{i:0;s:13:"3.0.0-ALPHA12";}s:6:"depend";a:0:{}s:11:"description";s:0:"";s:7:"authors";a:1:{i:0;s:8:"Hamukatu";}s:7:"website";s:0:"";s:12:"creationDate";i:1528625577;}
   plugin.yml   [   1         src/HamuKatu/CompassTp.phpl  [l  T$      name: CompassTp
main: HamuKatu\CompassTp
version: 1.0
load: POSTWORLD
author: Hamukatu
api: 3.0.0-ALPHA12

commands:
 compass:
  usage: 
  description: "§l§b特殊なコンパスを与えます"

<?php

namespace HamuKatu;

use pocketmine\plugin\PluginBase;
use pocketmine\event\Listener;
use pocketmine\event\player\PlayerInteractEvent;
use pocketmine\Player;
use pocketmine\level\Position;
use pocketmine\level\Level;
use pocketmine\item\Item;
use pocketmine\block\Block;
use pocketmine\command\Command;
use pocketmine\command\CommandSender;
use pocketmine\command\CommandExecutor;

class CompassTp extends PluginBase implements Listener{
	public function onEnable(){
		$this->getServer()->getPluginManager()->registerEvents($this, $this);

		$name = ("§l§bTP COMPASS");
		$compass = Item::get(345);
		$compass->setCustomName($name);
		$this->compass = $compass;
		Item::addCreativeItem($this->compass);

	}

    	public function PlayerInteract(PlayerInteractEvent $event){

    		$player = $event->getPlayer();

		if($player->getInventory()->getItemInHand()->getCustomName() === "§l§bTP COMPASS"){

				$dv = $player->getDirectionVector()->multiply(7);
                $pos = $player->add($dv->x, $dv->y, $dv->z);

                $player->teleport($pos);

		}

	}

		public function onCommand(CommandSender $sender, Command $command, string $label, array $args) :bool{
		switch (strtolower($command->getName())) {
			case "compass"://コマンドが/compassだったら...

			 if ($sender->isOp()) {

			$sender->getInventory()->addItem($this->compass);
			$sender->sendMessage("§l§bTP COMPASS§rを与えました");
		    	
			}else{

			    $sender->sendMessage("§4権限がありません");

			}

            break;

    }

		    return false;

    }
	
}
 |!tʩ8   GBMB