aboutsummaryrefslogtreecommitdiff
path: root/src/main/java
diff options
context:
space:
mode:
authorChristina Berchtold <kekzdealer@gmail.com>2019-11-08 21:27:05 +0100
committerChristina Berchtold <kekzdealer@gmail.com>2019-11-08 21:27:05 +0100
commita76478105d61d7be330c63fd247f7fbb66da9d9a (patch)
tree3f2fdc8b02d4aed9a9c4c2d1dab9d76b1d61dc7f /src/main/java
parent8c11cb77c724a7adf29777a1e7123d6492eec00a (diff)
downloadGT5-Unofficial-a76478105d61d7be330c63fd247f7fbb66da9d9a.tar.gz
GT5-Unofficial-a76478105d61d7be330c63fd247f7fbb66da9d9a.tar.bz2
GT5-Unofficial-a76478105d61d7be330c63fd247f7fbb66da9d9a.zip
Gave Multi Hatch a shaped crafting recipe after many failed attempts with assembling machines. Began adding Item Distribution Network code.
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/blocks/Block_ItemDistributionCable.java40
-rw-r--r--src/main/java/blocks/Block_ItemDistributionNode.java (renamed from src/main/java/blocks/Block_FluidConduit.java)20
-rw-r--r--src/main/java/itemBlocks/IB_ItemDistributionCable.java (renamed from src/main/java/itemBlocks/IB_FluidConduit.java)7
-rw-r--r--src/main/java/itemBlocks/IB_ItemDistributionNode.java22
-rw-r--r--src/main/java/kekztech/IConduit.java19
-rw-r--r--src/main/java/kekztech/ItemDistributionNetworkController.java (renamed from src/main/java/kekztech/ConduitNetworkController.java)24
-rw-r--r--src/main/java/kekztech/KekzCore.java19
-rw-r--r--src/main/java/kekztech/TFFTFluidHandler.java7
-rw-r--r--src/main/java/tileentities/TE_FluidConduit.java90
-rw-r--r--src/main/java/tileentities/TE_ItemDistributionCable.java7
-rw-r--r--src/main/java/tileentities/TE_ItemDistributionNode.java96
11 files changed, 208 insertions, 143 deletions
diff --git a/src/main/java/blocks/Block_ItemDistributionCable.java b/src/main/java/blocks/Block_ItemDistributionCable.java
new file mode 100644
index 0000000000..3caefc313a
--- /dev/null
+++ b/src/main/java/blocks/Block_ItemDistributionCable.java
@@ -0,0 +1,40 @@
+package blocks;
+
+import cpw.mods.fml.common.registry.GameRegistry;
+import itemBlocks.IB_ItemDistributionCable;
+import kekztech.KekzCore;
+import net.minecraft.block.BlockContainer;
+import net.minecraft.block.material.Material;
+import net.minecraft.creativetab.CreativeTabs;
+import net.minecraft.tileentity.TileEntity;
+import net.minecraft.world.World;
+import tileentities.TE_ItemDistributionCable;
+
+public class Block_ItemDistributionCable extends BlockContainer {
+
+ private static Block_ItemDistributionCable instance = new Block_ItemDistributionCable();
+
+ private Block_ItemDistributionCable() {
+ super(Material.glass);
+ }
+
+ public static Block_ItemDistributionCable getInstance() {
+ return instance;
+ }
+
+ public void registerBlock() {
+ final String blockName = "kekztech_itemdistributioncable_block";
+ super.setBlockName(blockName);
+ super.setCreativeTab(CreativeTabs.tabMisc);
+ super.setBlockTextureName(KekzCore.MODID + ":" + "ItemDistributionCable");
+ super.setHardness(3.0f);
+ super.setResistance(2.0f);
+ GameRegistry.registerBlock(getInstance(), IB_ItemDistributionCable.class, blockName);
+ }
+
+ @Override
+ public TileEntity createNewTileEntity(World world, int p_149915_2_) {
+ return new TE_ItemDistributionCable();
+ }
+
+}
diff --git a/src/main/java/blocks/Block_FluidConduit.java b/src/main/java/blocks/Block_ItemDistributionNode.java
index 65d14cf7a3..11d9e22b39 100644
--- a/src/main/java/blocks/Block_FluidConduit.java
+++ b/src/main/java/blocks/Block_ItemDistributionNode.java
@@ -1,40 +1,40 @@
package blocks;
import cpw.mods.fml.common.registry.GameRegistry;
-import itemBlocks.IB_TFFTMultiHatch;
+import itemBlocks.IB_ItemDistributionNode;
import kekztech.KekzCore;
import net.minecraft.block.BlockContainer;
import net.minecraft.block.material.Material;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.world.World;
-import tileentities.TE_FluidConduit;
+import tileentities.TE_ItemDistributionNode;
-public class Block_FluidConduit extends BlockContainer {
+public class Block_ItemDistributionNode extends BlockContainer {
- private static Block_FluidConduit instance = new Block_FluidConduit();
+ private static Block_ItemDistributionNode instance = new Block_ItemDistributionNode();
- private Block_FluidConduit() {
+ private Block_ItemDistributionNode() {
super(Material.glass);
}
- public static Block_FluidConduit getInstance() {
+ public static Block_ItemDistributionNode getInstance() {
return instance;
}
public void registerBlock() {
- final String blockName = "kekztech_fluidconduit_block";
+ final String blockName = "kekztech_itemdistributionnode_block";
super.setBlockName(blockName);
super.setCreativeTab(CreativeTabs.tabMisc);
- super.setBlockTextureName(KekzCore.MODID + ":" + "FluidConduit");
+ super.setBlockTextureName(KekzCore.MODID + ":" + "ItemDistributionNode");
super.setHardness(3.0f);
super.setResistance(2.0f);
- GameRegistry.registerBlock(getInstance(), IB_TFFTMultiHatch.class, blockName);
+ GameRegistry.registerBlock(getInstance(), IB_ItemDistributionNode.class, blockName);
}
@Override
public TileEntity createNewTileEntity(World world, int p_149915_2_) {
- return new TE_FluidConduit(1000);
+ return new TE_ItemDistributionNode();
}
}
diff --git a/src/main/java/itemBlocks/IB_FluidConduit.java b/src/main/java/itemBlocks/IB_ItemDistributionCable.java
index 2d1d9efc73..832e95ca0a 100644
--- a/src/main/java/itemBlocks/IB_FluidConduit.java
+++ b/src/main/java/itemBlocks/IB_ItemDistributionCable.java
@@ -7,15 +7,16 @@ import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack;
-public class IB_FluidConduit extends ItemBlock {
+public class IB_ItemDistributionCable extends ItemBlock {
- public IB_FluidConduit(Block block) {
+ public IB_ItemDistributionCable(Block block) {
super(block);
}
@SuppressWarnings({ "rawtypes", "unchecked" })
@Override
public void addInformation(ItemStack stack, EntityPlayer player, List lines, boolean advancedTooltips) {
- lines.add("A fluid conduit that properly interacts with multi-tanks");
+ lines.add("Connects Item Distribution Nodes");
+ lines.add("Wired networks do not require a controller");
}
}
diff --git a/src/main/java/itemBlocks/IB_ItemDistributionNode.java b/src/main/java/itemBlocks/IB_ItemDistributionNode.java
new file mode 100644
index 0000000000..cfea3853db
--- /dev/null
+++ b/src/main/java/itemBlocks/IB_ItemDistributionNode.java
@@ -0,0 +1,22 @@
+package itemBlocks;
+
+import java.util.List;
+
+import net.minecraft.block.Block;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.item.ItemBlock;
+import net.minecraft.item.ItemStack;
+
+public class IB_ItemDistributionNode extends ItemBlock {
+
+ public IB_ItemDistributionNode(Block block) {
+ super(block);
+ }
+
+ @SuppressWarnings({ "rawtypes", "unchecked" })
+ @Override
+ public void addInformation(ItemStack stack, EntityPlayer player, List lines, boolean advancedTooltips) {
+ lines.add("Access point for Item Distribution Networks");
+ lines.add("Wired networks do not require a controller");
+ }
+}
diff --git a/src/main/java/kekztech/IConduit.java b/src/main/java/kekztech/IConduit.java
index d36c590a63..ce726a2207 100644
--- a/src/main/java/kekztech/IConduit.java
+++ b/src/main/java/kekztech/IConduit.java
@@ -2,22 +2,7 @@ package kekztech;
public interface IConduit {
- public void setNetwork(ConduitNetworkController network);
- public ConduitNetworkController getNetwork();
+ public void setNetwork(ItemDistributionNetworkController network);
+ public ItemDistributionNetworkController getNetwork();
- /**
- * Returns the conduit's throughput capacity.
- *
- * @return
- * The conduit's throughput capacity.
- */
- public Number getCapacity();
-
- /**
- * Call when the throughput capacity was exceeded while traversing this conduit.
- */
- public void onOverload();
-
- public boolean testForInputFilter(Object o);
- public boolean testForOutputFilter(Object o);
}
diff --git a/src/main/java/kekztech/ConduitNetworkController.java b/src/main/java/kekztech/ItemDistributionNetworkController.java
index 83f43cd54b..e188cb0d26 100644
--- a/src/main/java/kekztech/ConduitNetworkController.java
+++ b/src/main/java/kekztech/ItemDistributionNetworkController.java
@@ -9,15 +9,15 @@ import java.util.UUID;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.world.World;
-public class ConduitNetworkController implements Comparable<ConduitNetworkController> {
+public class ItemDistributionNetworkController implements Comparable<ItemDistributionNetworkController> {
- private static final HashSet<ConduitNetworkController> instances = new HashSet<>();
+ private static final HashSet<ItemDistributionNetworkController> instances = new HashSet<>();
private final UUID uuid = UUID.randomUUID();
private final LinkedList<IConduit> conduits = new LinkedList<>();
private final HashMap<String, IConduit> sources = new HashMap<>(); // k = resource name, v = source conduit
- public ConduitNetworkController() {
+ public ItemDistributionNetworkController() {
}
@@ -29,7 +29,7 @@ public class ConduitNetworkController implements Comparable<ConduitNetworkContro
*/
public static void placeConduit(IConduit conduit) {
- conduit.setNetwork(new ConduitNetworkController());
+ conduit.setNetwork(new ItemDistributionNetworkController());
conduit.getNetwork().addConduit(conduit);
final TileEntity te = (TileEntity) conduit;
@@ -38,7 +38,7 @@ public class ConduitNetworkController implements Comparable<ConduitNetworkContro
final int z = te.zCoord;
// Search for adjacent Networks on all six sides
- final HashSet<ConduitNetworkController> networks = new HashSet<>();
+ final HashSet<ItemDistributionNetworkController> networks = new HashSet<>();
final World world = te.getWorldObj();
final TileEntity te1x = world.getTileEntity(x + 1, y, z);
final TileEntity te0x = world.getTileEntity(x - 1, y, z);
@@ -75,13 +75,13 @@ public class ConduitNetworkController implements Comparable<ConduitNetworkContro
return;
}
// Sort networks by descending size
- final LinkedList<ConduitNetworkController> networkList = new LinkedList<>();
+ final LinkedList<ItemDistributionNetworkController> networkList = new LinkedList<>();
networkList.addAll(networks);
Collections.sort(networkList, Collections.reverseOrder());
// Larger networks consume smaller networks to reduce copying around data
while(networkList.size() > 1) {
- final ConduitNetworkController l = networkList.get(networkList.size() - 2);
- final ConduitNetworkController r = networkList.getLast();
+ final ItemDistributionNetworkController l = networkList.get(networkList.size() - 2);
+ final ItemDistributionNetworkController r = networkList.getLast();
l.appendNetwork(r);
networkList.removeLast();
}
@@ -104,8 +104,8 @@ public class ConduitNetworkController implements Comparable<ConduitNetworkContro
@Override
public boolean equals(Object o) {
- if(o instanceof ConduitNetworkController) {
- final ConduitNetworkController network = (ConduitNetworkController) o;
+ if(o instanceof ItemDistributionNetworkController) {
+ final ItemDistributionNetworkController network = (ItemDistributionNetworkController) o;
return uuid.equals(network.getUUID());
} else {
return false;
@@ -113,7 +113,7 @@ public class ConduitNetworkController implements Comparable<ConduitNetworkContro
}
@Override
- public int compareTo(ConduitNetworkController o) {
+ public int compareTo(ItemDistributionNetworkController o) {
return (int) Math.signum(o.getSize() - this.getSize());
}
@@ -141,7 +141,7 @@ public class ConduitNetworkController implements Comparable<ConduitNetworkContro
* @param network
* Network to merge with this one.
*/
- private void appendNetwork(ConduitNetworkController network) {
+ private void appendNetwork(ItemDistributionNetworkController network) {
}
diff --git a/src/main/java/kekztech/KekzCore.java b/src/main/java/kekztech/KekzCore.java
index a832faa484..3b88a9074d 100644
--- a/src/main/java/kekztech/KekzCore.java
+++ b/src/main/java/kekztech/KekzCore.java
@@ -221,17 +221,14 @@ public class KekzCore {
FluidRegistry.getFluidStack("molten.epoxid", 1152),
new ItemStack(Block_TFFTStorageFieldBlockT4.getInstance(), 1),
400, 4098);
- final ItemStack[] tfftmultihatch = {
- GT_Utility.getIntegratedCircuit(6),
- GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Master, 2),
- GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.Titanium, 25),
- ItemList.Field_Generator_HV.get(1L)
- };
- GT_Values.RA.addAssemblerRecipe(
- tfftmultihatch,
- FluidRegistry.getFluidStack("molten.epoxid", 576),
- new ItemStack(Block_TFFTMultiHatch.getInstance(), 1),
- 6000, 480);
+ final Object[] multi_hatch = {
+ "PRP", "UFU", "PRP",
+ 'P', GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.NiobiumTitanium, 1),
+ 'R', GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.StainlessSteel, 1),
+ 'U', ItemList.Electric_Pump_IV.get(1L),
+ 'F', ItemList.Field_Generator_HV.get(1L)
+ };
+ GT_ModHandler.addCraftingRecipe(new ItemStack(Block_TFFTMultiHatch.getInstance()), multi_hatch);
// Reactor structure blocks
final ItemStack[] controlrod = {
diff --git a/src/main/java/kekztech/TFFTFluidHandler.java b/src/main/java/kekztech/TFFTFluidHandler.java
new file mode 100644
index 0000000000..2ed5eac798
--- /dev/null
+++ b/src/main/java/kekztech/TFFTFluidHandler.java
@@ -0,0 +1,7 @@
+package kekztech;
+
+public class TFFTFluidHandler {
+
+
+
+}
diff --git a/src/main/java/tileentities/TE_FluidConduit.java b/src/main/java/tileentities/TE_FluidConduit.java
deleted file mode 100644
index 35d0469051..0000000000
--- a/src/main/java/tileentities/TE_FluidConduit.java
+++ /dev/null
@@ -1,90 +0,0 @@
-package tileentities;
-
-import kekztech.ConduitNetworkController;
-import kekztech.IConduit;
-import net.minecraft.tileentity.TileEntity;
-import net.minecraftforge.common.util.ForgeDirection;
-import net.minecraftforge.fluids.Fluid;
-import net.minecraftforge.fluids.FluidStack;
-import net.minecraftforge.fluids.FluidTankInfo;
-import net.minecraftforge.fluids.IFluidHandler;
-
-public class TE_FluidConduit extends TileEntity implements IConduit, IFluidHandler {
-
- private final Number capacity;
-
- private ConduitNetworkController network;
-
- public TE_FluidConduit(Number capacity) {
- this.capacity = capacity;
- }
-
- @Override
- public void setNetwork(ConduitNetworkController network) {
- this.network = network;
- }
-
- @Override
- public ConduitNetworkController getNetwork() {
- return network;
- }
-
- @Override
- public Number getCapacity() {
- return capacity;
- }
-
- @Override
- public void onOverload() {
-
- }
-
- @Override
- public boolean testForInputFilter(Object o) {
- // TODO Auto-generated method stub
- return false;
- }
-
- @Override
- public boolean testForOutputFilter(Object o) {
- // TODO Auto-generated method stub
- return false;
- }
-
- @Override
- public int fill(ForgeDirection from, FluidStack resource, boolean doFill) {
- // TODO Auto-generated method stub
- return 0;
- }
-
- @Override
- public FluidStack drain(ForgeDirection from, FluidStack resource, boolean doDrain) {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- public FluidStack drain(ForgeDirection from, int maxDrain, boolean doDrain) {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- public boolean canFill(ForgeDirection from, Fluid fluid) {
- // TODO Auto-generated method stub
- return false;
- }
-
- @Override
- public boolean canDrain(ForgeDirection from, Fluid fluid) {
- // TODO Auto-generated method stub
- return false;
- }
-
- @Override
- public FluidTankInfo[] getTankInfo(ForgeDirection from) {
- // TODO Auto-generated method stub
- return null;
- }
-
-}
diff --git a/src/main/java/tileentities/TE_ItemDistributionCable.java b/src/main/java/tileentities/TE_ItemDistributionCable.java
new file mode 100644
index 0000000000..153ed139b5
--- /dev/null
+++ b/src/main/java/tileentities/TE_ItemDistributionCable.java
@@ -0,0 +1,7 @@
+package tileentities;
+
+import net.minecraft.tileentity.TileEntity;
+
+public class TE_ItemDistributionCable extends TileEntity {
+
+}
diff --git a/src/main/java/tileentities/TE_ItemDistributionNode.java b/src/main/java/tileentities/TE_ItemDistributionNode.java
new file mode 100644
index 0000000000..4da94ea5f5
--- /dev/null
+++ b/src/main/java/tileentities/TE_ItemDistributionNode.java
@@ -0,0 +1,96 @@
+package tileentities;
+
+import kekztech.IConduit;
+import kekztech.ItemDistributionNetworkController;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.inventory.IInventory;
+import net.minecraft.item.ItemStack;
+import net.minecraft.tileentity.TileEntity;
+
+public class TE_ItemDistributionNode extends TileEntity implements IConduit, IInventory {
+
+private ItemDistributionNetworkController network;
+
+ public TE_ItemDistributionNode() {
+ }
+
+ @Override
+ public void setNetwork(ItemDistributionNetworkController network) {
+ this.network = network;
+ }
+
+ @Override
+ public ItemDistributionNetworkController getNetwork() {
+ return network;
+ }
+
+ @Override
+ public int getSizeInventory() {
+ return 16;
+ }
+
+ @Override
+ public ItemStack getStackInSlot(int slot) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @Override
+ public ItemStack decrStackSize(int slot, int amount) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @Override
+ public ItemStack getStackInSlotOnClosing(int slot) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @Override
+ public void setInventorySlotContents(int slot, ItemStack itemStack) {
+ // TODO Auto-generated method stub
+
+ }
+
+ @Override
+ public String getInventoryName() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @Override
+ public boolean hasCustomInventoryName() {
+ // TODO Auto-generated method stub
+ return false;
+ }
+
+ @Override
+ public int getInventoryStackLimit() {
+ return 64;
+ }
+
+ @Override
+ public boolean isUseableByPlayer(EntityPlayer player) {
+ return true;
+ }
+
+ @Override
+ public void openInventory() {
+ // TODO Auto-generated method stub
+
+ }
+
+ @Override
+ public void closeInventory() {
+ // TODO Auto-generated method stub
+
+ }
+
+ @Override
+ public boolean isItemValidForSlot(int p_94041_1_, ItemStack p_94041_2_) {
+ // TODO Auto-generated method stub
+ return false;
+ }
+
+}