added option to disable specific appliances

This commit is contained in:
Elias Müller 2024-09-24 18:31:48 +02:00
parent aaad9fe7d8
commit 7a97b1595e
3 changed files with 14 additions and 2 deletions

View File

@ -39,6 +39,7 @@ import org.bukkit.plugin.java.JavaPlugin;
import java.lang.reflect.ParameterizedType;
import java.util.List;
import java.util.logging.Logger;
import java.util.stream.Stream;
public final class Main extends JavaPlugin {
private static Main instance;
@ -54,7 +55,8 @@ public final class Main extends JavaPlugin {
saveDefaultConfig();
Configuration.readConfig();
appliances = List.of(
List<String> disabledAppliances = Configuration.pluginConfig.getStringList("disabledAppliances");
this.appliances = Stream.of(
new AdminMarker(),
new WorldMuseum(),
new TitleClear(),
@ -84,7 +86,10 @@ public final class Main extends JavaPlugin {
new KnockDoor(),
new PackSelect(),
new GlowingBerries()
);
)
.filter(appliance -> disabledAppliances.stream()
.noneMatch(s -> s.equalsIgnoreCase(appliance.getClass().getSimpleName())))
.toList();
Main.logger.info("Loading appliances...");
appliances.forEach(appliance -> {

View File

@ -1,6 +1,7 @@
package eu.mhsl.craftattack.spawn.config;
import eu.mhsl.craftattack.spawn.Main;
import org.bukkit.configuration.ConfigurationSection;
import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.configuration.file.YamlConfiguration;
@ -10,9 +11,11 @@ public class Configuration {
private static final String configName = "config.yml";
private static final File configFile = new File(Main.instance().getDataFolder().getAbsolutePath() + "/" + configName);
public static FileConfiguration cfg;
public static ConfigurationSection pluginConfig;
public static void readConfig() {
cfg = YamlConfiguration.loadConfiguration(configFile);
pluginConfig = cfg.getConfigurationSection("plugin");
}
public static void saveChanges() {

View File

@ -1,3 +1,7 @@
plugin:
disabledAppliances:
- NameOfApplianceClass
worldMuseum:
uuid:
connect-server-name: worldmuseum