From 6195541693f2c640e4c5a98e1d46ff1906ab705a Mon Sep 17 00:00:00 2001 From: Calclavia Date: Wed, 9 Oct 2013 14:11:00 +0800 Subject: [PATCH] RI should now work without multipart --- src/resonantinduction/MultipartRI.java | 6 +++++ src/resonantinduction/ResonantInduction.java | 24 +++++++++++++++++--- 2 files changed, 27 insertions(+), 3 deletions(-) diff --git a/src/resonantinduction/MultipartRI.java b/src/resonantinduction/MultipartRI.java index f2654e7a2..ea8332c10 100644 --- a/src/resonantinduction/MultipartRI.java +++ b/src/resonantinduction/MultipartRI.java @@ -9,6 +9,12 @@ import codechicken.multipart.TMultiPart; public class MultipartRI implements IPartFactory { + + public MultipartRI() + { + this.init(); + } + @Override public TMultiPart createPart(String name, boolean client) { diff --git a/src/resonantinduction/ResonantInduction.java b/src/resonantinduction/ResonantInduction.java index 07fd1a57f..027b07c7d 100644 --- a/src/resonantinduction/ResonantInduction.java +++ b/src/resonantinduction/ResonantInduction.java @@ -41,7 +41,7 @@ import resonantinduction.wire.EnumWireMaterial; import resonantinduction.wire.ItemBlockWire; import resonantinduction.wire.TileEntityTickWire; import resonantinduction.wire.TileEntityWire; -import resonantinduction.wire.multipart.ItemPartWire; +import scala.collection.generic.BitOperations.Int; import universalelectricity.compatibility.Compatibility; import universalelectricity.core.item.IItemElectric; import universalelectricity.core.vector.Vector3; @@ -189,7 +189,14 @@ public class ResonantInduction if (Loader.isModLoaded("ForgeMultipart")) { - itemPartWire = new ItemPartWire(getNextItemID()); + try + { + itemPartWire = (Item) Class.forName("resonantinduction.wire.multipart.ItemPartWire").getConstructor(Int.class).newInstance(getNextItemID()); + } + catch (Exception e) + { + LOGGER.severe("Failed to load multipart wire."); + } } // Blocks @@ -279,7 +286,18 @@ public class ResonantInduction metadata.credits = "Thanks to Archadia for the awesome assets!"; metadata.autogenerated = false; - new MultipartRI().init(); + if (itemPartWire != null) + { + try + { + Class.forName("resonantinduction.MultipartRI").newInstance(); + } + catch (InstantiationException | IllegalAccessException | ClassNotFoundException e) + { + e.printStackTrace(); + LOGGER.severe("Failed to initiate Resonant Induction multipart module."); + } + } Compatibility.initiate(); }