diff options
Diffstat (limited to 'src/main')
5 files changed, 44 insertions, 38 deletions
diff --git a/src/main/java/com/MylesAndMore/tumble/EventListener.java b/src/main/java/com/MylesAndMore/tumble/EventListener.java index 7427ebe..f673b54 100644 --- a/src/main/java/com/MylesAndMore/tumble/EventListener.java +++ b/src/main/java/com/MylesAndMore/tumble/EventListener.java @@ -1,21 +1,17 @@  package com.MylesAndMore.tumble; -import org.bukkit.Bukkit;  import org.bukkit.event.EventHandler;  import org.bukkit.event.Listener;  import org.bukkit.event.player.PlayerJoinEvent;  import org.bukkit.event.player.PlayerQuitEvent; -import org.bukkit.plugin.Plugin;  public class EventListener implements Listener{ -    Plugin plugin = Bukkit.getServer().getPluginManager().getPlugin("tumble"); -      @EventHandler      public void PlayerJoinEvent(PlayerJoinEvent event){          // On a PlayerJoinEvent, check if the config is set to hide the join/leave messages          // If true, null out the join message (which just makes it so that there is no message)          // If false, nothing will happen, and the default message will display -        if (plugin.getConfig().getBoolean("hideJoinLeaveMessages")) { +        if (PluginManager.getPlugin().getConfig().getBoolean("hideJoinLeaveMessages")) {              event.setJoinMessage(null);          }      } @@ -25,7 +21,7 @@ public class EventListener implements Listener{          // On a PlayerQuitEvent, check if the config is set to hide the join/leave messages          // If true, null out the quit message (which just makes it so that there is no message)          // If false, nothing will happen, and the default message will display -        if (plugin.getConfig().getBoolean("hideJoinLeaveMessages")) { +        if (PluginManager.getPlugin().getConfig().getBoolean("hideJoinLeaveMessages")) {              event.setQuitMessage(null);          }      } diff --git a/src/main/java/com/MylesAndMore/tumble/PluginManager.java b/src/main/java/com/MylesAndMore/tumble/PluginManager.java new file mode 100644 index 0000000..a6fdfd0 --- /dev/null +++ b/src/main/java/com/MylesAndMore/tumble/PluginManager.java @@ -0,0 +1,18 @@ +package com.MylesAndMore.tumble; + +import com.onarandombox.MultiverseCore.MultiverseCore; +import com.onarandombox.MultiverseCore.api.MVWorldManager; +import org.bukkit.Bukkit; +import org.bukkit.plugin.Plugin; + +public class PluginManager { +    // Tumble plugin +    public static Plugin getPlugin() { +        return Bukkit.getServer().getPluginManager().getPlugin("tumble"); +    } + +    // Multiverse plugin +    public static MultiverseCore getMV() { return (MultiverseCore) Bukkit.getServer().getPluginManager().getPlugin("Multiverse-Core"); } +    // Multiverse worldManager +    public static MVWorldManager getWorldManager() { return getMV().getMVWorldManager(); } +} diff --git a/src/main/java/com/MylesAndMore/tumble/commands/ReloadCommand.java b/src/main/java/com/MylesAndMore/tumble/commands/ReloadCommand.java index a36b1d7..a12f381 100644 --- a/src/main/java/com/MylesAndMore/tumble/commands/ReloadCommand.java +++ b/src/main/java/com/MylesAndMore/tumble/commands/ReloadCommand.java @@ -1,25 +1,22 @@  package com.MylesAndMore.tumble.commands; -import org.bukkit.Bukkit; +import com.MylesAndMore.tumble.PluginManager;  import org.bukkit.ChatColor;  import org.bukkit.command.Command;  import org.bukkit.command.CommandExecutor;  import org.bukkit.command.CommandSender; -import org.bukkit.plugin.Plugin;  public class ReloadCommand implements CommandExecutor { -    Plugin plugin = Bukkit.getServer().getPluginManager().getPlugin("tumble"); -      @Override      public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {          // Check if the sender has perms to run command          if (!sender.hasPermission("tumble.reload")) {              // If sender does not have permission, display them the permissionMessage from the config -            sender.sendMessage(ChatColor.RED + plugin.getConfig().getString("permissionMessage")); +            sender.sendMessage(ChatColor.RED + PluginManager.getPlugin().getConfig().getString("permissionMessage"));          }          else {              // If sender does have permission, reload the plugin's config and display a confirmation message -            plugin.reloadConfig(); +            PluginManager.getPlugin().reloadConfig();              sender.sendMessage(ChatColor.GREEN + "Tumble configuration reloaded successfully.");          }          return true; diff --git a/src/main/java/com/MylesAndMore/tumble/commands/SetWorldConfig.java b/src/main/java/com/MylesAndMore/tumble/commands/SetWorldConfig.java index 505af0d..fe663f9 100644 --- a/src/main/java/com/MylesAndMore/tumble/commands/SetWorldConfig.java +++ b/src/main/java/com/MylesAndMore/tumble/commands/SetWorldConfig.java @@ -1,34 +1,36 @@  package com.MylesAndMore.tumble.commands; +import com.MylesAndMore.tumble.PluginManager;  import org.bukkit.Bukkit;  import org.bukkit.ChatColor; +import org.bukkit.World; +import org.bukkit.WorldType;  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) { +        if (args.length == 2) {              // Check if sender has perms to run command -            if (!sender.hasPermission("tumble.setworld")){ +            if (sender.hasPermission("tumble.setworld")){ +                // Initialize vars for their respective command arguments +                String world = args[0]; +                String worldType = args[1];                  // 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); +                        PluginManager.getPlugin().getConfig().set("lobbyWorld", world);                          // Save said config -                        plugin.saveConfig(); +                        PluginManager.getPlugin().saveConfig(); +                        // Add the world to the multiverse world manager +                        PluginManager.getWorldManager().addWorld(world, World.Environment.NORMAL, null, WorldType.FLAT, false, null);                          // 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."); @@ -41,8 +43,9 @@ public class SetWorldConfig implements CommandExecutor {                  // 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(); +                        PluginManager.getPlugin().getConfig().set("gameWorld", world); +                        PluginManager.getPlugin().saveConfig(); +                        PluginManager.getWorldManager().addWorld(world, World.Environment.NORMAL, null, WorldType.FLAT, false, null);                          sender.sendMessage(ChatColor.GREEN + "Game world successfully linked: " + ChatColor.GRAY + world);                          sender.sendMessage(ChatColor.GREEN + "Run /tumble:reload for the changes to take effect.");                      } @@ -57,7 +60,7 @@ public class SetWorldConfig implements CommandExecutor {              }              // Feedback for if sender has no perms              else { -                sender.sendMessage(ChatColor.RED + plugin.getConfig().getString("permissionMessage")); +                sender.sendMessage(ChatColor.RED + PluginManager.getPlugin().getConfig().getString("permissionMessage"));              }          }          // Feedback for if no args were entered diff --git a/src/main/java/com/MylesAndMore/tumble/commands/StartGame.java b/src/main/java/com/MylesAndMore/tumble/commands/StartGame.java index feec5b4..8e1e4fd 100644 --- a/src/main/java/com/MylesAndMore/tumble/commands/StartGame.java +++ b/src/main/java/com/MylesAndMore/tumble/commands/StartGame.java @@ -1,22 +1,14 @@  package com.MylesAndMore.tumble.commands; -import com.onarandombox.MultiverseCore.MultiverseCore; -import com.onarandombox.MultiverseCore.api.MVWorldManager; +import com.MylesAndMore.tumble.PluginManager;  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;  public class StartGame implements CommandExecutor { -    // Define tumble instances -    Plugin plugin = Bukkit.getServer().getPluginManager().getPlugin("tumble"); -    String gameWorld = plugin.getConfig().getString("gameWorld"); - -    // Define multiverse instances -    MultiverseCore mv = (MultiverseCore) Bukkit.getServer().getPluginManager().getPlugin("Multiverse-Core"); -    MVWorldManager mvWorldManager = mv.getMVWorldManager(); +    String gameWorld = PluginManager.getPlugin().getConfig().getString("gameWorld");      @Override      public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { @@ -27,9 +19,9 @@ public class StartGame implements CommandExecutor {                  sender.sendMessage("Starting game...");                  // Use multiverse to load game world                  boolean includeLoaded = false; -                boolean worldLoaded = (mvWorldManager.hasUnloadedWorld(gameWorld, includeLoaded)); +                boolean worldLoaded = (PluginManager.getWorldManager().hasUnloadedWorld(gameWorld, includeLoaded));                  if (worldLoaded) { -                    mvWorldManager.loadWorld(gameWorld); +                    PluginManager.getWorldManager().loadWorld(gameWorld);                  }                  else {                      sender.sendMessage(ChatColor.RED + "Failed to find a world named " + ChatColor.GRAY + gameWorld); @@ -49,7 +41,7 @@ public class StartGame implements CommandExecutor {          }          // Feedback for if the sender has no perms          else { -            sender.sendMessage(ChatColor.RED + plugin.getConfig().getString("permissionMessage")); +            sender.sendMessage(ChatColor.RED + PluginManager.getPlugin().getConfig().getString("permissionMessage"));          }          return true;      }  | 
