diff options
author | Christina Berchtold <kekzdealer@gmail.com> | 2019-11-08 21:27:05 +0100 |
---|---|---|
committer | Christina Berchtold <kekzdealer@gmail.com> | 2019-11-08 21:27:05 +0100 |
commit | a76478105d61d7be330c63fd247f7fbb66da9d9a (patch) | |
tree | 3f2fdc8b02d4aed9a9c4c2d1dab9d76b1d61dc7f /src/main/java | |
parent | 8c11cb77c724a7adf29777a1e7123d6492eec00a (diff) | |
download | GT5-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.java | 40 | ||||
-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.java | 22 | ||||
-rw-r--r-- | src/main/java/kekztech/IConduit.java | 19 | ||||
-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.java | 19 | ||||
-rw-r--r-- | src/main/java/kekztech/TFFTFluidHandler.java | 7 | ||||
-rw-r--r-- | src/main/java/tileentities/TE_FluidConduit.java | 90 | ||||
-rw-r--r-- | src/main/java/tileentities/TE_ItemDistributionCable.java | 7 | ||||
-rw-r--r-- | src/main/java/tileentities/TE_ItemDistributionNode.java | 96 |
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; + } + +} |