Browse Source

Using new MaterialUtil.java for material check

RedstoneFuture 9 months ago
parent
commit
90a280d781

+ 2 - 7
missilewars-plugin/src/main/java/de/butzlabben/missilewars/configuration/Config.java

@@ -22,6 +22,7 @@ import de.butzlabben.missilewars.Logger;
 import de.butzlabben.missilewars.MissileWars;
 import de.butzlabben.missilewars.game.GameManager;
 import de.butzlabben.missilewars.menus.MenuItem;
+import de.butzlabben.missilewars.util.MaterialUtil;
 import de.butzlabben.missilewars.util.SetupUtil;
 import lombok.Getter;
 import org.bukkit.*;
@@ -313,13 +314,7 @@ public class Config {
     }
     
     public static Material getTempBlockMaterial() {
-        String name = cfg.getString("temp_block.material").toUpperCase();
-        try {
-            return valueOf(name);
-        } catch (Exception e) {
-            Logger.WARN.log("Could not use '" + name + "' as temp-block material!");
-        }
-        return null;
+        return MaterialUtil.getMaterial(cfg.getString("temp_block.material"));
     }
 
     public static int getUpdateDelay() {

+ 26 - 0
missilewars-plugin/src/main/java/de/butzlabben/missilewars/util/MaterialUtil.java

@@ -0,0 +1,26 @@
+package de.butzlabben.missilewars.util;
+
+import de.butzlabben.missilewars.Logger;
+
+import javax.annotation.Nullable;
+
+import static org.bukkit.Material.valueOf;
+
+public class MaterialUtil {
+    
+    public static org.bukkit.Material getMaterial(@Nullable String input) {
+        if (input == null) {
+            Logger.WARN.log("Material not defined!");
+            return null;
+        }
+        
+        String name = input.toUpperCase();
+        try {
+            return valueOf(name);
+        } catch (Exception e) {
+            Logger.WARN.log("Could not use '" + name + "' as bukkit material!");
+        }
+        return null;
+    }
+    
+}