diff --git a/src/main/java/wtf/beatrice/limbomanager/LimboManager.java b/src/main/java/wtf/beatrice/limbomanager/LimboManager.java index e30487a..aa86567 100644 --- a/src/main/java/wtf/beatrice/limbomanager/LimboManager.java +++ b/src/main/java/wtf/beatrice/limbomanager/LimboManager.java @@ -3,6 +3,7 @@ package wtf.beatrice.limbomanager; import org.bukkit.Bukkit; import org.bukkit.plugin.PluginManager; import org.bukkit.plugin.java.JavaPlugin; +import wtf.beatrice.limbomanager.commands.Spawn; import wtf.beatrice.limbomanager.listeners.CommandCanceller; import wtf.beatrice.limbomanager.listeners.PlayerChecker; import wtf.beatrice.limbomanager.listeners.PlayerTeleporter; @@ -23,6 +24,10 @@ public class LimboManager extends JavaPlugin { instance = this; pluginManager = Bukkit.getServer().getPluginManager(); + // register commands + getCommand("spawn").setExecutor(new Spawn()); + + // register listeners pluginManager.registerEvents(new PlayerChecker(), this); pluginManager.registerEvents(new PlayerTeleporter(), this); pluginManager.registerEvents(new CommandCanceller(), this); diff --git a/src/main/java/wtf/beatrice/limbomanager/commands/Spawn.java b/src/main/java/wtf/beatrice/limbomanager/commands/Spawn.java new file mode 100644 index 0000000..68ee593 --- /dev/null +++ b/src/main/java/wtf/beatrice/limbomanager/commands/Spawn.java @@ -0,0 +1,27 @@ +package wtf.beatrice.limbomanager.commands; + +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; +import org.jetbrains.annotations.NotNull; +import wtf.beatrice.limbomanager.Cache; + +public class Spawn implements CommandExecutor +{ + + + @Override + public boolean onCommand(@NotNull CommandSender sender, @NotNull Command command, @NotNull String label, @NotNull String[] args) + { + if(!(sender instanceof Player)) + { + sender.sendMessage("Not a player"); + return true; + } + + Cache.teleportToOwnIsland((Player) sender); + sender.sendMessage("Teleported"); + return true; + } +} diff --git a/src/main/java/wtf/beatrice/limbomanager/listeners/CommandCanceller.java b/src/main/java/wtf/beatrice/limbomanager/listeners/CommandCanceller.java index 231f41b..23b1d5f 100644 --- a/src/main/java/wtf/beatrice/limbomanager/listeners/CommandCanceller.java +++ b/src/main/java/wtf/beatrice/limbomanager/listeners/CommandCanceller.java @@ -4,13 +4,10 @@ import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; import org.bukkit.event.player.PlayerCommandPreprocessEvent; -import java.util.ArrayList; -import java.util.List; - public class CommandCanceller implements Listener { - private final static String allowedCmdsRegex = "\\/(login|register|changepassword|premium|cracked)\\b"; + private final static String allowedCmdsRegex = "\\/(login|register|changepassword|premium|cracked|spawn)\\b"; /* first "/" is the command prefix (login|register|...) means either one or the other diff --git a/src/main/java/wtf/beatrice/limbomanager/listeners/PlayerChecker.java b/src/main/java/wtf/beatrice/limbomanager/listeners/PlayerChecker.java index f38294c..05b545d 100644 --- a/src/main/java/wtf/beatrice/limbomanager/listeners/PlayerChecker.java +++ b/src/main/java/wtf/beatrice/limbomanager/listeners/PlayerChecker.java @@ -20,7 +20,6 @@ public class PlayerChecker implements Listener // remove join msg event.setJoinMessage(null); - LimboManager plugin = LimboManager.getInstance(); Player joiner = event.getPlayer(); diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml index 60cf668..fdde3c8 100644 --- a/src/main/resources/plugin.yml +++ b/src/main/resources/plugin.yml @@ -5,4 +5,9 @@ description: Mix of tools to run a Limbo server api-version: 1.19 author: astro_bea depend: - - WorldEdit \ No newline at end of file + - WorldEdit + +commands: + spawn: + usage: / + description: teleport to player island spawn \ No newline at end of file