Add optional Material to SchematicType #144
@ -20,6 +20,8 @@
|
||||
package de.steamwar.sql;
|
||||
|
||||
import de.steamwar.core.Core;
|
||||
import de.steamwar.inventory.SWItem;
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.configuration.file.YamlConfiguration;
|
||||
|
||||
import java.io.File;
|
||||
@ -27,7 +29,7 @@ import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class SchematicType {
|
||||
public static final SchematicType Normal = new SchematicType("Normal", "", Type.NORMAL, null); //Has to stay publicly availible
|
||||
public static final SchematicType Normal = new SchematicType("Normal", "", Type.NORMAL, null, null); //Has to stay publicly availible
|
||||
|
||||
private static final Map<String, SchematicType> fromDB;
|
||||
private static final List<SchematicType> types;
|
||||
@ -54,14 +56,16 @@ public class SchematicType {
|
||||
continue;
|
||||
|
||||
SchematicType checktype = null;
|
||||
String materialString = config.getString("material");
|
||||
YoyoNow markierte diese Unterhaltung als gelöst
Veraltet
|
||||
Material material = materialString != null ? SWItem.getMaterial(materialString) : null;
|
||||
YoyoNow markierte diese Unterhaltung als gelöst
Veraltet
Lixfel
hat
Warum Material null zulassen und nicht einfach auf den Steinknopf (bitte über SWItem) defaulten? Warum Material null zulassen und nicht einfach auf den Steinknopf (bitte über SWItem) defaulten?
|
||||
|
||||
if(!config.getStringList("CheckQuestions").isEmpty()) {
|
||||
checktype = new SchematicType("C" + type, "C" + shortcut, Type.CHECK_TYPE, null);
|
||||
checktype = new SchematicType("C" + type, "C" + shortcut, Type.CHECK_TYPE, null, material);
|
||||
tmpTypes.add(checktype);
|
||||
tmpFromDB.put(checktype.toDB(), checktype);
|
||||
}
|
||||
|
||||
SchematicType current = new SchematicType(type, shortcut, config.isConfigurationSection("Server") ? Type.FIGHT_TYPE : Type.NORMAL, checktype);
|
||||
SchematicType current = new SchematicType(type, shortcut, config.isConfigurationSection("Server") ? Type.FIGHT_TYPE : Type.NORMAL, checktype, material);
|
||||
tmpTypes.add(current);
|
||||
tmpFromDB.put(type.toLowerCase(), current);
|
||||
}
|
||||
@ -75,12 +79,14 @@ public class SchematicType {
|
||||
private final String kuerzel;
|
||||
private final Type type;
|
||||
private final SchematicType checkType;
|
||||
private final Material material;
|
||||
|
||||
private SchematicType(String name, String kuerzel, Type type, SchematicType checkType){
|
||||
private SchematicType(String name, String kuerzel, Type type, SchematicType checkType, Material material){
|
||||
this.name = name;
|
||||
this.kuerzel = kuerzel;
|
||||
this.type = type;
|
||||
this.checkType = checkType;
|
||||
this.material = material == null ? Material.STONE_BUTTON : material;
|
||||
}
|
||||
|
||||
public boolean isAssignable(){
|
||||
@ -111,6 +117,10 @@ public class SchematicType {
|
||||
return kuerzel;
|
||||
}
|
||||
|
||||
public Material getMaterial() {
|
||||
return material;
|
||||
}
|
||||
|
||||
public String toDB(){
|
||||
return name.toLowerCase();
|
||||
}
|
||||
|
In neuem Issue referenzieren
Einen Benutzer sperren
Bitte unbedingt ändern zu: config.getString("Schematic.Material");