diff --git a/Semesterprojekt/src/main/java/thb/jeanluc/adventure/menu/SettingsMenu.java b/Semesterprojekt/src/main/java/thb/jeanluc/adventure/menu/SettingsMenu.java index ecd6299..7acf8fc 100644 --- a/Semesterprojekt/src/main/java/thb/jeanluc/adventure/menu/SettingsMenu.java +++ b/Semesterprojekt/src/main/java/thb/jeanluc/adventure/menu/SettingsMenu.java @@ -2,7 +2,6 @@ package thb.jeanluc.adventure.menu; import thb.jeanluc.adventure.io.ConsoleIO; import thb.jeanluc.adventure.io.GameIO; -import thb.jeanluc.adventure.io.MusicLevel; import thb.jeanluc.adventure.save.Settings; import thb.jeanluc.adventure.save.SettingsStore; diff --git a/Semesterprojekt/src/main/java/thb/jeanluc/adventure/save/Settings.java b/Semesterprojekt/src/main/java/thb/jeanluc/adventure/save/Settings.java index a46411b..cc30359 100644 --- a/Semesterprojekt/src/main/java/thb/jeanluc/adventure/save/Settings.java +++ b/Semesterprojekt/src/main/java/thb/jeanluc/adventure/save/Settings.java @@ -7,6 +7,12 @@ import thb.jeanluc.adventure.io.MusicLevel; public record Settings(ConsoleIO.ColorMode colorMode, ConsoleIO.GlyphMode glyphMode, MusicLevel musicLevel) { public Settings { + if (colorMode == null) { + colorMode = ConsoleIO.ColorMode.AUTO; + } + if (glyphMode == null) { + glyphMode = ConsoleIO.GlyphMode.UNICODE; + } if (musicLevel == null) { musicLevel = MusicLevel.MEDIUM; // backward-compat: old saves lack this field } diff --git a/Semesterprojekt/src/test/java/thb/jeanluc/adventure/save/SettingsStoreTest.java b/Semesterprojekt/src/test/java/thb/jeanluc/adventure/save/SettingsStoreTest.java index ccf26ab..5524db4 100644 --- a/Semesterprojekt/src/test/java/thb/jeanluc/adventure/save/SettingsStoreTest.java +++ b/Semesterprojekt/src/test/java/thb/jeanluc/adventure/save/SettingsStoreTest.java @@ -20,6 +20,7 @@ class SettingsStoreTest { Settings loaded = store.load(); assertThat(loaded.colorMode()).isEqualTo(ConsoleIO.ColorMode.ON); assertThat(loaded.glyphMode()).isEqualTo(ConsoleIO.GlyphMode.ASCII); + assertThat(loaded.musicLevel()).isEqualTo(MusicLevel.MEDIUM); } @Test