diff --git a/pom.xml b/pom.xml index 27bf4bc..ae6a5de 100644 --- a/pom.xml +++ b/pom.xml @@ -12,7 +12,7 @@ CustomCrops - 1.16 + 16 UTF-8 @@ -48,32 +48,22 @@ - - com.comphenix.protocol - ProtocolLib - 4.8.0 - me.clip placeholderapi 2.11.1 provided - - net.kyori - adventure-platform-bukkit - 4.1.0 - io.papermc.paper paper-api - 1.18.1-R0.1-SNAPSHOT + 1.17.1-R0.1-SNAPSHOT provided com.github.LoneDev6 api-itemsadder - 3.1.0b + 3.1.6 provided @@ -87,25 +77,20 @@ - maven-shade-plugin - 3.2.4 + org.apache.maven.plugins + maven-compiler-plugin + 3.8.1 - - - de.themoep.minedown - net.momirealms.customcrops.Libs.minedown - - + ${java.version} + ${java.version} - - - package - - shade - - - + + + src/main/resources + true + + diff --git a/src/main/java/net/momirealms/customcrops/CustomCrops.java b/src/main/java/net/momirealms/customcrops/CustomCrops.java index 2b29fe4..7dbf4da 100644 --- a/src/main/java/net/momirealms/customcrops/CustomCrops.java +++ b/src/main/java/net/momirealms/customcrops/CustomCrops.java @@ -67,9 +67,9 @@ public final class CustomCrops extends JavaPlugin { //检测papi依赖 if(Bukkit.getPluginManager().getPlugin("PlaceholderAPI") != null){ new Placeholders(this).register(); - MessageManager.consoleMessage("&#ccfbff-#ef96c5&[CustomCrops] 检测到PlaceHolderAPI 已启用季节变量!",Bukkit.getConsoleSender()); + MessageManager.consoleMessage("&#ccfbff-#ef96c5&[CustomCrops] &f检测到PlaceHolderAPI 已启用季节变量!",Bukkit.getConsoleSender()); } - MessageManager.consoleMessage("&#ccfbff-#ef96c5&[CustomCrops] 自定义农作物插件已启用!作者:小默米 QQ:3266959688",Bukkit.getConsoleSender()); + MessageManager.consoleMessage("&#ccfbff-#ef96c5&[CustomCrops] &f自定义农作物插件已启用!作者:小默米 QQ:3266959688",Bukkit.getConsoleSender()); } @Override @@ -85,6 +85,6 @@ public final class CustomCrops extends JavaPlugin { //备份 BackUp.backUpData(); - MessageManager.consoleMessage(("&#ccfbff-#ef96c5&[CustomCrops] 自定义农作物插件已卸载!作者:小默米 QQ:3266959688"),Bukkit.getConsoleSender()); + MessageManager.consoleMessage(("&#ccfbff-#ef96c5&[CustomCrops] &f自定义农作物插件已卸载!作者:小默米 QQ:3266959688"),Bukkit.getConsoleSender()); } } diff --git a/src/main/java/net/momirealms/customcrops/commands/CommandHandler.java b/src/main/java/net/momirealms/customcrops/commands/CommandHandler.java index 2e5f461..b22c8db 100644 --- a/src/main/java/net/momirealms/customcrops/commands/CommandHandler.java +++ b/src/main/java/net/momirealms/customcrops/commands/CommandHandler.java @@ -18,7 +18,6 @@ import javax.annotation.ParametersAreNonnullByDefault; public class CommandHandler implements CommandExecutor { - @Override @ParametersAreNonnullByDefault public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { diff --git a/src/main/java/net/momirealms/customcrops/commands/CommandTabComplete.java b/src/main/java/net/momirealms/customcrops/commands/CommandTabComplete.java index a2f5377..e7702ad 100644 --- a/src/main/java/net/momirealms/customcrops/commands/CommandTabComplete.java +++ b/src/main/java/net/momirealms/customcrops/commands/CommandTabComplete.java @@ -1,18 +1,17 @@ package net.momirealms.customcrops.commands; import net.momirealms.customcrops.datamanager.ConfigManager; -import org.bukkit.Bukkit; import org.bukkit.command.Command; import org.bukkit.command.CommandSender; import org.bukkit.command.TabCompleter; import org.jetbrains.annotations.Nullable; import javax.annotation.ParametersAreNonnullByDefault; -import java.util.ArrayList; import java.util.Arrays; import java.util.List; public class CommandTabComplete implements TabCompleter { + @Override @ParametersAreNonnullByDefault public @Nullable List onTabComplete(CommandSender sender, Command command, String alias, String[] args) { diff --git a/src/main/java/net/momirealms/customcrops/datamanager/ConfigManager.java b/src/main/java/net/momirealms/customcrops/datamanager/ConfigManager.java index b9cc3ca..3ebcf3f 100644 --- a/src/main/java/net/momirealms/customcrops/datamanager/ConfigManager.java +++ b/src/main/java/net/momirealms/customcrops/datamanager/ConfigManager.java @@ -1,8 +1,10 @@ package net.momirealms.customcrops.datamanager; +import dev.lone.itemsadder.api.CustomBlock; import net.momirealms.customcrops.CustomCrops; import net.momirealms.customcrops.utils.Crop; import org.apache.commons.lang.StringUtils; +import org.bukkit.Bukkit; import org.bukkit.configuration.file.FileConfiguration; import org.bukkit.configuration.file.YamlConfiguration; @@ -169,18 +171,33 @@ public class ConfigManager { }else { crop.setWillReturn(false); } - if(cropConfig.getConfigurationSection("crops."+key).contains("season")){ - crop.setSeasons(StringUtils.split( cropConfig.getString("crops."+key+".season"), ",")); + if(Config.season){ + if(cropConfig.getConfigurationSection("crops."+key).contains("season")){ + crop.setSeasons(StringUtils.split( cropConfig.getString("crops."+key+".season"), ",")); + }else { + MessageManager.consoleMessage("&c[CustomCrops] 错误!在启用季节模式的情况下未设置农作物 &f"+ key +" &c的生长季节!", Bukkit.getConsoleSender()); + return; + } } if(cropConfig.getConfigurationSection("crops."+key).contains("gigantic")){ crop.setWillGiant(true); crop.setGiant(cropConfig.getString("crops."+key+".gigantic")); - crop.setGiantChance(cropConfig.getDouble("crops."+key+".gigantic-chance")); + if(cropConfig.getConfigurationSection("crops."+key).contains("gigantic-chance")){ + crop.setGiantChance(cropConfig.getDouble("crops."+key+".gigantic-chance")); + }else { + MessageManager.consoleMessage("&c[CustomCrops] 错误!未设置农作物 &f"+ key +" &c的巨大化概率!", Bukkit.getConsoleSender()); + return; + } }else { crop.setWillGiant(false); } CONFIG.put(key, crop); }); + if(keys.size() == CONFIG.size()){ + MessageManager.consoleMessage("&#ccfbff-#ef96c5&[CustomCrops] &f成功载入 &a" + CONFIG.size() + " &f种农作物", Bukkit.getConsoleSender()); + }else { + MessageManager.consoleMessage("&c[CustomCrops] crops.yml配置存在错误,请根据上述提示仔细检查!", Bukkit.getConsoleSender()); + } } catch (Exception e) { e.printStackTrace(); diff --git a/src/main/java/net/momirealms/customcrops/datamanager/CropManager.java b/src/main/java/net/momirealms/customcrops/datamanager/CropManager.java index 760ac53..afaebd7 100644 --- a/src/main/java/net/momirealms/customcrops/datamanager/CropManager.java +++ b/src/main/java/net/momirealms/customcrops/datamanager/CropManager.java @@ -11,7 +11,6 @@ import org.bukkit.block.Block; import org.bukkit.configuration.file.FileConfiguration; import org.bukkit.configuration.file.YamlConfiguration; import org.bukkit.scheduler.BukkitScheduler; -import org.jetbrains.annotations.NotNull; import java.io.File; import java.io.IOException; diff --git a/src/main/java/net/momirealms/customcrops/datamanager/NextSeason.java b/src/main/java/net/momirealms/customcrops/datamanager/NextSeason.java index b728542..cd85eb4 100644 --- a/src/main/java/net/momirealms/customcrops/datamanager/NextSeason.java +++ b/src/main/java/net/momirealms/customcrops/datamanager/NextSeason.java @@ -10,24 +10,13 @@ public class NextSeason { public static void changeSeason(){ FileConfiguration config = CustomCrops.instance.getConfig(); String currentSeason = ConfigManager.Config.current; - String nextSeason; - switch (Objects.requireNonNull(currentSeason)) { - case "spring": - nextSeason = "summer"; - break; - case "summer": - nextSeason = "autumn"; - break; - case "autumn": - nextSeason = "winter"; - break; - case "winter": - nextSeason = "spring"; - break; - default: - nextSeason = null; - break; - } + String nextSeason = switch (Objects.requireNonNull(currentSeason)) { + case "spring" -> "summer"; + case "summer" -> "autumn"; + case "autumn" -> "winter"; + case "winter" -> "spring"; + default -> null; + }; if(nextSeason != null){ config.set("current-season", nextSeason); ConfigManager.Config.current = nextSeason; diff --git a/src/main/java/net/momirealms/customcrops/utils/IAFurniture.java b/src/main/java/net/momirealms/customcrops/utils/IAFurniture.java index 70c3e65..911affa 100644 --- a/src/main/java/net/momirealms/customcrops/utils/IAFurniture.java +++ b/src/main/java/net/momirealms/customcrops/utils/IAFurniture.java @@ -1,17 +1,14 @@ package net.momirealms.customcrops.utils; import dev.lone.itemsadder.api.CustomFurniture; -import net.momirealms.customcrops.CustomCrops; +import net.momirealms.customcrops.datamanager.ConfigManager; import org.bukkit.Location; import org.bukkit.World; -import org.bukkit.configuration.file.FileConfiguration; import org.bukkit.entity.ArmorStand; import org.bukkit.entity.Entity; public class IAFurniture { - static FileConfiguration config = CustomCrops.instance.getConfig(); - //放置IA自定义家具 public static void placeFurniture(String name, Location location){ CustomFurniture.spawn(name,location.getWorld().getBlockAt(location)); @@ -22,7 +19,7 @@ public class IAFurniture { for(Entity entity : world.getNearbyEntities(location,0,0,0)){ if(entity instanceof ArmorStand){ if(CustomFurniture.byAlreadySpawned((ArmorStand) entity) != null){ - if(CustomFurniture.byAlreadySpawned((ArmorStand) entity).getNamespacedID().equalsIgnoreCase(config.getString("config.sprinkler-1")) || CustomFurniture.byAlreadySpawned((ArmorStand) entity).getNamespacedID().equalsIgnoreCase(config.getString("config.sprinkler-2"))){ + if(CustomFurniture.byAlreadySpawned((ArmorStand) entity).getNamespacedID().equalsIgnoreCase(ConfigManager.Config.sprinkler_1) || CustomFurniture.byAlreadySpawned((ArmorStand) entity).getNamespacedID().equalsIgnoreCase(ConfigManager.Config.sprinkler_2)){ return true; } } diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml index 9b22074..1d41d6a 100644 --- a/src/main/resources/plugin.yml +++ b/src/main/resources/plugin.yml @@ -1,9 +1,11 @@ name: CustomCrops -version: '1.4.3' +version: '1.4.4' main: net.momirealms.customcrops.CustomCrops api-version: 1.16 -depend: [ ItemsAdder ] -softdepend: [ PlaceholderAPI ] +depend: + - ItemsAdder +softdepend: + - PlaceholderAPI authors: [ XiaoMoMi ] commands: customcrops: