aboutsummaryrefslogtreecommitdiff
path: root/src/Java/gtPlusPlus/core
diff options
context:
space:
mode:
authorDraknyte1 <Draknyte1@hotmail.com>2016-10-09 12:21:22 +1000
committerDraknyte1 <Draknyte1@hotmail.com>2016-10-09 12:21:22 +1000
commit5752ae213733278e7e0cd0691c8294a9721eaf75 (patch)
tree51c3faa2e140f174bbc1c2292cfe695915d00e62 /src/Java/gtPlusPlus/core
parent41c0d8e1082296a4c890c3614d1e4bd4963cfca5 (diff)
downloadGT5-Unofficial-5752ae213733278e7e0cd0691c8294a9721eaf75.tar.gz
GT5-Unofficial-5752ae213733278e7e0cd0691c8294a9721eaf75.tar.bz2
GT5-Unofficial-5752ae213733278e7e0cd0691c8294a9721eaf75.zip
$ Fixed Baubles support. - Should fix #23
Diffstat (limited to 'src/Java/gtPlusPlus/core')
-rw-r--r--src/Java/gtPlusPlus/core/common/compat/COMPAT_Baubles.java31
-rw-r--r--src/Java/gtPlusPlus/core/item/ModItems.java25
-rw-r--r--src/Java/gtPlusPlus/core/item/general/ItemCloakingDevice.java2
-rw-r--r--src/Java/gtPlusPlus/core/item/general/ItemHealingDevice.java2
4 files changed, 47 insertions, 13 deletions
diff --git a/src/Java/gtPlusPlus/core/common/compat/COMPAT_Baubles.java b/src/Java/gtPlusPlus/core/common/compat/COMPAT_Baubles.java
new file mode 100644
index 0000000000..634fbe47d2
--- /dev/null
+++ b/src/Java/gtPlusPlus/core/common/compat/COMPAT_Baubles.java
@@ -0,0 +1,31 @@
+package gtPlusPlus.core.common.compat;
+
+import gtPlusPlus.core.item.ModItems;
+import gtPlusPlus.core.item.general.ItemCloakingDevice;
+import gtPlusPlus.core.item.general.ItemHealingDevice;
+import gtPlusPlus.core.lib.LoadedMods;
+import gtPlusPlus.core.util.Utils;
+
+public class COMPAT_Baubles {
+
+ public static void run(){
+ if (LoadedMods.Baubles){
+ baublesLoaded();
+ }
+ else {
+ baublesNotLoaded();
+ }
+ }
+
+ public static void baublesLoaded(){
+ Utils.LOG_INFO("Baubles Found - Loading Wearables.");
+ ModItems.itemPersonalCloakingDevice = new ItemCloakingDevice(0);
+ //itemPersonalCloakingDeviceCharged = new ItemCloakingDevice(0).set;
+ ModItems.itemPersonalHealingDevice = new ItemHealingDevice();
+ }
+
+ public static void baublesNotLoaded(){
+ Utils.LOG_INFO("Baubles Not Found - Skipping Resources.");
+ }
+
+}
diff --git a/src/Java/gtPlusPlus/core/item/ModItems.java b/src/Java/gtPlusPlus/core/item/ModItems.java
index 27488794bc..9ca49c8a51 100644
--- a/src/Java/gtPlusPlus/core/item/ModItems.java
+++ b/src/Java/gtPlusPlus/core/item/ModItems.java
@@ -5,6 +5,7 @@ import static gtPlusPlus.core.lib.CORE.LOAD_ALL_CONTENT;
import static gtPlusPlus.core.util.item.UtilsItems.generateItemsFromMaterial;
import gregtech.api.enums.Materials;
import gregtech.api.util.GT_OreDictUnificator;
+import gtPlusPlus.core.common.compat.COMPAT_Baubles;
import gtPlusPlus.core.creative.AddToCreativeTab;
import gtPlusPlus.core.item.base.BaseItemBackpack;
import gtPlusPlus.core.item.base.CoreItem;
@@ -14,8 +15,6 @@ import gtPlusPlus.core.item.base.ingots.BaseItemIngot;
import gtPlusPlus.core.item.base.plates.BaseItemPlate;
import gtPlusPlus.core.item.effects.RarityUncommon;
import gtPlusPlus.core.item.general.BufferCore;
-import gtPlusPlus.core.item.general.ItemCloakingDevice;
-import gtPlusPlus.core.item.general.ItemHealingDevice;
import gtPlusPlus.core.item.general.RF2EU_Battery;
import gtPlusPlus.core.item.general.fuelrods.FuelRod_Base;
import gtPlusPlus.core.item.init.ItemsFoods;
@@ -322,10 +321,9 @@ public final class ModItems {
//Item Init
try {
- UtilsItems.getItemForOreDict("Thaumcraft:ItemResource", "ingotVoidMetal", "Void Metal Ingot", 16);
- GT_OreDictUnificator.registerOre("plateVoidMetal", new ItemStack(ModItems.itemPlateVoidMetal));
-
+ UtilsItems.getItemForOreDict("Thaumcraft:ItemResource", "ingotVoidMetal", "Void Metal Ingot", 16);
itemPlateVoidMetal = new BaseItemPlate("itemPlate"+"Void", "Void Metal", Utils.rgbtoHexValue(82, 17, 82), 2, 0);
+ GT_OreDictUnificator.registerOre("plateVoidMetal", new ItemStack(ModItems.itemPlateVoidMetal));
} catch (NullPointerException e){
e.getClass();
}
@@ -388,14 +386,15 @@ public final class ModItems {
FuelRod_Plutonium = new FuelRod_Base("itemFuelRod_Plutonium", "Plutonium", 5000, 5000);
RfEuBattery = new RF2EU_Battery();
- if (LoadedMods.Baubles){
- Utils.LOG_INFO("Baubles Found - Loading Wearables.");
- itemPersonalCloakingDevice = new ItemCloakingDevice(0);
- //itemPersonalCloakingDeviceCharged = new ItemCloakingDevice(0).set;
- itemPersonalHealingDevice = new ItemHealingDevice();
- }
- else {
- Utils.LOG_INFO("Baubles Not Found - Skipping Resources.");
+ try {Class baublesTest = Class.forName("baubles.api.IBauble");
+ if (baublesTest != null){
+ COMPAT_Baubles.run();
+ }
+ else {
+ Utils.LOG_INFO("Baubles Not Found - Skipping Resources.");
+ }
+ } catch(Throwable T){
+ Utils.LOG_INFO("Baubles Not Found - Skipping Resources.");
}
//Registry
//GameRegistry.registerItem(FuelRod_Empty, "itemFuelRod_Empty");
diff --git a/src/Java/gtPlusPlus/core/item/general/ItemCloakingDevice.java b/src/Java/gtPlusPlus/core/item/general/ItemCloakingDevice.java
index 22b6ed27f1..04503c5a62 100644
--- a/src/Java/gtPlusPlus/core/item/general/ItemCloakingDevice.java
+++ b/src/Java/gtPlusPlus/core/item/general/ItemCloakingDevice.java
@@ -21,8 +21,10 @@ import net.minecraft.util.EnumChatFormatting;
import net.minecraft.world.World;
import baubles.api.BaubleType;
import baubles.api.IBauble;
+import cpw.mods.fml.common.Optional;
import cpw.mods.fml.common.registry.GameRegistry;
+@Optional.InterfaceList(value = {@Optional.Interface(iface = "baubles.api.IBauble", modid = "Baubles"), @Optional.Interface(iface = "baubles.api.BaubleType", modid = "Baubles")})
public class ItemCloakingDevice extends Item implements IElectricItem, IElectricItemManager, IBauble{
private final String unlocalizedName = "personalCloakingDevice";
diff --git a/src/Java/gtPlusPlus/core/item/general/ItemHealingDevice.java b/src/Java/gtPlusPlus/core/item/general/ItemHealingDevice.java
index 728d498e2b..5e05221ed7 100644
--- a/src/Java/gtPlusPlus/core/item/general/ItemHealingDevice.java
+++ b/src/Java/gtPlusPlus/core/item/general/ItemHealingDevice.java
@@ -20,8 +20,10 @@ import net.minecraft.util.EnumChatFormatting;
import net.minecraft.world.World;
import baubles.api.BaubleType;
import baubles.api.IBauble;
+import cpw.mods.fml.common.Optional;
import cpw.mods.fml.common.registry.GameRegistry;
+@Optional.InterfaceList(value = {@Optional.Interface(iface = "baubles.api.IBauble", modid = "Baubles"), @Optional.Interface(iface = "baubles.api.BaubleType", modid = "Baubles")})
public class ItemHealingDevice extends Item implements IElectricItem, IElectricItemManager, IBauble{
private final String unlocalizedName = "personalHealingDevice";