From 6569d28e0247178354db502a7292205d565d837a Mon Sep 17 00:00:00 2001 From: Realm Date: Thu, 27 Jul 2017 16:18:00 +0530 Subject: [PATCH] Upload Plugin --- plugin.yml | 5 +++++ resources/config.yml | 20 ++++++++++++++++++ src/EndPortal/EndPortal.php | 42 +++++++++++++++++++++++++++++++++++++ 3 files changed, 67 insertions(+) create mode 100644 plugin.yml create mode 100644 resources/config.yml create mode 100644 src/EndPortal/EndPortal.php 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