From 1e4abf945fc98772ac9854d61f529dacd354d058 Mon Sep 17 00:00:00 2001 From: GeorgH93 Date: Thu, 12 Dec 2024 10:36:11 +0100 Subject: [PATCH] Fix sound loading causing issues on Paper --- .../Minepacks/Bukkit/Database/Config.java | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/Minepacks/src/at/pcgamingfreaks/Minepacks/Bukkit/Database/Config.java b/Minepacks/src/at/pcgamingfreaks/Minepacks/Bukkit/Database/Config.java index e7a64d9..7e6791d 100644 --- a/Minepacks/src/at/pcgamingfreaks/Minepacks/Bukkit/Database/Config.java +++ b/Minepacks/src/at/pcgamingfreaks/Minepacks/Bukkit/Database/Config.java @@ -30,12 +30,14 @@ import at.pcgamingfreaks.Minepacks.Bukkit.Minepacks; import at.pcgamingfreaks.Minepacks.Bukkit.ShrinkApproach; import at.pcgamingfreaks.Minepacks.MagicValues; +import at.pcgamingfreaks.Reflection; import at.pcgamingfreaks.Version; import org.bukkit.*; import org.jetbrains.annotations.NotNull; import java.io.FileNotFoundException; +import java.lang.reflect.Field; import java.util.*; import java.util.logging.Level; @@ -509,7 +511,15 @@ private Sound getSound(String option, String autoValue) if(soundName.equals("DISABLED") || soundName.equals("FALSE")) return null; try { - return Sound.valueOf(soundName); + if (MCVersion.isNewerOrEqualThan(MCVersion.MC_1_21)) + { + Field f = Reflection.getField(Sound.class, soundName); + if (f != null) return (Sound) f.get(null); + } + else + { + return Sound.valueOf(soundName); + } } catch(Exception ignored) {