From 0e2583caff90b23c04004153cd9cff01965e4c78 Mon Sep 17 00:00:00 2001 From: Bob Date: Sun, 26 Apr 2026 21:13:29 +0200 Subject: [PATCH] brain fart.mp3 --- .../java/api/hbm/ntl/EnumStorageType.java | 1 + .../java/api/hbm/ntl/IPneumaticConnector.java | 15 +++++ .../java/api/hbm/ntl/IStorageComponent.java | 1 + .../java/api/hbm/ntl/StorageManifest.java | 1 + src/main/java/api/hbm/ntl/StorageStack.java | 1 + src/main/java/com/hbm/blocks/ModBlocks.java | 14 ++++ .../pneumatic/PneumoStorageAccess.java | 63 ++++++++++++++++++ .../pneumatic/PneumoStorageClutter.java | 33 +++++++++ .../network/pneumatic/PneumoStorageMono.java | 19 ++++++ .../network/{ => pneumatic}/PneumoTube.java | 9 ++- .../PneumoTubePaintableBlock.java | 5 +- .../container/ContainerPneumoTube.java | 2 +- .../com/hbm/inventory/gui/GUIPneumoTube.java | 2 +- .../hbm/render/block/RenderPneumoTube.java | 4 +- .../java/com/hbm/tileentity/TileMappings.java | 7 +- .../TileEntityPneumoStorageAccess.java | 14 ++++ .../TileEntityPneumoStorageClutter.java | 30 +++++++++ .../{ => pneumatic}/TileEntityPneumoTube.java | 2 +- .../networkproviders/PneumaticNetwork.java | 2 +- .../blocks/pneumatic_storage_access.png | Bin 0 -> 300 bytes .../blocks/pneumatic_storage_access_front.png | Bin 0 -> 373 bytes .../blocks/pneumatic_storage_clutter.png | Bin 0 -> 414 bytes .../blocks/pneumatic_storage_mono.png | Bin 0 -> 330 bytes .../gui/storage/gui_pneumatic_access.png | Bin 0 -> 1942 bytes .../gui/storage/gui_pneumatic_clutter.png | Bin 0 -> 2368 bytes 25 files changed, 213 insertions(+), 12 deletions(-) create mode 100644 src/main/java/api/hbm/ntl/IPneumaticConnector.java create mode 100644 src/main/java/com/hbm/blocks/network/pneumatic/PneumoStorageAccess.java create mode 100644 src/main/java/com/hbm/blocks/network/pneumatic/PneumoStorageClutter.java create mode 100644 src/main/java/com/hbm/blocks/network/pneumatic/PneumoStorageMono.java rename src/main/java/com/hbm/blocks/network/{ => pneumatic}/PneumoTube.java (96%) rename src/main/java/com/hbm/blocks/network/{ => pneumatic}/PneumoTubePaintableBlock.java (95%) create mode 100644 src/main/java/com/hbm/tileentity/network/pneumatic/TileEntityPneumoStorageAccess.java create mode 100644 src/main/java/com/hbm/tileentity/network/pneumatic/TileEntityPneumoStorageClutter.java rename src/main/java/com/hbm/tileentity/network/{ => pneumatic}/TileEntityPneumoTube.java (99%) create mode 100644 src/main/resources/assets/hbm/textures/blocks/pneumatic_storage_access.png create mode 100644 src/main/resources/assets/hbm/textures/blocks/pneumatic_storage_access_front.png create mode 100644 src/main/resources/assets/hbm/textures/blocks/pneumatic_storage_clutter.png create mode 100644 src/main/resources/assets/hbm/textures/blocks/pneumatic_storage_mono.png create mode 100644 src/main/resources/assets/hbm/textures/gui/storage/gui_pneumatic_access.png create mode 100644 src/main/resources/assets/hbm/textures/gui/storage/gui_pneumatic_clutter.png diff --git a/src/main/java/api/hbm/ntl/EnumStorageType.java b/src/main/java/api/hbm/ntl/EnumStorageType.java index 287f18c77..bbde53f61 100644 --- a/src/main/java/api/hbm/ntl/EnumStorageType.java +++ b/src/main/java/api/hbm/ntl/EnumStorageType.java @@ -1,5 +1,6 @@ package api.hbm.ntl; +@Deprecated public enum EnumStorageType { CLUTTER, //potentially unsorted storage (like crates) with many slots that have low capacity MASS //storage with very few lots (usually 1) and very high capacity diff --git a/src/main/java/api/hbm/ntl/IPneumaticConnector.java b/src/main/java/api/hbm/ntl/IPneumaticConnector.java new file mode 100644 index 000000000..d9ff3ec7d --- /dev/null +++ b/src/main/java/api/hbm/ntl/IPneumaticConnector.java @@ -0,0 +1,15 @@ +package api.hbm.ntl; + +import net.minecraftforge.common.util.ForgeDirection; + +public interface IPneumaticConnector { + + /** + * Whether the given side can be connected to. + * @param dir The side of this block, not the one that is trying to connect. + * @return + */ + public default boolean canConnectPneumatic(ForgeDirection dir) { + return dir != ForgeDirection.UNKNOWN; + } +} diff --git a/src/main/java/api/hbm/ntl/IStorageComponent.java b/src/main/java/api/hbm/ntl/IStorageComponent.java index adb46ead0..13b7ea669 100644 --- a/src/main/java/api/hbm/ntl/IStorageComponent.java +++ b/src/main/java/api/hbm/ntl/IStorageComponent.java @@ -2,6 +2,7 @@ package api.hbm.ntl; import net.minecraft.item.ItemStack; +@Deprecated public interface IStorageComponent { /** diff --git a/src/main/java/api/hbm/ntl/StorageManifest.java b/src/main/java/api/hbm/ntl/StorageManifest.java index 628502d52..0d58df702 100644 --- a/src/main/java/api/hbm/ntl/StorageManifest.java +++ b/src/main/java/api/hbm/ntl/StorageManifest.java @@ -10,6 +10,7 @@ import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; +@Deprecated public class StorageManifest { public LinkedHashMap itemMeta = new LinkedHashMap(); diff --git a/src/main/java/api/hbm/ntl/StorageStack.java b/src/main/java/api/hbm/ntl/StorageStack.java index 31871f696..4980bdcbf 100644 --- a/src/main/java/api/hbm/ntl/StorageStack.java +++ b/src/main/java/api/hbm/ntl/StorageStack.java @@ -3,6 +3,7 @@ package api.hbm.ntl; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; +@Deprecated public class StorageStack implements Comparable { private int cachedItemId; diff --git a/src/main/java/com/hbm/blocks/ModBlocks.java b/src/main/java/com/hbm/blocks/ModBlocks.java index eeff5c1bb..82c53856b 100644 --- a/src/main/java/com/hbm/blocks/ModBlocks.java +++ b/src/main/java/com/hbm/blocks/ModBlocks.java @@ -12,6 +12,11 @@ import com.hbm.blocks.machine.fusion.*; import com.hbm.blocks.machine.pile.*; import com.hbm.blocks.machine.rbmk.*; import com.hbm.blocks.network.*; +import com.hbm.blocks.network.pneumatic.PneumoStorageAccess; +import com.hbm.blocks.network.pneumatic.PneumoStorageClutter; +import com.hbm.blocks.network.pneumatic.PneumoStorageMono; +import com.hbm.blocks.network.pneumatic.PneumoTube; +import com.hbm.blocks.network.pneumatic.PneumoTubePaintableBlock; import com.hbm.blocks.rail.*; import com.hbm.blocks.test.*; import com.hbm.blocks.turret.*; @@ -798,6 +803,9 @@ public class ModBlocks { public static Block pneumatic_tube; public static Block pneumatic_tube_paintable; + public static Block pneumatic_storage_access; + public static Block pneumatic_storage_clutter; + public static Block pneumatic_storage_mono; public static Block fan; public static Block piston_inserter; @@ -1914,6 +1922,9 @@ public class ModBlocks { pneumatic_tube = new PneumoTube().setBlockName("pneumatic_tube").setStepSound(ModSoundTypes.pipe).setHardness(0.1F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":pneumatic_tube"); pneumatic_tube_paintable = new PneumoTubePaintableBlock().setBlockName("pneumatic_tube_paintable").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + pneumatic_storage_access = new PneumoStorageAccess().setBlockName("pneumatic_storage_access").setStepSound(ModSoundTypes.pipe).setHardness(0.1F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":pneumatic_storage_access"); + pneumatic_storage_clutter = new PneumoStorageClutter().setBlockName("pneumatic_storage_clutter").setStepSound(ModSoundTypes.pipe).setHardness(0.1F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":pneumatic_storage_clutter"); + pneumatic_storage_mono = new PneumoStorageMono().setBlockName("pneumatic_storage_mono").setStepSound(ModSoundTypes.pipe).setHardness(0.1F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":pneumatic_storage_mono"); chain = new BlockChain(Material.iron).setBlockName("dungeon_chain").setHardness(0.25F).setResistance(2.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":chain"); @@ -3185,6 +3196,9 @@ public class ModBlocks { register(drone_crate_requester); register(pneumatic_tube); register(pneumatic_tube_paintable); + register(pneumatic_storage_access); + register(pneumatic_storage_clutter); + register(pneumatic_storage_mono); register(fan); register(piston_inserter); diff --git a/src/main/java/com/hbm/blocks/network/pneumatic/PneumoStorageAccess.java b/src/main/java/com/hbm/blocks/network/pneumatic/PneumoStorageAccess.java new file mode 100644 index 000000000..9b449e957 --- /dev/null +++ b/src/main/java/com/hbm/blocks/network/pneumatic/PneumoStorageAccess.java @@ -0,0 +1,63 @@ +package com.hbm.blocks.network.pneumatic; + +import com.hbm.lib.RefStrings; +import com.hbm.main.MainRegistry; +import com.hbm.tileentity.network.pneumatic.TileEntityPneumoStorageAccess; + +import cpw.mods.fml.common.network.internal.FMLNetworkHandler; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import net.minecraft.block.BlockContainer; +import net.minecraft.block.BlockPistonBase; +import net.minecraft.block.material.Material; +import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.entity.EntityLivingBase; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.ItemStack; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.IIcon; +import net.minecraft.world.World; + +public class PneumoStorageAccess extends BlockContainer { + + @SideOnly(Side.CLIENT) + private IIcon iconFront; + + public PneumoStorageAccess() { + super(Material.iron); + } + + @Override + public TileEntity createNewTileEntity(World world, int meta) { + return new TileEntityPneumoStorageAccess(); + } + + @Override + @SideOnly(Side.CLIENT) + public void registerBlockIcons(IIconRegister reg) { + super.registerBlockIcons(reg); + this.iconFront = reg.registerIcon(RefStrings.MODID + ":pneumatic_storage_access_front"); + } + + @Override + @SideOnly(Side.CLIENT) + public IIcon getIcon(int side, int meta) { + return meta == side ? iconFront : blockIcon; + } + + @Override + public void onBlockPlacedBy(World world, int x, int y, int z, EntityLivingBase player, ItemStack stack) { + int l = BlockPistonBase.determineOrientation(world, x, y, z, player); + world.setBlockMetadataWithNotify(x, y, z, l, 2); + } + + @Override + public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int side, float hitX, float hitY, float hitZ) { + if(world.isRemote) return true; + if(!player.isSneaking()) { + FMLNetworkHandler.openGui(player, MainRegistry.instance, 0, world, x, y, z); + return true; + } + return false; + } +} diff --git a/src/main/java/com/hbm/blocks/network/pneumatic/PneumoStorageClutter.java b/src/main/java/com/hbm/blocks/network/pneumatic/PneumoStorageClutter.java new file mode 100644 index 000000000..33b18b6ae --- /dev/null +++ b/src/main/java/com/hbm/blocks/network/pneumatic/PneumoStorageClutter.java @@ -0,0 +1,33 @@ +package com.hbm.blocks.network.pneumatic; + +import com.hbm.main.MainRegistry; +import com.hbm.tileentity.network.pneumatic.TileEntityPneumoStorageClutter; + +import cpw.mods.fml.common.network.internal.FMLNetworkHandler; +import net.minecraft.block.BlockContainer; +import net.minecraft.block.material.Material; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.world.World; + +public class PneumoStorageClutter extends BlockContainer { + + public PneumoStorageClutter() { + super(Material.iron); + } + + @Override + public TileEntity createNewTileEntity(World world, int meta) { + return new TileEntityPneumoStorageClutter(); + } + + @Override + public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int side, float hitX, float hitY, float hitZ) { + if(world.isRemote) return true; + if(!player.isSneaking()) { + FMLNetworkHandler.openGui(player, MainRegistry.instance, 0, world, x, y, z); + return true; + } + return false; + } +} diff --git a/src/main/java/com/hbm/blocks/network/pneumatic/PneumoStorageMono.java b/src/main/java/com/hbm/blocks/network/pneumatic/PneumoStorageMono.java new file mode 100644 index 000000000..47428aff2 --- /dev/null +++ b/src/main/java/com/hbm/blocks/network/pneumatic/PneumoStorageMono.java @@ -0,0 +1,19 @@ +package com.hbm.blocks.network.pneumatic; + +import net.minecraft.block.BlockContainer; +import net.minecraft.block.material.Material; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.world.World; + +public class PneumoStorageMono extends BlockContainer { + + public PneumoStorageMono() { + super(Material.iron); + } + + @Override + public TileEntity createNewTileEntity(World world, int meta) { + return null; + } + +} \ No newline at end of file diff --git a/src/main/java/com/hbm/blocks/network/PneumoTube.java b/src/main/java/com/hbm/blocks/network/pneumatic/PneumoTube.java similarity index 96% rename from src/main/java/com/hbm/blocks/network/PneumoTube.java rename to src/main/java/com/hbm/blocks/network/pneumatic/PneumoTube.java index 729f224dc..ec739a3b8 100644 --- a/src/main/java/com/hbm/blocks/network/PneumoTube.java +++ b/src/main/java/com/hbm/blocks/network/pneumatic/PneumoTube.java @@ -1,4 +1,4 @@ -package com.hbm.blocks.network; +package com.hbm.blocks.network.pneumatic; import java.util.ArrayList; import java.util.List; @@ -8,10 +8,11 @@ import com.hbm.inventory.fluid.Fluids; import com.hbm.lib.Library; import com.hbm.lib.RefStrings; import com.hbm.main.MainRegistry; -import com.hbm.tileentity.network.TileEntityPneumoTube; +import com.hbm.tileentity.network.pneumatic.TileEntityPneumoTube; import com.hbm.util.Compat; import api.hbm.block.IToolable; +import api.hbm.ntl.IPneumaticConnector; import cpw.mods.fml.client.registry.RenderingRegistry; import cpw.mods.fml.common.network.internal.FMLNetworkHandler; import cpw.mods.fml.relauncher.Side; @@ -207,7 +208,9 @@ public class PneumoTube extends BlockContainer implements IToolable, ITooltipPro public boolean canConnectTo(IBlockAccess world, int x, int y, int z, ForgeDirection dir) { TileEntity tile = world instanceof World ? Compat.getTileStandard((World) world, x + dir.offsetX, y + dir.offsetY, z + dir.offsetZ) : world.getTileEntity(x + dir.offsetX, y + dir.offsetY, z + dir.offsetZ); - return tile instanceof TileEntityPneumoTube; + if(tile instanceof TileEntityPneumoTube) return true; + if(tile instanceof IPneumaticConnector) return ((IPneumaticConnector) tile).canConnectPneumatic(dir.getOpposite()); + return false; } public boolean canConnectToAir(IBlockAccess world, int x, int y, int z, ForgeDirection dir) { diff --git a/src/main/java/com/hbm/blocks/network/PneumoTubePaintableBlock.java b/src/main/java/com/hbm/blocks/network/pneumatic/PneumoTubePaintableBlock.java similarity index 95% rename from src/main/java/com/hbm/blocks/network/PneumoTubePaintableBlock.java rename to src/main/java/com/hbm/blocks/network/pneumatic/PneumoTubePaintableBlock.java index c54baab81..3845a12e7 100644 --- a/src/main/java/com/hbm/blocks/network/PneumoTubePaintableBlock.java +++ b/src/main/java/com/hbm/blocks/network/pneumatic/PneumoTubePaintableBlock.java @@ -1,4 +1,4 @@ -package com.hbm.blocks.network; +package com.hbm.blocks.network.pneumatic; import api.hbm.block.IToolable; @@ -6,11 +6,12 @@ import java.util.List; import com.hbm.blocks.IBlockMultiPass; import com.hbm.blocks.ITooltipProvider; +import com.hbm.blocks.network.BlockCablePaintable; import com.hbm.interfaces.ICopiable; import com.hbm.lib.RefStrings; import com.hbm.main.MainRegistry; import com.hbm.render.block.RenderBlockMultipass; -import com.hbm.tileentity.network.TileEntityPneumoTube; +import com.hbm.tileentity.network.pneumatic.TileEntityPneumoTube; import com.hbm.util.Compat; import cpw.mods.fml.common.network.internal.FMLNetworkHandler; import cpw.mods.fml.relauncher.Side; diff --git a/src/main/java/com/hbm/inventory/container/ContainerPneumoTube.java b/src/main/java/com/hbm/inventory/container/ContainerPneumoTube.java index 91eaab7f3..6f844e35f 100644 --- a/src/main/java/com/hbm/inventory/container/ContainerPneumoTube.java +++ b/src/main/java/com/hbm/inventory/container/ContainerPneumoTube.java @@ -1,7 +1,7 @@ package com.hbm.inventory.container; import com.hbm.inventory.SlotPattern; -import com.hbm.tileentity.network.TileEntityPneumoTube; +import com.hbm.tileentity.network.pneumatic.TileEntityPneumoTube; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.InventoryPlayer; diff --git a/src/main/java/com/hbm/inventory/gui/GUIPneumoTube.java b/src/main/java/com/hbm/inventory/gui/GUIPneumoTube.java index 9ee7bd1b1..eba1e7c9a 100644 --- a/src/main/java/com/hbm/inventory/gui/GUIPneumoTube.java +++ b/src/main/java/com/hbm/inventory/gui/GUIPneumoTube.java @@ -10,7 +10,7 @@ import com.hbm.module.ModulePatternMatcher; import com.hbm.packet.PacketDispatcher; import com.hbm.packet.toserver.NBTControlPacket; import com.hbm.render.util.GaugeUtil; -import com.hbm.tileentity.network.TileEntityPneumoTube; +import com.hbm.tileentity.network.pneumatic.TileEntityPneumoTube; import com.hbm.uninos.networkproviders.PneumaticNetwork; import net.minecraft.client.Minecraft; diff --git a/src/main/java/com/hbm/render/block/RenderPneumoTube.java b/src/main/java/com/hbm/render/block/RenderPneumoTube.java index 119231e08..85c03f86b 100644 --- a/src/main/java/com/hbm/render/block/RenderPneumoTube.java +++ b/src/main/java/com/hbm/render/block/RenderPneumoTube.java @@ -2,10 +2,10 @@ package com.hbm.render.block; import org.lwjgl.opengl.GL11; -import com.hbm.blocks.network.PneumoTube; +import com.hbm.blocks.network.pneumatic.PneumoTube; import com.hbm.lib.Library; import com.hbm.render.util.RenderBlocksNT; -import com.hbm.tileentity.network.TileEntityPneumoTube; +import com.hbm.tileentity.network.pneumatic.TileEntityPneumoTube; import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler; import net.minecraft.block.Block; diff --git a/src/main/java/com/hbm/tileentity/TileMappings.java b/src/main/java/com/hbm/tileentity/TileMappings.java index 68be764bc..6a8a5608b 100644 --- a/src/main/java/com/hbm/tileentity/TileMappings.java +++ b/src/main/java/com/hbm/tileentity/TileMappings.java @@ -42,7 +42,7 @@ import com.hbm.blocks.network.FluidDuctGauge.TileEntityPipeGauge; import com.hbm.blocks.network.FluidDuctPaintable.TileEntityPipePaintable; import com.hbm.blocks.network.FluidDuctPaintableBlockExhaust.TileEntityPipeExhaustPaintable; import com.hbm.blocks.network.FluidPump.TileEntityFluidPump; -import com.hbm.blocks.network.PneumoTubePaintableBlock.TileEntityPneumoTubePaintable; +import com.hbm.blocks.network.pneumatic.PneumoTubePaintableBlock.TileEntityPneumoTubePaintable; import com.hbm.blocks.rail.RailStandardSwitch.TileEntityRailSwitch; import com.hbm.blocks.test.TestEventTester.TileEntityTestStorage; import com.hbm.blocks.network.BlockOpenComputersCablePaintable.TileEntityOpenComputersCablePaintable; @@ -56,6 +56,9 @@ import com.hbm.tileentity.machine.pile.*; import com.hbm.tileentity.machine.rbmk.*; import com.hbm.tileentity.machine.storage.*; import com.hbm.tileentity.network.*; +import com.hbm.tileentity.network.pneumatic.TileEntityPneumoStorageAccess; +import com.hbm.tileentity.network.pneumatic.TileEntityPneumoStorageClutter; +import com.hbm.tileentity.network.pneumatic.TileEntityPneumoTube; import com.hbm.tileentity.turret.*; import com.hbm.util.Compat; @@ -467,6 +470,8 @@ public class TileMappings { put(TileEntityPneumoTube.class, "tileentity_pneumatic_tube"); put(TileEntityPneumoTubePaintable.class, "tileentity_pneumatic_tube_paintable"); + put(TileEntityPneumoStorageAccess.class, "tileentity_pneumatic_storage_access"); + put(TileEntityPneumoStorageClutter.class, "tileentity_pneumatic_storage_clutter"); put(TileEntityRadioTorchSender.class, "tileentity_rtty_sender"); put(TileEntityRadioTorchReceiver.class, "tileentity_rtty_rec"); diff --git a/src/main/java/com/hbm/tileentity/network/pneumatic/TileEntityPneumoStorageAccess.java b/src/main/java/com/hbm/tileentity/network/pneumatic/TileEntityPneumoStorageAccess.java new file mode 100644 index 000000000..f5c4eaca4 --- /dev/null +++ b/src/main/java/com/hbm/tileentity/network/pneumatic/TileEntityPneumoStorageAccess.java @@ -0,0 +1,14 @@ +package com.hbm.tileentity.network.pneumatic; + +import api.hbm.ntl.IPneumaticConnector; +import net.minecraft.tileentity.TileEntity; +import net.minecraftforge.common.util.ForgeDirection; + +public class TileEntityPneumoStorageAccess extends TileEntity implements IPneumaticConnector { + + @Override + public boolean canConnectPneumatic(ForgeDirection dir) { + ForgeDirection selfdir = ForgeDirection.getOrientation(getBlockMetadata()); + return dir == selfdir.getOpposite(); + } +} diff --git a/src/main/java/com/hbm/tileentity/network/pneumatic/TileEntityPneumoStorageClutter.java b/src/main/java/com/hbm/tileentity/network/pneumatic/TileEntityPneumoStorageClutter.java new file mode 100644 index 000000000..126bed44e --- /dev/null +++ b/src/main/java/com/hbm/tileentity/network/pneumatic/TileEntityPneumoStorageClutter.java @@ -0,0 +1,30 @@ +package com.hbm.tileentity.network.pneumatic; + +import com.hbm.inventory.fluid.Fluids; +import com.hbm.inventory.fluid.tank.FluidTank; +import com.hbm.tileentity.TileEntityMachineBase; + +import api.hbm.fluidmk2.IFluidStandardReceiverMK2; + +public class TileEntityPneumoStorageClutter extends TileEntityMachineBase implements IFluidStandardReceiverMK2 { + + public FluidTank compair; + + public TileEntityPneumoStorageClutter() { + super(6 * 9); + this.compair = new FluidTank(Fluids.AIR, 4_000).withPressure(1); + } + + @Override + public String getName() { + return "container.pneumoStorageClutter"; + } + + @Override + public void updateEntity() { + + } + + @Override public FluidTank[] getAllTanks() { return new FluidTank[] {compair}; } + @Override public FluidTank[] getReceivingTanks() { return new FluidTank[] {compair}; } +} diff --git a/src/main/java/com/hbm/tileentity/network/TileEntityPneumoTube.java b/src/main/java/com/hbm/tileentity/network/pneumatic/TileEntityPneumoTube.java similarity index 99% rename from src/main/java/com/hbm/tileentity/network/TileEntityPneumoTube.java rename to src/main/java/com/hbm/tileentity/network/pneumatic/TileEntityPneumoTube.java index 1123bac7a..fcdbebc25 100644 --- a/src/main/java/com/hbm/tileentity/network/TileEntityPneumoTube.java +++ b/src/main/java/com/hbm/tileentity/network/pneumatic/TileEntityPneumoTube.java @@ -1,4 +1,4 @@ -package com.hbm.tileentity.network; +package com.hbm.tileentity.network.pneumatic; import com.hbm.inventory.container.ContainerPneumoTube; import com.hbm.inventory.fluid.FluidType; diff --git a/src/main/java/com/hbm/uninos/networkproviders/PneumaticNetwork.java b/src/main/java/com/hbm/uninos/networkproviders/PneumaticNetwork.java index aac5d52a7..66e0e4561 100644 --- a/src/main/java/com/hbm/uninos/networkproviders/PneumaticNetwork.java +++ b/src/main/java/com/hbm/uninos/networkproviders/PneumaticNetwork.java @@ -10,7 +10,7 @@ import java.util.Map.Entry; import java.util.Random; import com.hbm.tileentity.machine.TileEntityMachineAutocrafter; -import com.hbm.tileentity.network.TileEntityPneumoTube; +import com.hbm.tileentity.network.pneumatic.TileEntityPneumoTube; import com.hbm.uninos.NodeNet; import com.hbm.util.BobMathUtil; import com.hbm.util.ItemStackUtil; diff --git a/src/main/resources/assets/hbm/textures/blocks/pneumatic_storage_access.png b/src/main/resources/assets/hbm/textures/blocks/pneumatic_storage_access.png new file mode 100644 index 0000000000000000000000000000000000000000..7f8c02732370de87a04aedd0f5342c5039600357 GIT binary patch literal 300 zcmV+{0n`48P)@z-H!X>J!GNe2u4Yj87n$u&Q?$-(tH9N!WQ#1xLv9yw|L% zhzO~7Ka(bXjWNKz-r@rf>mTss3gJOs2As=1O<7@Vi)4a`{5jQcg?@W*B-?Cp`|XLc ys&}N`4Vu4~>%J_suVq1d!eqP4;Li5o9spN=#;?#oELRc$0000KP)_Yquu zfeh);h>O8M?o#elC?psXC~=S!W7AY8|LI@Ocm4zCA1I}2tuxN6nwuviumK?i08&bVAUNySj)IQd9EmT<`y& zPdBemq^88IbF7s!`}*yXW}ZdZRo**X#0hV=_s6~t%7#(vMHfMBd2uy<*`jXL$Ri)}On{!0e%&LuZoM&14S>hbpG%{FCo zci*VpVu0~@T;t;FcoQ|p$9Cw*59={{?ilTcohrd}vf9CXIH`7fw_$$N$LJV8$RXI( z8g;8&*vE7-J|A9w`wQiHf5G821k&vWfOMJv7?;hZ%e*1*4f?cim}deeh5!Hn07*qo IM6N<$f^G}8Jpcdz literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/blocks/pneumatic_storage_mono.png b/src/main/resources/assets/hbm/textures/blocks/pneumatic_storage_mono.png new file mode 100644 index 0000000000000000000000000000000000000000..3766a8aaf4b97cca563e8ac7cfe0e0e58594fe9a GIT binary patch literal 330 zcmV-Q0k!^#P)`GIne!>Ay%w`oFsqcTY)@G$MkCu$vdWzP}OD*&NufHaJh@HX=fqpMqw9 z(xk|XOarnyWvl#F?TYMnedhWkku8oxe&RU7o-^I$V#c9 zu{{$J;`Or2G#W(^8LUo9sSeQB^DV$d?*EO?JPEj!)*7v~_dW=?XAS}$F@xt5eKk*= zjR5~K14L(Ypfu^I!=^HGa_{Z2Alk1sf4$vySiD~P3vSK7pWnV&s2-aI@eGq~E literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/gui/storage/gui_pneumatic_access.png b/src/main/resources/assets/hbm/textures/gui/storage/gui_pneumatic_access.png new file mode 100644 index 0000000000000000000000000000000000000000..f8c4929a4a1fcc6b67604677930d4ecc971f40dc GIT binary patch literal 1942 zcmbVMdsLEV9DXq-s0Ef?ynxnm>DgLEHOi*DOjbQcy7mn4V^yGMAn< zTpD(<8s0KAB_-%KDh)DC(7a?SNCnOdpn|$@>(p6WwYKk{_j}Iw{hs&tKJW8;GQSG) zpJ8cl2>_T8uzuYp0ASE73?R*+Wo!J!UC;ujtqItSgr4t^(T4#*d>OFLcQYej(@{am zH((`$0}JnQ9|Y}P9{maL_!Xa>mJ92Xk;~wR=tIq=xxO`am#fkT&)of@8dY%awmLrI zvhByX*(J^vk%R>6%CA*B%F@r?$|=g#(q$b3+TjC>H)6(8(D!ImqG7!up`5k+(=e2< z2_5N`!q5!s)jh7d$HY#dKApfconslQ&vriI3hG)|qpJQ#{0u8E>zcA8;&}XK>bfVl z<^J+<=G2&6RQyb5laeFbzLU~-SC%uTEw0r)7ZLC_2a8XY5RH8@naOyLE8?|Cr*0%r zERPILbXQjy1~YVH?n~KqChmyE$sxGtULIf!@k_SCHmFJ$fiS-^aNZe|z(YaPOc0W` zC{>LFi>}WR)8VNno>)e$HWLT#{|JYLMJ=o`;~WE*W`FxZ>%T<*%Q)z;f#8)IyZv!XmO zoujbv2^JQE;n;YndVA0D&U?D+y)?Bfc1udesHKo7j_NEl}crn)2;jld?hs&piroN zbyy|+=23hyZ8tZ|M@e^+_;K|D#J|$Lv5&*S26Ze-!=HI4U#fiI{UPe$AMgeDPcvUahl6b@$M+oU?<9~EvGC;=`1neh-+bEYlWUDHp_^Hi z%cdE+rPsW9JTB|Su#>39%fJ;)skXD(%CI`S-ErUF?9Qf|$Efo? zynd94lEZc5m|cNCMZ!v`9pl}umrT~?<#^W+*&*0&HMty-elQ8ogrj!)Vl_-t_YD-> zrP~wm<0h>v>L?;w%4d$ug`LfB9kxZ4Tk&6$j|VdMQzxnun(Vn zXfL-!C$V0isCn_Cebl#MS%#aA7qikni}y?;a%_jDB!WX@IX}>9_mN0Y7bKx~MqUn- z1}ljYzd~)ze@}xwEL2AYlm<$b0@;j(@?Z}O%7c!$|B(kK%+(c%&eoN8{0dtKXT8c3 zH@!g+im5aSIyMb9|^23gtAyEO-C3{cch=%-;%c$;o#mLbd^7(j@wJpOgC; S-y0!+;DFDA)|IV^O8XrRU?(vE literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/gui/storage/gui_pneumatic_clutter.png b/src/main/resources/assets/hbm/textures/gui/storage/gui_pneumatic_clutter.png new file mode 100644 index 0000000000000000000000000000000000000000..d587a9c5adebd4c08b36f67466caf47693fd5c72 GIT binary patch literal 2368 zcma)74N%hA7QY~gMzW#~nn@act<|KK8Da)orea2!JuUU6shPEzrSjBtMcZw~OwILe zR!Fk3X+=hArA2=1^MhK8v`oS;6e2Z5NZdr(Wde4E5FJ zh91Bo2Nnym;v3M35&`(bNu|(-ow?;H$`lY@OQYn zu^N5$95`sqnB5t{SeBr`m=JADwUWQpM-@j|&5q=RY=L zFy2_vb(4Y$4o&?mnAAK@9}kvGw;wF);ps~ZdRbS96G9=)8}-o;FmOzEuA$+Hq52{! zL$l0^%DfCm(K)bd0iD5^iC_Lr>G~N(ZZ0Ot(v~lD0x$|OkY%7LEn?Ed})+x zpKzC^%LZ{v!NA<^TA0luz}^*_Y(UA~U|CUdd=>pH8dz9@Gv`2NGXgAG1{^9;D!9L7 z{3R_M`R@zV@=D$7+@=QJfX;nkLDZO*x0M%~jEXnP7sy1ZxE+Vwm@Th;RCbw9<$%{U^ZSU$G~cCa>5P3r01_%VlMGfyhv z40Z@k>s>Y|&{J2t40oc4tkyn$vMAv(?UE6DU4M5^fs@>uaaHz2mOGc7C(nrPK6N66Wl7Sd!o01-@-tPYVybJ?vZ%BnHu;um) zwMMVWnesq`?Qfv(n5e0noU}2+8J{u-x0>T6`BMH9xBL?W__Xoy$_|wvmJl}PA~pfG z6>s2pbf~^)9305|xhXK&w94?I0J0(1^who2FyOHUmt-8MI~atAXQ05ze&r zx!8zZNEJ?cc+lT3D=2m`ROR%}VOO3i%4pfR`MF@eDe(0Nam_ua!P`$^?Y?5H z;@TS!TOz6)Q;|~VV>0SDQ9Ee9wt<#~-n? zTub{i%uOsGY|1_|=d3fvm(?xWN1HkDM}*+gz^$`InZ=3Lncj&OH*ImCB1T>O4Avft zO<6|-Ax|icEfAb86lFe#{=IHFtnDp`bzKhQcECPmb=tfdN#?kl?#@GJ233zuUqRiU z@+Ds~5IIw<{UwO&WtJF?gx-6K!LXK)@)(S_X{F668}|AoV2k#32FS~3P&pzY-jhhj zm*eplReC!NX0-JF>5PW(kGd90qxAA7bxHj@5P<#U(=rS4+PZLBU0h(~@7+yP+~u?J zwI9OL-J#ONWCe4K*drx~F#rEWxz_S#36!~+FHecnta;k!&)zP|m852BW^*`FKK`&J z-sXXeWmf0aA6Qj6WG0hY+;wxzdhK*l9hoLcEc=~UL#h_|{vmBR$A>(f{Ab?(tKi?) z+hN8vE~wlUK$-B%b_vTSDt3^pjT@7Q>&O_3T4&%UNyjjGuX(Vc{g!9E9gR;^+0`t* zq-h=J=&GGa+Q%oOslq^}Dt&CYdo|+5lwM=XOB;F{#qsRXogBwi8Bm+bTuG!^N5log zL{UaZDW~FJrf;m#AN-kGZn+3?RvNT>!u8Sc@R6VLX^zBW%fQ8rKisS5X01&5@Fu{^ z>)pF|UT+X9+(-BTOL{3S&Vmy6cliDC=(5UeOeZf5*271K`*H;Z_S`AyPJjOg@>k_i zi2Dq}g#C_|ACcck)iQzNN}`OIv6V)*QB{9k%KL%uUO8RLCw2xd z$G_I-HsFN~p0yA;JAV_3bI1h?Js}jbSS&`9+L&_Ga*NsgPC;kf>_y>Rh literal 0 HcmV?d00001