|
@@ -72,35 +72,55 @@ public class CustomBlockConfig extends ConfigLoader {
|
|
|
continue;
|
|
continue;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ if (blockInfo.length == 2) {
|
|
|
|
|
+ String[] dataInfo = blockInfo[1].split("[-]");
|
|
|
|
|
+
|
|
|
|
|
+ if (dataInfo.length == 2) {
|
|
|
|
|
+ byte startByte = Byte.valueOf(dataInfo[0]);
|
|
|
|
|
+ byte endByte = Byte.valueOf(dataInfo[1]);
|
|
|
|
|
+
|
|
|
|
|
+ for (byte i = startByte; i < endByte; i++) {
|
|
|
|
|
+ MaterialData blockMaterialData = new MaterialData(blockMaterial, i);
|
|
|
|
|
+ loadBlock(skillType, blockList, blockName, blockMaterialData);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
byte blockData = (blockInfo.length == 2) ? Byte.valueOf(blockInfo[1]) : 0;
|
|
byte blockData = (blockInfo.length == 2) ? Byte.valueOf(blockInfo[1]) : 0;
|
|
|
|
|
+
|
|
|
MaterialData blockMaterialData = new MaterialData(blockMaterial, blockData);
|
|
MaterialData blockMaterialData = new MaterialData(blockMaterial, blockData);
|
|
|
|
|
+ loadBlock(skillType, blockList, blockName, blockMaterialData);
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
- if (blockList != null) {
|
|
|
|
|
- blockList.add(blockMaterialData);
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ private void loadBlock(String skillType, List<MaterialData> blockList, String blockName, MaterialData blockMaterialData) {
|
|
|
|
|
+ if (blockList != null) {
|
|
|
|
|
+ blockList.add(blockMaterialData);
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
- if (skillType.equals("Ability_Blocks")) {
|
|
|
|
|
- continue;
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ if (skillType.equals("Ability_Blocks")) {
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
- int xp = config.getInt(skillType + "." + blockName + ".XP_Gain");
|
|
|
|
|
- int smeltingXp = 0;
|
|
|
|
|
|
|
+ int xp = config.getInt(skillType + "." + blockName + ".XP_Gain");
|
|
|
|
|
+ int smeltingXp = 0;
|
|
|
|
|
|
|
|
- if (skillType.equals("Mining") && config.getBoolean(skillType + "." + blockName + ".Is_Ore")) {
|
|
|
|
|
- customOres.add(blockMaterialData);
|
|
|
|
|
- smeltingXp = config.getInt(skillType + "." + blockName + ".Smelting_XP_Gain", xp / 10);
|
|
|
|
|
|
|
+ if (skillType.equals("Mining") && config.getBoolean(skillType + "." + blockName + ".Is_Ore")) {
|
|
|
|
|
+ customOres.add(blockMaterialData);
|
|
|
|
|
+ smeltingXp = config.getInt(skillType + "." + blockName + ".Smelting_XP_Gain", xp / 10);
|
|
|
|
|
+ }
|
|
|
|
|
+ else if (skillType.equals("Woodcutting")) {
|
|
|
|
|
+ if (config.getBoolean(skillType + "." + blockName + ".Is_Log")) {
|
|
|
|
|
+ customLogs.add(blockMaterialData);
|
|
|
}
|
|
}
|
|
|
- else if (skillType.equals("Woodcutting")) {
|
|
|
|
|
- if (config.getBoolean(skillType + "." + blockName + ".Is_Log")) {
|
|
|
|
|
- customLogs.add(blockMaterialData);
|
|
|
|
|
- }
|
|
|
|
|
- else {
|
|
|
|
|
- customLeaves.add(blockMaterialData);
|
|
|
|
|
- xp = 0; // Leaves don't grant XP
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ else {
|
|
|
|
|
+ customLeaves.add(blockMaterialData);
|
|
|
|
|
+ xp = 0; // Leaves don't grant XP
|
|
|
}
|
|
}
|
|
|
-
|
|
|
|
|
- customBlockMap.put(blockMaterialData, new CustomBlock(xp, config.getBoolean(skillType + "." + blockName + ".Double_Drops_Enabled"), smeltingXp));
|
|
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
|
|
+ customBlockMap.put(blockMaterialData, new CustomBlock(xp, config.getBoolean(skillType + "." + blockName + ".Double_Drops_Enabled"), smeltingXp));
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|