diff --git a/plugin.yml b/plugin.yml new file mode 100644 index 0000000..ed2fd50 --- /dev/null +++ b/plugin.yml @@ -0,0 +1,5 @@ +name: EndPortal +main: EndPortal\EndPortal +version: 2.0.0 +api: [2.0.0, 3.0.0-ALPHA3, 3.0.0-ALPHA4, 3.0.0-ALPHA5, 3.0.0-ALPHA6, 3.0.0-ALPHA7, 3.0.0-ALPHA8] +author: MasterOfTheRealm \ No newline at end of file diff --git a/resources/config.yml b/resources/config.yml new file mode 100644 index 0000000..17cd822 --- /dev/null +++ b/resources/config.yml @@ -0,0 +1,20 @@ +--- +#The Portal Block +Portal-block: 119 + +#Default World Name +default-world-name: world + +#Coords Player Will Spawn In The OverWorld +XCoord-Default: 0 +YCoord-Default: 70 +ZCoord-Default: 0 + +#End World Name +ender-world-name: ender + +#Coords Player Will Spawn In The End +XCoord-Ender: 0 +YCoord-Ender: 70 +ZCoord-Ender: 0 +... diff --git a/src/EndPortal/EndPortal.php b/src/EndPortal/EndPortal.php new file mode 100644 index 0000000..632af1c --- /dev/null +++ b/src/EndPortal/EndPortal.php @@ -0,0 +1,42 @@ +saveResource("config.yml"); + $this->getLogger()->info("EndPortal By MasterOfTheRealm Has Been Enabled"); + $this->getServer()->getPluginManager()->registerEvents($this, $this); + } + + public function onDisable(){ + $this->getLogger()->info("EndPortal Has Been Deactivated"); + } + + public function onMove(PlayerMoveEvent $event){ + $player = $event->getPlayer(); + $endpor = $event->getPlayer()->getLevel()->getBlock($event->getPlayer()->floor()); + $cfg = $this->getConfig()->getAll(); + + if($endpor->getId() === $cfg["Portal-block"]){ + + if($player->getLevel()->getName() === $cfg["default-world-name"]){ + $player->teleport(new Position($cfg["XCoord-Ender"], $cfg["YCoord-Ender"], $cfg["ZCoord-Ender"], $this->getServer()->getLevelByName($cfg["ender-world-name"]))); + return true; + } + + if($player->getLevel()->getName() === $cfg["ender-world-name"]){ + $player->teleport(new Position($cfg["XCoord-Default"], $cfg["YCoord-Default"], $cfg["ZCoord-Default"], $this->getServer()->getLevelByName($cfg["default-world-name"]))); + return true; + } + } + } +} \ No newline at end of file