diff --git a/electrical/src/main/java/resonantinduction/electrical/wire/ItemWire.java b/electrical/src/main/java/resonantinduction/electrical/wire/ItemWire.java index 5bfa374f..65d0fc0f 100644 --- a/electrical/src/main/java/resonantinduction/electrical/wire/ItemWire.java +++ b/electrical/src/main/java/resonantinduction/electrical/wire/ItemWire.java @@ -27,6 +27,7 @@ import calclavia.lib.render.EnumColor; import calclavia.lib.utility.LanguageUtility; import codechicken.lib.vec.BlockCoord; import codechicken.lib.vec.Vector3; +import codechicken.multipart.ControlKeyModifer; import codechicken.multipart.JItemMultiPart; import codechicken.multipart.MultiPartRegistry; import codechicken.multipart.TMultiPart; @@ -55,7 +56,7 @@ public class ItemWire extends JItemMultiPart { BlockCoord onPos = pos.copy().offset(side ^ 1); - if (player.isSneaking()) + if (player.isSneaking() && !ControlKeyModifer.isControlDown(player)) { PartFramedWire wire = (PartFramedWire) MultiPartRegistry.createPart("resonant_induction_wire", false); diff --git a/electrical/src/main/java/resonantinduction/electrical/wire/PartConductor.java b/electrical/src/main/java/resonantinduction/electrical/wire/PartConductor.java index 36c3e123..5dcaa71b 100644 --- a/electrical/src/main/java/resonantinduction/electrical/wire/PartConductor.java +++ b/electrical/src/main/java/resonantinduction/electrical/wire/PartConductor.java @@ -124,7 +124,7 @@ public abstract class PartConductor extends PartAdvanced implements IConductor { TMultiPart part = tile().partMap(i); - if (part instanceof IEnergyTile) + if (part instanceof IEnergyTile && part != this) { foundAnotherPart = true; break; @@ -154,7 +154,7 @@ public abstract class PartConductor extends PartAdvanced implements IConductor { TMultiPart part = tile().partMap(i); - if (part instanceof IEnergyTile) + if (part instanceof IEnergyTile && part != this) { foundAnotherPart = true; break; diff --git a/electrical/src/main/java/resonantinduction/electrical/wire/framed/PartFramedWire.java b/electrical/src/main/java/resonantinduction/electrical/wire/framed/PartFramedWire.java index b4162ba8..e571a309 100644 --- a/electrical/src/main/java/resonantinduction/electrical/wire/framed/PartFramedWire.java +++ b/electrical/src/main/java/resonantinduction/electrical/wire/framed/PartFramedWire.java @@ -1,5 +1,9 @@ package resonantinduction.electrical.wire.framed; +import ic2.api.energy.event.EnergyTileLoadEvent; +import ic2.api.energy.event.EnergyTileUnloadEvent; +import ic2.api.energy.tile.IEnergyTile; + import java.util.Collection; import java.util.HashSet; import java.util.Set; @@ -13,11 +17,13 @@ import net.minecraft.util.Icon; import net.minecraft.util.MovingObjectPosition; import net.minecraft.world.World; import net.minecraftforge.common.ForgeDirection; +import net.minecraftforge.common.MinecraftForge; import resonantinduction.core.prefab.part.PartFramedConnection; import resonantinduction.electrical.Electrical; import resonantinduction.electrical.wire.EnumWireMaterial; import resonantinduction.electrical.wire.PartAdvancedWire; import universalelectricity.api.CompatibilityModule; +import universalelectricity.api.UniversalClass; import universalelectricity.api.energy.EnergyNetworkLoader; import universalelectricity.api.energy.IConductor; import universalelectricity.api.energy.IEnergyNetwork; @@ -34,12 +40,14 @@ import codechicken.multipart.JIconHitEffects; import codechicken.multipart.JNormalOcclusion; import codechicken.multipart.MultiPartRegistry; import codechicken.multipart.PartMap; +import codechicken.multipart.TMultiPart; import codechicken.multipart.TSlottedPart; import codechicken.multipart.TileMultipart; import cpw.mods.fml.common.FMLCommonHandler; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +@UniversalClass public class PartFramedWire extends PartFramedConnection implements IConductor, TSlottedPart, JNormalOcclusion, IHollowConnect, JIconHitEffects { public PartFramedWire() @@ -66,6 +74,68 @@ public class PartFramedWire extends PartFramedConnection