From 7e1b4373e9258a3b0f3ae487de09287e50fff389 Mon Sep 17 00:00:00 2001 From: LYEmerald <108974603+LYEmerald@users.noreply.github.com> Date: Tue, 11 Jul 2023 19:39:24 +0800 Subject: [PATCH] Add files via upload --- pom.xml | 16 +++++++++ .../java/net/emeraldly/portalcmd/Main.java | 36 +++++++++++++++++++ src/main/resources/config.yml | 5 +++ src/main/resources/plugin.yml | 5 +++ 4 files changed, 62 insertions(+) create mode 100644 pom.xml create mode 100644 src/main/java/net/emeraldly/portalcmd/Main.java create mode 100644 src/main/resources/config.yml create mode 100644 src/main/resources/plugin.yml diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..5d5f3ae --- /dev/null +++ b/pom.xml @@ -0,0 +1,16 @@ + + + 4.0.0 + + org.example + PortalCommand + 1.0-SNAPSHOT + + + 8 + 8 + + + \ No newline at end of file diff --git a/src/main/java/net/emeraldly/portalcmd/Main.java b/src/main/java/net/emeraldly/portalcmd/Main.java new file mode 100644 index 0000000..79e3c8e --- /dev/null +++ b/src/main/java/net/emeraldly/portalcmd/Main.java @@ -0,0 +1,36 @@ +package net.emeraldly.portalcmd; + +import cn.nukkit.Player; +import cn.nukkit.event.EventHandler; +import cn.nukkit.event.Listener; +import cn.nukkit.event.player.PlayerTeleportEvent; +import cn.nukkit.plugin.PluginBase; +import cn.nukkit.utils.Config; + +import java.util.List; + +public class Main extends PluginBase implements Listener { + @Override + public void onEnable(){ + this.getLogger().info("§aPortalCommand Plugin Enabled!"); + this.getServer().getPluginManager().registerEvents(this,this); + this.getDataFolder().mkdirs(); + this.saveDefaultConfig(); + Config config = this.getConfig(); + } + + @EventHandler + public void onPlayerTeleport(PlayerTeleportEvent event){ + Player player = event.getPlayer(); + String level = event.getPlayer().getLevel().getName(); + List list = this.getConfig().getStringList("allow_worlds"); + if(list.contains(level)){ + if(event.getCause() == PlayerTeleportEvent.TeleportCause.NETHER_PORTAL){ + event.setCancelled(true); + for(String command : this.getConfig().getStringList("commands")){ + player.getServer().dispatchCommand(event.getPlayer(),command); + } + } + } + } +} diff --git a/src/main/resources/config.yml b/src/main/resources/config.yml new file mode 100644 index 0000000..90da6eb --- /dev/null +++ b/src/main/resources/config.yml @@ -0,0 +1,5 @@ +commands: + - "lobby" + +allow_worlds: + - world \ No newline at end of file diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml new file mode 100644 index 0000000..f707b67 --- /dev/null +++ b/src/main/resources/plugin.yml @@ -0,0 +1,5 @@ +main: net.emeraldly.portalcmd.Main +name: PortalCommand +version: 1.0.0 +api: 1.0.0 +author: LYEmerald \ No newline at end of file