<?php echo "PocketMine-MP plugin Elytra v1.2\nThis file has been generated using DevTools v1.12.9 at Wed, 21 Mar 2018 19:39:45 +1030\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:6:"Elytra";s:7:"version";s:3:"1.2";s:4:"main";s:16:"elytra\MainClass";s:3:"api";a:13:{i:0;s:5:"2.0.0";i:1;s:5:"3.0.0";i:2;s:12:"3.0.0-ALPHA1";i:3;s:12:"3.0.0-ALPHA2";i:4;s:12:"3.0.0-ALPHA3";i:5;s:12:"3.0.0-ALPHA4";i:6;s:12:"3.0.0-ALPHA5";i:7;s:12:"3.0.0-ALPHA6";i:8;s:12:"3.0.0-ALPHA7";i:9;s:12:"3.0.0-ALPHA8";i:10;s:12:"3.0.0-ALPHA9";i:11;s:13:"3.0.0-ALPHA10";i:12;s:13:"3.0.0-ALPHA11";}s:6:"depend";a:0:{}s:11:"description";s:0:"";s:7:"authors";a:0:{}s:7:"website";s:0:"";s:12:"creationDate";i:1521623385;}
   plugin.yml   Y!Z   Kvx         src/elytra/item/Elytra.php]  Y!Z]           src/elytra/MainClass.php  Y!Z  -M*      name: Elytra
version: 1.2
api:
- 2.0.0
- 3.0.0
- 3.0.0-ALPHA1
- 3.0.0-ALPHA2
- 3.0.0-ALPHA3
- 3.0.0-ALPHA4
- 3.0.0-ALPHA5
- 3.0.0-ALPHA6
- 3.0.0-ALPHA7
- 3.0.0-ALPHA8
- 3.0.0-ALPHA9
- 3.0.0-ALPHA10
- 3.0.0-ALPHA11
main: elytra\MainClass<?php

namespace elytra\item;

use pocketmine\item\Armor;

class Elytra extends Armor
{

	public function __construct(int $meta = 0)
	{
		parent::__construct(self::ELYTRA, $meta, "Elytra");
	}

	public function getMaxDurability() : int
	{
		return 431;//433?
	}

	public function getDefensePoints() : int
	{
		return 0;
	}

}<?php

namespace elytra;

use pocketmine\plugin\PluginBase;
use pocketmine\entity\Entity;

use pocketmine\event\Listener;
use pocketmine\event\player\PlayerMoveEvent;
use pocketmine\event\server\DataPacketReceiveEvent;

use pocketmine\item\Item;
use pocketmine\item\ItemFactory;

use pocketmine\network\mcpe\protocol\PlayerActionPacket;

use elytra\item\Elytra;

class MainClass extends PluginBase implements Listener {

    public function onEnable(){
    	ItemFactory::registerItem(new Elytra());
    	Item::addCreativeItem(new Elytra());

    	$this->getServer()->getPluginManager()->registerEvents($this, $this);
    }

    public function onMove(PlayerMoveEvent $event){
    	$player = $event->getPlayer();

    	if($this->isGliding($player)) $player->resetFallDistance();
    }

    public function onPacketReceive(DataPacketReceiveEvent $event){
    	$pk = $event->getPacket();
    	if($pk instanceof PlayerActionPacket){

    		switch ($pk->action) {

    			case PlayerActionPacket::ACTION_START_GLIDE:
    				$this->setGliding($event->getPlayer(), true);
    				return true;

    			case PlayerActionPacket::ACTION_STOP_GLIDE :
    				$this->setGliding($event->getPlayer(), false);
    				return true;

    		}

    	}
    }

    public function isGliding($player){
    	return $player->getGenericFlag(Entity::DATA_FLAG_GLIDING);
    }

    public function setGliding($player, $value){
    	$player->setGenericFlag(Entity::DATA_FLAG_GLIDING, $value);
    }

}

?>bsv$&tw   GBMB