From 332fe1be4845a5e85fa1cff8f249cd5e658d1cde Mon Sep 17 00:00:00 2001 From: modmuss50 Date: Wed, 15 Mar 2017 10:08:58 +0000 Subject: [PATCH] Fixes crash when gem tools are disabled, closes #1008 --- .../techreborn/client/RegisterItemJsons.java | 75 ++++++++++--------- src/main/java/techreborn/init/ModItems.java | 40 +++++++++- 2 files changed, 77 insertions(+), 38 deletions(-) diff --git a/src/main/java/techreborn/client/RegisterItemJsons.java b/src/main/java/techreborn/client/RegisterItemJsons.java index a254a158f..cf1765ab5 100644 --- a/src/main/java/techreborn/client/RegisterItemJsons.java +++ b/src/main/java/techreborn/client/RegisterItemJsons.java @@ -34,6 +34,7 @@ import techreborn.blocks.BlockOre; import techreborn.blocks.BlockOre2; import techreborn.blocks.BlockStorage; import techreborn.blocks.BlockStorage2; +import techreborn.config.ConfigTechReborn; import techreborn.init.ModBlocks; import techreborn.init.ModItems; import techreborn.items.*; @@ -79,43 +80,45 @@ public class RegisterItemJsons { register(ModItems.LAPOTRONIC_ORB_PACK, "tool/lapotronic_orbpack"); register(ModItems.LITHIUM_BATTERY_PACK, "tool/lithium_batpack"); - registerBlockstateMultiItem(ModItems.RUBY_HELMET, "ruby_helmet", "items/tool/armour"); - registerBlockstateMultiItem(ModItems.RUBY_CHESTPLATE, "ruby_chestplate", "items/tool/armour"); - registerBlockstateMultiItem(ModItems.RUBY_LEGGINGS, "ruby_leggings", "items/tool/armour"); - registerBlockstateMultiItem(ModItems.RUBY_BOOTS, "ruby_boots", "items/tool/armour"); - registerBlockstateMultiItem(ModItems.SAPPHIRE_HELMET, "sapphire_helmet", "items/tool/armour"); - registerBlockstateMultiItem(ModItems.SAPPHIRE_CHSTPLATE, "sapphire_chestplate", "items/tool/armour"); - registerBlockstateMultiItem(ModItems.SAPPHIRE_LEGGINGS, "sapphire_leggings", "items/tool/armour"); - registerBlockstateMultiItem(ModItems.SAPPHIRE_BOOTS, "sapphire_boots", "items/tool/armour"); - registerBlockstateMultiItem(ModItems.PERIDOT_HELMET, "peridot_helmet", "items/tool/armour"); - registerBlockstateMultiItem(ModItems.PERIDOT_CHESTPLATE, "peridot_chestplate", "items/tool/armour"); - registerBlockstateMultiItem(ModItems.PERIDOT_LEGGINGS, "peridot_leggings", "items/tool/armour"); - registerBlockstateMultiItem(ModItems.PERIDOT_BOOTS, "peridot_boots", "items/tool/armour"); - registerBlockstateMultiItem(ModItems.BRONZE_HELMET, "bronze_helmet", "items/tool/armour"); - registerBlockstateMultiItem(ModItems.BRONZE_CHESTPLATE, "bronze_chestplate", "items/tool/armour"); - registerBlockstateMultiItem(ModItems.BRONZE_LEGGINGS, "bronze_leggings", "items/tool/armour"); - registerBlockstateMultiItem(ModItems.BRONZE_BOOTS, "bronze_boots", "items/tool/armour"); + if (ConfigTechReborn.enableGemArmorAndTools) { + registerBlockstateMultiItem(ModItems.RUBY_HELMET, "ruby_helmet", "items/tool/armour"); + registerBlockstateMultiItem(ModItems.RUBY_CHESTPLATE, "ruby_chestplate", "items/tool/armour"); + registerBlockstateMultiItem(ModItems.RUBY_LEGGINGS, "ruby_leggings", "items/tool/armour"); + registerBlockstateMultiItem(ModItems.RUBY_BOOTS, "ruby_boots", "items/tool/armour"); + registerBlockstateMultiItem(ModItems.SAPPHIRE_HELMET, "sapphire_helmet", "items/tool/armour"); + registerBlockstateMultiItem(ModItems.SAPPHIRE_CHSTPLATE, "sapphire_chestplate", "items/tool/armour"); + registerBlockstateMultiItem(ModItems.SAPPHIRE_LEGGINGS, "sapphire_leggings", "items/tool/armour"); + registerBlockstateMultiItem(ModItems.SAPPHIRE_BOOTS, "sapphire_boots", "items/tool/armour"); + registerBlockstateMultiItem(ModItems.PERIDOT_HELMET, "peridot_helmet", "items/tool/armour"); + registerBlockstateMultiItem(ModItems.PERIDOT_CHESTPLATE, "peridot_chestplate", "items/tool/armour"); + registerBlockstateMultiItem(ModItems.PERIDOT_LEGGINGS, "peridot_leggings", "items/tool/armour"); + registerBlockstateMultiItem(ModItems.PERIDOT_BOOTS, "peridot_boots", "items/tool/armour"); + registerBlockstateMultiItem(ModItems.BRONZE_HELMET, "bronze_helmet", "items/tool/armour"); + registerBlockstateMultiItem(ModItems.BRONZE_CHESTPLATE, "bronze_chestplate", "items/tool/armour"); + registerBlockstateMultiItem(ModItems.BRONZE_LEGGINGS, "bronze_leggings", "items/tool/armour"); + registerBlockstateMultiItem(ModItems.BRONZE_BOOTS, "bronze_boots", "items/tool/armour"); - registerBlockstateMultiItem(ModItems.RUBY_PICKAXE, "ruby_pickaxe", "items/tool/tool"); - registerBlockstateMultiItem(ModItems.RUBY_SWORD, "ruby_sword", "items/tool/tool"); - registerBlockstateMultiItem(ModItems.RUBY_AXE, "ruby_axe", "items/tool/tool"); - registerBlockstateMultiItem(ModItems.RUBY_SPADE, "ruby_spade", "items/tool/tool"); - registerBlockstateMultiItem(ModItems.RUBY_HOE, "ruby_hoe", "items/tool/tool"); - registerBlockstateMultiItem(ModItems.SAPPHIRE_PICKAXE, "sapphire_pickaxe", "items/tool/tool"); - registerBlockstateMultiItem(ModItems.SAPPHIRE_SWORD, "sapphire_sword", "items/tool/tool"); - registerBlockstateMultiItem(ModItems.SAPPHIRE_AXE, "sapphire_axe", "items/tool/tool"); - registerBlockstateMultiItem(ModItems.SAPPHIRE_SPADE, "sapphire_spade", "items/tool/tool"); - registerBlockstateMultiItem(ModItems.SAPPHIRE_HOE, "sapphire_hoe", "items/tool/tool"); - registerBlockstateMultiItem(ModItems.PERIDOT_PICKAXE, "peridot_pickaxe", "items/tool/tool"); - registerBlockstateMultiItem(ModItems.PERIDOT_SWORD, "peridot_sword", "items/tool/tool"); - registerBlockstateMultiItem(ModItems.PERIDOT_AXE, "peridot_axe", "items/tool/tool"); - registerBlockstateMultiItem(ModItems.PERIDOT_SAPPHIRE, "peridot_spade", "items/tool/tool"); - registerBlockstateMultiItem(ModItems.PERIDOT_HOE, "peridot_hoe", "items/tool/tool"); - registerBlockstateMultiItem(ModItems.BRONZE_PICKAXE, "bronze_pickaxe", "items/tool/tool"); - registerBlockstateMultiItem(ModItems.BRONZE_SWORD, "bronze_sword", "items/tool/tool"); - registerBlockstateMultiItem(ModItems.BRONZE_AXE, "bronze_axe", "items/tool/tool"); - registerBlockstateMultiItem(ModItems.BRONZE_SPADE, "bronze_spade", "items/tool/tool"); - registerBlockstateMultiItem(ModItems.BRONZE_HOE, "bronze_hoe", "items/tool/tool"); + registerBlockstateMultiItem(ModItems.RUBY_PICKAXE, "ruby_pickaxe", "items/tool/tool"); + registerBlockstateMultiItem(ModItems.RUBY_SWORD, "ruby_sword", "items/tool/tool"); + registerBlockstateMultiItem(ModItems.RUBY_AXE, "ruby_axe", "items/tool/tool"); + registerBlockstateMultiItem(ModItems.RUBY_SPADE, "ruby_spade", "items/tool/tool"); + registerBlockstateMultiItem(ModItems.RUBY_HOE, "ruby_hoe", "items/tool/tool"); + registerBlockstateMultiItem(ModItems.SAPPHIRE_PICKAXE, "sapphire_pickaxe", "items/tool/tool"); + registerBlockstateMultiItem(ModItems.SAPPHIRE_SWORD, "sapphire_sword", "items/tool/tool"); + registerBlockstateMultiItem(ModItems.SAPPHIRE_AXE, "sapphire_axe", "items/tool/tool"); + registerBlockstateMultiItem(ModItems.SAPPHIRE_SPADE, "sapphire_spade", "items/tool/tool"); + registerBlockstateMultiItem(ModItems.SAPPHIRE_HOE, "sapphire_hoe", "items/tool/tool"); + registerBlockstateMultiItem(ModItems.PERIDOT_PICKAXE, "peridot_pickaxe", "items/tool/tool"); + registerBlockstateMultiItem(ModItems.PERIDOT_SWORD, "peridot_sword", "items/tool/tool"); + registerBlockstateMultiItem(ModItems.PERIDOT_AXE, "peridot_axe", "items/tool/tool"); + registerBlockstateMultiItem(ModItems.PERIDOT_SAPPHIRE, "peridot_spade", "items/tool/tool"); + registerBlockstateMultiItem(ModItems.PERIDOT_HOE, "peridot_hoe", "items/tool/tool"); + registerBlockstateMultiItem(ModItems.BRONZE_PICKAXE, "bronze_pickaxe", "items/tool/tool"); + registerBlockstateMultiItem(ModItems.BRONZE_SWORD, "bronze_sword", "items/tool/tool"); + registerBlockstateMultiItem(ModItems.BRONZE_AXE, "bronze_axe", "items/tool/tool"); + registerBlockstateMultiItem(ModItems.BRONZE_SPADE, "bronze_spade", "items/tool/tool"); + registerBlockstateMultiItem(ModItems.BRONZE_HOE, "bronze_hoe", "items/tool/tool"); + } for (int i = 0; i < ItemIngots.types.length; ++i) { String[] name = ItemIngots.types.clone(); diff --git a/src/main/java/techreborn/init/ModItems.java b/src/main/java/techreborn/init/ModItems.java index a72938389..7e14f152f 100644 --- a/src/main/java/techreborn/init/ModItems.java +++ b/src/main/java/techreborn/init/ModItems.java @@ -32,7 +32,6 @@ import net.minecraftforge.oredict.OreDictionary; import reborncore.api.power.IEnergyInterfaceItem; import reborncore.api.power.IEnergyItemInfo; import reborncore.common.blocks.BlockMachineBase; -import reborncore.common.powerSystem.PoweredItem; import reborncore.common.util.BucketHandler; import techreborn.Core; import techreborn.api.Reference; @@ -45,6 +44,8 @@ import techreborn.items.armor.ItemTRArmour; import techreborn.items.battery.*; import techreborn.items.tools.*; +import javax.annotation.Nullable; + public class ModItems { public static final String META_PLACEHOLDER = "PLACEHOLDER_ITEM"; @@ -82,41 +83,76 @@ public class ModItems { public static Item ENERGY_CRYSTAL; public static Item SCRAP_BOX; public static Item FREQUENCY_TRANSMITTER; - public static Item BRONZE_SWORD; + public static @Nullable Item BRONZE_SWORD; + @Nullable public static Item BRONZE_PICKAXE; + @Nullable public static Item BRONZE_SPADE; + @Nullable public static Item BRONZE_AXE; + @Nullable public static Item BRONZE_HOE; + @Nullable public static Item BRONZE_HELMET; + @Nullable public static Item BRONZE_CHESTPLATE; + @Nullable public static Item BRONZE_LEGGINGS; + @Nullable public static Item BRONZE_BOOTS; + @Nullable public static Item RUBY_SWORD; + @Nullable public static Item RUBY_PICKAXE; + @Nullable public static Item RUBY_SPADE; + @Nullable public static Item RUBY_AXE; + @Nullable public static Item RUBY_HOE; + @Nullable public static Item RUBY_HELMET; + @Nullable public static Item RUBY_CHESTPLATE; + @Nullable public static Item RUBY_LEGGINGS; + @Nullable public static Item RUBY_BOOTS; + @Nullable public static Item SAPPHIRE_SWORD; + @Nullable public static Item SAPPHIRE_PICKAXE; + @Nullable public static Item SAPPHIRE_SPADE; + @Nullable public static Item SAPPHIRE_AXE; + @Nullable public static Item SAPPHIRE_HOE; + @Nullable public static Item SAPPHIRE_HELMET; + @Nullable public static Item SAPPHIRE_CHSTPLATE; + @Nullable public static Item SAPPHIRE_LEGGINGS; + @Nullable public static Item SAPPHIRE_BOOTS; + @Nullable public static Item PERIDOT_SWORD; + @Nullable public static Item PERIDOT_PICKAXE; + @Nullable public static Item PERIDOT_SAPPHIRE; + @Nullable public static Item PERIDOT_AXE; + @Nullable public static Item PERIDOT_HOE; + @Nullable public static Item PERIDOT_HELMET; + @Nullable public static Item PERIDOT_CHESTPLATE; + @Nullable public static Item PERIDOT_LEGGINGS; + @Nullable public static Item PERIDOT_BOOTS; public static Item UPGRADES; public static Item MISSING_RECIPE_PLACEHOLDER;