diff options
| author | Myles <mylesandmore9@gmail.com> | 2022-11-26 00:20:30 -0600 | 
|---|---|---|
| committer | Myles <mylesandmore9@gmail.com> | 2022-11-26 00:20:30 -0600 | 
| commit | f59d07b387472e762889a60b3eed2d0811d40ebb (patch) | |
| tree | bb5bce127039151db58e93e5bac90aa0e1ad608f /src/main/java/com/MylesAndMore | |
| parent | 5e4966b2ad96ef56fc9d0ad7dba2c61ffdedafae (diff) | |
| download | Tumble-f59d07b387472e762889a60b3eed2d0811d40ebb.tar.gz Tumble-f59d07b387472e762889a60b3eed2d0811d40ebb.tar.bz2 Tumble-f59d07b387472e762889a60b3eed2d0811d40ebb.zip  | |
add world config command
PLEASE I JUST WANT TO GO TO BED
Diffstat (limited to '')
3 files changed, 69 insertions, 0 deletions
diff --git a/src/main/java/com/MylesAndMore/tumble/Main.java b/src/main/java/com/MylesAndMore/tumble/Main.java index 4228e16..27fadb2 100644 --- a/src/main/java/com/MylesAndMore/tumble/Main.java +++ b/src/main/java/com/MylesAndMore/tumble/Main.java @@ -2,6 +2,7 @@ package com.MylesAndMore.tumble;  import com.MylesAndMore.tumble.commands.ReloadCommand;  import com.MylesAndMore.tumble.api.Metrics; +import com.MylesAndMore.tumble.commands.SetWorldConfig;  import org.bukkit.plugin.java.JavaPlugin;  public class Main extends JavaPlugin{ @@ -11,6 +12,7 @@ public class Main extends JavaPlugin{          getServer().getPluginManager().registerEvents(new EventListener(), this);          // Register commands          this.getCommand("reload").setExecutor(new ReloadCommand()); +        this.getCommand("setworld").setExecutor(new SetWorldConfig());          // Save the default config file (packaged in the JAR)          this.saveDefaultConfig(); diff --git a/src/main/java/com/MylesAndMore/tumble/WorldManager.java b/src/main/java/com/MylesAndMore/tumble/WorldManager.java new file mode 100644 index 0000000..be660b4 --- /dev/null +++ b/src/main/java/com/MylesAndMore/tumble/WorldManager.java @@ -0,0 +1,5 @@ +package com.MylesAndMore.tumble; + +public class WorldManager { + +} diff --git a/src/main/java/com/MylesAndMore/tumble/commands/SetWorldConfig.java b/src/main/java/com/MylesAndMore/tumble/commands/SetWorldConfig.java new file mode 100644 index 0000000..8406253 --- /dev/null +++ b/src/main/java/com/MylesAndMore/tumble/commands/SetWorldConfig.java @@ -0,0 +1,62 @@ +package com.MylesAndMore.tumble.commands; + +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.plugin.Plugin; + +import java.util.Objects; + +public class SetWorldConfig implements CommandExecutor { +    Plugin plugin = Bukkit.getServer().getPluginManager().getPlugin("tumble"); + +    @Override +    public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { +        // Initialize vars for their respective command arguments +        String world = args[0]; +        String worldType = args[1]; +        // Catch for null arguments +        if (args.length > 0) { +            // Check if the world type is lobby +            if (Objects.equals(worldType, "lobby")) { +                // Check if the world is actually a world on the server +                if (Bukkit.getWorld(world) != null) { +                    // Set the specified value of the world in the config under lobbyWorld +                    plugin.getConfig().set("lobbyWorld", world); +                    // Save said config +                    plugin.saveConfig(); +                    // Feedback +                    sender.sendMessage(ChatColor.GREEN + "Lobby world successfully linked: " + ChatColor.GRAY + world); +                    sender.sendMessage(ChatColor.GREEN + "Run /tumble:reload for the changes to take effect."); +                } +                // Feedback for if the world doesn't exist +                else { +                    sender.sendMessage(ChatColor.RED + "Failed to find a world named " + ChatColor.GRAY + world); +                } +            } +            // Check if the world type is game +            else if (Objects.equals(args[1], "game")) { +                if (Bukkit.getWorld(world) != null) { +                    plugin.getConfig().set("gameWorld", world); +                    plugin.saveConfig(); +                    sender.sendMessage(ChatColor.GREEN + "Game world successfully linked: " + ChatColor.GRAY + world); +                    sender.sendMessage(ChatColor.GREEN + "Run /tumble:reload for the changes to take effect."); +                } +                else { +                    sender.sendMessage(ChatColor.RED + "Failed to find a world named " + ChatColor.GRAY + world); +                } +            } +            // Feedback for if lobby or game wasn't entered +            else { +                sender.sendMessage(ChatColor.RED + "Allowed world types are " + ChatColor.GRAY + "lobby " + ChatColor.RED + "and " + ChatColor.GRAY + "game" + ChatColor.RED + "."); +            } +        } +        // Feedback for if no args were entered +        else { +            sender.sendMessage(ChatColor.RED + "Usage: " + ChatColor.GRAY + "/tumble:setworld <world> lobby|game"); +        } +        return true; +    } +}  | 
