Co-Authored-By: Claude Sonnet 5 <[email protected]>
This commit is contained in:
@@ -0,0 +1,83 @@
|
||||
package us.tss3.blockparty.config;
|
||||
|
||||
import org.bukkit.configuration.file.FileConfiguration;
|
||||
import org.bukkit.plugin.java.JavaPlugin;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/** Wraps global config.yml access: UI toggles, sounds, rewards, default floor palette. */
|
||||
public class ConfigManager {
|
||||
|
||||
private final JavaPlugin plugin;
|
||||
private FileConfiguration config;
|
||||
|
||||
public ConfigManager(JavaPlugin plugin) {
|
||||
this.plugin = plugin;
|
||||
}
|
||||
|
||||
public void load() {
|
||||
plugin.saveDefaultConfig();
|
||||
plugin.reloadConfig();
|
||||
this.config = plugin.getConfig();
|
||||
}
|
||||
|
||||
public FileConfiguration raw() {
|
||||
return config;
|
||||
}
|
||||
|
||||
public boolean isScoreboardEnabled() {
|
||||
return config.getBoolean("ui.scoreboard", true);
|
||||
}
|
||||
|
||||
public boolean isBossbarEnabled() {
|
||||
return config.getBoolean("ui.bossbar", true);
|
||||
}
|
||||
|
||||
public boolean isTitlesEnabled() {
|
||||
return config.getBoolean("ui.titles", true);
|
||||
}
|
||||
|
||||
public boolean isActionbarEnabled() {
|
||||
return config.getBoolean("ui.actionbar", true);
|
||||
}
|
||||
|
||||
public int getScoreboardUpdateIntervalTicks() {
|
||||
return config.getInt("ui.scoreboard-update-interval-ticks", 10);
|
||||
}
|
||||
|
||||
public String getSound(String key) {
|
||||
return config.getString("sounds." + key);
|
||||
}
|
||||
|
||||
public List<String> getRewardCommands() {
|
||||
return config.getStringList("rewards.winner.commands");
|
||||
}
|
||||
|
||||
public List<String> getDefaultFloorMaterials() {
|
||||
return config.getStringList("default-floor-materials");
|
||||
}
|
||||
|
||||
public int getDefaultStartingRoundTime() {
|
||||
return config.getInt("defaults.starting-round-time", 20);
|
||||
}
|
||||
|
||||
public int getDefaultMinimumRoundTime() {
|
||||
return config.getInt("defaults.minimum-round-time", 4);
|
||||
}
|
||||
|
||||
public int getDefaultRoundReduction() {
|
||||
return config.getInt("defaults.round-time-reduction", 1);
|
||||
}
|
||||
|
||||
public int getDefaultCountdown() {
|
||||
return config.getInt("defaults.countdown-duration", 15);
|
||||
}
|
||||
|
||||
public int getFloorBatchBlocksPerTick() {
|
||||
return config.getInt("performance.floor-blocks-per-tick", 200);
|
||||
}
|
||||
|
||||
public boolean isPlaceholderApiEnabled() {
|
||||
return config.getBoolean("integrations.placeholderapi", true);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user