diff --git a/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/config/Config.java b/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/config/Config.java index 85b34b6..eb753a5 100644 --- a/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/config/Config.java +++ b/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/config/Config.java @@ -60,13 +60,13 @@ public class Config { config.addDefault("optimization-methods.nametag-optimization.enable", true); createTitledSection("Villager Chunk Limit", "villager-chunk-limit"); createTitledSection("Gameplay", "gameplay"); + config.addDefault("gameplay.restock-optimized-trades", null); + config.addDefault("gameplay.level-optimized-profession", null); config.addDefault("gameplay.rename-optimized-villagers.enable", true); config.addDefault("gameplay.villagers-spawn-as-adults.enable", false); config.addDefault("gameplay.prevent-trading-with-unoptimized.enable", false); - config.addDefault("gameplay.prevent-damage.enable", true); - config.addDefault("gameplay.prevent-targeting.enable", true); - config.addDefault("gameplay.villager-leveling.enable", true); - config.addDefault("gameplay.trade-restocking.enable", true); + config.addDefault("gameplay.prevent-entities-from-targeting-optimized.enable", true); + config.addDefault("gameplay.prevent-damage-to-optimized.enable", true); } public void createTitledSection(@NotNull String title, @NotNull String path) { diff --git a/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/VillagerOptimizerModule.java b/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/VillagerOptimizerModule.java index 0719bba..b14a88d 100644 --- a/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/VillagerOptimizerModule.java +++ b/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/VillagerOptimizerModule.java @@ -1,12 +1,10 @@ package me.xginko.villageroptimizer.modules; import me.xginko.villageroptimizer.VillagerOptimizer; -import me.xginko.villageroptimizer.modules.extras.*; -import me.xginko.villageroptimizer.modules.mechanics.LevelVillagers; -import me.xginko.villageroptimizer.modules.mechanics.RestockTrades; -import me.xginko.villageroptimizer.modules.optimizations.OptimizeByBlock; -import me.xginko.villageroptimizer.modules.optimizations.OptimizeByNametag; -import me.xginko.villageroptimizer.modules.optimizations.OptimizeByWorkstation; +import me.xginko.villageroptimizer.modules.gameplay.*; +import me.xginko.villageroptimizer.modules.optimization.OptimizeByBlock; +import me.xginko.villageroptimizer.modules.optimization.OptimizeByNametag; +import me.xginko.villageroptimizer.modules.optimization.OptimizeByWorkstation; import org.bukkit.event.HandlerList; import java.util.HashSet; @@ -28,14 +26,13 @@ public interface VillagerOptimizerModule { modules.add(new OptimizeByBlock()); modules.add(new OptimizeByWorkstation()); - modules.add(new RestockTrades()); - modules.add(new LevelVillagers()); - + modules.add(new RestockOptimizedTrades()); + modules.add(new LevelOptimizedVillagers()); + modules.add(new RenameOptimizedVillagers()); modules.add(new MakeVillagersSpawnAdult()); modules.add(new PreventUnoptimizedTrading()); - modules.add(new PreventVillagerDamage()); modules.add(new PreventVillagerTargetting()); - modules.add(new RenameOptimizedVillagers()); + modules.add(new PreventVillagerDamage()); modules.add(new VillagerChunkLimit()); diff --git a/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/mechanics/LevelVillagers.java b/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/gameplay/LevelOptimizedVillagers.java similarity index 86% rename from VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/mechanics/LevelVillagers.java rename to VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/gameplay/LevelOptimizedVillagers.java index 88b7706..3913cd7 100644 --- a/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/mechanics/LevelVillagers.java +++ b/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/gameplay/LevelOptimizedVillagers.java @@ -1,4 +1,4 @@ -package me.xginko.villageroptimizer.modules.mechanics; +package me.xginko.villageroptimizer.modules.gameplay; import me.xginko.villageroptimizer.VillagerCache; import me.xginko.villageroptimizer.VillagerOptimizer; @@ -17,25 +17,25 @@ import org.bukkit.event.inventory.InventoryType; import org.bukkit.potion.PotionEffect; import org.bukkit.potion.PotionEffectType; -public class LevelVillagers implements VillagerOptimizerModule, Listener { +public class LevelOptimizedVillagers implements VillagerOptimizerModule, Listener { private final VillagerOptimizer plugin; private final VillagerCache villagerCache; private final boolean notify_player; private final long cooldown; - public LevelVillagers() { + public LevelOptimizedVillagers() { shouldEnable(); this.plugin = VillagerOptimizer.getInstance(); this.villagerCache = VillagerOptimizer.getCache(); Config config = VillagerOptimizer.getConfiguration(); - config.addComment("gameplay.villager-leveling.enable", """ + config.addComment("gameplay.level-optimized-profession", """ This is needed to allow optimized villagers to level up.\s Temporarily enables the villagers AI to allow it to level up and then disables it again."""); - this.cooldown = config.getInt("gameplay.villager-leveling.level-check-cooldown-seconds", 5, """ + this.cooldown = config.getInt("gameplay.level-optimized-profession.level-check-cooldown-seconds", 5, """ Cooldown in seconds until the level of a villager will be checked and updated again.\s Recommended to leave as is.""") * 1000L; - this.notify_player = config.getBoolean("gameplay.villager-leveling.notify-player", true, + this.notify_player = config.getBoolean("gameplay.level-optimized-profession.notify-player", true, "Tell players to wait when a villager is leveling up."); } @@ -47,7 +47,7 @@ public class LevelVillagers implements VillagerOptimizerModule, Listener { @Override public boolean shouldEnable() { - return VillagerOptimizer.getConfiguration().getBoolean("gameplay.villager-leveling.enable", true); + return true; } @EventHandler(priority = EventPriority.NORMAL, ignoreCancelled = true) diff --git a/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/extras/MakeVillagersSpawnAdult.java b/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/gameplay/MakeVillagersSpawnAdult.java similarity index 96% rename from VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/extras/MakeVillagersSpawnAdult.java rename to VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/gameplay/MakeVillagersSpawnAdult.java index d098949..d5e7b02 100644 --- a/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/extras/MakeVillagersSpawnAdult.java +++ b/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/gameplay/MakeVillagersSpawnAdult.java @@ -1,4 +1,4 @@ -package me.xginko.villageroptimizer.modules.extras; +package me.xginko.villageroptimizer.modules.gameplay; import me.xginko.villageroptimizer.VillagerOptimizer; import me.xginko.villageroptimizer.modules.VillagerOptimizerModule; diff --git a/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/extras/PreventUnoptimizedTrading.java b/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/gameplay/PreventUnoptimizedTrading.java similarity index 98% rename from VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/extras/PreventUnoptimizedTrading.java rename to VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/gameplay/PreventUnoptimizedTrading.java index a354ecf..00acbed 100644 --- a/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/extras/PreventUnoptimizedTrading.java +++ b/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/gameplay/PreventUnoptimizedTrading.java @@ -1,4 +1,4 @@ -package me.xginko.villageroptimizer.modules.extras; +package me.xginko.villageroptimizer.modules.gameplay; import me.xginko.villageroptimizer.VillagerCache; import me.xginko.villageroptimizer.VillagerOptimizer; diff --git a/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/extras/PreventVillagerDamage.java b/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/gameplay/PreventVillagerDamage.java similarity index 84% rename from VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/extras/PreventVillagerDamage.java rename to VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/gameplay/PreventVillagerDamage.java index 9961f2f..8875183 100644 --- a/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/extras/PreventVillagerDamage.java +++ b/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/gameplay/PreventVillagerDamage.java @@ -1,4 +1,4 @@ -package me.xginko.villageroptimizer.modules.extras; +package me.xginko.villageroptimizer.modules.gameplay; import me.xginko.villageroptimizer.VillagerCache; import me.xginko.villageroptimizer.VillagerOptimizer; @@ -23,15 +23,15 @@ public class PreventVillagerDamage implements VillagerOptimizerModule, Listener shouldEnable(); this.villagerCache = VillagerOptimizer.getCache(); Config config = VillagerOptimizer.getConfiguration(); - config.addComment("gameplay.prevent-damage.enable", + config.addComment("gameplay.prevent-damage-to-optimized.enable", "Configure what kind of damage you want to cancel for optimized villagers here."); - this.block = config.getBoolean("gameplay.prevent-damage.damagers.block", false, + this.block = config.getBoolean("gameplay.prevent-damage-to-optimized.damagers.block", false, "Prevents damage from blocks like lava, tnt, respawn anchors, etc."); - this.player = config.getBoolean("gameplay.prevent-damage.damagers.player", false, + this.player = config.getBoolean("gameplay.prevent-damage-to-optimized.damagers.player", false, "Prevents damage from getting hit by players."); - this.mob = config.getBoolean("gameplay.prevent-damage.damagers.mob", true, + this.mob = config.getBoolean("gameplay.prevent-damage-to-optimized.damagers.mob", true, "Prevents damage from hostile mobs."); - this.other = config.getBoolean("gameplay.prevent-damage.damagers.other", true, + this.other = config.getBoolean("gameplay.prevent-damage-to-optimized.damagers.other", true, "Prevents damage from all other entities."); } @@ -43,7 +43,7 @@ public class PreventVillagerDamage implements VillagerOptimizerModule, Listener @Override public boolean shouldEnable() { - return VillagerOptimizer.getConfiguration().getBoolean("gameplay.prevent-damage.enable", true); + return VillagerOptimizer.getConfiguration().getBoolean("gameplay.prevent-damage-to-optimized.enable", true); } @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true) diff --git a/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/extras/PreventVillagerTargetting.java b/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/gameplay/PreventVillagerTargetting.java similarity index 95% rename from VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/extras/PreventVillagerTargetting.java rename to VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/gameplay/PreventVillagerTargetting.java index f604163..52a2f13 100644 --- a/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/extras/PreventVillagerTargetting.java +++ b/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/gameplay/PreventVillagerTargetting.java @@ -1,4 +1,4 @@ -package me.xginko.villageroptimizer.modules.extras; +package me.xginko.villageroptimizer.modules.gameplay; import com.destroystokyo.paper.event.entity.EntityPathfindEvent; import me.xginko.villageroptimizer.VillagerCache; @@ -30,7 +30,7 @@ public class PreventVillagerTargetting implements VillagerOptimizerModule, Liste @Override public boolean shouldEnable() { - return VillagerOptimizer.getConfiguration().getBoolean("gameplay.prevent-targeting.enable", true, + return VillagerOptimizer.getConfiguration().getBoolean("gameplay.prevent-entities-from-targeting-optimized.enable", true, "Prevents hostile entities from targeting optimized villagers."); } diff --git a/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/extras/RenameOptimizedVillagers.java b/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/gameplay/RenameOptimizedVillagers.java similarity index 98% rename from VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/extras/RenameOptimizedVillagers.java rename to VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/gameplay/RenameOptimizedVillagers.java index 506354b..50a3d10 100644 --- a/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/extras/RenameOptimizedVillagers.java +++ b/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/gameplay/RenameOptimizedVillagers.java @@ -1,4 +1,4 @@ -package me.xginko.villageroptimizer.modules.extras; +package me.xginko.villageroptimizer.modules.gameplay; import me.xginko.villageroptimizer.VillagerOptimizer; import me.xginko.villageroptimizer.WrappedVillager; diff --git a/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/mechanics/RestockTrades.java b/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/gameplay/RestockOptimizedTrades.java similarity index 80% rename from VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/mechanics/RestockTrades.java rename to VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/gameplay/RestockOptimizedTrades.java index 2b50fdf..bb516f5 100644 --- a/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/mechanics/RestockTrades.java +++ b/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/gameplay/RestockOptimizedTrades.java @@ -1,4 +1,4 @@ -package me.xginko.villageroptimizer.modules.mechanics; +package me.xginko.villageroptimizer.modules.gameplay; import me.xginko.villageroptimizer.VillagerCache; import me.xginko.villageroptimizer.VillagerOptimizer; @@ -16,24 +16,24 @@ import org.bukkit.event.EventPriority; import org.bukkit.event.Listener; import org.bukkit.event.player.PlayerInteractEntityEvent; -public class RestockTrades implements VillagerOptimizerModule, Listener { +public class RestockOptimizedTrades implements VillagerOptimizerModule, Listener { private final VillagerCache villagerCache; private final long restock_delay_millis; private final boolean log_enabled, notify_player; - public RestockTrades() { + public RestockOptimizedTrades() { shouldEnable(); this.villagerCache = VillagerOptimizer.getCache(); Config config = VillagerOptimizer.getConfiguration(); - config.addComment("gameplay.trade-restocking.enable", """ + config.addComment("gameplay.restock-optimized-trades", """ This is for automatic restocking of trades for optimized villagers. Optimized Villagers\s - Don't have enough AI to do trade restocks themselves, so this needs to always be enabled."""); - this.restock_delay_millis = config.getInt("gameplay.trade-restocking.delay-in-ticks", 1000, + don't have enough AI to restock their trades naturally, so this is here as a workaround."""); + this.restock_delay_millis = config.getInt("gameplay.restock-optimized-trades.delay-in-ticks", 1000, "1 second = 20 ticks. There are 24.000 ticks in a single minecraft day.") * 50L; - this.notify_player = config.getBoolean("gameplay.trade-restocking.notify-player", true, + this.notify_player = config.getBoolean("gameplay.restock-optimized-trades.notify-player", true, "Sends the player a message when the trades were restocked on a clicked villager."); - this.log_enabled = config.getBoolean("gameplay.trade-restocking.log", false); + this.log_enabled = config.getBoolean("gameplay.restock-optimized-trades.log", false); } @Override @@ -44,7 +44,7 @@ public class RestockTrades implements VillagerOptimizerModule, Listener { @Override public boolean shouldEnable() { - return VillagerOptimizer.getConfiguration().getBoolean("gameplay.trade-restocking.enable", true); + return true; } @EventHandler(priority = EventPriority.NORMAL, ignoreCancelled = true) diff --git a/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/optimizations/OptimizeByBlock.java b/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/optimization/OptimizeByBlock.java similarity index 99% rename from VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/optimizations/OptimizeByBlock.java rename to VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/optimization/OptimizeByBlock.java index 968f179..a6b057a 100644 --- a/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/optimizations/OptimizeByBlock.java +++ b/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/optimization/OptimizeByBlock.java @@ -1,4 +1,4 @@ -package me.xginko.villageroptimizer.modules.optimizations; +package me.xginko.villageroptimizer.modules.optimization; import me.xginko.villageroptimizer.VillagerCache; import me.xginko.villageroptimizer.VillagerOptimizer; diff --git a/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/optimizations/OptimizeByNametag.java b/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/optimization/OptimizeByNametag.java similarity index 99% rename from VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/optimizations/OptimizeByNametag.java rename to VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/optimization/OptimizeByNametag.java index baee2b8..78e313a 100644 --- a/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/optimizations/OptimizeByNametag.java +++ b/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/optimization/OptimizeByNametag.java @@ -1,4 +1,4 @@ -package me.xginko.villageroptimizer.modules.optimizations; +package me.xginko.villageroptimizer.modules.optimization; import me.xginko.villageroptimizer.VillagerCache; import me.xginko.villageroptimizer.VillagerOptimizer; diff --git a/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/optimizations/OptimizeByWorkstation.java b/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/optimization/OptimizeByWorkstation.java similarity index 99% rename from VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/optimizations/OptimizeByWorkstation.java rename to VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/optimization/OptimizeByWorkstation.java index 6d32dbd..cfa6932 100644 --- a/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/optimizations/OptimizeByWorkstation.java +++ b/VillagerOptimizer-1.16.5/src/main/java/me/xginko/villageroptimizer/modules/optimization/OptimizeByWorkstation.java @@ -1,4 +1,4 @@ -package me.xginko.villageroptimizer.modules.optimizations; +package me.xginko.villageroptimizer.modules.optimization; import me.xginko.villageroptimizer.VillagerCache; import me.xginko.villageroptimizer.VillagerOptimizer; diff --git a/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/config/Config.java b/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/config/Config.java index 85b34b6..eb753a5 100644 --- a/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/config/Config.java +++ b/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/config/Config.java @@ -60,13 +60,13 @@ public class Config { config.addDefault("optimization-methods.nametag-optimization.enable", true); createTitledSection("Villager Chunk Limit", "villager-chunk-limit"); createTitledSection("Gameplay", "gameplay"); + config.addDefault("gameplay.restock-optimized-trades", null); + config.addDefault("gameplay.level-optimized-profession", null); config.addDefault("gameplay.rename-optimized-villagers.enable", true); config.addDefault("gameplay.villagers-spawn-as-adults.enable", false); config.addDefault("gameplay.prevent-trading-with-unoptimized.enable", false); - config.addDefault("gameplay.prevent-damage.enable", true); - config.addDefault("gameplay.prevent-targeting.enable", true); - config.addDefault("gameplay.villager-leveling.enable", true); - config.addDefault("gameplay.trade-restocking.enable", true); + config.addDefault("gameplay.prevent-entities-from-targeting-optimized.enable", true); + config.addDefault("gameplay.prevent-damage-to-optimized.enable", true); } public void createTitledSection(@NotNull String title, @NotNull String path) { diff --git a/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/VillagerOptimizerModule.java b/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/VillagerOptimizerModule.java index be1685a..08ebe3c 100644 --- a/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/VillagerOptimizerModule.java +++ b/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/VillagerOptimizerModule.java @@ -1,11 +1,9 @@ package me.xginko.villageroptimizer.modules; -import me.xginko.villageroptimizer.modules.extras.*; -import me.xginko.villageroptimizer.modules.mechanics.LevelVillagers; -import me.xginko.villageroptimizer.modules.mechanics.RestockTrades; -import me.xginko.villageroptimizer.modules.optimizations.OptimizeByBlock; -import me.xginko.villageroptimizer.modules.optimizations.OptimizeByNametag; -import me.xginko.villageroptimizer.modules.optimizations.OptimizeByWorkstation; +import me.xginko.villageroptimizer.modules.gameplay.*; +import me.xginko.villageroptimizer.modules.optimization.OptimizeByBlock; +import me.xginko.villageroptimizer.modules.optimization.OptimizeByNametag; +import me.xginko.villageroptimizer.modules.optimization.OptimizeByWorkstation; import java.util.HashSet; @@ -25,14 +23,13 @@ public interface VillagerOptimizerModule { modules.add(new OptimizeByBlock()); modules.add(new OptimizeByWorkstation()); - modules.add(new RestockTrades()); - modules.add(new LevelVillagers()); - + modules.add(new RestockOptimizedTrades()); + modules.add(new LevelOptimizedVillagers()); + modules.add(new RenameOptimizedVillagers()); modules.add(new MakeVillagersSpawnAdult()); modules.add(new PreventUnoptimizedTrading()); - modules.add(new PreventVillagerDamage()); modules.add(new PreventVillagerTargetting()); - modules.add(new RenameOptimizedVillagers()); + modules.add(new PreventVillagerDamage()); modules.add(new VillagerChunkLimit()); diff --git a/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/mechanics/LevelVillagers.java b/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/gameplay/LevelOptimizedVillagers.java similarity index 87% rename from VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/mechanics/LevelVillagers.java rename to VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/gameplay/LevelOptimizedVillagers.java index 659d323..44047bb 100644 --- a/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/mechanics/LevelVillagers.java +++ b/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/gameplay/LevelOptimizedVillagers.java @@ -1,4 +1,4 @@ -package me.xginko.villageroptimizer.modules.mechanics; +package me.xginko.villageroptimizer.modules.gameplay; import me.xginko.villageroptimizer.VillagerOptimizer; import me.xginko.villageroptimizer.VillagerCache; @@ -18,25 +18,25 @@ import org.bukkit.event.inventory.InventoryType; import org.bukkit.potion.PotionEffect; import org.bukkit.potion.PotionEffectType; -public class LevelVillagers implements VillagerOptimizerModule, Listener { +public class LevelOptimizedVillagers implements VillagerOptimizerModule, Listener { private final VillagerOptimizer plugin; private final VillagerCache villagerCache; private final boolean notify_player; private final long cooldown; - public LevelVillagers() { + public LevelOptimizedVillagers() { shouldEnable(); this.plugin = VillagerOptimizer.getInstance(); this.villagerCache = VillagerOptimizer.getCache(); Config config = VillagerOptimizer.getConfiguration(); - config.addComment("gameplay.villager-leveling.enable", """ + config.addComment("gameplay.level-optimized-profession", """ This is needed to allow optimized villagers to level up.\s Temporarily enables the villagers AI to allow it to level up and then disables it again."""); - this.cooldown = config.getInt("gameplay.villager-leveling.level-check-cooldown-seconds", 5, """ + this.cooldown = config.getInt("gameplay.level-optimized-profession.level-check-cooldown-seconds", 5, """ Cooldown in seconds until the level of a villager will be checked and updated again.\s Recommended to leave as is.""") * 1000L; - this.notify_player = config.getBoolean("gameplay.villager-leveling.notify-player", true, + this.notify_player = config.getBoolean("gameplay.level-optimized-profession.notify-player", true, "Tell players to wait when a villager is leveling up."); } @@ -53,7 +53,7 @@ public class LevelVillagers implements VillagerOptimizerModule, Listener { @Override public boolean shouldEnable() { - return VillagerOptimizer.getConfiguration().getBoolean("gameplay.villager-leveling.enable", true); + return true; } @EventHandler(priority = EventPriority.NORMAL, ignoreCancelled = true) diff --git a/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/extras/MakeVillagersSpawnAdult.java b/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/gameplay/MakeVillagersSpawnAdult.java similarity index 96% rename from VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/extras/MakeVillagersSpawnAdult.java rename to VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/gameplay/MakeVillagersSpawnAdult.java index a536642..fd5eabb 100644 --- a/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/extras/MakeVillagersSpawnAdult.java +++ b/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/gameplay/MakeVillagersSpawnAdult.java @@ -1,4 +1,4 @@ -package me.xginko.villageroptimizer.modules.extras; +package me.xginko.villageroptimizer.modules.gameplay; import me.xginko.villageroptimizer.VillagerOptimizer; import me.xginko.villageroptimizer.modules.VillagerOptimizerModule; diff --git a/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/extras/PreventUnoptimizedTrading.java b/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/gameplay/PreventUnoptimizedTrading.java similarity index 98% rename from VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/extras/PreventUnoptimizedTrading.java rename to VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/gameplay/PreventUnoptimizedTrading.java index 0407147..453ca4c 100644 --- a/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/extras/PreventUnoptimizedTrading.java +++ b/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/gameplay/PreventUnoptimizedTrading.java @@ -1,4 +1,4 @@ -package me.xginko.villageroptimizer.modules.extras; +package me.xginko.villageroptimizer.modules.gameplay; import me.xginko.villageroptimizer.VillagerOptimizer; import me.xginko.villageroptimizer.VillagerCache; diff --git a/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/extras/PreventVillagerDamage.java b/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/gameplay/PreventVillagerDamage.java similarity index 85% rename from VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/extras/PreventVillagerDamage.java rename to VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/gameplay/PreventVillagerDamage.java index 9db543b..1441bfe 100644 --- a/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/extras/PreventVillagerDamage.java +++ b/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/gameplay/PreventVillagerDamage.java @@ -1,4 +1,4 @@ -package me.xginko.villageroptimizer.modules.extras; +package me.xginko.villageroptimizer.modules.gameplay; import io.papermc.paper.event.entity.EntityPushedByEntityAttackEvent; import me.xginko.villageroptimizer.VillagerOptimizer; @@ -25,17 +25,17 @@ public class PreventVillagerDamage implements VillagerOptimizerModule, Listener shouldEnable(); this.villagerCache = VillagerOptimizer.getCache(); Config config = VillagerOptimizer.getConfiguration(); - config.addComment("gameplay.prevent-damage.enable", + config.addComment("gameplay.prevent-damage-to-optimized.enable", "Configure what kind of damage you want to cancel for optimized villagers here."); - this.push = config.getBoolean("gameplay.prevent-damage.prevent-push-from-attack", true, + this.push = config.getBoolean("gameplay.prevent-damage-to-optimized.prevent-push-from-attack", true, "Prevents optimized villagers from getting pushed by an attacking entity"); - this.block = config.getBoolean("gameplay.prevent-damage.damagers.block", false, + this.block = config.getBoolean("gameplay.prevent-damage-to-optimized.damagers.block", false, "Prevents damage from blocks like lava, tnt, respawn anchors, etc."); - this.player = config.getBoolean("gameplay.prevent-damage.damagers.player", false, + this.player = config.getBoolean("gameplay.prevent-damage-to-optimized.damagers.player", false, "Prevents damage from getting hit by players."); - this.mob = config.getBoolean("gameplay.prevent-damage.damagers.mob", true, + this.mob = config.getBoolean("gameplay.prevent-damage-to-optimized.damagers.mob", true, "Prevents damage from hostile mobs."); - this.other = config.getBoolean("gameplay.prevent-damage.damagers.other", true, + this.other = config.getBoolean("gameplay.prevent-damage-to-optimized.damagers.other", true, "Prevents damage from all other entities."); } @@ -52,7 +52,7 @@ public class PreventVillagerDamage implements VillagerOptimizerModule, Listener @Override public boolean shouldEnable() { - return VillagerOptimizer.getConfiguration().getBoolean("gameplay.prevent-damage.enable", true); + return VillagerOptimizer.getConfiguration().getBoolean("gameplay.prevent-damage-to-optimized.enable", true); } @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true) diff --git a/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/extras/PreventVillagerTargetting.java b/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/gameplay/PreventVillagerTargetting.java similarity index 95% rename from VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/extras/PreventVillagerTargetting.java rename to VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/gameplay/PreventVillagerTargetting.java index dc4e0f2..b6eb918 100644 --- a/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/extras/PreventVillagerTargetting.java +++ b/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/gameplay/PreventVillagerTargetting.java @@ -1,4 +1,4 @@ -package me.xginko.villageroptimizer.modules.extras; +package me.xginko.villageroptimizer.modules.gameplay; import com.destroystokyo.paper.event.entity.EntityPathfindEvent; import me.xginko.villageroptimizer.VillagerOptimizer; @@ -36,7 +36,7 @@ public class PreventVillagerTargetting implements VillagerOptimizerModule, Liste @Override public boolean shouldEnable() { - return VillagerOptimizer.getConfiguration().getBoolean("gameplay.prevent-targeting.enable", true, + return VillagerOptimizer.getConfiguration().getBoolean("gameplay.prevent-entities-from-targeting-optimized.enable", true, "Prevents hostile entities from targeting optimized villagers."); } diff --git a/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/extras/RenameOptimizedVillagers.java b/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/gameplay/RenameOptimizedVillagers.java similarity index 98% rename from VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/extras/RenameOptimizedVillagers.java rename to VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/gameplay/RenameOptimizedVillagers.java index 755bf96..5d63611 100644 --- a/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/extras/RenameOptimizedVillagers.java +++ b/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/gameplay/RenameOptimizedVillagers.java @@ -1,4 +1,4 @@ -package me.xginko.villageroptimizer.modules.extras; +package me.xginko.villageroptimizer.modules.gameplay; import me.xginko.villageroptimizer.VillagerOptimizer; import me.xginko.villageroptimizer.WrappedVillager; diff --git a/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/mechanics/RestockTrades.java b/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/gameplay/RestockOptimizedTrades.java similarity index 80% rename from VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/mechanics/RestockTrades.java rename to VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/gameplay/RestockOptimizedTrades.java index d6ee427..3210b86 100644 --- a/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/mechanics/RestockTrades.java +++ b/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/gameplay/RestockOptimizedTrades.java @@ -1,4 +1,4 @@ -package me.xginko.villageroptimizer.modules.mechanics; +package me.xginko.villageroptimizer.modules.gameplay; import me.xginko.villageroptimizer.VillagerOptimizer; import me.xginko.villageroptimizer.VillagerCache; @@ -17,24 +17,24 @@ import org.bukkit.event.HandlerList; import org.bukkit.event.Listener; import org.bukkit.event.player.PlayerInteractEntityEvent; -public class RestockTrades implements VillagerOptimizerModule, Listener { +public class RestockOptimizedTrades implements VillagerOptimizerModule, Listener { private final VillagerCache villagerCache; private final long restock_delay_millis; private final boolean log_enabled, notify_player; - public RestockTrades() { + public RestockOptimizedTrades() { shouldEnable(); this.villagerCache = VillagerOptimizer.getCache(); Config config = VillagerOptimizer.getConfiguration(); - config.addComment("gameplay.trade-restocking.enable", """ + config.addComment("gameplay.restock-optimized-trades", """ This is for automatic restocking of trades for optimized villagers. Optimized Villagers\s - Don't have enough AI to do trade restocks themselves, so this needs to always be enabled."""); - this.restock_delay_millis = config.getInt("gameplay.trade-restocking.delay-in-ticks", 1000, + don't have enough AI to restock their trades naturally, so this is here as a workaround."""); + this.restock_delay_millis = config.getInt("gameplay.restock-optimized-trades.delay-in-ticks", 1000, "1 second = 20 ticks. There are 24.000 ticks in a single minecraft day.") * 50L; - this.notify_player = config.getBoolean("gameplay.trade-restocking.notify-player", true, + this.notify_player = config.getBoolean("gameplay.restock-optimized-trades.notify-player", true, "Sends the player a message when the trades were restocked on a clicked villager."); - this.log_enabled = config.getBoolean("gameplay.trade-restocking.log", false); + this.log_enabled = config.getBoolean("gameplay.restock-optimized-trades.log", false); } @Override @@ -50,7 +50,7 @@ public class RestockTrades implements VillagerOptimizerModule, Listener { @Override public boolean shouldEnable() { - return VillagerOptimizer.getConfiguration().getBoolean("gameplay.trade-restocking.enable", true); + return true; } @EventHandler(priority = EventPriority.NORMAL, ignoreCancelled = true) diff --git a/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/optimizations/OptimizeByBlock.java b/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/optimization/OptimizeByBlock.java similarity index 99% rename from VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/optimizations/OptimizeByBlock.java rename to VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/optimization/OptimizeByBlock.java index f76730d..d732089 100644 --- a/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/optimizations/OptimizeByBlock.java +++ b/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/optimization/OptimizeByBlock.java @@ -1,4 +1,4 @@ -package me.xginko.villageroptimizer.modules.optimizations; +package me.xginko.villageroptimizer.modules.optimization; import me.xginko.villageroptimizer.VillagerCache; import me.xginko.villageroptimizer.VillagerOptimizer; diff --git a/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/optimizations/OptimizeByNametag.java b/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/optimization/OptimizeByNametag.java similarity index 99% rename from VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/optimizations/OptimizeByNametag.java rename to VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/optimization/OptimizeByNametag.java index b9efc80..b7990f1 100644 --- a/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/optimizations/OptimizeByNametag.java +++ b/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/optimization/OptimizeByNametag.java @@ -1,4 +1,4 @@ -package me.xginko.villageroptimizer.modules.optimizations; +package me.xginko.villageroptimizer.modules.optimization; import me.xginko.villageroptimizer.VillagerCache; import me.xginko.villageroptimizer.VillagerOptimizer; diff --git a/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/optimizations/OptimizeByWorkstation.java b/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/optimization/OptimizeByWorkstation.java similarity index 99% rename from VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/optimizations/OptimizeByWorkstation.java rename to VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/optimization/OptimizeByWorkstation.java index 65ef2fa..9c687af 100644 --- a/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/optimizations/OptimizeByWorkstation.java +++ b/VillagerOptimizer-1.20.2/src/main/java/me/xginko/villageroptimizer/modules/optimization/OptimizeByWorkstation.java @@ -1,4 +1,4 @@ -package me.xginko.villageroptimizer.modules.optimizations; +package me.xginko.villageroptimizer.modules.optimization; import me.xginko.villageroptimizer.VillagerCache; import me.xginko.villageroptimizer.VillagerOptimizer;