src/main/java/viper/ConfigManager.java aktualisiert
This commit is contained in:
@@ -25,6 +25,8 @@ public class ConfigManager {
|
||||
plugin.saveResource("config.yml", false);
|
||||
}
|
||||
config = YamlConfiguration.loadConfiguration(configFile);
|
||||
// Setze Standardwerte, falls sie fehlen
|
||||
setConfigDefaults();
|
||||
}
|
||||
|
||||
private void loadLang() {
|
||||
@@ -33,6 +35,100 @@ public class ConfigManager {
|
||||
plugin.saveResource("lang.yml", false);
|
||||
}
|
||||
lang = YamlConfiguration.loadConfiguration(langFile);
|
||||
// Setze Standardnachrichten, falls sie fehlen
|
||||
setLangDefaults();
|
||||
}
|
||||
|
||||
private void setConfigDefaults() {
|
||||
if (!config.contains("max-doors")) {
|
||||
config.set("max-doors", 20);
|
||||
}
|
||||
if (!config.contains("max-lamps")) {
|
||||
config.set("max-lamps", 50);
|
||||
}
|
||||
if (!config.contains("max-noteblocks")) {
|
||||
config.set("max-noteblocks", 10);
|
||||
}
|
||||
if (!config.contains("default-note")) {
|
||||
config.set("default-note", "PIANO");
|
||||
}
|
||||
if (!config.contains("double-note-enabled")) {
|
||||
config.set("double-note-enabled", true);
|
||||
}
|
||||
if (!config.contains("double-note-delay-ms")) {
|
||||
config.set("double-note-delay-ms", 1000);
|
||||
}
|
||||
saveConfig();
|
||||
}
|
||||
|
||||
private void setLangDefaults() {
|
||||
// Standardnachrichten hinzufügen, ohne bestehende zu überschreiben
|
||||
if (!lang.contains("tueren-geoeffnet")) {
|
||||
lang.set("tueren-geoeffnet", "§aTüren wurden geöffnet.");
|
||||
}
|
||||
if (!lang.contains("tueren-geschlossen")) {
|
||||
lang.set("tueren-geschlossen", "§cTüren wurden geschlossen.");
|
||||
}
|
||||
if (!lang.contains("lampen-eingeschaltet")) {
|
||||
lang.set("lampen-eingeschaltet", "§aLampen wurden eingeschaltet.");
|
||||
}
|
||||
if (!lang.contains("lampen-ausgeschaltet")) {
|
||||
lang.set("lampen-ausgeschaltet", "§cLampen wurden ausgeschaltet.");
|
||||
}
|
||||
if (!lang.contains("bloecke-umgeschaltet")) {
|
||||
lang.set("bloecke-umgeschaltet", "§eBlöcke wurden umgeschaltet.");
|
||||
}
|
||||
if (!lang.contains("keine-bloecke-verbunden")) {
|
||||
lang.set("keine-bloecke-verbunden", "§cKeine Blöcke sind verbunden.");
|
||||
}
|
||||
if (!lang.contains("max-tueren-erreicht")) {
|
||||
lang.set("max-tueren-erreicht", "§cMaximale Anzahl an Türen erreicht.");
|
||||
}
|
||||
if (!lang.contains("max-lampen-erreicht")) {
|
||||
lang.set("max-lampen-erreicht", "§cMaximale Anzahl an Lampen erreicht.");
|
||||
}
|
||||
if (!lang.contains("max-notenbloecke-erreicht")) {
|
||||
lang.set("max-notenbloecke-erreicht", "§cMaximale Anzahl an Notenblöcken erreicht.");
|
||||
}
|
||||
if (!lang.contains("block-verbunden")) {
|
||||
lang.set("block-verbunden", "§aBlock verbunden.");
|
||||
}
|
||||
if (!lang.contains("block-bereits-verbunden")) {
|
||||
lang.set("block-bereits-verbunden", "§cBlock ist bereits verbunden.");
|
||||
}
|
||||
if (!lang.contains("controller-platziert")) {
|
||||
lang.set("controller-platziert", "§aController platziert.");
|
||||
}
|
||||
if (!lang.contains("controller-entfernt")) {
|
||||
lang.set("controller-entfernt", "§cController entfernt.");
|
||||
}
|
||||
if (!lang.contains("notenblock-ausgeloest")) {
|
||||
lang.set("notenblock-ausgeloest", "§aNotenblock-Klingel wurde ausgelöst.");
|
||||
}
|
||||
if (!lang.contains("instrument-gesetzt")) {
|
||||
lang.set("instrument-gesetzt", "§aDein Notenblock-Instrument wurde auf %s gesetzt.");
|
||||
}
|
||||
if (!lang.contains("ungueltiges-instrument")) {
|
||||
lang.set("ungueltiges-instrument", "§cUngültiges Instrument! Verwende: /bc note <Instrument>");
|
||||
}
|
||||
if (!lang.contains("konfiguration-reloaded")) {
|
||||
lang.set("konfiguration-reloaded", "§aKonfiguration und Daten erfolgreich neu geladen!");
|
||||
}
|
||||
if (!lang.contains("keine-berechtigung")) {
|
||||
lang.set("keine-berechtigung", "§cDu hast keine Berechtigung für diesen Befehl!");
|
||||
}
|
||||
saveLang();
|
||||
}
|
||||
|
||||
public void reloadConfig() {
|
||||
config = YamlConfiguration.loadConfiguration(configFile);
|
||||
lang = YamlConfiguration.loadConfiguration(langFile);
|
||||
setConfigDefaults(); // Stelle sicher, dass neue Standardwerte hinzugefügt werden
|
||||
setLangDefaults(); // Stelle sicher, dass neue Nachrichten hinzugefügt werden
|
||||
}
|
||||
|
||||
public FileConfiguration getConfig() {
|
||||
return config;
|
||||
}
|
||||
|
||||
public int getMaxDoors() {
|
||||
@@ -43,6 +139,10 @@ public class ConfigManager {
|
||||
return config.getInt("max-lamps", 50);
|
||||
}
|
||||
|
||||
public int getMaxNoteBlocks() {
|
||||
return config.getInt("max-noteblocks", 10);
|
||||
}
|
||||
|
||||
public String getMessage(String key) {
|
||||
return lang.getString(key, "Nachricht nicht gefunden: " + key);
|
||||
}
|
||||
|
Reference in New Issue
Block a user