diff --git a/src/main/java/de/steev/bm/BetterMinecraft.java b/src/main/java/de/steev/bm/BetterMinecraft.java index 935c48a..471d119 100644 --- a/src/main/java/de/steev/bm/BetterMinecraft.java +++ b/src/main/java/de/steev/bm/BetterMinecraft.java @@ -42,11 +42,18 @@ public class BetterMinecraft extends JavaPlugin implements Listener { // Registers Events this.getLogger().info(prefix + ChatColor.WHITE + "Load Events"); - this.getServer().getPluginManager().registerEvents(new BedListener(this.gameManager), this); - this.getServer().getPluginManager().registerEvents(new KillListener(this.gameManager), this); - this.getServer().getPluginManager().registerEvents(new InteractListener(this.gameManager), this); - this.getServer().getPluginManager().registerEvents(new PrepareAnvilListener(this.gameManager), this); - this.getServer().getPluginManager().registerEvents(this, this); + + try { + if(this.playerData.readBooleanFromConfig("improved_bed")) this.getServer().getPluginManager().registerEvents(new BedListener(this.gameManager), this); + if(this.playerData.readBooleanFromConfig("custom_drops")) this.getServer().getPluginManager().registerEvents(new KillListener(this.gameManager), this); + if(this.playerData.readBooleanFromConfig("replanting")) this.getServer().getPluginManager().registerEvents(new InteractListener(this.gameManager), this); + if(this.playerData.readBooleanFromConfig("anvil_fix")) this.getServer().getPluginManager().registerEvents(new PrepareAnvilListener(this.gameManager), this); + if(this.playerData.readBooleanFromConfig("back_command")) this.getServer().getPluginManager().registerEvents(this, this); + + } catch (ConfigEntryExceptions e) { + throw new RuntimeException(e); + } + Objects.requireNonNull(this.getCommand("back")).setExecutor(new back(this.gameManager)); diff --git a/src/main/java/de/steev/bm/Listener/BedListener.java b/src/main/java/de/steev/bm/Listener/BedListener.java index e30283d..45ee0f1 100644 --- a/src/main/java/de/steev/bm/Listener/BedListener.java +++ b/src/main/java/de/steev/bm/Listener/BedListener.java @@ -8,12 +8,14 @@ import org.bukkit.event.Listener; import org.bukkit.event.player.PlayerBedEnterEvent; import org.bukkit.event.player.PlayerBedLeaveEvent; +import static de.steev.bm.utils.Constants.prefix; + public class BedListener implements Listener { private GameManager gameManager; public BedListener(GameManager gameManager) { - gameManager.getPlugin().getLogger().info("Bed Listener Registered"); + gameManager.getPlugin().getLogger().info(prefix + "Bed Listener Registered"); this.gameManager = gameManager; } diff --git a/src/main/java/de/steev/bm/Listener/InteractListener.java b/src/main/java/de/steev/bm/Listener/InteractListener.java index d14808c..ed533e5 100644 --- a/src/main/java/de/steev/bm/Listener/InteractListener.java +++ b/src/main/java/de/steev/bm/Listener/InteractListener.java @@ -11,11 +11,13 @@ import org.bukkit.event.Listener; import org.bukkit.event.block.Action; import org.bukkit.event.player.PlayerInteractEvent; +import static de.steev.bm.utils.Constants.prefix; + public class InteractListener implements Listener { private GameManager gameManager; public InteractListener(GameManager gameManager){ - gameManager.getPlugin().getLogger().info("Initializing Interaction Listener"); + gameManager.getPlugin().getLogger().info(prefix + "Initializing Interaction Listener"); this.gameManager = gameManager; } diff --git a/src/main/java/de/steev/bm/Listener/KillListener.java b/src/main/java/de/steev/bm/Listener/KillListener.java index a972114..102bd8c 100644 --- a/src/main/java/de/steev/bm/Listener/KillListener.java +++ b/src/main/java/de/steev/bm/Listener/KillListener.java @@ -11,12 +11,14 @@ import org.bukkit.event.Listener; import org.bukkit.event.entity.EntityDeathEvent; import java.util.UUID; +import static de.steev.bm.utils.Constants.prefix; + public class KillListener implements Listener { private GameManager gameManager; public KillListener(GameManager gameManager) { - gameManager.getPlugin().getLogger().info("Mob Death events Registered"); + gameManager.getPlugin().getLogger().info(prefix + "Mob Death events Registered"); this.gameManager = gameManager; } diff --git a/src/main/java/de/steev/bm/Listener/PrepareAnvilListener.java b/src/main/java/de/steev/bm/Listener/PrepareAnvilListener.java index fa20b1b..165ae3c 100644 --- a/src/main/java/de/steev/bm/Listener/PrepareAnvilListener.java +++ b/src/main/java/de/steev/bm/Listener/PrepareAnvilListener.java @@ -1,21 +1,27 @@ package de.steev.bm.Listener; import de.steev.bm.BetterMinecraft; +import de.steev.bm.Manager.GameManager; import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; import org.bukkit.event.inventory.PrepareAnvilEvent; import org.bukkit.inventory.AnvilInventory; +import org.bukkit.inventory.view.AnvilView; -public class PrepareAnvilListener { +import static de.steev.bm.utils.Constants.prefix; + +public class PrepareAnvilListener implements Listener { private GameManager gameManager; public PrepareAnvilListener(GameManager gameManager) { + gameManager.getPlugin().getLogger().info(prefix + "initializing Anvil CostCap fix"); this.gameManager = gameManager; } @EventHandler public void onPrepare(PrepareAnvilEvent event) { - AnvilInventory inv = event.getInventory(); - inv.setMaximumRepairCost(Integer.MAX_VALUE); + AnvilView inv = event.getView(); + inv.setMaximumRepairCost(Integer.MAX_VALUE); // TODO: find solution for deprecation } } diff --git a/src/main/resources/config.yml b/src/main/resources/config.yml index 896d463..efbbbb2 100644 --- a/src/main/resources/config.yml +++ b/src/main/resources/config.yml @@ -1,5 +1,17 @@ +# sets minimum players in bed to 50% of the server instead of requiring all players to be in bed improved_bed: true + +# fixes anvil cost beeing to expensive after 40 level +anvil_fix: true + +# adds additional drops to some mobds custom_drops: true + +# adds custom crafting recipes custom_recipes: true + +# enables forge like replanting replanting: true + +# enables /back command back_command: true \ No newline at end of file diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml index 73d8a97..4b11110 100644 --- a/src/main/resources/plugin.yml +++ b/src/main/resources/plugin.yml @@ -1,6 +1,6 @@ name: BetterMinecraft main: de.steev.bm.BetterMinecraft -version: 1.2.2 +version: 1.2.2-b2 api-version: 1.21 commands: back: