diff options
author | draknyte1 <draknyte1@hotmail.com> | 2017-02-28 23:46:19 +1000 |
---|---|---|
committer | draknyte1 <draknyte1@hotmail.com> | 2017-02-28 23:46:19 +1000 |
commit | da81c092a169ea4c06cf1fdab05af930d2be3db2 (patch) | |
tree | 5549209f73af7b3d9294b30f04c7673d2de98ecc /src/Java/gtPlusPlus/core/util | |
parent | 70eaed84ca2fe532f0417d11923096abe0ccbb69 (diff) | |
download | GT5-Unofficial-da81c092a169ea4c06cf1fdab05af930d2be3db2.tar.gz GT5-Unofficial-da81c092a169ea4c06cf1fdab05af930d2be3db2.tar.bz2 GT5-Unofficial-da81c092a169ea4c06cf1fdab05af930d2be3db2.zip |
+ Initial work done for Multitools to have the material appropriate enchantments. Thanks to Kate_CW for reminding me to re-add this feature in a working state :D
Diffstat (limited to 'src/Java/gtPlusPlus/core/util')
-rw-r--r-- | src/Java/gtPlusPlus/core/util/item/ItemUtils.java | 23 |
1 files changed, 18 insertions, 5 deletions
diff --git a/src/Java/gtPlusPlus/core/util/item/ItemUtils.java b/src/Java/gtPlusPlus/core/util/item/ItemUtils.java index 91b6835415..83a8fff751 100644 --- a/src/Java/gtPlusPlus/core/util/item/ItemUtils.java +++ b/src/Java/gtPlusPlus/core/util/item/ItemUtils.java @@ -16,6 +16,7 @@ import gtPlusPlus.core.lib.CORE; import gtPlusPlus.core.lib.LoadedMods; import gtPlusPlus.core.material.Material; import gtPlusPlus.core.util.Utils; +import gtPlusPlus.core.util.array.Pair; import gtPlusPlus.core.util.materials.MaterialUtils; import gtPlusPlus.core.util.reflect.ReflectionUtils; import gtPlusPlus.core.util.wrapper.var; @@ -305,15 +306,16 @@ public class ItemUtils { public static MultiPickaxeBase generateMultiPick(boolean GT_Durability, Materials material){ ToolMaterial customMaterial = Utils.generateToolMaterialFromGT(material); - return generateMultiPick(GT_Durability, customMaterial, material.mDefaultLocalName, material.mDurability, material.mRGBa); + Object enchant = new Pair(material.mEnchantmentTools, material.mEnchantmentToolsLevel); + return generateMultiPick(GT_Durability, customMaterial, material.mDefaultLocalName, material.mDurability, material.mRGBa, enchant); } public static MultiPickaxeBase generateMultiPick(Material material){ ToolMaterial customMaterial = Utils.generateToolMaterial(material); - return generateMultiPick(true, customMaterial, material.getLocalizedName(), (int) material.vDurability, material.getRGBA()); + return generateMultiPick(true, customMaterial, material.getLocalizedName(), (int) material.vDurability, material.getRGBA(), null); } - public static MultiPickaxeBase generateMultiPick(boolean GT_Durability, ToolMaterial customMaterial, String name, int durability, short[] rgba){ + public static MultiPickaxeBase generateMultiPick(boolean GT_Durability, ToolMaterial customMaterial, String name, int durability, short[] rgba, Object enchantment){ Utils.LOG_INFO("Generating a Multi-Pick out of "+name); short[] rgb = rgba; int dur = customMaterial.getMaxUses(); @@ -330,12 +332,23 @@ public class ItemUtils { Utils.LOG_WARNING("Still too low, "+name+" will now go unused."); return null; } + + Object enchant; + if (enchantment != null){ + if (enchantment instanceof Pair){ + enchant = enchantment; + } + } + else { + enchant = null; + } + MultiPickaxeBase MP_Redstone = new MultiPickaxeBase( name+" Multipick", (customMaterial), dur, - Utils.rgbtoHexValue(rgb[0],rgb[1],rgb[2]) - ); + Utils.rgbtoHexValue(rgb[0],rgb[1],rgb[2]), + enchantment); if (MP_Redstone.isValid){ return MP_Redstone; |