brain fart.mp3

This commit is contained in:
Bob 2026-04-26 21:13:29 +02:00
parent 338fc44ae5
commit 0e2583caff
25 changed files with 213 additions and 12 deletions

View File

@ -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

View File

@ -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 <i>this block</i>, not the one that is trying to connect.
* @return
*/
public default boolean canConnectPneumatic(ForgeDirection dir) {
return dir != ForgeDirection.UNKNOWN;
}
}

View File

@ -2,6 +2,7 @@ package api.hbm.ntl;
import net.minecraft.item.ItemStack;
@Deprecated
public interface IStorageComponent {
/**

View File

@ -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<Integer, MetaNode> itemMeta = new LinkedHashMap();

View File

@ -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;

View File

@ -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);

View File

@ -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;
}
}

View File

@ -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;
}
}

View File

@ -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;
}
}

View File

@ -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) {

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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");

View File

@ -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();
}
}

View File

@ -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}; }
}

View File

@ -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;

View File

@ -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;

Binary file not shown.

After

Width:  |  Height:  |  Size: 300 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 373 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 414 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 330 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB