From 853f65652978dfe638800baa8fd9025e08ad8cec Mon Sep 17 00:00:00 2001 From: dvorakmortonxd Date: Tue, 4 Aug 2026 20:10:49 +0200 Subject: [PATCH] fuck, wrong upload --- .../one/eim/gravitycontrol/Configuration.java | 173 ------------------ 1 file changed, 173 deletions(-) delete mode 100644 src/main/java/one/eim/gravitycontrol/Configuration.java diff --git a/src/main/java/one/eim/gravitycontrol/Configuration.java b/src/main/java/one/eim/gravitycontrol/Configuration.java deleted file mode 100644 index de44a65..0000000 --- a/src/main/java/one/eim/gravitycontrol/Configuration.java +++ /dev/null @@ -1,173 +0,0 @@ -package one.eim.gravitycontrol; - -import com.destroystokyo.paper.MaterialSetTag; -import com.destroystokyo.paper.MaterialTags; -import net.kyori.adventure.key.InvalidKeyException; -import net.kyori.adventure.key.Key; -import org.bukkit.Material; -import org.bukkit.NamespacedKey; -import org.bukkit.Registry; -import org.bukkit.World; -import org.bukkit.configuration.ConfigurationSection; -import org.bukkit.configuration.file.FileConfiguration; -import org.intellij.lang.annotations.Subst; - -import java.io.IOException; -import java.util.ArrayList; -import java.util.HashSet; -import java.util.List; -import java.util.Set; - -class Configuration { - private final GravityControl plugin; - - final double horizontalCoefficient; - final double verticalCoefficient; - final Set worlds; - final Set blocks; - final List regions; - final boolean updateChecker; - - Configuration(GravityControl plugin, FileConfiguration config) { - this.plugin = plugin; - - if (!config.isSet(Fields._version)) { - migrate(config); - } - - // These seem to make it about match vanilla, but where did these values come from?? - // magic number much - this.horizontalCoefficient = config.getDouble("horizontal-coefficient", 1.46D); - this.verticalCoefficient = config.getDouble("vertical-coefficient", -2.4D); - - this.worlds = worlds(config); - this.blocks = blocks(config); - this.regions = config.getStringList(Fields.regions); - this.updateChecker = config.getBoolean(Fields.updateChecker); - } - - private Set blocks(final ConfigurationSection config) { - final Set materials = new HashSet<>(); - - for (final String keyString : config.getStringList(Fields.blocks)) { - final NamespacedKey key = NamespacedKey.fromString(keyString); - if (key == null) { - this.plugin.getSLF4JLogger().warn("Invalid key {} supplied in blocks configuration", keyString); - continue; - } - - final Material material = Registry.MATERIAL.get(key); - if (material == null) { - this.plugin.getSLF4JLogger().warn("Unknown block {} supplied in blocks configuration", key.asString()); - } - - materials.add(material); - } - - return materials; - } - - private Set worlds(final ConfigurationSection config) { - final Set keys = new HashSet<>(); - - for (final @Subst("minecraft:overworld") String keyString : config.getStringList(Fields.worlds)) { - if (keyString.equals("*")) { - this.plugin.getServer().getWorlds().forEach(world -> keys.add(world.key())); - return keys; - } - - try { - keys.add(Key.key(keyString)); - } catch (InvalidKeyException e) { - this.plugin.getSLF4JLogger().warn("Invalid key {} supplied in worlds configuration", keyString); - } - } - - return keys; - } - - private void migrate(final FileConfiguration config) { - this.plugin.getSLF4JLogger().info("Performing config migration"); - - final List oldWorlds = config.getStringList("worlds"); - final List newWorlds = new ArrayList<>(); - - for (final String worldName : oldWorlds) { - if (worldName.equals("*")) { - newWorlds.add(worldName); - } else { - final World world = this.plugin.getServer().getWorld(worldName); - if (world == null) { - this.plugin.getSLF4JLogger().warn("Unable to find world {}, discarding from configuration", worldName); - continue; - } - - newWorlds.add(world.key().asString()); - } - } - - final List newMaterials = new ArrayList<>(); - - if (config.getBoolean("enabled-blocks.sand")) { - newMaterials.add(Material.SAND.key().asString()); - } - if (config.getBoolean("enabled-blocks.red-sand")) { - newMaterials.add(Material.RED_SAND.key().asString()); - } - if (config.getBoolean("enabled-blocks.anvil")) { - MaterialSetTag.ANVIL.getValues().forEach(material -> newMaterials.add(material.key().asString())); - } - if (config.getBoolean("enabled-blocks.dragon-egg")) { - newMaterials.add(Material.DRAGON_EGG.key().asString()); - } - if (config.getBoolean("enabled-blocks.gravel")) { - newMaterials.add(Material.GRAVEL.key().asString()); - } - if (config.getBoolean("enabled-blocks.concrete-powder")) { - MaterialTags.CONCRETE_POWDER.getValues().forEach(material -> newMaterials.add(material.key().asString())); - } - - config.set("enabled-blocks", null); - config.set(Fields._version, 2); - config.set(Fields.worlds, newWorlds); - config.set(Fields.blocks, newMaterials); - config.set(Fields.regions, List.of("*")); - config.set(Fields.updateChecker, true); - - config.setComments(Fields._version, List.of( - "Do not touch. Used for configuration migration." - )); - config.setComments(Fields.worlds, List.of( - "Worlds where gravity duplication is enabled.", - "`*` means all worlds.", - "WARNING: World key is used, NOT world name.", - "For example: `minecraft:overworld` rather than `world`." - )); - config.setComments(Fields.blocks, List.of( - "Blocks for which duping is allowed.", - "NOTE: Uses Mojang item names, not bukkit Material names." - )); - config.setComments(Fields.regions, List.of( - "List of WorldGuard regions where duping is allowed", - "`*` means all regions. Checked based on end portal coordinates." - )); - config.setComments(Fields.updateChecker, List.of( - "If GravityControl should check for updates on startup" - )); - - try { - config.save(this.plugin.getDataFolder().toPath().resolve("config.yml").toFile()); - } catch (final IOException e) { - this.plugin.getSLF4JLogger().warn("Failed to migrate configuration", e); - this.plugin.getPluginLoader().disablePlugin(this.plugin); - } - } - - private static final class Fields { - static final String _version = "_version"; - static final String worlds = "worlds"; - static final String blocks = "blocks"; - static final String regions = "regions"; - static final String updateChecker = "update-checker"; - } -}