i'm stealing your catalytic converter so i can sell it to buy crack.
please don't ask such feeble-minded questions. it's rude.
@ -10,5 +10,5 @@ credits=HbMinecraft, rodolphito (explosion algorithms), grangerave (explosion al
|
||||
\ Pashtet (russian localization), MartinTheDragon (calculator, chunk-based fallout), haru315 (spiral point algorithm),\
|
||||
\ Sten89 (models), Pixelguru26 (textures), TheBlueHat (textures), Alcater (GUI textures, porting), impbk2002 (project settings),\
|
||||
\ OvermindDL1 (project settings), TehTemmie (reacher radiation function), Toshayo (satellite loot system, project settings), Silly541 (config for safe ME drives),\
|
||||
\ Voxelstice (OpenComputers integration, turbine spinup), martemen (project settings), Pvndols (thorium fuel recipe, gas turbine), JamesH2 (blood, nitric acid),\
|
||||
\ Voxelstice (OpenComputers integration, turbine spinup), martemen (project settings), Pvndols (thorium fuel recipe, gas turbine), JamesH2 (blood mechanics, nitric acid),\
|
||||
\ sdddddf80 (recipe configs), SuperCraftAlex (tooltips)
|
||||
@ -1168,8 +1168,6 @@ public class ModBlocks {
|
||||
public static Block dummy_port_drill;
|
||||
public static Block dummy_block_assembler;
|
||||
public static Block dummy_port_assembler;
|
||||
public static Block dummy_block_turbofan;
|
||||
public static Block dummy_port_turbofan;
|
||||
public static Block dummy_block_ams_limiter;
|
||||
public static Block dummy_port_ams_limiter;
|
||||
public static Block dummy_block_ams_emitter;
|
||||
@ -2286,8 +2284,6 @@ public class ModBlocks {
|
||||
dummy_port_drill = new DummyBlockDrill(Material.iron, true).setBlockName("dummy_port_drill").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_lead");
|
||||
dummy_block_assembler = new DummyBlockAssembler(Material.iron, false).setBlockName("dummy_block_assembler").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_steel");
|
||||
dummy_port_assembler = new DummyBlockAssembler(Material.iron, true).setBlockName("dummy_port_assembler").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_steel");
|
||||
dummy_block_turbofan = new DummyBlockTurbofan(Material.iron, false).setBlockName("dummy_block_turbofan").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_steel");
|
||||
dummy_port_turbofan = new DummyBlockTurbofan(Material.iron, true).setBlockName("dummy_port_turbofan").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_steel");
|
||||
dummy_block_ams_limiter = new DummyBlockAMSLimiter(Material.iron).setBlockName("dummy_block_ams_limiter").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_copper");
|
||||
dummy_port_ams_limiter = new DummyBlockAMSLimiter(Material.iron).setBlockName("dummy_port_ams_limiter").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_copper");
|
||||
dummy_block_ams_emitter = new DummyBlockAMSEmitter(Material.iron).setBlockName("dummy_block_ams_emitter").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_copper");
|
||||
@ -3345,8 +3341,6 @@ public class ModBlocks {
|
||||
GameRegistry.registerBlock(dummy_port_drill, dummy_port_drill.getUnlocalizedName());
|
||||
GameRegistry.registerBlock(dummy_block_assembler, dummy_block_assembler.getUnlocalizedName());
|
||||
GameRegistry.registerBlock(dummy_port_assembler, dummy_port_assembler.getUnlocalizedName());
|
||||
GameRegistry.registerBlock(dummy_block_turbofan, dummy_block_turbofan.getUnlocalizedName());
|
||||
GameRegistry.registerBlock(dummy_port_turbofan, dummy_port_turbofan.getUnlocalizedName());
|
||||
GameRegistry.registerBlock(dummy_block_ams_limiter, dummy_block_ams_limiter.getUnlocalizedName());
|
||||
GameRegistry.registerBlock(dummy_port_ams_limiter, dummy_port_ams_limiter.getUnlocalizedName());
|
||||
GameRegistry.registerBlock(dummy_block_ams_emitter, dummy_block_ams_emitter.getUnlocalizedName());
|
||||
|
||||
@ -70,9 +70,10 @@ public class MachineFluidTank extends BlockDummyable implements IPersistentInfoP
|
||||
|
||||
TileEntityMachineFluidTank tank = (TileEntityMachineFluidTank) world.getTileEntity(pos[0], pos[1], pos[2]);
|
||||
|
||||
if(tank.hasExploded) return false;
|
||||
|
||||
FMLNetworkHandler.openGui(player, MainRegistry.instance, 0, world, pos[0], pos[1], pos[2]);
|
||||
if(tank != null) {
|
||||
if(tank.hasExploded) return false;
|
||||
FMLNetworkHandler.openGui(player, MainRegistry.instance, 0, world, pos[0], pos[1], pos[2]);
|
||||
}
|
||||
return true;
|
||||
} else {
|
||||
return true;
|
||||
|
||||
@ -1,329 +1,82 @@
|
||||
package com.hbm.blocks.machine;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Random;
|
||||
|
||||
import com.hbm.blocks.BlockDummyable;
|
||||
import com.hbm.blocks.ITooltipProvider;
|
||||
import com.hbm.blocks.ModBlocks;
|
||||
import com.hbm.handler.MultiblockHandler;
|
||||
import com.hbm.interfaces.IMultiblock;
|
||||
import com.hbm.inventory.fluid.trait.FT_Combustible.FuelGrade;
|
||||
import com.hbm.items.ModItems;
|
||||
import com.hbm.main.MainRegistry;
|
||||
import com.hbm.tileentity.machine.TileEntityDummy;
|
||||
import com.hbm.tileentity.TileEntityProxyCombo;
|
||||
import com.hbm.tileentity.machine.TileEntityMachineTurbofan;
|
||||
|
||||
import cpw.mods.fml.common.network.internal.FMLNetworkHandler;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.BlockContainer;
|
||||
import net.minecraft.block.material.Material;
|
||||
import net.minecraft.entity.EntityLivingBase;
|
||||
import net.minecraft.entity.item.EntityItem;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.inventory.ISidedInventory;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.nbt.NBTTagCompound;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.util.EnumChatFormatting;
|
||||
import net.minecraft.util.MathHelper;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraftforge.common.util.ForgeDirection;
|
||||
|
||||
public class MachineTurbofan extends BlockContainer implements IMultiblock, ITooltipProvider {
|
||||
public class MachineTurbofan extends BlockDummyable implements ITooltipProvider {
|
||||
|
||||
public MachineTurbofan(Material p_i45386_1_) {
|
||||
super(p_i45386_1_);
|
||||
public MachineTurbofan(Material mat) {
|
||||
super(mat);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TileEntity createNewTileEntity(World p_149915_1_, int p_149915_2_) {
|
||||
return new TileEntityMachineTurbofan();
|
||||
|
||||
public TileEntity createNewTileEntity(World world, int meta) {
|
||||
if(meta >= 12) return new TileEntityMachineTurbofan();
|
||||
if(meta >= 6) return new TileEntityProxyCombo().fluid().power();
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Item getItemDropped(int p_149650_1_, Random p_149650_2_, int p_149650_3_) {
|
||||
return Item.getItemFromBlock(ModBlocks.machine_turbofan);
|
||||
public int[] getDimensions() {
|
||||
return new int[] {2, 0, 1, 1, 3, 3};
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getRenderType() {
|
||||
return -1;
|
||||
public int getOffset() {
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public boolean isOpaqueCube() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean renderAsNormalBlock() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onBlockPlacedBy(World world, int x, int y, int z, EntityLivingBase player, ItemStack itemStack) {
|
||||
int i = MathHelper.floor_double(player.rotationYaw * 4.0F / 360.0F + 0.5D) & 3;
|
||||
|
||||
if (i == 0) {
|
||||
world.setBlockMetadataWithNotify(x, y, z, 5, 2);
|
||||
if(MultiblockHandler.checkSpace(world, x, y, z, MultiblockHandler.turbofanDimensionEast)) {
|
||||
MultiblockHandler.fillUp(world, x, y, z, MultiblockHandler.turbofanDimensionEast, ModBlocks.dummy_block_turbofan);
|
||||
|
||||
//
|
||||
DummyBlockTurbofan.safeBreak = true;
|
||||
world.setBlock(x, y, z + 1, ModBlocks.dummy_port_turbofan);
|
||||
TileEntity te = world.getTileEntity(x, y, z + 1);
|
||||
if(te instanceof TileEntityDummy) {
|
||||
TileEntityDummy dummy = (TileEntityDummy)te;
|
||||
dummy.targetX = x;
|
||||
dummy.targetY = y;
|
||||
dummy.targetZ = z;
|
||||
}
|
||||
world.setBlock(x - 1, y, z - 1, ModBlocks.dummy_port_turbofan);
|
||||
TileEntity te2 = world.getTileEntity(x - 1, y, z - 1);
|
||||
if(te instanceof TileEntityDummy) {
|
||||
TileEntityDummy dummy = (TileEntityDummy)te2;
|
||||
dummy.targetX = x;
|
||||
dummy.targetY = y;
|
||||
dummy.targetZ = z;
|
||||
}
|
||||
world.setBlock(x, y, z - 1, ModBlocks.dummy_port_turbofan);
|
||||
TileEntity te3 = world.getTileEntity(x, y, z - 1);
|
||||
if(te3 instanceof TileEntityDummy) {
|
||||
TileEntityDummy dummy = (TileEntityDummy)te3;
|
||||
dummy.targetX = x;
|
||||
dummy.targetY = y;
|
||||
dummy.targetZ = z;
|
||||
}
|
||||
world.setBlock(x - 1, y, z + 1, ModBlocks.dummy_port_turbofan);
|
||||
TileEntity te4 = world.getTileEntity(x - 1, y, z + 1);
|
||||
if(te4 instanceof TileEntityDummy) {
|
||||
TileEntityDummy dummy = (TileEntityDummy)te4;
|
||||
dummy.targetX = x;
|
||||
dummy.targetY = y;
|
||||
dummy.targetZ = z;
|
||||
}
|
||||
DummyBlockTurbofan.safeBreak = false;
|
||||
//
|
||||
|
||||
} else
|
||||
world.func_147480_a(x, y, z, true);
|
||||
}
|
||||
if (i == 1) {
|
||||
world.setBlockMetadataWithNotify(x, y, z, 3, 2);
|
||||
if(MultiblockHandler.checkSpace(world, x, y, z, MultiblockHandler.turbofanDimensionSouth)) {
|
||||
MultiblockHandler.fillUp(world, x, y, z, MultiblockHandler.turbofanDimensionSouth, ModBlocks.dummy_block_turbofan);
|
||||
|
||||
//
|
||||
DummyBlockTurbofan.safeBreak = true;
|
||||
world.setBlock(x + 1, y, z, ModBlocks.dummy_port_turbofan);
|
||||
TileEntity te = world.getTileEntity(x + 1, y, z);
|
||||
if(te instanceof TileEntityDummy) {
|
||||
TileEntityDummy dummy = (TileEntityDummy)te;
|
||||
dummy.targetX = x;
|
||||
dummy.targetY = y;
|
||||
dummy.targetZ = z;
|
||||
}
|
||||
world.setBlock(x - 1, y, z - 1, ModBlocks.dummy_port_turbofan);
|
||||
TileEntity te2 = world.getTileEntity(x - 1, y, z - 1);
|
||||
if(te instanceof TileEntityDummy) {
|
||||
TileEntityDummy dummy = (TileEntityDummy)te2;
|
||||
dummy.targetX = x;
|
||||
dummy.targetY = y;
|
||||
dummy.targetZ = z;
|
||||
}
|
||||
world.setBlock(x + 1, y, z - 1, ModBlocks.dummy_port_turbofan);
|
||||
TileEntity te3 = world.getTileEntity(x + 1, y, z - 1);
|
||||
if(te3 instanceof TileEntityDummy) {
|
||||
TileEntityDummy dummy = (TileEntityDummy)te3;
|
||||
dummy.targetX = x;
|
||||
dummy.targetY = y;
|
||||
dummy.targetZ = z;
|
||||
}
|
||||
world.setBlock(x - 1, y, z, ModBlocks.dummy_port_turbofan);
|
||||
TileEntity te4 = world.getTileEntity(x - 1, y, z);
|
||||
if(te4 instanceof TileEntityDummy) {
|
||||
TileEntityDummy dummy = (TileEntityDummy)te4;
|
||||
dummy.targetX = x;
|
||||
dummy.targetY = y;
|
||||
dummy.targetZ = z;
|
||||
}
|
||||
DummyBlockTurbofan.safeBreak = false;
|
||||
//
|
||||
|
||||
} else
|
||||
world.func_147480_a(x, y, z, true);
|
||||
}
|
||||
if (i == 2) {
|
||||
world.setBlockMetadataWithNotify(x, y, z, 4, 2);
|
||||
if(MultiblockHandler.checkSpace(world, x, y, z, MultiblockHandler.turbofanDimensionWest)) {
|
||||
MultiblockHandler.fillUp(world, x, y, z, MultiblockHandler.turbofanDimensionWest, ModBlocks.dummy_block_turbofan);
|
||||
|
||||
//
|
||||
DummyBlockTurbofan.safeBreak = true;
|
||||
world.setBlock(x + 1, y, z + 1, ModBlocks.dummy_port_turbofan);
|
||||
TileEntity te = world.getTileEntity(x + 1, y, z + 1);
|
||||
if(te instanceof TileEntityDummy) {
|
||||
TileEntityDummy dummy = (TileEntityDummy)te;
|
||||
dummy.targetX = x;
|
||||
dummy.targetY = y;
|
||||
dummy.targetZ = z;
|
||||
}
|
||||
world.setBlock(x, y, z - 1, ModBlocks.dummy_port_turbofan);
|
||||
TileEntity te2 = world.getTileEntity(x, y, z - 1);
|
||||
if(te instanceof TileEntityDummy) {
|
||||
TileEntityDummy dummy = (TileEntityDummy)te2;
|
||||
dummy.targetX = x;
|
||||
dummy.targetY = y;
|
||||
dummy.targetZ = z;
|
||||
}
|
||||
world.setBlock(x + 1, y, z - 1, ModBlocks.dummy_port_turbofan);
|
||||
TileEntity te3 = world.getTileEntity(x + 1, y, z - 1);
|
||||
if(te3 instanceof TileEntityDummy) {
|
||||
TileEntityDummy dummy = (TileEntityDummy)te3;
|
||||
dummy.targetX = x;
|
||||
dummy.targetY = y;
|
||||
dummy.targetZ = z;
|
||||
}
|
||||
world.setBlock(x, y, z + 1, ModBlocks.dummy_port_turbofan);
|
||||
TileEntity te4 = world.getTileEntity(x, y, z + 1);
|
||||
if(te4 instanceof TileEntityDummy) {
|
||||
TileEntityDummy dummy = (TileEntityDummy)te4;
|
||||
dummy.targetX = x;
|
||||
dummy.targetY = y;
|
||||
dummy.targetZ = z;
|
||||
}
|
||||
DummyBlockTurbofan.safeBreak = false;
|
||||
//
|
||||
|
||||
} else
|
||||
world.func_147480_a(x, y, z, true);
|
||||
}
|
||||
if (i == 3) {
|
||||
world.setBlockMetadataWithNotify(x, y, z, 2, 2);
|
||||
if(MultiblockHandler.checkSpace(world, x, y, z, MultiblockHandler.turbofanDimensionNorth)) {
|
||||
MultiblockHandler.fillUp(world, x, y, z, MultiblockHandler.turbofanDimensionNorth, ModBlocks.dummy_block_turbofan);
|
||||
|
||||
//
|
||||
DummyBlockTurbofan.safeBreak = true;
|
||||
world.setBlock(x + 1, y, z + 1, ModBlocks.dummy_port_turbofan);
|
||||
TileEntity te = world.getTileEntity(x + 1, y, z + 1);
|
||||
if(te instanceof TileEntityDummy) {
|
||||
TileEntityDummy dummy = (TileEntityDummy)te;
|
||||
dummy.targetX = x;
|
||||
dummy.targetY = y;
|
||||
dummy.targetZ = z;
|
||||
}
|
||||
world.setBlock(x - 1, y, z, ModBlocks.dummy_port_turbofan);
|
||||
TileEntity te2 = world.getTileEntity(x - 1, y, z);
|
||||
if(te instanceof TileEntityDummy) {
|
||||
TileEntityDummy dummy = (TileEntityDummy)te2;
|
||||
dummy.targetX = x;
|
||||
dummy.targetY = y;
|
||||
dummy.targetZ = z;
|
||||
}
|
||||
world.setBlock(x + 1, y, z, ModBlocks.dummy_port_turbofan);
|
||||
TileEntity te3 = world.getTileEntity(x + 1, y, z);
|
||||
if(te3 instanceof TileEntityDummy) {
|
||||
TileEntityDummy dummy = (TileEntityDummy)te3;
|
||||
dummy.targetX = x;
|
||||
dummy.targetY = y;
|
||||
dummy.targetZ = z;
|
||||
}
|
||||
world.setBlock(x - 1, y, z + 1, ModBlocks.dummy_port_turbofan);
|
||||
TileEntity te4 = world.getTileEntity(x - 1, y, z + 1);
|
||||
if(te4 instanceof TileEntityDummy) {
|
||||
TileEntityDummy dummy = (TileEntityDummy)te4;
|
||||
dummy.targetX = x;
|
||||
dummy.targetY = y;
|
||||
dummy.targetZ = z;
|
||||
}
|
||||
DummyBlockTurbofan.safeBreak = false;
|
||||
//
|
||||
|
||||
} else
|
||||
world.func_147480_a(x, y, z, true);
|
||||
}
|
||||
}
|
||||
|
||||
@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) {
|
||||
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;
|
||||
} else if(player.getHeldItem() != null && player.getHeldItem().getItem() == ModItems.linker) {
|
||||
return false;
|
||||
}else if (!player.isSneaking()) {
|
||||
TileEntityMachineTurbofan entity = (TileEntityMachineTurbofan) world.getTileEntity(x, y, z);
|
||||
if (entity != null) {
|
||||
FMLNetworkHandler.openGui(player, MainRegistry.instance, 0, world, x,
|
||||
y, z);
|
||||
} else if(!player.isSneaking()) {
|
||||
int[] pos = this.findCore(world, x, y, z);
|
||||
|
||||
if(pos == null)
|
||||
return false;
|
||||
|
||||
TileEntityMachineTurbofan turbofan = (TileEntityMachineTurbofan) world.getTileEntity(pos[0], pos[1], pos[2]);
|
||||
|
||||
if(turbofan != null) {
|
||||
FMLNetworkHandler.openGui(player, MainRegistry.instance, 0, world, pos[0], pos[1], pos[2]);
|
||||
}
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
private final Random field_149933_a = new Random();
|
||||
private static boolean keepInventory;
|
||||
|
||||
|
||||
@Override
|
||||
public void breakBlock(World p_149749_1_, int p_149749_2_, int p_149749_3_, int p_149749_4_, Block p_149749_5_, int p_149749_6_)
|
||||
{
|
||||
if (!keepInventory)
|
||||
{
|
||||
ISidedInventory tileentityfurnace = (ISidedInventory)p_149749_1_.getTileEntity(p_149749_2_, p_149749_3_, p_149749_4_);
|
||||
protected void fillSpace(World world, int x, int y, int z, ForgeDirection dir, int o) {
|
||||
super.fillSpace(world, x, y, z, dir, o);
|
||||
|
||||
ForgeDirection rot = dir.getRotation(ForgeDirection.UP);
|
||||
|
||||
if (tileentityfurnace != null)
|
||||
{
|
||||
for (int i1 = 0; i1 < tileentityfurnace.getSizeInventory(); ++i1)
|
||||
{
|
||||
ItemStack itemstack = tileentityfurnace.getStackInSlot(i1);
|
||||
|
||||
if (itemstack != null)
|
||||
{
|
||||
float f = this.field_149933_a.nextFloat() * 0.8F + 0.1F;
|
||||
float f1 = this.field_149933_a.nextFloat() * 0.8F + 0.1F;
|
||||
float f2 = this.field_149933_a.nextFloat() * 0.8F + 0.1F;
|
||||
|
||||
while (itemstack.stackSize > 0)
|
||||
{
|
||||
int j1 = this.field_149933_a.nextInt(21) + 10;
|
||||
|
||||
if (j1 > itemstack.stackSize)
|
||||
{
|
||||
j1 = itemstack.stackSize;
|
||||
}
|
||||
|
||||
itemstack.stackSize -= j1;
|
||||
EntityItem entityitem = new EntityItem(p_149749_1_, p_149749_2_ + f, p_149749_3_ + f1, p_149749_4_ + f2, new ItemStack(itemstack.getItem(), j1, itemstack.getItemDamage()));
|
||||
|
||||
if (itemstack.hasTagCompound())
|
||||
{
|
||||
entityitem.getEntityItem().setTagCompound((NBTTagCompound)itemstack.getTagCompound().copy());
|
||||
}
|
||||
|
||||
float f3 = 0.05F;
|
||||
entityitem.motionX = (float)this.field_149933_a.nextGaussian() * f3;
|
||||
entityitem.motionY = (float)this.field_149933_a.nextGaussian() * f3 + 0.2F;
|
||||
entityitem.motionZ = (float)this.field_149933_a.nextGaussian() * f3;
|
||||
p_149749_1_.spawnEntityInWorld(entityitem);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
p_149749_1_.func_147453_f(p_149749_2_, p_149749_3_, p_149749_4_, p_149749_5_);
|
||||
}
|
||||
}
|
||||
|
||||
super.breakBlock(p_149749_1_, p_149749_2_, p_149749_3_, p_149749_4_, p_149749_5_, p_149749_6_);
|
||||
}
|
||||
this.makeExtra(world, x, y, z);
|
||||
this.makeExtra(world, x - rot.offsetX, y, z - rot.offsetZ);
|
||||
this.makeExtra(world, x - dir.offsetX * 2, y, z - dir.offsetZ * 2);
|
||||
this.makeExtra(world, x - dir.offsetX * 2 - rot.offsetX, y, z - dir.offsetZ * 2 - rot.offsetZ);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean ext) {
|
||||
|
||||
list.add(EnumChatFormatting.YELLOW + "Fuel efficiency:");
|
||||
list.add(EnumChatFormatting.YELLOW + "-" + FuelGrade.AERO.getGrade() + ": " + EnumChatFormatting.RED + "100%");
|
||||
}
|
||||
|
||||
@ -37,20 +37,6 @@ public abstract class TurretBaseNT extends BlockDummyable {
|
||||
|
||||
@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;
|
||||
} else if(!player.isSneaking()) {
|
||||
int[] pos = this.findCore(world, x, y, z);
|
||||
|
||||
if(pos == null)
|
||||
return false;
|
||||
|
||||
openGUI(world, player, pos[0], pos[1], pos[2]);
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
return this.standardOpenBehavior(world, x, y, z, player, 0);
|
||||
}
|
||||
|
||||
public abstract void openGUI(World world, EntityPlayer player, int x, int y, int z);
|
||||
}
|
||||
|
||||
@ -23,9 +23,4 @@ public class TurretBrandon extends TurretBaseNT {
|
||||
return new TileEntityTurretBrandon();
|
||||
return new TileEntityProxyCombo().inventory().power();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void openGUI(World world, EntityPlayer player, int x, int y, int z) {
|
||||
FMLNetworkHandler.openGui(player, MainRegistry.instance, 0, world, x, y, z);
|
||||
}
|
||||
}
|
||||
|
||||
@ -1,13 +1,10 @@
|
||||
package com.hbm.blocks.turret;
|
||||
|
||||
import com.hbm.blocks.BlockDummyable;
|
||||
import com.hbm.main.MainRegistry;
|
||||
import com.hbm.tileentity.TileEntityProxyCombo;
|
||||
import com.hbm.tileentity.turret.TileEntityTurretChekhov;
|
||||
|
||||
import cpw.mods.fml.common.network.internal.FMLNetworkHandler;
|
||||
import net.minecraft.block.material.Material;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.util.AxisAlignedBB;
|
||||
import net.minecraft.world.IBlockAccess;
|
||||
@ -48,21 +45,4 @@ public class TurretChekhov extends BlockDummyable {
|
||||
this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 0.5F, 1.0F);
|
||||
return AxisAlignedBB.getBoundingBox(x + this.minX, y + this.minY, z + this.minZ, x + this.maxX, y + this.maxY, z + this.maxZ);
|
||||
}
|
||||
|
||||
@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;
|
||||
} else if(!player.isSneaking()) {
|
||||
int[] pos = this.findCore(world, x, y, z);
|
||||
|
||||
if(pos == null)
|
||||
return false;
|
||||
|
||||
FMLNetworkHandler.openGui(player, MainRegistry.instance, 0, world, pos[0], pos[1], pos[2]);
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -1,13 +1,10 @@
|
||||
package com.hbm.blocks.turret;
|
||||
|
||||
import com.hbm.blocks.BlockDummyable;
|
||||
import com.hbm.main.MainRegistry;
|
||||
import com.hbm.tileentity.TileEntityProxyCombo;
|
||||
import com.hbm.tileentity.turret.TileEntityTurretFriendly;
|
||||
|
||||
import cpw.mods.fml.common.network.internal.FMLNetworkHandler;
|
||||
import net.minecraft.block.material.Material;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.util.AxisAlignedBB;
|
||||
import net.minecraft.world.IBlockAccess;
|
||||
@ -47,21 +44,4 @@ public class TurretFriendly extends BlockDummyable {
|
||||
this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 0.5F, 1.0F);
|
||||
return AxisAlignedBB.getBoundingBox(x + this.minX, y + this.minY, z + this.minZ, x + this.maxX, y + this.maxY, z + this.maxZ);
|
||||
}
|
||||
|
||||
@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;
|
||||
} else if(!player.isSneaking()) {
|
||||
int[] pos = this.findCore(world, x, y, z);
|
||||
|
||||
if(pos == null)
|
||||
return false;
|
||||
|
||||
FMLNetworkHandler.openGui(player, MainRegistry.instance, 0, world, pos[0], pos[1], pos[2]);
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -1,12 +1,9 @@
|
||||
package com.hbm.blocks.turret;
|
||||
|
||||
import com.hbm.main.MainRegistry;
|
||||
import com.hbm.tileentity.TileEntityProxyCombo;
|
||||
import com.hbm.tileentity.turret.TileEntityTurretFritz;
|
||||
|
||||
import cpw.mods.fml.common.network.internal.FMLNetworkHandler;
|
||||
import net.minecraft.block.material.Material;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
@ -23,9 +20,4 @@ public class TurretFritz extends TurretBaseNT {
|
||||
return new TileEntityTurretFritz();
|
||||
return new TileEntityProxyCombo().inventory().power().fluid();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void openGUI(World world, EntityPlayer player, int x, int y, int z) {
|
||||
FMLNetworkHandler.openGui(player, MainRegistry.instance, 0, world, x, y, z);
|
||||
}
|
||||
}
|
||||
|
||||
@ -47,21 +47,4 @@ public class TurretHoward extends BlockDummyable {
|
||||
this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 0.5F, 1.0F);
|
||||
return AxisAlignedBB.getBoundingBox(x + this.minX, y + this.minY, z + this.minZ, x + this.maxX, y + this.maxY, z + this.maxZ);
|
||||
}
|
||||
|
||||
@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;
|
||||
} else if(!player.isSneaking()) {
|
||||
int[] pos = this.findCore(world, x, y, z);
|
||||
|
||||
if(pos == null)
|
||||
return false;
|
||||
|
||||
FMLNetworkHandler.openGui(player, MainRegistry.instance, 0, world, pos[0], pos[1], pos[2]);
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -4,6 +4,7 @@ import com.hbm.blocks.BlockDummyable;
|
||||
import com.hbm.tileentity.turret.TileEntityTurretHowardDamaged;
|
||||
|
||||
import net.minecraft.block.material.Material;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.util.AxisAlignedBB;
|
||||
import net.minecraft.world.IBlockAccess;
|
||||
@ -43,4 +44,9 @@ public class TurretHowardDamaged extends BlockDummyable {
|
||||
this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 0.5F, 1.0F);
|
||||
return AxisAlignedBB.getBoundingBox(x + this.minX, y + this.minY, z + this.minZ, x + this.maxX, y + this.maxY, z + this.maxZ);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int side, float fX, float fY, float fZ) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
@ -1,13 +1,10 @@
|
||||
package com.hbm.blocks.turret;
|
||||
|
||||
import com.hbm.blocks.BlockDummyable;
|
||||
import com.hbm.main.MainRegistry;
|
||||
import com.hbm.tileentity.TileEntityProxyCombo;
|
||||
import com.hbm.tileentity.turret.TileEntityTurretJeremy;
|
||||
|
||||
import cpw.mods.fml.common.network.internal.FMLNetworkHandler;
|
||||
import net.minecraft.block.material.Material;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.util.AxisAlignedBB;
|
||||
import net.minecraft.world.IBlockAccess;
|
||||
@ -47,21 +44,4 @@ public class TurretJeremy extends BlockDummyable {
|
||||
this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 0.5F, 1.0F);
|
||||
return AxisAlignedBB.getBoundingBox(x + this.minX, y + this.minY, z + this.minZ, x + this.maxX, y + this.maxY, z + this.maxZ);
|
||||
}
|
||||
|
||||
@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;
|
||||
} else if(!player.isSneaking()) {
|
||||
int[] pos = this.findCore(world, x, y, z);
|
||||
|
||||
if(pos == null)
|
||||
return false;
|
||||
|
||||
FMLNetworkHandler.openGui(player, MainRegistry.instance, 0, world, pos[0], pos[1], pos[2]);
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -23,9 +23,4 @@ public class TurretMaxwell extends TurretBaseNT {
|
||||
return new TileEntityTurretMaxwell();
|
||||
return new TileEntityProxyCombo().inventory().power();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void openGUI(World world, EntityPlayer player, int x, int y, int z) {
|
||||
FMLNetworkHandler.openGui(player, MainRegistry.instance, 0, world, x, y, z);
|
||||
}
|
||||
}
|
||||
@ -1,13 +1,10 @@
|
||||
package com.hbm.blocks.turret;
|
||||
|
||||
import com.hbm.blocks.BlockDummyable;
|
||||
import com.hbm.main.MainRegistry;
|
||||
import com.hbm.tileentity.TileEntityProxyCombo;
|
||||
import com.hbm.tileentity.turret.TileEntityTurretRichard;
|
||||
|
||||
import cpw.mods.fml.common.network.internal.FMLNetworkHandler;
|
||||
import net.minecraft.block.material.Material;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.util.AxisAlignedBB;
|
||||
import net.minecraft.world.IBlockAccess;
|
||||
@ -47,21 +44,4 @@ public class TurretRichard extends BlockDummyable {
|
||||
this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 0.5F, 1.0F);
|
||||
return AxisAlignedBB.getBoundingBox(x + this.minX, y + this.minY, z + this.minZ, x + this.maxX, y + this.maxY, z + this.maxZ);
|
||||
}
|
||||
|
||||
@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;
|
||||
} else if(!player.isSneaking()) {
|
||||
int[] pos = this.findCore(world, x, y, z);
|
||||
|
||||
if(pos == null)
|
||||
return false;
|
||||
|
||||
FMLNetworkHandler.openGui(player, MainRegistry.instance, 0, world, pos[0], pos[1], pos[2]);
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -36,7 +36,7 @@ public class TurretSentry extends BlockContainer {
|
||||
FMLNetworkHandler.openGui(player, MainRegistry.instance, 0, world, x, y, z);
|
||||
return true;
|
||||
} else {
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -1,13 +1,10 @@
|
||||
package com.hbm.blocks.turret;
|
||||
|
||||
import com.hbm.blocks.BlockDummyable;
|
||||
import com.hbm.main.MainRegistry;
|
||||
import com.hbm.tileentity.TileEntityProxyCombo;
|
||||
import com.hbm.tileentity.turret.TileEntityTurretTauon;
|
||||
|
||||
import cpw.mods.fml.common.network.internal.FMLNetworkHandler;
|
||||
import net.minecraft.block.material.Material;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.util.AxisAlignedBB;
|
||||
import net.minecraft.world.IBlockAccess;
|
||||
@ -47,21 +44,4 @@ public class TurretTauon extends BlockDummyable {
|
||||
this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 0.5F, 1.0F);
|
||||
return AxisAlignedBB.getBoundingBox(x + this.minX, y + this.minY, z + this.minZ, x + this.maxX, y + this.maxY, z + this.maxZ);
|
||||
}
|
||||
|
||||
@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;
|
||||
} else if(!player.isSneaking()) {
|
||||
int[] pos = this.findCore(world, x, y, z);
|
||||
|
||||
if(pos == null)
|
||||
return false;
|
||||
|
||||
FMLNetworkHandler.openGui(player, MainRegistry.instance, 0, world, pos[0], pos[1], pos[2]);
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -120,6 +120,7 @@ public class ConsumableRecipes {
|
||||
CraftingManager.addShapelessAuto(new ItemStack(ModItems.fmn, 1), new Object[] { COAL.dust(), PO210.dust(), ST.dust() });
|
||||
CraftingManager.addShapelessAuto(new ItemStack(ModItems.five_htp, 1), new Object[] { COAL.dust(), EUPH.dust(), ModItems.canteen_fab });
|
||||
CraftingManager.addShapelessAuto(new ItemStack(ModItems.cigarette, 16), new Object[] { ASBESTOS.ingot(), ANY_TAR.any(), PO210.nugget(), DictFrame.fromOne(ModItems.plant_item, ItemEnums.EnumPlantType.TOBACCO) });
|
||||
CraftingManager.addShapelessAuto(new ItemStack(ModItems.crackpipe, 1), new Object[] { ModItems.catalytic_converter });
|
||||
|
||||
if(GeneralConfig.enableLBSM && GeneralConfig.enableLBSMSimpleMedicineRecipes) {
|
||||
CraftingManager.addShapelessAuto(new ItemStack(ModItems.siox, 8), new Object[] { COAL.dust(), ASBESTOS.dust(), GOLD.nugget() });
|
||||
|
||||
@ -127,6 +127,7 @@ public class HazardRegistry {
|
||||
public static final float ingot = 1.0F;
|
||||
public static final float gem = 1.0F;
|
||||
public static final float plate = 1.0F;
|
||||
public static final float plateCast = 3.0F;
|
||||
public static final float powder_mult = 3.0F;
|
||||
public static final float powder = ingot * powder_mult;
|
||||
public static final float powder_tiny = nugget * powder_mult;
|
||||
|
||||
@ -19,6 +19,8 @@ import com.hbm.hazard.HazardEntry;
|
||||
import com.hbm.hazard.HazardRegistry;
|
||||
import com.hbm.hazard.HazardSystem;
|
||||
import com.hbm.inventory.material.MaterialShapes;
|
||||
import com.hbm.inventory.material.Mats;
|
||||
import com.hbm.inventory.material.NTMMaterial;
|
||||
import com.hbm.items.ModItems;
|
||||
import com.hbm.items.ItemEnums.EnumBriquetteType;
|
||||
import com.hbm.items.ItemEnums.EnumCokeType;
|
||||
@ -170,6 +172,8 @@ public class OreDictManager {
|
||||
public static final DictFrame DURA = new DictFrame("DuraSteel");
|
||||
public static final DictFrame POLYMER = new DictFrame("Polymer");
|
||||
public static final DictFrame BAKELITE = new DictFrame("Bakelite");
|
||||
public static final DictFrame PET = new DictFrame("PET");
|
||||
public static final DictFrame PVC = new DictFrame("PVC");
|
||||
public static final DictFrame RUBBER = new DictFrame("Rubber");
|
||||
public static final DictFrame MAGTUNG = new DictFrame("MagnetizedTungsten");
|
||||
public static final DictFrame CMB = new DictFrame("CMBSteel");
|
||||
@ -260,6 +264,8 @@ public class OreDictManager {
|
||||
*/
|
||||
/** Any post oil polymer like teflon ("polymer") or bakelite */
|
||||
public static final DictGroup ANY_PLASTIC = new DictGroup("AnyPlastic", POLYMER, BAKELITE); //using the Any prefix means that it's just the secondary prefix, and that shape prefixes are applicable
|
||||
/** Any post vacuum polymer like PET or PVC */
|
||||
public static final DictGroup ANY_HARDPLASTIC = new DictGroup("AnyHardPlastic", PET, PVC);
|
||||
/** Any "powder" propellant like gunpowder, ballistite and cordite */
|
||||
public static final DictFrame ANY_GUNPOWDER = new DictFrame("AnyPropellant");
|
||||
/** Any smokeless powder like ballistite and cordite */
|
||||
@ -344,6 +350,8 @@ public class OreDictManager {
|
||||
POLYMER .ingot(ingot_polymer) .dust(powder_polymer) .block(block_polymer);
|
||||
BAKELITE .ingot(ingot_bakelite) .dust(powder_bakelite) .block(block_bakelite);
|
||||
RUBBER .ingot(ingot_rubber) .block(block_rubber);
|
||||
PET .ingot(ingot_pet);
|
||||
PVC .ingot(ingot_pvc);
|
||||
MAGTUNG .ingot(ingot_magnetized_tungsten) .dust(powder_magnetized_tungsten) .block(block_magnetized_tungsten);
|
||||
CMB .ingot(ingot_combine_steel) .dust(powder_combine_steel) .plate(plate_combine_steel) .block(block_combine_steel);
|
||||
DESH .nugget(nugget_desh) .ingot(ingot_desh) .dust(powder_desh) .block(block_desh);
|
||||
@ -452,6 +460,10 @@ public class OreDictManager {
|
||||
OreDictionary.registerOre(KEY_CIRCUIT_BISMUTH, circuit_bismuth);
|
||||
OreDictionary.registerOre(KEY_CIRCUIT_BISMUTH, circuit_arsenic);
|
||||
|
||||
for(NTMMaterial mat : Mats.orderedList) {
|
||||
for(String name : mat.names) OreDictionary.registerOre("plateTriple" + name, new ItemStack(ModItems.plate_cast, 1, mat.id));
|
||||
}
|
||||
|
||||
for(EnumBedrockOre ore : EnumBedrockOre.values()) {
|
||||
OreDictionary.registerOre("ore" + ore.oreName, new ItemStack(ModItems.ore_enriched, 1, ore.ordinal()));
|
||||
}
|
||||
@ -535,6 +547,7 @@ public class OreDictManager {
|
||||
|
||||
public static void registerGroups() {
|
||||
ANY_PLASTIC.addPrefix(INGOT, true).addPrefix(DUST, true).addPrefix(BLOCK, true);
|
||||
ANY_HARDPLASTIC.addPrefix(INGOT, true);
|
||||
ANY_TAR.addPrefix(ANY, false);
|
||||
}
|
||||
|
||||
@ -572,18 +585,19 @@ public class OreDictManager {
|
||||
/*
|
||||
* Quick access methods to grab ore names for recipes.
|
||||
*/
|
||||
public String any() { return ANY + mats[0]; }
|
||||
public String nugget() { return NUGGET + mats[0]; }
|
||||
public String tiny() { return TINY + mats[0]; }
|
||||
public String ingot() { return INGOT + mats[0]; }
|
||||
public String dustTiny() { return DUSTTINY + mats[0]; }
|
||||
public String dust() { return DUST + mats[0]; }
|
||||
public String gem() { return GEM + mats[0]; }
|
||||
public String crystal() { return CRYSTAL + mats[0]; }
|
||||
public String plate() { return PLATE + mats[0]; }
|
||||
public String billet() { return BILLET + mats[0]; }
|
||||
public String block() { return BLOCK + mats[0]; }
|
||||
public String ore() { return ORE + mats[0]; }
|
||||
public String any() { return ANY + mats[0]; }
|
||||
public String nugget() { return NUGGET + mats[0]; }
|
||||
public String tiny() { return TINY + mats[0]; }
|
||||
public String ingot() { return INGOT + mats[0]; }
|
||||
public String dustTiny() { return DUSTTINY + mats[0]; }
|
||||
public String dust() { return DUST + mats[0]; }
|
||||
public String gem() { return GEM + mats[0]; }
|
||||
public String crystal() { return CRYSTAL + mats[0]; }
|
||||
public String plate() { return PLATE + mats[0]; }
|
||||
public String plateCast() { return PLATECAST + mats[0]; }
|
||||
public String billet() { return BILLET + mats[0]; }
|
||||
public String block() { return BLOCK + mats[0]; }
|
||||
public String ore() { return ORE + mats[0]; }
|
||||
public String[] anys() { return appendToAll(ANY); }
|
||||
public String[] nuggets() { return appendToAll(NUGGET); }
|
||||
public String[] tinys() { return appendToAll(TINY); }
|
||||
@ -594,6 +608,7 @@ public class OreDictManager {
|
||||
public String[] gems() { return appendToAll(GEM); }
|
||||
public String[] crystals() { return appendToAll(CRYSTAL); }
|
||||
public String[] plates() { return appendToAll(PLATE); }
|
||||
public String[] plateCasts() { return appendToAll(PLATECAST); }
|
||||
public String[] billets() { return appendToAll(BILLET); }
|
||||
public String[] blocks() { return appendToAll(BLOCK); }
|
||||
public String[] ores() { return appendToAll(ORE); }
|
||||
@ -685,6 +700,10 @@ public class OreDictManager {
|
||||
hazMult = HazardRegistry.plate;
|
||||
return makeObject(PLATE, plate);
|
||||
}
|
||||
public DictFrame plateCast(Object... plate) {
|
||||
hazMult = HazardRegistry.plateCast;
|
||||
return makeObject(PLATECAST, plate);
|
||||
}
|
||||
public DictFrame billet(Object... billet) {
|
||||
hazMult = HazardRegistry.billet;
|
||||
return makeObject(BILLET, billet);
|
||||
|
||||
@ -14,6 +14,7 @@ public class OreNames {
|
||||
public static final String GEM = "gem";
|
||||
public static final String CRYSTAL = "crystal";
|
||||
public static final String PLATE = "plate";
|
||||
public static final String PLATECAST = "plateTriple";
|
||||
public static final String BILLET = "billet";
|
||||
public static final String BLOCK = "block";
|
||||
public static final String ORE = "ore";
|
||||
|
||||
@ -1,8 +1,11 @@
|
||||
package com.hbm.inventory.container;
|
||||
|
||||
import com.hbm.inventory.SlotMachineOutput;
|
||||
import com.hbm.items.ModItems;
|
||||
import com.hbm.items.machine.IItemFluidIdentifier;
|
||||
import com.hbm.tileentity.machine.oil.TileEntityMachineCatalyticReformer;
|
||||
|
||||
import api.hbm.energy.IBatteryItem;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.entity.player.InventoryPlayer;
|
||||
import net.minecraft.inventory.Container;
|
||||
@ -70,14 +73,28 @@ public class ContainerMachineCatalyticReformer extends Container {
|
||||
if(!this.mergeItemStack(var5, 11, this.inventorySlots.size(), true)) {
|
||||
return null;
|
||||
}
|
||||
} else if(!this.mergeItemStack(var5, 0, 1, false))
|
||||
if(!this.mergeItemStack(var5, 1, 2, false))
|
||||
if(!this.mergeItemStack(var5, 3, 4, false))
|
||||
if(!this.mergeItemStack(var5, 5, 6, false))
|
||||
if(!this.mergeItemStack(var5, 7, 8, false))
|
||||
if(!this.mergeItemStack(var5, 9, 11, false)) {
|
||||
} else {
|
||||
|
||||
if(var3.getItem() instanceof IBatteryItem) {
|
||||
if(!this.mergeItemStack(var5, 0, 1, false)) {
|
||||
return null;
|
||||
}
|
||||
} else if(var3.getItem() instanceof IItemFluidIdentifier) {
|
||||
if(!this.mergeItemStack(var5, 9, 10, false)) {
|
||||
return null;
|
||||
}
|
||||
} else if(var3.getItem() == ModItems.catalytic_converter) {
|
||||
if(!this.mergeItemStack(var5, 10, 11, false)) {
|
||||
return null;
|
||||
}
|
||||
} else {
|
||||
if(!this.mergeItemStack(var5, 1, 2, false))
|
||||
if(!this.mergeItemStack(var5, 3, 4, false))
|
||||
if(!this.mergeItemStack(var5, 5, 6, false))
|
||||
if(!this.mergeItemStack(var5, 7, 8, false))
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(var5.stackSize == 0) {
|
||||
var4.putStack((ItemStack) null);
|
||||
|
||||
@ -22,19 +22,18 @@ public class ContainerMachineTurbofan extends Container {
|
||||
|
||||
this.addSlotToContainer(new Slot(tedf, 0, 17, 17));
|
||||
this.addSlotToContainer(new SlotMachineOutput(tedf, 1, 17, 53));
|
||||
this.addSlotToContainer(new Slot(tedf, 2, 107, 17));
|
||||
this.addSlotToContainer(new Slot(tedf, 2, 98, 71));
|
||||
this.addSlotToContainer(new Slot(tedf, 3, 143, 71));
|
||||
this.addSlotToContainer(new Slot(tedf, 4, 44, 71));
|
||||
|
||||
for(int i = 0; i < 3; i++)
|
||||
{
|
||||
for(int j = 0; j < 9; j++)
|
||||
{
|
||||
this.addSlotToContainer(new Slot(invPlayer, j + i * 9 + 9, 8 + j * 18, 84 + i * 18));
|
||||
for(int i = 0; i < 3; i++) {
|
||||
for(int j = 0; j < 9; j++) {
|
||||
this.addSlotToContainer(new Slot(invPlayer, j + i * 9 + 9, 8 + j * 18, 121 + i * 18));
|
||||
}
|
||||
}
|
||||
|
||||
for(int i = 0; i < 9; i++)
|
||||
{
|
||||
this.addSlotToContainer(new Slot(invPlayer, i, 8 + i * 18, 142));
|
||||
for(int i = 0; i < 9; i++) {
|
||||
this.addSlotToContainer(new Slot(invPlayer, i, 8 + i * 18, 179));
|
||||
}
|
||||
}
|
||||
|
||||
@ -45,40 +44,32 @@ public class ContainerMachineTurbofan extends Container {
|
||||
}
|
||||
|
||||
@Override
|
||||
public ItemStack transferStackInSlot(EntityPlayer p_82846_1_, int par2)
|
||||
{
|
||||
public ItemStack transferStackInSlot(EntityPlayer p_82846_1_, int par2) {
|
||||
ItemStack var3 = null;
|
||||
Slot var4 = (Slot) this.inventorySlots.get(par2);
|
||||
|
||||
if (var4 != null && var4.getHasStack())
|
||||
{
|
||||
|
||||
if(var4 != null && var4.getHasStack()) {
|
||||
ItemStack var5 = var4.getStack();
|
||||
var3 = var5.copy();
|
||||
|
||||
if (par2 <= 2) {
|
||||
if (!this.mergeItemStack(var5, 3, this.inventorySlots.size(), true))
|
||||
{
|
||||
|
||||
if(par2 <= 4) {
|
||||
if(!this.mergeItemStack(var5, 5, this.inventorySlots.size(), true)) {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
else if (!this.mergeItemStack(var5, 0, 1, false))
|
||||
{
|
||||
if (!this.mergeItemStack(var5, 2, 3, false))
|
||||
} else if(!this.mergeItemStack(var5, 0, 1, false)) {
|
||||
if(!this.mergeItemStack(var5, 2, 3, false))
|
||||
return null;
|
||||
}
|
||||
|
||||
if (var5.stackSize == 0)
|
||||
{
|
||||
|
||||
if(var5.stackSize == 0) {
|
||||
var4.putStack((ItemStack) null);
|
||||
}
|
||||
else
|
||||
{
|
||||
} else {
|
||||
var4.onSlotChanged();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return var3;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean canInteractWith(EntityPlayer player) {
|
||||
|
||||
@ -234,15 +234,15 @@ public class Fluids {
|
||||
OXYHYDROGEN = new FluidType("OXYHYDROGEN", 0x483FC1, 0, 4, 2, EnumSymbol.NONE).addTraits(GASEOUS);
|
||||
RADIOSOLVENT = new FluidType("RADIOSOLVENT", 0xA4D7DD, 3, 3, 0, EnumSymbol.NONE).addTraits(LIQUID, LEADCON, new FT_Corrosive(50), new FT_VentRadiation(0.01F));
|
||||
CHLORINE = new FluidType("CHLORINE", 0xBAB572, 4, 0, 0, EnumSymbol.OXIDIZER).addTraits(GASEOUS, new FT_Corrosive(25), new FT_Poison(true, 1));
|
||||
HEAVYOIL_VACUUM = new FluidType("HEAVYOIL_VACUUM", 0x131214, 2, 1, 0, EnumSymbol.NONE).addTraits(LIQUID);
|
||||
REFORMATE = new FluidType("REFORMATE", 0x835472, 2, 2, 0, EnumSymbol.NONE).addTraits(LIQUID);
|
||||
LIGHTOIL_VACUUM = new FluidType("LIGHTOIL_VACUUM", 0x8C8851, 1, 2, 0, EnumSymbol.NONE).addTraits(LIQUID);
|
||||
HEAVYOIL_VACUUM = new FluidType("HEAVYOIL_VACUUM", 0x131214, 2, 1, 0, EnumSymbol.NONE).addTraits(LIQUID).addContainers(0x513F39, ExtContainer.CANISTER);
|
||||
REFORMATE = new FluidType("REFORMATE", 0x835472, 2, 2, 0, EnumSymbol.NONE).addTraits(LIQUID).addContainers(0xD180D6, ExtContainer.CANISTER);
|
||||
LIGHTOIL_VACUUM = new FluidType("LIGHTOIL_VACUUM", 0x8C8851, 1, 2, 0, EnumSymbol.NONE).addTraits(LIQUID).addContainers(0xB46B52, ExtContainer.CANISTER);
|
||||
SOURGAS = new FluidType("SOURGAS", 0xC9BE0D, 4, 4, 0, EnumSymbol.ACID).addTraits(GASEOUS, new FT_Corrosive(10));
|
||||
XYLENE = new FluidType("XYLENE", 0x5C4E76, 2, 3, 0, EnumSymbol.NONE).addTraits(LIQUID);
|
||||
HEATINGOIL_VACUUM = new FluidType("HEATINGOIL_VACUUM", 0x211D06, 2, 2, 0, EnumSymbol.NONE).addTraits(LIQUID);
|
||||
DIESEL_REFORM = new FluidType("DIESEL_REFORM", 0xCDC3C6, 1, 2, 0, EnumSymbol.NONE).addTraits(LIQUID);
|
||||
DIESEL_CRACK_REFORM = new FluidType("DIESEL_CRACK_REFORM",0xCDC3CC, 1, 2, 0, EnumSymbol.NONE).addTraits(LIQUID);
|
||||
KEROSENE_REFORM = new FluidType("KEROSENE_REFORM", 0xFFA5F3, 1, 2, 0, EnumSymbol.NONE).addTraits(LIQUID);
|
||||
XYLENE = new FluidType("XYLENE", 0x5C4E76, 2, 3, 0, EnumSymbol.NONE).addTraits(LIQUID).addContainers(0xA380D6, ExtContainer.CANISTER);
|
||||
HEATINGOIL_VACUUM = new FluidType("HEATINGOIL_VACUUM", 0x211D06, 2, 2, 0, EnumSymbol.NONE).addTraits(LIQUID).addContainers(0x694235, ExtContainer.CANISTER);
|
||||
DIESEL_REFORM = new FluidType("DIESEL_REFORM", 0xCDC3C6, 1, 2, 0, EnumSymbol.NONE).addTraits(LIQUID).addContainers(0xFFC500, ExtContainer.CANISTER);
|
||||
DIESEL_CRACK_REFORM = new FluidType("DIESEL_CRACK_REFORM",0xCDC3CC, 1, 2, 0, EnumSymbol.NONE).addTraits(LIQUID).addContainers(0xFFC500, ExtContainer.CANISTER);
|
||||
KEROSENE_REFORM = new FluidType("KEROSENE_REFORM", 0xFFA5F3, 1, 2, 0, EnumSymbol.NONE).addTraits(LIQUID).addContainers(0xFF377D, ExtContainer.CANISTER);
|
||||
REFORMGAS = new FluidType(99, "REFORMGAS", 0x6362AE, 1, 4, 1, EnumSymbol.NONE).addTraits(GASEOUS);
|
||||
|
||||
|
||||
@ -417,6 +417,8 @@ public class Fluids {
|
||||
double complexityChemplant = 1.1D;
|
||||
double complexityLubed = 1.15D;
|
||||
double complexityLeaded = 1.5D;
|
||||
double complexityVacuum = 3.0D;
|
||||
double complexityReform = 2.5D;
|
||||
double flammabilityLow = 0.25D;
|
||||
double flammabilityNormal = 1.0D;
|
||||
double flammabilityHigh = 2.0D;
|
||||
@ -430,7 +432,7 @@ public class Fluids {
|
||||
registerCalculatedFuel(RECLAIMED, (baseline / 0.28 * flammabilityLow * demandLow * complexityRefinery * complexityFraction * complexityChemplant), 1.25D, FuelGrade.LOW);
|
||||
registerCalculatedFuel(PETROIL, (baseline / 0.28 * flammabilityLow * demandLow * complexityRefinery * complexityFraction * complexityChemplant * complexityLubed), 1.5D, FuelGrade.MEDIUM);
|
||||
registerCalculatedFuel(PETROIL_LEADED, (baseline / 0.28 * flammabilityLow * demandLow * complexityRefinery * complexityFraction * complexityChemplant * complexityLubed * complexityLeaded), 1.5D, FuelGrade.MEDIUM);
|
||||
registerCalculatedFuel(HEATINGOIL, (baseline / 0.31 * flammabilityNormal * demandLow * complexityRefinery * complexityFraction * complexityFraction), 1.0D, FuelGrade.LOW);
|
||||
registerCalculatedFuel(HEATINGOIL, (baseline / 0.31 * flammabilityNormal * demandLow * complexityRefinery * complexityFraction * complexityFraction), 1.25D, FuelGrade.LOW);
|
||||
registerCalculatedFuel(NAPHTHA, (baseline / 0.25 * flammabilityLow * demandLow * complexityRefinery), 1.5D, FuelGrade.MEDIUM);
|
||||
registerCalculatedFuel(NAPHTHA_CRACK, (baseline / 0.40 * flammabilityLow * demandLow * complexityRefinery * complexityCracking), 1.5D, FuelGrade.MEDIUM);
|
||||
registerCalculatedFuel(GASOLINE, (baseline / 0.20 * flammabilityNormal * demandLow * complexityRefinery * complexityChemplant), 2.5D, FuelGrade.HIGH);
|
||||
@ -446,8 +448,17 @@ public class Fluids {
|
||||
registerCalculatedFuel(LPG, (baseline / 0.05 * flammabilityNormal * demandMedium * complexityRefinery * complexityChemplant), 2.5, FuelGrade.HIGH);
|
||||
registerCalculatedFuel(NITAN, KEROSENE.getTrait(FT_Flammable.class).getHeatEnergy() * 25L, 2.5, FuelGrade.HIGH);
|
||||
registerCalculatedFuel(BALEFIRE, KEROSENE.getTrait(FT_Flammable.class).getHeatEnergy() * 100L, 2.5, FuelGrade.HIGH);
|
||||
registerCalculatedFuel(HEAVYOIL_VACUUM, (baseline / 0.4 * flammabilityLow * demandLow * complexityVacuum), 1.25D, FuelGrade.LOW);
|
||||
registerCalculatedFuel(REFORMATE, (baseline / 0.25 * flammabilityNormal * demandHigh * complexityVacuum), 2.5D, FuelGrade.HIGH);
|
||||
registerCalculatedFuel(LIGHTOIL_VACUUM, (baseline / 0.20 * flammabilityNormal * demandHigh * complexityVacuum), 1.5D, FuelGrade.MEDIUM);
|
||||
registerCalculatedFuel(SOURGAS, (baseline / 0.15 * flammabilityLow * demandVeryLow * complexityVacuum), 0, null);
|
||||
registerCalculatedFuel(XYLENE, (baseline / 0.15 * flammabilityNormal * demandMedium * complexityVacuum * complexityFraction), 2.5D, FuelGrade.HIGH);
|
||||
registerCalculatedFuel(HEATINGOIL_VACUUM, (baseline / 0.24 * flammabilityNormal * demandLow * complexityVacuum * complexityFraction), 1.25D, FuelGrade.LOW);
|
||||
registerCalculatedFuel(DIESEL_REFORM, DIESEL.getTrait(FT_Flammable.class).getHeatEnergy() * complexityReform, 2.5D, FuelGrade.HIGH);
|
||||
registerCalculatedFuel(DIESEL_CRACK_REFORM, DIESEL_CRACK.getTrait(FT_Flammable.class).getHeatEnergy() * complexityReform, 2.5D, FuelGrade.HIGH);
|
||||
registerCalculatedFuel(KEROSENE_REFORM, KEROSENE.getTrait(FT_Flammable.class).getHeatEnergy() * complexityReform, 1.5D, FuelGrade.AERO);
|
||||
registerCalculatedFuel(REFORMGAS, (baseline / 0.06 * flammabilityHigh * demandLow * complexityVacuum * complexityFraction), 1.25D, FuelGrade.GAS);
|
||||
|
||||
//TODO: consult the spreadsheet for the values of the vacuum oils
|
||||
//all hail the spreadsheet
|
||||
//the spreadsheet must not be questioned
|
||||
//none may enter the orb- i mean the spreadsheet
|
||||
|
||||
@ -4,6 +4,8 @@ import org.lwjgl.opengl.GL11;
|
||||
|
||||
import com.hbm.inventory.container.ContainerMachineTurbofan;
|
||||
import com.hbm.lib.RefStrings;
|
||||
import com.hbm.render.util.GaugeUtil;
|
||||
import com.hbm.render.util.GaugeUtil.Gauge;
|
||||
import com.hbm.tileentity.machine.TileEntityMachineTurbofan;
|
||||
|
||||
import net.minecraft.client.Minecraft;
|
||||
@ -13,55 +15,49 @@ import net.minecraft.util.ResourceLocation;
|
||||
|
||||
public class GUIMachineTurbofan extends GuiInfoContainer {
|
||||
|
||||
private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/gui_turbofan.png");
|
||||
private TileEntityMachineTurbofan diFurnace;
|
||||
private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/generators/gui_turbofan.png");
|
||||
private TileEntityMachineTurbofan turbofan;
|
||||
|
||||
public GUIMachineTurbofan(InventoryPlayer invPlayer, TileEntityMachineTurbofan tedf) {
|
||||
super(new ContainerMachineTurbofan(invPlayer, tedf));
|
||||
diFurnace = tedf;
|
||||
turbofan = tedf;
|
||||
|
||||
this.xSize = 176;
|
||||
this.ySize = 166;
|
||||
this.ySize = 203;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void drawScreen(int mouseX, int mouseY, float f) {
|
||||
super.drawScreen(mouseX, mouseY, f);
|
||||
|
||||
diFurnace.tank.renderTankInfo(this, mouseX, mouseY, guiLeft + 53, guiTop + 69 - 52, 34, 52);
|
||||
this.drawElectricityInfo(this, mouseX, mouseY, guiLeft + 152 - 9, guiTop + 69 - 52, 16, 52, diFurnace.power, diFurnace.maxPower);
|
||||
|
||||
String[] text = new String[] { "Acceptable upgrades:",
|
||||
" -Pink (afterburner)" };
|
||||
this.drawCustomInfoStat(mouseX, mouseY, guiLeft + 96, guiTop + 21, 8, 8, guiLeft + 96, guiTop + 21 + 16, text);
|
||||
turbofan.tank.renderTankInfo(this, mouseX, mouseY, guiLeft + 35, guiTop + 17, 34, 52);
|
||||
if(turbofan.showBlood) turbofan.blood.renderTankInfo(this, mouseX, mouseY, guiLeft + 98, guiTop + 17, 16, 16);
|
||||
this.drawElectricityInfo(this, mouseX, mouseY, guiLeft + 143, guiTop + 17, 16, 52, turbofan.power, turbofan.maxPower);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void drawGuiContainerForegroundLayer(int i, int j) {
|
||||
String name = this.diFurnace.hasCustomInventoryName() ? this.diFurnace.getInventoryName() : I18n.format(this.diFurnace.getInventoryName());
|
||||
String name = this.turbofan.hasCustomInventoryName() ? this.turbofan.getInventoryName() : I18n.format(this.turbofan.getInventoryName());
|
||||
|
||||
this.fontRendererObj.drawString(name, this.xSize / 2 - this.fontRendererObj.getStringWidth(name) / 2, 6, 4210752);
|
||||
this.fontRendererObj.drawString(name, 43 - this.fontRendererObj.getStringWidth(name) / 2, 6, 4210752);
|
||||
this.fontRendererObj.drawString(I18n.format("container.inventory"), 8, this.ySize - 96 + 2, 4210752);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void drawGuiContainerBackgroundLayer(float p_146976_1_, int p_146976_2_, int p_146976_3_) {
|
||||
protected void drawGuiContainerBackgroundLayer(float interp, int x, int y) {
|
||||
GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
|
||||
Minecraft.getMinecraft().getTextureManager().bindTexture(texture);
|
||||
drawTexturedModalRect(guiLeft, guiTop, 0, 0, xSize, ySize);
|
||||
|
||||
if(diFurnace.power > 0) {
|
||||
int i = (int)diFurnace.getPowerScaled(52);
|
||||
drawTexturedModalRect(guiLeft + 152 - 9, guiTop + 69 - i, 176 + 16, 52 - i, 16, i);
|
||||
}
|
||||
int i = (int)turbofan.getPowerScaled(52);
|
||||
drawTexturedModalRect(guiLeft + 152 - 9, guiTop + 69 - i, 176 + 16, 52 - i, 16, i);
|
||||
|
||||
if(diFurnace.afterburner > 0) {
|
||||
int i = Math.min(diFurnace.afterburner, 6);
|
||||
drawTexturedModalRect(guiLeft + 107, guiTop + 53, 176, (i - 1) * 16, 16, 16);
|
||||
if(turbofan.afterburner > 0) {
|
||||
int a = Math.min(turbofan.afterburner, 6);
|
||||
drawTexturedModalRect(guiLeft + 98, guiTop + 44, 176, (a - 1) * 16, 16, 16);
|
||||
}
|
||||
|
||||
this.drawInfoPanel(guiLeft + 96, guiTop + 21, 8, 8, 8);
|
||||
|
||||
diFurnace.tank.renderTank(guiLeft + 53, guiTop + 69, this.zLevel, 34, 52);
|
||||
if(turbofan.showBlood) GaugeUtil.renderGauge(Gauge.ROUND_SMALL, guiLeft + 97, guiTop + 16, this.zLevel, (double) turbofan.blood.getFill() / (double) turbofan.blood.getMaxFill());
|
||||
turbofan.tank.renderTank(guiLeft + 35, guiTop + 69, this.zLevel, 34, 52);
|
||||
}
|
||||
}
|
||||
|
||||
@ -93,9 +93,11 @@ public abstract class GUITurretBase extends GuiInfoContainer {
|
||||
lines.add(list.subList(0, list.size() / 2).toArray());
|
||||
lines.add(list.subList(list.size() / 2, list.size()).toArray());
|
||||
} else {
|
||||
lines.add(list.subList(0, list.size() / 3).toArray());
|
||||
lines.add(list.subList(list.size() / 3, list.size() / 3 * 2).toArray());
|
||||
lines.add(list.subList(list.size() / 3 * 2, list.size()).toArray());
|
||||
int bound0 = (int) Math.ceil(list.size() / 3D);
|
||||
int bound1 = (int) Math.ceil(list.size() / 3D * 2D);
|
||||
lines.add(list.subList(0, bound0).toArray());
|
||||
lines.add(list.subList(bound0, bound1).toArray());
|
||||
lines.add(list.subList(bound1, list.size()).toArray());
|
||||
}
|
||||
|
||||
lines.add(new Object[] {I18nUtil.resolveKey(selected.getDisplayName())});
|
||||
|
||||
@ -28,8 +28,7 @@ public class GUITurretFritz extends GUITurretBase {
|
||||
super.drawGuiContainerBackgroundLayer(p_146976_1_, mX, mY);
|
||||
|
||||
FluidTank tank = ((TileEntityTurretFritz)this.turret).tank;
|
||||
|
||||
tank.renderTank(guiLeft + 134, guiTop + 116, this.zLevel, 7, 52);
|
||||
tank.renderTank(guiLeft + 134, guiTop + 115, this.zLevel, 7, 52);
|
||||
}
|
||||
|
||||
protected ResourceLocation getTexture() {
|
||||
|
||||
@ -19,6 +19,7 @@ public class MaterialShapes {
|
||||
public static final MaterialShapes CRYSTAL = new MaterialShapes(INGOT.quantity, "crystal");
|
||||
public static final MaterialShapes DUST = new MaterialShapes(INGOT.quantity, "dust");
|
||||
public static final MaterialShapes PLATE = new MaterialShapes(INGOT.quantity, "plate");
|
||||
public static final MaterialShapes CASTPLATE = new MaterialShapes(INGOT.quantity * 3, "plateTriple");
|
||||
public static final MaterialShapes QUART = new MaterialShapes(162);
|
||||
public static final MaterialShapes BLOCK = new MaterialShapes(INGOT.quantity * 9, "block");
|
||||
|
||||
|
||||
@ -47,7 +47,7 @@ public class Mats {
|
||||
public static final int _AS = 30;
|
||||
|
||||
//Vanilla and vanilla-like
|
||||
public static final NTMMaterial MAT_STONE = makeSmeltable(_VS + 00, df("Stone"), 0x4D2F23).omitAutoGen();
|
||||
public static final NTMMaterial MAT_STONE = makeSmeltable(_VS + 00, df("Stone"), 0x808080, 0x4D2F23).omitAutoGen();
|
||||
public static final NTMMaterial MAT_CARBON = makeAdditive( 1499, df("Carbon"), 0x404040).omitAutoGen();
|
||||
public static final NTMMaterial MAT_COAL = make( 1400, COAL) .setConversion(MAT_CARBON, 2, 1).omitAutoGen();
|
||||
public static final NTMMaterial MAT_LIGNITE = make( 1401, LIGNITE) .setConversion(MAT_CARBON, 3, 1);
|
||||
@ -55,7 +55,7 @@ public class Mats {
|
||||
public static final NTMMaterial MAT_PETCOKE = make( 1411, PETCOKE) .setConversion(MAT_CARBON, 4, 3);
|
||||
public static final NTMMaterial MAT_LIGCOKE = make( 1412, LIGCOKE) .setConversion(MAT_CARBON, 4, 3);
|
||||
public static final NTMMaterial MAT_GRAPHITE = make( 1420, GRAPHITE) .setConversion(MAT_CARBON, 1, 1);
|
||||
public static final NTMMaterial MAT_IRON = makeSmeltable(2600, IRON, 0xFFA259).omitAutoGen();
|
||||
public static final NTMMaterial MAT_IRON = makeSmeltable(2600, IRON, 0xFFFFFF, 0xFFA259).omitAutoGen();
|
||||
public static final NTMMaterial MAT_GOLD = makeSmeltable(7900, GOLD, 0xE8D754).omitAutoGen();
|
||||
public static final NTMMaterial MAT_REDSTONE = makeSmeltable(_VS + 01, REDSTONE, 0xFF1000).omitAutoGen();
|
||||
public static final NTMMaterial MAT_OBSIDIAN = makeSmeltable(_VS + 02, df("Obsidian"), 0x3D234D).omitAutoGen();
|
||||
@ -85,7 +85,7 @@ public class Mats {
|
||||
public static final NTMMaterial MAT_TECHNIETIUM = makeSmeltable(4399, TC99, 0xCADFDF).setShapes(NUGGET, BILLET, INGOT, BLOCK);
|
||||
public static final NTMMaterial MAT_RADIUM = makeSmeltable(8826, RA226, 0xE9FAF6).setShapes(NUGGET, BILLET, INGOT, DUST, BLOCK);
|
||||
public static final NTMMaterial MAT_ACTINIUM = makeSmeltable(8927, AC227, 0x958989).setShapes(NUGGET, BILLET, INGOT);
|
||||
public static final NTMMaterial MAT_CO60 = makeSmeltable(2760, CO60, 0x8F72AE).setShapes(NUGGET, BILLET, INGOT, DUST);
|
||||
public static final NTMMaterial MAT_CO60 = makeSmeltable(2760, CO60, 0x92A1C0, 0x8F72AE).setShapes(NUGGET, BILLET, INGOT, DUST);
|
||||
public static final NTMMaterial MAT_AU198 = makeSmeltable(7998, AU198, 0xE8D754).setShapes(NUGGET, BILLET, INGOT, DUST);
|
||||
public static final NTMMaterial MAT_PB209 = makeSmeltable(8209, PB209, 0x7B535D).setShapes(NUGGET, BILLET, INGOT, DUST);
|
||||
public static final NTMMaterial MAT_SCHRABIDIUM = makeSmeltable(12626, SA326, 0x32FFFF).setShapes(NUGGET, WIRE, BILLET, INGOT, DUST, PLATE, BLOCK);
|
||||
@ -97,16 +97,16 @@ public class Mats {
|
||||
//Base metals
|
||||
public static final NTMMaterial MAT_TITANIUM = makeSmeltable(2200, TI, 0xA99E79).setShapes(INGOT, DUST, PLATE, BLOCK);
|
||||
public static final NTMMaterial MAT_COPPER = makeSmeltable(2900, CU, 0xC18336).setShapes(WIRE, INGOT, DUST, PLATE, BLOCK);
|
||||
public static final NTMMaterial MAT_TUNGSTEN = makeSmeltable(7400, W, 0x977474).setShapes(WIRE, INGOT, DUST, BLOCK);
|
||||
public static final NTMMaterial MAT_ALUMINIUM = makeSmeltable(1300, AL, 0xD0B8EB).setShapes(WIRE, INGOT, DUST, PLATE, BLOCK);
|
||||
public static final NTMMaterial MAT_TUNGSTEN = makeSmeltable(7400, W, 0x565656, 0x977474).setShapes(WIRE, INGOT, DUST, BLOCK);
|
||||
public static final NTMMaterial MAT_ALUMINIUM = makeSmeltable(1300, AL, 0xE8F2F9, 0xD0B8EB).setShapes(WIRE, INGOT, DUST, PLATE, BLOCK);
|
||||
public static final NTMMaterial MAT_LEAD = makeSmeltable(8200, PB, 0x646470).setShapes(NUGGET, INGOT, DUST, PLATE, BLOCK);
|
||||
public static final NTMMaterial MAT_BISMUTH = makeSmeltable(8300, df("Bismuth"), 0xB200FF).setShapes(NUGGET, BILLET, INGOT, DUST, BLOCK);
|
||||
public static final NTMMaterial MAT_ARSENIC = makeSmeltable(3300, AS, 0x558080).setShapes(NUGGET, INGOT);
|
||||
public static final NTMMaterial MAT_TANTALIUM = makeSmeltable(7300, TA, 0xA89B74).setShapes(NUGGET, INGOT, DUST, BLOCK);
|
||||
public static final NTMMaterial MAT_NIOBIUM = makeSmeltable(4100, NB, 0xD576B1).setShapes(NUGGET, DUSTTINY, INGOT, DUST, BLOCK);
|
||||
public static final NTMMaterial MAT_BERYLLIUM = makeSmeltable(400, BE, 0xAE9572).setShapes(NUGGET, INGOT, DUST, BLOCK);
|
||||
public static final NTMMaterial MAT_COBALT = makeSmeltable(2700, CO, 0x8F72AE).setShapes(NUGGET, DUSTTINY, BILLET, INGOT, DUST, BLOCK);
|
||||
public static final NTMMaterial MAT_BORON = makeSmeltable(500, B, 0xAD72AE).setShapes(DUSTTINY, INGOT, DUST, BLOCK);
|
||||
public static final NTMMaterial MAT_COBALT = makeSmeltable(2700, CO, 0x92A1C0, 0x8F72AE).setShapes(NUGGET, DUSTTINY, BILLET, INGOT, DUST, BLOCK);
|
||||
public static final NTMMaterial MAT_BORON = makeSmeltable(500, B, 0x8D98A2, 0xAD72AE).setShapes(DUSTTINY, INGOT, DUST, BLOCK);
|
||||
|
||||
//Alloys
|
||||
public static final NTMMaterial MAT_STEEL = makeSmeltable(_AS + 0, STEEL, 0x4A4A4A).setShapes(DUSTTINY, INGOT, DUST, PLATE, BLOCK);
|
||||
@ -121,17 +121,20 @@ public class Mats {
|
||||
public static final NTMMaterial MAT_CMB = makeSmeltable(_AS + 9, CMB, 0x6F6FB4).setShapes(INGOT, DUST, PLATE, BLOCK);
|
||||
public static final NTMMaterial MAT_FLUX = makeAdditive(_AS + 10, df("Flux"), 0xDECCAD).setShapes(DUST);
|
||||
public static final NTMMaterial MAT_SLAG = makeSmeltable(_AS + 11, SLAG, 0x6C6562).setShapes(BLOCK);
|
||||
|
||||
public static NTMMaterial makeSmeltable(int id, DictFrame dict, int color) { return makeSmeltable(id, dict, color, color); }
|
||||
public static NTMMaterial makeAdditive(int id, DictFrame dict, int color) { return makeAdditive(id, dict, color, color); }
|
||||
|
||||
public static NTMMaterial make(int id, DictFrame dict) {
|
||||
return new NTMMaterial(id, dict);
|
||||
}
|
||||
|
||||
public static NTMMaterial makeSmeltable(int id, DictFrame dict, int color) {
|
||||
return new NTMMaterial(id, dict).smeltable(SmeltingBehavior.SMELTABLE).setMoltenColor(color);
|
||||
public static NTMMaterial makeSmeltable(int id, DictFrame dict, int solidColor, int moltenColor) {
|
||||
return new NTMMaterial(id, dict).smeltable(SmeltingBehavior.SMELTABLE).setSolidColor(solidColor).setMoltenColor(moltenColor);
|
||||
}
|
||||
|
||||
public static NTMMaterial makeAdditive(int id, DictFrame dict, int color) {
|
||||
return new NTMMaterial(id, dict).smeltable(SmeltingBehavior.ADDITIVE).setMoltenColor(color);
|
||||
public static NTMMaterial makeAdditive(int id, DictFrame dict, int solidColor, int moltenColor) {
|
||||
return new NTMMaterial(id, dict).smeltable(SmeltingBehavior.ADDITIVE).setSolidColor(solidColor).setMoltenColor(moltenColor);
|
||||
}
|
||||
|
||||
public static DictFrame df(String string) {
|
||||
|
||||
@ -14,7 +14,7 @@ public class NTMMaterial {
|
||||
public MaterialShapes[] shapes = new MaterialShapes[0];
|
||||
public boolean omitItemGen = false;
|
||||
public SmeltingBehavior smeltable = SmeltingBehavior.NOT_SMELTABLE;
|
||||
public int solidColor = 0xFF4A00; //TODO
|
||||
public int solidColor = 0xFF4A00;
|
||||
public int moltenColor = 0xFF4A00;
|
||||
|
||||
public NTMMaterial smeltsInto;
|
||||
@ -67,6 +67,11 @@ public class NTMMaterial {
|
||||
return this;
|
||||
}
|
||||
|
||||
public NTMMaterial setSolidColor(int color) {
|
||||
this.solidColor = color;
|
||||
return this;
|
||||
}
|
||||
|
||||
public NTMMaterial setMoltenColor(int color) {
|
||||
this.moltenColor = color;
|
||||
return this;
|
||||
|
||||
@ -170,7 +170,6 @@ public class AssemblerRecipes {
|
||||
makeRecipe(new ComparableStack(ModItems.asbestos_cloth, 4), new AStack[] {new OreDictStack(ASBESTOS.ingot(), 2), new ComparableStack(Items.string, 6), new ComparableStack(Blocks.wool, 1), },50);
|
||||
makeRecipe(new ComparableStack(ModItems.filter_coal, 1), new AStack[] {new OreDictStack(COAL.dust(), 4), new ComparableStack(Items.string, 6), new ComparableStack(Items.paper, 1), },50);
|
||||
makeRecipe(new ComparableStack(ModItems.centrifuge_element, 1), new AStack[] {new OreDictStack(STEEL.plate(), 4), new OreDictStack(TI.plate(), 4), new ComparableStack(ModItems.motor, 1), }, 100);
|
||||
//makeRecipe(new ComparableStack(ModItems.centrifuge_tower, 1), new AStack[] {new ComparableStack(ModItems.centrifuge_element, 4), new OreDictStack(STEEL.plate(), 4), new ComparableStack(ModItems.wire_red_copper, 4), new OreDictStack(ANY_PLASTIC.ingot(), 2), },150);
|
||||
makeRecipe(new ComparableStack(ModItems.magnet_circular, 1), new AStack[] {new ComparableStack(ModBlocks.fusion_conductor, 5), new OreDictStack(STEEL.ingot(), 4), new OreDictStack(ALLOY.plate(), 6), },150);
|
||||
makeRecipe(new ComparableStack(ModItems.reactor_core, 1), new AStack[] {new OreDictStack(PB.ingot(), 8), new OreDictStack(BE.ingot(), 6), new OreDictStack(STEEL.plate(), 16), new OreDictStack(OreDictManager.getReflector(), 8), new OreDictStack(FIBER.ingot(), 2) },100);
|
||||
makeRecipe(new ComparableStack(ModItems.rtg_unit, 1), new AStack[] {new ComparableStack(ModItems.thermo_element, 2), new ComparableStack(ModItems.board_copper, 1), new OreDictStack(PB.ingot(), 2), new OreDictStack(STEEL.plate(), 2), new ComparableStack(ModItems.circuit_copper, 1), },100);
|
||||
@ -193,7 +192,7 @@ public class AssemblerRecipes {
|
||||
makeRecipe(new ComparableStack(ModItems.warhead_buster_medium, 1), new AStack[] {new ComparableStack(ModItems.warhead_generic_medium, 1), new ComparableStack(ModBlocks.det_cord, 4), new ComparableStack(ModBlocks.det_charge, 4), },150);
|
||||
makeRecipe(new ComparableStack(ModItems.warhead_buster_large, 1), new AStack[] {new ComparableStack(ModItems.warhead_generic_large, 1), new ComparableStack(ModBlocks.det_charge, 8), },200);
|
||||
makeRecipe(new ComparableStack(ModItems.warhead_nuclear, 1), new AStack[] {new ComparableStack(ModItems.boy_shielding, 1), new ComparableStack(ModItems.boy_target, 1), new ComparableStack(ModItems.boy_bullet, 1), new ComparableStack(ModItems.boy_propellant, 1), new ComparableStack(ModItems.wire_red_copper, 6), new OreDictStack(TI.plate(), 20), new OreDictStack(STEEL.plate(), 12), },300);
|
||||
makeRecipe(new ComparableStack(ModItems.warhead_mirv, 1), new AStack[] {new OreDictStack(TI.plate(), 20), new OreDictStack(STEEL.plate(), 12), new OreDictStack(PU239.ingot(), 1), new OreDictStack(ANY_HIGHEXPLOSIVE.ingot(), 8), new OreDictStack(BE.ingot(), 4), new OreDictStack(LI.ingot(), 4), new ComparableStack(ModItems.cell_deuterium, 6), },500);
|
||||
makeRecipe(new ComparableStack(ModItems.warhead_mirv, 1), new AStack[] {new OreDictStack(TI.plate(), 20), new OreDictStack(STEEL.plate(), 12), new OreDictStack(PU239.ingot(), 1), new ComparableStack(ModItems.ball_tatb, 8), new OreDictStack(BE.ingot(), 4), new OreDictStack(LI.ingot(), 4), new ComparableStack(ModItems.cell_deuterium, 6), },500);
|
||||
makeRecipe(new ComparableStack(ModItems.warhead_volcano, 1), new AStack[] {new OreDictStack(TI.plate(), 24), new OreDictStack(STEEL.plate(), 16), new ComparableStack(ModBlocks.det_nuke, 3), new OreDictStack(U238.block(), 24), new ComparableStack(ModItems.circuit_tantalium, 5) }, 600);
|
||||
makeRecipe(new ComparableStack(ModItems.warhead_thermo_endo, 1), new AStack[] {new ComparableStack(ModBlocks.therm_endo, 2), new OreDictStack(TI.plate(), 12), new OreDictStack(STEEL.plate(), 6), },300);
|
||||
makeRecipe(new ComparableStack(ModItems.warhead_thermo_exo, 1), new AStack[] {new ComparableStack(ModBlocks.therm_exo, 2), new OreDictStack(TI.plate(), 12), new OreDictStack(STEEL.plate(), 6), },300);
|
||||
|
||||
@ -110,7 +110,9 @@ public class ChemplantRecipes extends SerializableRecipe {
|
||||
.outputItems(new ItemStack(ModItems.ingot_rubber)));
|
||||
recipes.add(new ChemRecipe(94, "PET", 100)
|
||||
.inputItems(new OreDictStack(AL.dust()))
|
||||
.inputFluids(new FluidStack(Fluids.XYLENE, 500))
|
||||
.inputFluids(
|
||||
new FluidStack(Fluids.XYLENE, 500),
|
||||
new FluidStack(Fluids.OXYGEN, 100))
|
||||
.outputItems(new ItemStack(ModItems.ingot_pet)));
|
||||
recipes.add(new ChemRecipe(89, "DYNAMITE", 50)
|
||||
.inputItems(
|
||||
|
||||
@ -40,15 +40,17 @@ public class CrackingRecipes extends SerializableRecipe {
|
||||
|
||||
@Override
|
||||
public void registerDefaults() {
|
||||
cracking.put(Fluids.OIL, new Pair(new FluidStack(Fluids.CRACKOIL, oil_crack_oil), new FluidStack(Fluids.PETROLEUM, oil_crack_petro)));
|
||||
cracking.put(Fluids.BITUMEN, new Pair(new FluidStack(Fluids.OIL, bitumen_crack_oil), new FluidStack(Fluids.AROMATICS, bitumen_crack_aroma)));
|
||||
cracking.put(Fluids.SMEAR, new Pair(new FluidStack(Fluids.NAPHTHA, smear_crack_napht), new FluidStack(Fluids.PETROLEUM, smear_crack_petro)));
|
||||
cracking.put(Fluids.GAS, new Pair(new FluidStack(Fluids.PETROLEUM, gas_crack_petro), new FluidStack(Fluids.UNSATURATEDS, gas_crack_unsat)));
|
||||
cracking.put(Fluids.DIESEL, new Pair(new FluidStack(Fluids.KEROSENE, diesel_crack_kero), new FluidStack(Fluids.PETROLEUM, diesel_crack_petro)));
|
||||
cracking.put(Fluids.DIESEL_CRACK, new Pair(new FluidStack(Fluids.KEROSENE, diesel_crack_kero), new FluidStack(Fluids.PETROLEUM, diesel_crack_petro)));
|
||||
cracking.put(Fluids.KEROSENE, new Pair(new FluidStack(Fluids.PETROLEUM, kero_crack_petro), new FluidStack(Fluids.NONE, 0)));
|
||||
cracking.put(Fluids.WOODOIL, new Pair(new FluidStack(Fluids.HEATINGOIL, wood_crack_heat), new FluidStack(Fluids.AROMATICS, wood_crack_aroma)));
|
||||
cracking.put(Fluids.XYLENE, new Pair(new FluidStack(Fluids.AROMATICS, xyl_crack_aroma), new FluidStack(Fluids.PETROLEUM, xyl_crack_petro)));
|
||||
cracking.put(Fluids.OIL, new Pair(new FluidStack(Fluids.CRACKOIL, oil_crack_oil), new FluidStack(Fluids.PETROLEUM, oil_crack_petro)));
|
||||
cracking.put(Fluids.BITUMEN, new Pair(new FluidStack(Fluids.OIL, bitumen_crack_oil), new FluidStack(Fluids.AROMATICS, bitumen_crack_aroma)));
|
||||
cracking.put(Fluids.SMEAR, new Pair(new FluidStack(Fluids.NAPHTHA, smear_crack_napht), new FluidStack(Fluids.PETROLEUM, smear_crack_petro)));
|
||||
cracking.put(Fluids.GAS, new Pair(new FluidStack(Fluids.PETROLEUM, gas_crack_petro), new FluidStack(Fluids.UNSATURATEDS, gas_crack_unsat)));
|
||||
cracking.put(Fluids.DIESEL, new Pair(new FluidStack(Fluids.KEROSENE, diesel_crack_kero), new FluidStack(Fluids.PETROLEUM, diesel_crack_petro)));
|
||||
cracking.put(Fluids.DIESEL_CRACK, new Pair(new FluidStack(Fluids.KEROSENE, diesel_crack_kero), new FluidStack(Fluids.PETROLEUM, diesel_crack_petro)));
|
||||
cracking.put(Fluids.KEROSENE, new Pair(new FluidStack(Fluids.PETROLEUM, kero_crack_petro), new FluidStack(Fluids.NONE, 0)));
|
||||
cracking.put(Fluids.WOODOIL, new Pair(new FluidStack(Fluids.HEATINGOIL, wood_crack_heat), new FluidStack(Fluids.AROMATICS, wood_crack_aroma)));
|
||||
cracking.put(Fluids.XYLENE, new Pair(new FluidStack(Fluids.AROMATICS, xyl_crack_aroma), new FluidStack(Fluids.PETROLEUM, xyl_crack_petro)));
|
||||
cracking.put(Fluids.HEATINGOIL_VACUUM, new Pair(new FluidStack(Fluids.HEATINGOIL, 80), new FluidStack(Fluids.REFORMGAS, 20)));
|
||||
cracking.put(Fluids.REFORMATE, new Pair(new FluidStack(Fluids.UNSATURATEDS, 40), new FluidStack(Fluids.REFORMGAS, 60)));
|
||||
}
|
||||
|
||||
public static Pair<FluidStack, FluidStack> getCracking(FluidType oil) {
|
||||
|
||||
@ -33,6 +33,7 @@ public class MixerRecipes extends SerializableRecipe {
|
||||
recipes.put(Fluids.NITAN, new MixerRecipe(1_000, 50).setStack1(new FluidStack(Fluids.KEROSENE, 600)).setStack2(new FluidStack(Fluids.MERCURY, 200)).setSolid(new ComparableStack(ModItems.powder_nitan_mix)));
|
||||
recipes.put(Fluids.FRACKSOL, new MixerRecipe(1_000, 20).setStack1(new FluidStack(Fluids.WATER, 1_000)).setStack2(new FluidStack(Fluids.PETROLEUM, 100)).setSolid(new OreDictStack(OreDictManager.S.dust())));
|
||||
recipes.put(Fluids.ENDERJUICE, new MixerRecipe(100, 100).setStack1(new FluidStack(Fluids.XPJUICE, 500)).setSolid(new OreDictStack(OreDictManager.DIAMOND.dust())));
|
||||
recipes.put(Fluids.SALIENT, new MixerRecipe(1000, 20).setStack1(new FluidStack(Fluids.SEEDSLURRY, 500)).setStack2(new FluidStack(Fluids.BLOOD, 500)));
|
||||
|
||||
recipes.put(Fluids.SOLVENT, new MixerRecipe(1000, 50).setStack1(new FluidStack(Fluids.NAPHTHA, 500)).setStack2(new FluidStack(Fluids.AROMATICS, 500)));
|
||||
recipes.put(Fluids.SULFURIC_ACID, new MixerRecipe(500, 50).setStack1(new FluidStack(Fluids.ACID, 800)).setSolid(new OreDictStack(OreDictManager.S.dust())));
|
||||
|
||||
@ -71,51 +71,40 @@ public class SolidificationRecipes extends SerializableRecipe {
|
||||
registerRecipe(CRACKOIL, SF_CRACK, DictFrame.fromOne(ModItems.oil_tar, EnumTarType.CRACK));
|
||||
registerRecipe(COALOIL, SF_COALOIL, DictFrame.fromOne(ModItems.oil_tar, EnumTarType.COAL));
|
||||
registerRecipe(HEAVYOIL, SF_HEAVY, DictFrame.fromOne(ModItems.oil_tar, EnumTarType.CRUDE));
|
||||
registerRecipe(HEAVYOIL_VACUUM, SF_HEAVY, DictFrame.fromOne(ModItems.oil_tar, EnumTarType.CRUDE));
|
||||
registerRecipe(BITUMEN, SF_BITUMEN, DictFrame.fromOne(ModItems.oil_tar, EnumTarType.CRUDE));
|
||||
registerRecipe(COALCREOSOTE, SF_CREOSOTE, DictFrame.fromOne(ModItems.oil_tar, EnumTarType.COAL));
|
||||
registerRecipe(WOODOIL, SF_WOOD, DictFrame.fromOne(ModItems.oil_tar, EnumTarType.WOOD));
|
||||
|
||||
registerRecipe(SMEAR, SF_SMEAR, ModItems.solid_fuel);
|
||||
registerRecipe(HEATINGOIL, SF_HEATING, ModItems.solid_fuel);
|
||||
registerRecipe(RECLAIMED, SF_RECLAIMED, ModItems.solid_fuel);
|
||||
registerRecipe(PETROIL, SF_PETROIL, ModItems.solid_fuel);
|
||||
registerRecipe(LUBRICANT, SF_LUBE, ModItems.solid_fuel);
|
||||
registerRecipe(NAPHTHA, SF_NAPH, ModItems.solid_fuel);
|
||||
registerRecipe(NAPHTHA_CRACK, SF_NAPH, ModItems.solid_fuel);
|
||||
registerRecipe(DIESEL, SF_DIESEL, ModItems.solid_fuel);
|
||||
registerRecipe(DIESEL_CRACK, SF_DIESEL, ModItems.solid_fuel);
|
||||
registerRecipe(LIGHTOIL, SF_LIGHT, ModItems.solid_fuel);
|
||||
registerRecipe(LIGHTOIL_CRACK, SF_LIGHT, ModItems.solid_fuel);
|
||||
registerRecipe(KEROSENE, SF_KEROSENE, ModItems.solid_fuel);
|
||||
registerRecipe(GAS, SF_GAS, ModItems.solid_fuel);
|
||||
registerRecipe(PETROLEUM, SF_PETROLEUM, ModItems.solid_fuel);
|
||||
registerRecipe(LPG, SF_LPG, ModItems.solid_fuel);
|
||||
registerRecipe(BIOGAS, SF_BIOGAS, ModItems.solid_fuel);
|
||||
registerRecipe(BIOFUEL, SF_BIOFUEL, ModItems.solid_fuel);
|
||||
registerRecipe(AROMATICS, SF_AROMA, ModItems.solid_fuel);
|
||||
registerRecipe(UNSATURATEDS, SF_UNSAT, ModItems.solid_fuel);
|
||||
|
||||
registerRecipe(BALEFIRE, 250, ModItems.solid_fuel_bf);
|
||||
|
||||
registerSFAuto(SMEAR);
|
||||
registerSFAuto(HEATINGOIL);
|
||||
registerSFAuto(HEATINGOIL_VACUUM);
|
||||
registerSFAuto(RECLAIMED);
|
||||
registerSFAuto(PETROIL);
|
||||
//registerSFAuto(LUBRICANT);
|
||||
registerSFAuto(NAPHTHA);
|
||||
registerSFAuto(NAPHTHA_CRACK);
|
||||
registerSFAuto(DIESEL);
|
||||
registerSFAuto(DIESEL_REFORM);
|
||||
registerSFAuto(DIESEL_CRACK);
|
||||
registerSFAuto(DIESEL_CRACK_REFORM);
|
||||
registerSFAuto(LIGHTOIL);
|
||||
registerSFAuto(LIGHTOIL_CRACK);
|
||||
registerSFAuto(LIGHTOIL_VACUUM);
|
||||
registerSFAuto(KEROSENE);
|
||||
registerSFAuto(GAS);
|
||||
registerSFAuto(SOURGAS);
|
||||
registerSFAuto(REFORMGAS);
|
||||
registerSFAuto(SYNGAS);
|
||||
registerSFAuto(PETROLEUM);
|
||||
registerSFAuto(LPG);
|
||||
registerSFAuto(BIOGAS);
|
||||
registerSFAuto(BIOFUEL);
|
||||
registerSFAuto(AROMATICS);
|
||||
registerSFAuto(UNSATURATEDS);
|
||||
registerSFAuto(REFORMATE);
|
||||
registerSFAuto(XYLENE);
|
||||
registerSFAuto(BALEFIRE, 24000000L, ModItems.solid_fuel_bf); //holy shit this is energy dense*/
|
||||
|
||||
}
|
||||
|
||||
@ -10,6 +10,7 @@ import static com.hbm.inventory.OreDictManager.*;
|
||||
import com.hbm.inventory.RecipesCommon.AStack;
|
||||
import com.hbm.inventory.RecipesCommon.ComparableStack;
|
||||
import com.hbm.inventory.RecipesCommon.OreDictStack;
|
||||
import com.hbm.inventory.fluid.Fluids;
|
||||
import com.hbm.inventory.recipes.AssemblerRecipes;
|
||||
import com.hbm.items.ItemAmmoEnums.*;
|
||||
import com.hbm.items.ModItems;
|
||||
@ -389,7 +390,7 @@ public class AnvilRecipes {
|
||||
new ComparableStack(ModBlocks.concrete_asbestos, 4),
|
||||
new ComparableStack(ModBlocks.steel_scaffold, 16),
|
||||
new ComparableStack(ModBlocks.deco_pipe_quad, 12),
|
||||
new OreDictStack("dustSulfur", 32),
|
||||
new OreDictStack(Fluids.SOURGAS.getDict(1_000), 8),
|
||||
},
|
||||
new AnvilOutput(new ItemStack(ModBlocks.machine_deuterium_tower))).setTier(4));
|
||||
|
||||
|
||||
@ -763,6 +763,7 @@ public class ModItems {
|
||||
public static Item mold_base;
|
||||
public static Item mold;
|
||||
public static Item scraps;
|
||||
public static Item plate_cast;
|
||||
|
||||
public static Item part_lithium;
|
||||
public static Item part_beryllium;
|
||||
@ -777,7 +778,9 @@ public class ModItems {
|
||||
public static Item laser_crystal_digamma;
|
||||
|
||||
public static Item thermo_element;
|
||||
//public static Item limiter;
|
||||
|
||||
public static Item catalytic_converter;
|
||||
public static Item crackpipe;
|
||||
|
||||
public static Item pellet_rtg_depleted;
|
||||
|
||||
@ -898,25 +901,7 @@ public class ModItems {
|
||||
|
||||
public static Item canister_empty;
|
||||
public static Item canister_full;
|
||||
@Deprecated public static Item canister_smear;
|
||||
@Deprecated public static Item canister_canola;
|
||||
@Deprecated public static Item canister_oil;
|
||||
@Deprecated public static Item canister_fuel;
|
||||
@Deprecated public static Item canister_kerosene;
|
||||
@Deprecated public static Item canister_reoil;
|
||||
@Deprecated public static Item canister_petroil;
|
||||
public static Item canister_napalm;
|
||||
@Deprecated public static Item canister_gasoline;
|
||||
@Deprecated public static Item canister_NITAN;
|
||||
@Deprecated public static Item canister_fracksol;
|
||||
|
||||
@Deprecated public static Item canister_heavyoil;
|
||||
@Deprecated public static Item canister_bitumen;
|
||||
@Deprecated public static Item canister_heatingoil;
|
||||
@Deprecated public static Item canister_naphtha;
|
||||
@Deprecated public static Item canister_lightoil;
|
||||
@Deprecated public static Item canister_biofuel;
|
||||
@Deprecated public static Item canister_ethanol;
|
||||
|
||||
public static Item gas_empty;
|
||||
public static Item gas_full;
|
||||
@ -3415,6 +3400,7 @@ public class ModItems {
|
||||
mold_base = new Item().setUnlocalizedName("mold_base").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":mold_base");
|
||||
mold = new ItemMold().setUnlocalizedName("mold").setCreativeTab(MainRegistry.controlTab);
|
||||
scraps = new ItemScraps().setUnlocalizedName("scraps").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":scraps");
|
||||
plate_cast = new ItemPlateCast().setUnlocalizedName("plate_cast").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":plate_cast");
|
||||
|
||||
part_lithium = new Item().setUnlocalizedName("part_lithium").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":part_lithium");
|
||||
part_beryllium = new Item().setUnlocalizedName("part_beryllium").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":part_beryllium");
|
||||
@ -3430,29 +3416,13 @@ public class ModItems {
|
||||
|
||||
thermo_element = new Item().setUnlocalizedName("thermo_element").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":thermo_element");
|
||||
//limiter = new Item().setUnlocalizedName("limiter").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":limiter");
|
||||
catalytic_converter = new Item().setUnlocalizedName("catalytic_converter").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":catalytic_converter");
|
||||
|
||||
antiknock = new Item().setUnlocalizedName("antiknock").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":antiknock");
|
||||
|
||||
canister_empty = new ItemCustomLore().setUnlocalizedName("canister_empty").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":canister_empty");
|
||||
canister_full = new ItemCanister().setUnlocalizedName("canister_full").setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_empty");
|
||||
canister_smear = new ItemCustomLore().setUnlocalizedName("canister_smear").setCreativeTab(null).setTextureName(RefStrings.MODID + ":canister_smear");
|
||||
canister_canola = new ItemCustomLore().setUnlocalizedName("canister_canola").setCreativeTab(null).setTextureName(RefStrings.MODID + ":canister_canola");
|
||||
canister_oil = new ItemCustomLore().setUnlocalizedName("canister_oil").setCreativeTab(null).setTextureName(RefStrings.MODID + ":canister_oil");
|
||||
canister_fuel = new ItemCustomLore().setUnlocalizedName("canister_fuel").setCreativeTab(null).setTextureName(RefStrings.MODID + ":canister_fuel");
|
||||
canister_kerosene = new ItemCustomLore().setUnlocalizedName("canister_kerosene").setCreativeTab(null).setTextureName(RefStrings.MODID + ":canister_kerosene");
|
||||
canister_reoil = new ItemCustomLore().setUnlocalizedName("canister_reoil").setCreativeTab(null).setTextureName(RefStrings.MODID + ":canister_reoil");
|
||||
canister_petroil = new ItemCustomLore().setUnlocalizedName("canister_petroil").setCreativeTab(null).setTextureName(RefStrings.MODID + ":canister_petroil");
|
||||
canister_napalm = new ItemCustomLore().setUnlocalizedName("canister_napalm").setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_napalm");
|
||||
canister_gasoline = new ItemCustomLore().setUnlocalizedName("canister_gasoline").setCreativeTab(null).setTextureName(RefStrings.MODID + ":canister_gasoline");
|
||||
canister_fracksol = new ItemCustomLore().setUnlocalizedName("canister_fracksol").setCreativeTab(null).setTextureName(RefStrings.MODID + ":canister_fracksol");
|
||||
canister_NITAN = new ItemCustomLore().setUnlocalizedName("canister_NITAN").setCreativeTab(null).setTextureName(RefStrings.MODID + ":canister_superfuel");
|
||||
canister_heavyoil = new ItemCustomLore().setUnlocalizedName("canister_heavyoil").setCreativeTab(null).setTextureName(RefStrings.MODID + ":canister_heavyoil");
|
||||
canister_bitumen = new ItemCustomLore().setUnlocalizedName("canister_bitumen").setCreativeTab(null).setTextureName(RefStrings.MODID + ":canister_bitumen");
|
||||
canister_heatingoil = new ItemCustomLore().setUnlocalizedName("canister_heatingoil").setCreativeTab(null).setTextureName(RefStrings.MODID + ":canister_heatingoil");
|
||||
canister_naphtha = new ItemCustomLore().setUnlocalizedName("canister_naphtha").setCreativeTab(null).setTextureName(RefStrings.MODID + ":canister_naphtha");
|
||||
canister_lightoil = new ItemCustomLore().setUnlocalizedName("canister_lightoil").setCreativeTab(null).setTextureName(RefStrings.MODID + ":canister_lightoil");
|
||||
canister_biofuel = new ItemCustomLore().setUnlocalizedName("canister_biofuel").setCreativeTab(null).setTextureName(RefStrings.MODID + ":canister_biofuel");
|
||||
canister_ethanol = new ItemCustomLore().setUnlocalizedName("canister_ethanol").setCreativeTab(null).setTextureName(RefStrings.MODID + ":canister_ethanol");
|
||||
gas_empty = new Item().setUnlocalizedName("gas_empty").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":gas_empty");
|
||||
gas_full = new Item().setUnlocalizedName("gas_full").setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.gas_empty).setTextureName(RefStrings.MODID + ":gas_full");
|
||||
gas_petroleum = new Item().setUnlocalizedName("gas_petroleum").setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.gas_empty).setTextureName(RefStrings.MODID + ":gas_petroleum");
|
||||
@ -3532,6 +3502,7 @@ public class ModItems {
|
||||
gun_kit_2 = new ItemSyringe().setUnlocalizedName("gun_kit_2").setMaxStackSize(16).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":gun_kit_2");
|
||||
cbt_device = new ItemSyringe().setUnlocalizedName("cbt_device").setMaxStackSize(1).setCreativeTab(null).setTextureName(RefStrings.MODID + ":cbt_device");
|
||||
cigarette = new ItemCigarette().setUnlocalizedName("cigarette").setFull3D().setMaxStackSize(16).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":cigarette");
|
||||
crackpipe = new ItemCigarette().setUnlocalizedName("crackpipe").setFull3D().setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":crackpipe");
|
||||
|
||||
attachment_mask = new ItemModGasmask().setUnlocalizedName("attachment_mask").setTextureName(RefStrings.MODID + ":attachment_mask");
|
||||
attachment_mask_mono = new ItemModGasmask().setUnlocalizedName("attachment_mask_mono").setTextureName(RefStrings.MODID + ":attachment_mask_mono");
|
||||
@ -6310,6 +6281,9 @@ public class ModItems {
|
||||
GameRegistry.registerItem(plate_armor_fau, plate_armor_fau.getUnlocalizedName());
|
||||
GameRegistry.registerItem(plate_armor_dnt, plate_armor_dnt.getUnlocalizedName());
|
||||
|
||||
//Heavy/Cast Plate
|
||||
GameRegistry.registerItem(plate_cast, plate_cast.getUnlocalizedName());
|
||||
|
||||
//Boards
|
||||
GameRegistry.registerItem(board_copper, board_copper.getUnlocalizedName());
|
||||
|
||||
@ -6644,24 +6618,7 @@ public class ModItems {
|
||||
GameRegistry.registerItem(antiknock, antiknock.getUnlocalizedName());
|
||||
GameRegistry.registerItem(canister_empty, canister_empty.getUnlocalizedName());
|
||||
GameRegistry.registerItem(canister_full, canister_full.getUnlocalizedName());
|
||||
GameRegistry.registerItem(canister_oil, canister_oil.getUnlocalizedName());
|
||||
GameRegistry.registerItem(canister_heavyoil, canister_heavyoil.getUnlocalizedName());
|
||||
GameRegistry.registerItem(canister_bitumen, canister_bitumen.getUnlocalizedName());
|
||||
GameRegistry.registerItem(canister_smear, canister_smear.getUnlocalizedName());
|
||||
GameRegistry.registerItem(canister_heatingoil, canister_heatingoil.getUnlocalizedName());
|
||||
GameRegistry.registerItem(canister_canola, canister_canola.getUnlocalizedName());
|
||||
GameRegistry.registerItem(canister_naphtha, canister_naphtha.getUnlocalizedName());
|
||||
GameRegistry.registerItem(canister_fuel, canister_fuel.getUnlocalizedName());
|
||||
GameRegistry.registerItem(canister_kerosene, canister_kerosene.getUnlocalizedName());
|
||||
GameRegistry.registerItem(canister_lightoil, canister_lightoil.getUnlocalizedName());
|
||||
GameRegistry.registerItem(canister_reoil, canister_reoil.getUnlocalizedName());
|
||||
GameRegistry.registerItem(canister_petroil, canister_petroil.getUnlocalizedName());
|
||||
GameRegistry.registerItem(canister_biofuel, canister_biofuel.getUnlocalizedName());
|
||||
GameRegistry.registerItem(canister_ethanol, canister_ethanol.getUnlocalizedName());
|
||||
GameRegistry.registerItem(canister_napalm, canister_napalm.getUnlocalizedName());
|
||||
GameRegistry.registerItem(canister_gasoline, canister_gasoline.getUnlocalizedName());
|
||||
GameRegistry.registerItem(canister_fracksol, canister_fracksol.getUnlocalizedName());
|
||||
GameRegistry.registerItem(canister_NITAN, canister_NITAN.getUnlocalizedName());
|
||||
|
||||
//Gas Tanks
|
||||
GameRegistry.registerItem(gas_empty, gas_empty.getUnlocalizedName());
|
||||
@ -6896,7 +6853,7 @@ public class ModItems {
|
||||
|
||||
//Generator Stuff
|
||||
GameRegistry.registerItem(thermo_element, thermo_element.getUnlocalizedName());
|
||||
//GameRegistry.registerItem(limiter, limiter.getUnlocalizedName());
|
||||
GameRegistry.registerItem(catalytic_converter, catalytic_converter.getUnlocalizedName());
|
||||
|
||||
//AMS Components
|
||||
GameRegistry.registerItem(ams_focus_blank, ams_focus_blank.getUnlocalizedName());
|
||||
@ -7974,6 +7931,7 @@ public class ModItems {
|
||||
GameRegistry.registerItem(chocolate_milk, chocolate_milk.getUnlocalizedName());
|
||||
GameRegistry.registerItem(cbt_device, cbt_device.getUnlocalizedName());
|
||||
GameRegistry.registerItem(cigarette, cigarette.getUnlocalizedName());
|
||||
GameRegistry.registerItem(crackpipe, crackpipe.getUnlocalizedName());
|
||||
|
||||
//Armor mods
|
||||
GameRegistry.registerItem(attachment_mask, attachment_mask.getUnlocalizedName());
|
||||
|
||||
@ -47,6 +47,8 @@ public class ItemMold extends Item {
|
||||
registerMold(new MoldShape( 3, S, "plate", MaterialShapes.PLATE));
|
||||
registerMold(new MoldWire( 4, S, "wire"));
|
||||
|
||||
registerMold(new MoldShape( 19, S, "plate_cast", MaterialShapes.CASTPLATE));
|
||||
|
||||
registerMold(new MoldMulti( 5, S, "blade", MaterialShapes.INGOT.q(3),
|
||||
Mats.MAT_TITANIUM, new ItemStack(ModItems.blade_titanium),
|
||||
Mats.MAT_TUNGSTEN, new ItemStack(ModItems.blade_tungsten)));
|
||||
@ -173,7 +175,7 @@ public class ItemMold extends Item {
|
||||
public ItemStack getOutput(NTMMaterial mat) {
|
||||
|
||||
for(String name : mat.names) {
|
||||
String od = shape.name().toLowerCase() + name;
|
||||
String od = shape.name() + name;
|
||||
List<ItemStack> ores = OreDictionary.getOres(od);
|
||||
if(!ores.isEmpty()) {
|
||||
ItemStack copy = ores.get(0).copy();
|
||||
@ -192,7 +194,7 @@ public class ItemMold extends Item {
|
||||
|
||||
@Override
|
||||
public String getTitle() {
|
||||
return I18nUtil.resolveKey("shape." + shape.name().toLowerCase()) + " x" + amount;
|
||||
return I18nUtil.resolveKey("shape." + shape.name()) + " x" + amount;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -51,7 +51,7 @@ public class ItemScraps extends Item {
|
||||
NTMMaterial mat = Mats.matById.get(stack.getItemDamage());
|
||||
|
||||
if(mat != null) {
|
||||
return mat.moltenColor;
|
||||
return mat.solidColor;
|
||||
}
|
||||
|
||||
return 0xffffff;
|
||||
|
||||
@ -3,6 +3,7 @@ package com.hbm.items.special;
|
||||
import java.util.List;
|
||||
|
||||
import com.hbm.extprop.HbmLivingProps;
|
||||
import com.hbm.items.ModItems;
|
||||
import com.hbm.packet.AuxParticlePacketNT;
|
||||
import com.hbm.packet.PacketDispatcher;
|
||||
|
||||
@ -14,6 +15,8 @@ import net.minecraft.item.EnumAction;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.nbt.NBTTagCompound;
|
||||
import net.minecraft.potion.Potion;
|
||||
import net.minecraft.potion.PotionEffect;
|
||||
import net.minecraft.util.EnumChatFormatting;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
@ -40,9 +43,18 @@ public class ItemCigarette extends Item {
|
||||
stack.stackSize--;
|
||||
|
||||
if(!world.isRemote) {
|
||||
HbmLivingProps.incrementBlackLung(player, 2000);
|
||||
HbmLivingProps.incrementAsbestos(player, 2000);
|
||||
HbmLivingProps.incrementRadiation(player, 100F);
|
||||
|
||||
if(this == ModItems.cigarette) {
|
||||
HbmLivingProps.incrementBlackLung(player, 2000);
|
||||
HbmLivingProps.incrementAsbestos(player, 2000);
|
||||
HbmLivingProps.incrementRadiation(player, 100F);
|
||||
}
|
||||
|
||||
if(this == ModItems.crackpipe) {
|
||||
HbmLivingProps.incrementBlackLung(player, 500);
|
||||
player.addPotionEffect(new PotionEffect(Potion.confusion.id, 200, 0));
|
||||
player.heal(10F);
|
||||
}
|
||||
|
||||
world.playSoundEffect(player.posX, player.posY, player.posZ, "hbm:player.cough", 1.0F, 1.0F);
|
||||
|
||||
@ -60,9 +72,25 @@ public class ItemCigarette extends Item {
|
||||
@Override
|
||||
@SideOnly(Side.CLIENT)
|
||||
public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean ext) {
|
||||
list.add(EnumChatFormatting.RED + "✓ Asbestos filter");
|
||||
list.add(EnumChatFormatting.RED + "✓ High in tar");
|
||||
list.add(EnumChatFormatting.RED + "✓ Tobacco contains 100% Polonium-210");
|
||||
list.add(EnumChatFormatting.RED + "✓ Yum");
|
||||
|
||||
if(this == ModItems.cigarette) {
|
||||
list.add(EnumChatFormatting.RED + "✓ Asbestos filter");
|
||||
list.add(EnumChatFormatting.RED + "✓ High in tar");
|
||||
list.add(EnumChatFormatting.RED + "✓ Tobacco contains 100% Polonium-210");
|
||||
list.add(EnumChatFormatting.RED + "✓ Yum");
|
||||
} else {
|
||||
String[] colors = new String[] {
|
||||
EnumChatFormatting.RED + "",
|
||||
EnumChatFormatting.GOLD + "",
|
||||
EnumChatFormatting.YELLOW + "",
|
||||
EnumChatFormatting.GREEN + "",
|
||||
EnumChatFormatting.AQUA + "",
|
||||
EnumChatFormatting.BLUE + "",
|
||||
EnumChatFormatting.DARK_PURPLE + "",
|
||||
EnumChatFormatting.LIGHT_PURPLE + "",
|
||||
};
|
||||
int len = 2000;
|
||||
list.add("This can't be good for me, but I feel " + colors[(int)(System.currentTimeMillis() % len * colors.length / len)] + "GREAT");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
84
src/main/java/com/hbm/items/special/ItemPlateCast.java
Normal file
@ -0,0 +1,84 @@
|
||||
package com.hbm.items.special;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import com.hbm.inventory.material.MaterialShapes;
|
||||
import com.hbm.inventory.material.Mats;
|
||||
import com.hbm.inventory.material.NTMMaterial;
|
||||
import com.hbm.inventory.material.Mats.MaterialStack;
|
||||
import com.hbm.items.ModItems;
|
||||
import com.hbm.util.I18nUtil;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import net.minecraft.creativetab.CreativeTabs;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.nbt.NBTTagCompound;
|
||||
import net.minecraft.util.StatCollector;
|
||||
|
||||
public class ItemPlateCast extends Item {
|
||||
|
||||
public ItemPlateCast() {
|
||||
this.setHasSubtypes(true);
|
||||
}
|
||||
|
||||
@Override
|
||||
@SideOnly(Side.CLIENT)
|
||||
public void getSubItems(Item item, CreativeTabs tab, List list) {
|
||||
list.add(new ItemStack(item, 1, Mats.MAT_IRON.id));
|
||||
list.add(new ItemStack(item, 1, Mats.MAT_STEEL.id));
|
||||
list.add(new ItemStack(item, 1, Mats.MAT_COPPER.id));
|
||||
}
|
||||
|
||||
@Override
|
||||
@SideOnly(Side.CLIENT)
|
||||
public int getColorFromItemStack(ItemStack stack, int layer) {
|
||||
|
||||
NTMMaterial mat = Mats.matById.get(stack.getItemDamage());
|
||||
|
||||
if(mat != null) {
|
||||
return mat.solidColor;
|
||||
}
|
||||
|
||||
return 0xffffff;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getItemStackDisplayName(ItemStack stack) {
|
||||
|
||||
NTMMaterial mat = Mats.matById.get(stack.getItemDamage());
|
||||
|
||||
if(mat == null) {
|
||||
return "UNDEFINED";
|
||||
}
|
||||
|
||||
String matName = I18nUtil.resolveKey(mat.getUnlocalizedName());
|
||||
return StatCollector.translateToLocalFormatted(this.getUnlocalizedNameInefficiently(stack) + ".name", matName);
|
||||
}
|
||||
|
||||
public static MaterialStack getMats(ItemStack stack) {
|
||||
|
||||
if(stack.getItem() != ModItems.plate_cast) return null;
|
||||
|
||||
NTMMaterial mat = Mats.matById.get(stack.getItemDamage());
|
||||
if(mat == null) return null;
|
||||
|
||||
int amount = MaterialShapes.INGOT.q(1);
|
||||
|
||||
if(stack.hasTagCompound()) {
|
||||
amount = stack.getTagCompound().getInteger("amount");
|
||||
}
|
||||
|
||||
return new MaterialStack(mat, amount);
|
||||
}
|
||||
|
||||
public static ItemStack create(MaterialStack stack) {
|
||||
if(stack.material == null)
|
||||
return new ItemStack(ModItems.nothing); //why do i bother adding checks for fucking everything when they don't work
|
||||
ItemStack scrap = new ItemStack(ModItems.plate_cast, 1, stack.material.id);
|
||||
scrap.stackTagCompound = new NBTTagCompound();
|
||||
scrap.stackTagCompound.setInteger("amount", stack.amount);
|
||||
return scrap;
|
||||
}
|
||||
}
|
||||
@ -167,7 +167,6 @@ public class Library {
|
||||
return true;
|
||||
if((tileentity != null && (tileentity instanceof IFluidAcceptor ||
|
||||
tileentity instanceof IFluidSource)) ||
|
||||
world.getBlock(x, y, z) == ModBlocks.dummy_port_turbofan ||
|
||||
world.getBlock(x, y, z) == ModBlocks.reactor_hatch ||
|
||||
world.getBlock(x, y, z) == ModBlocks.reactor_conductor ||
|
||||
world.getBlock(x, y, z) == ModBlocks.fusion_hatch ||
|
||||
@ -394,11 +393,6 @@ public class Library {
|
||||
Block block = worldObj.getBlock(x, y, z);
|
||||
TileEntity tileentity = worldObj.getTileEntity(x, y, z);
|
||||
|
||||
//Turbofan
|
||||
if(block == ModBlocks.dummy_port_turbofan)
|
||||
{
|
||||
tileentity = worldObj.getTileEntity(((TileEntityDummy)worldObj.getTileEntity(x, y, z)).targetX, ((TileEntityDummy)worldObj.getTileEntity(x, y, z)).targetY, ((TileEntityDummy)worldObj.getTileEntity(x, y, z)).targetZ);
|
||||
}
|
||||
//Large Nuclear Reactor
|
||||
if(block == ModBlocks.reactor_hatch && worldObj.getBlock(x, y, z + 2) == ModBlocks.reactor_computer)
|
||||
{
|
||||
|
||||
@ -765,6 +765,7 @@ public class CraftingManager {
|
||||
addRecipeAuto(new ItemStack(ModBlocks.struct_plasma_core, 1), new Object[] { "CBC", "BHB", "CBC", 'C', ModItems.circuit_gold, 'B', ModBlocks.machine_lithium_battery, 'H', ModBlocks.fusion_heater });
|
||||
addShapelessAuto(new ItemStack(ModBlocks.fusion_heater), new Object[] { ModBlocks.fusion_hatch });
|
||||
addShapelessAuto(new ItemStack(ModItems.energy_core), new Object[] { ModItems.fusion_core, ModItems.fuse });
|
||||
addRecipeAuto(new ItemStack(ModItems.catalytic_converter, 1), new Object[] { "PCP", "PBP", "PCP", 'P', ANY_HARDPLASTIC.ingot(), 'C', CO.dust(), 'B', BI.ingot() });
|
||||
|
||||
addRecipeAuto(new ItemStack(ModItems.upgrade_nullifier, 1), new Object[] { "SPS", "PUP", "SPS", 'S', STEEL.plate(), 'P', ModItems.powder_fire, 'U', ModItems.upgrade_template });
|
||||
addRecipeAuto(new ItemStack(ModItems.upgrade_smelter, 1), new Object[] { "PHP", "CUC", "DTD", 'P', CU.plate(), 'H', Blocks.hopper, 'C', ModItems.coil_tungsten, 'U', ModItems.upgrade_template, 'D', ModItems.coil_copper, 'T', ModBlocks.machine_transformer });
|
||||
@ -913,24 +914,6 @@ public class CraftingManager {
|
||||
addShapelessAuto(new ItemStack(ModItems.holotape_image, 1, EnumHoloImage.HOLO_RESTORED.ordinal()), new Object[] { new ItemStack(ModItems.holotape_image, 1, EnumHoloImage.HOLO_DIGAMMA.ordinal()), KEY_TOOL_SCREWDRIVER, ModItems.ducttape, ModItems.armor_polish });
|
||||
addShapelessAuto(new ItemStack(ModItems.holotape_damaged), new Object[] { DictFrame.fromOne(ModItems.holotape_image, EnumHoloImage.HOLO_RESTORED), ModBlocks.muffler, ModItems.crt_display, ModItems.gem_alexandrite /* placeholder for amplifier */ });
|
||||
|
||||
addShapelessAuto(new ItemStack(ModItems.canister_full, 1, Fluids.SMEAR.getID()), new Object[] { ModItems.canister_smear });
|
||||
addShapelessAuto(new ItemStack(ModItems.canister_full, 1, Fluids.LUBRICANT.getID()), new Object[] { ModItems.canister_canola });
|
||||
addShapelessAuto(new ItemStack(ModItems.canister_full, 1, Fluids.OIL.getID()), new Object[] { ModItems.canister_oil });
|
||||
addShapelessAuto(new ItemStack(ModItems.canister_full, 1, Fluids.DIESEL.getID()), new Object[] { ModItems.canister_fuel });
|
||||
addShapelessAuto(new ItemStack(ModItems.canister_full, 1, Fluids.KEROSENE.getID()), new Object[] { ModItems.canister_kerosene });
|
||||
addShapelessAuto(new ItemStack(ModItems.canister_full, 1, Fluids.RECLAIMED.getID()), new Object[] { ModItems.canister_reoil });
|
||||
addShapelessAuto(new ItemStack(ModItems.canister_full, 1, Fluids.PETROIL.getID()), new Object[] { ModItems.canister_petroil });
|
||||
addShapelessAuto(new ItemStack(ModItems.canister_full, 1, Fluids.GASOLINE_LEADED.getID()), new Object[] { ModItems.canister_gasoline });
|
||||
addShapelessAuto(new ItemStack(ModItems.canister_full, 1, Fluids.FRACKSOL.getID()), new Object[] { ModItems.canister_fracksol });
|
||||
addShapelessAuto(new ItemStack(ModItems.canister_full, 1, Fluids.NITAN.getID()), new Object[] { ModItems.canister_NITAN });
|
||||
addShapelessAuto(new ItemStack(ModItems.canister_full, 1, Fluids.HEAVYOIL.getID()), new Object[] { ModItems.canister_heavyoil });
|
||||
addShapelessAuto(new ItemStack(ModItems.canister_full, 1, Fluids.BITUMEN.getID()), new Object[] { ModItems.canister_bitumen });
|
||||
addShapelessAuto(new ItemStack(ModItems.canister_full, 1, Fluids.HEATINGOIL.getID()), new Object[] { ModItems.canister_heatingoil });
|
||||
addShapelessAuto(new ItemStack(ModItems.canister_full, 1, Fluids.NAPHTHA.getID()), new Object[] { ModItems.canister_naphtha });
|
||||
addShapelessAuto(new ItemStack(ModItems.canister_full, 1, Fluids.LIGHTOIL.getID()), new Object[] { ModItems.canister_lightoil });
|
||||
addShapelessAuto(new ItemStack(ModItems.canister_full, 1, Fluids.BIOFUEL.getID()), new Object[] { ModItems.canister_biofuel });
|
||||
addShapelessAuto(new ItemStack(ModItems.canister_full, 1, Fluids.ETHANOL.getID()), new Object[] { ModItems.canister_ethanol });
|
||||
|
||||
addRecipeAuto(DictFrame.fromOne(ModItems.part_generic, EnumPartType.PISTON_PNEUMATIC, 4), new Object[] { " I ", "CPC", " I ", 'I', IRON.ingot(), 'C', CU.ingot(), 'P', IRON.plate() });
|
||||
addRecipeAuto(DictFrame.fromOne(ModItems.part_generic, EnumPartType.PISTON_HYDRAULIC, 4), new Object[] { " I ", "CPC", " I ", 'I', STEEL.ingot(), 'C', TI.ingot(), 'P', Fluids.LUBRICANT.getDict(1000) });
|
||||
addRecipeAuto(DictFrame.fromOne(ModItems.part_generic, EnumPartType.PISTON_ELECTRIC, 4), new Object[] { " I ", "CPC", " I ", 'I', TCALLOY.ingot(), 'C', ANY_PLASTIC.ingot(), 'P', ModItems.motor });
|
||||
|
||||
@ -1014,6 +1014,25 @@ public class MainRegistry {
|
||||
ignoreMappings.add("hbm:item.gun_revolver_iron");
|
||||
ignoreMappings.add("hbm:item.gun_calamity_dual");
|
||||
ignoreMappings.add("hbm:item.gun_revolver_lead");
|
||||
ignoreMappings.add("hbm:tile.dummy_block_turbofan");
|
||||
ignoreMappings.add("hbm:tile.dummy_port_turbofan");
|
||||
ignoreMappings.add("hbm:item.canister_smear");
|
||||
ignoreMappings.add("hbm:item.canister_canola");
|
||||
ignoreMappings.add("hbm:item.canister_oil");
|
||||
ignoreMappings.add("hbm:item.canister_fuel");
|
||||
ignoreMappings.add("hbm:item.canister_kerosene");
|
||||
ignoreMappings.add("hbm:item.canister_reoil");
|
||||
ignoreMappings.add("hbm:item.canister_petroil");
|
||||
ignoreMappings.add("hbm:item.canister_gasoline");
|
||||
ignoreMappings.add("hbm:item.canister_fracksol");
|
||||
ignoreMappings.add("hbm:item.canister_NITAN");
|
||||
ignoreMappings.add("hbm:item.canister_heavyoil");
|
||||
ignoreMappings.add("hbm:item.canister_bitumen");
|
||||
ignoreMappings.add("hbm:item.canister_heatingoil");
|
||||
ignoreMappings.add("hbm:item.canister_naphtha");
|
||||
ignoreMappings.add("hbm:item.canister_lightoil");
|
||||
ignoreMappings.add("hbm:item.canister_biofuel");
|
||||
ignoreMappings.add("hbm:item.canister_ethanol");
|
||||
|
||||
/// REMAP ///
|
||||
remapItems.put("hbm:item.gadget_explosive8", ModItems.early_explosive_lenses);
|
||||
|
||||
@ -100,7 +100,6 @@ public class NEIConfig implements IConfigureNEI {
|
||||
}
|
||||
API.hideItem(new ItemStack(ModBlocks.dummy_block_assembler));
|
||||
API.hideItem(new ItemStack(ModBlocks.dummy_block_drill));
|
||||
API.hideItem(new ItemStack(ModBlocks.dummy_block_turbofan));
|
||||
API.hideItem(new ItemStack(ModBlocks.dummy_block_ams_base));
|
||||
API.hideItem(new ItemStack(ModBlocks.dummy_block_ams_emitter));
|
||||
API.hideItem(new ItemStack(ModBlocks.dummy_block_ams_limiter));
|
||||
@ -110,7 +109,6 @@ public class NEIConfig implements IConfigureNEI {
|
||||
API.hideItem(new ItemStack(ModBlocks.dummy_block_puf6));
|
||||
API.hideItem(new ItemStack(ModBlocks.dummy_port_assembler));
|
||||
API.hideItem(new ItemStack(ModBlocks.dummy_port_drill));
|
||||
API.hideItem(new ItemStack(ModBlocks.dummy_port_turbofan));
|
||||
API.hideItem(new ItemStack(ModBlocks.dummy_port_ams_base));
|
||||
API.hideItem(new ItemStack(ModBlocks.dummy_port_ams_emitter));
|
||||
API.hideItem(new ItemStack(ModBlocks.dummy_port_ams_limiter));
|
||||
@ -166,5 +164,4 @@ public class NEIConfig implements IConfigureNEI {
|
||||
public String getVersion() {
|
||||
return RefStrings.VERSION;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -7,6 +7,7 @@ import com.hbm.blocks.BlockDummyable;
|
||||
import com.hbm.blocks.ModBlocks;
|
||||
import com.hbm.items.ModItems;
|
||||
import com.hbm.lib.RefStrings;
|
||||
import com.hbm.main.MainRegistry;
|
||||
import com.hbm.main.ResourceManager;
|
||||
import com.hbm.render.item.ItemRenderBase;
|
||||
import com.hbm.render.util.HorsePronter;
|
||||
@ -46,37 +47,39 @@ public class RenderCatalyticReformer extends TileEntitySpecialRenderer implement
|
||||
ResourceManager.catalytic_reformer.renderAll();
|
||||
GL11.glShadeModel(GL11.GL_FLAT);
|
||||
|
||||
/// rapidly spinning dicks ///
|
||||
GL11.glEnable(GL12.GL_RESCALE_NORMAL);
|
||||
GL11.glTranslated(-1.125, 1.375, 1);
|
||||
double s = 0.125D;
|
||||
GL11.glScaled(s, s, s);
|
||||
GL11.glRotated(System.currentTimeMillis() / 5D % 360D, 0, -1, 0);
|
||||
GL11.glTranslated(0, 0.1, -0.5);
|
||||
|
||||
this.bindTexture(extra);
|
||||
HorsePronter.reset();
|
||||
double r = 60;
|
||||
HorsePronter.pose(HorsePronter.id_body, 0, -r, 0);
|
||||
HorsePronter.pose(HorsePronter.id_tail, 0, 45, 90);
|
||||
HorsePronter.pose(HorsePronter.id_lbl, 0, -90 + r, 35);
|
||||
HorsePronter.pose(HorsePronter.id_rbl, 0, -90 + r, -35);
|
||||
HorsePronter.pose(HorsePronter.id_lfl, 0, r - 10, 5);
|
||||
HorsePronter.pose(HorsePronter.id_rfl, 0, r - 10, -5);
|
||||
HorsePronter.pose(HorsePronter.id_head, 0, r, 0);
|
||||
HorsePronter.enableHorn();
|
||||
HorsePronter.enableWings();
|
||||
HorsePronter.pront();
|
||||
|
||||
ItemStack stack = new ItemStack(ModItems.cigarette);
|
||||
double scale = 0.25;
|
||||
GL11.glTranslated(0.02, 1.13, -0.42);
|
||||
GL11.glScaled(scale, scale, scale);
|
||||
GL11.glRotated(90, 0, -1, 0);
|
||||
GL11.glRotated(60, 0, 0, -1);
|
||||
bindTexture(TextureMap.locationItemsTexture);
|
||||
IIcon icon = stack.getIconIndex();
|
||||
ItemRenderer.renderItemIn2D(Tessellator.instance, icon.getMaxU(), icon.getMinV(), icon.getMinU(), icon.getMaxV(), icon.getIconWidth(), icon.getIconHeight(), 0.0625F);
|
||||
if(MainRegistry.polaroidID == 11) {
|
||||
/// rapidly spinning dicks ///
|
||||
GL11.glEnable(GL12.GL_RESCALE_NORMAL);
|
||||
GL11.glTranslated(-1.125, 1.375, 1);
|
||||
double s = 0.125D;
|
||||
GL11.glScaled(s, s, s);
|
||||
GL11.glRotated(System.currentTimeMillis() / 5D % 360D, 0, -1, 0);
|
||||
GL11.glTranslated(0, 0.1, -0.5);
|
||||
|
||||
this.bindTexture(extra);
|
||||
HorsePronter.reset();
|
||||
double r = 60;
|
||||
HorsePronter.pose(HorsePronter.id_body, 0, -r, 0);
|
||||
HorsePronter.pose(HorsePronter.id_tail, 0, 45, 90);
|
||||
HorsePronter.pose(HorsePronter.id_lbl, 0, -90 + r, 35);
|
||||
HorsePronter.pose(HorsePronter.id_rbl, 0, -90 + r, -35);
|
||||
HorsePronter.pose(HorsePronter.id_lfl, 0, r - 10, 5);
|
||||
HorsePronter.pose(HorsePronter.id_rfl, 0, r - 10, -5);
|
||||
HorsePronter.pose(HorsePronter.id_head, 0, r, 0);
|
||||
HorsePronter.enableHorn();
|
||||
HorsePronter.enableWings();
|
||||
HorsePronter.pront();
|
||||
|
||||
ItemStack stack = new ItemStack(ModItems.cigarette);
|
||||
double scale = 0.25;
|
||||
GL11.glTranslated(0.02, 1.13, -0.42);
|
||||
GL11.glScaled(scale, scale, scale);
|
||||
GL11.glRotated(90, 0, -1, 0);
|
||||
GL11.glRotated(60, 0, 0, -1);
|
||||
bindTexture(TextureMap.locationItemsTexture);
|
||||
IIcon icon = stack.getIconIndex();
|
||||
ItemRenderer.renderItemIn2D(Tessellator.instance, icon.getMaxU(), icon.getMinV(), icon.getMinU(), icon.getMaxV(), icon.getIconWidth(), icon.getIconHeight(), 0.0625F);
|
||||
}
|
||||
|
||||
GL11.glEnable(GL11.GL_CULL_FACE);
|
||||
GL11.glPopMatrix();
|
||||
|
||||
@ -20,10 +20,7 @@ public class RenderTurbofan extends TileEntitySpecialRenderer {
|
||||
GL11.glEnable(GL11.GL_LIGHTING);
|
||||
GL11.glEnable(GL11.GL_CULL_FACE);
|
||||
|
||||
GL11.glRotatef(180, 0F, 1F, 0F);
|
||||
GL11.glRotatef(270, 0F, 1F, 0F);
|
||||
|
||||
switch(tileEntity.getBlockMetadata()) {
|
||||
switch(tileEntity.getBlockMetadata() - 10) {
|
||||
case 2: GL11.glRotatef(90, 0F, 1F, 0F); break;
|
||||
case 4: GL11.glRotatef(180, 0F, 1F, 0F); break;
|
||||
case 3: GL11.glRotatef(270, 0F, 1F, 0F); break;
|
||||
|
||||
@ -2,6 +2,9 @@ package com.hbm.tileentity.machine;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import com.hbm.blocks.BlockDummyable;
|
||||
import com.hbm.blocks.ModBlocks;
|
||||
import com.hbm.handler.MultiblockHandlerXR;
|
||||
import com.hbm.interfaces.IFluidAcceptor;
|
||||
import com.hbm.interfaces.IFluidContainer;
|
||||
import com.hbm.inventory.UpgradeManager;
|
||||
@ -14,6 +17,7 @@ import com.hbm.inventory.fluid.trait.FT_Combustible.FuelGrade;
|
||||
import com.hbm.inventory.gui.GUIMachineTurbofan;
|
||||
import com.hbm.items.ModItems;
|
||||
import com.hbm.items.machine.ItemMachineUpgrade.UpgradeType;
|
||||
import com.hbm.lib.Library;
|
||||
import com.hbm.lib.ModDamageSource;
|
||||
import com.hbm.main.MainRegistry;
|
||||
import com.hbm.packet.AuxParticlePacketNT;
|
||||
@ -24,7 +28,7 @@ import com.hbm.tileentity.TileEntityMachineBase;
|
||||
import com.hbm.util.fauxpointtwelve.DirPos;
|
||||
|
||||
import api.hbm.energy.IEnergyGenerator;
|
||||
import api.hbm.fluid.IFluidStandardReceiver;
|
||||
import api.hbm.fluid.IFluidStandardTransceiver;
|
||||
import cpw.mods.fml.common.network.NetworkRegistry.TargetPoint;
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
@ -33,7 +37,6 @@ import net.minecraft.entity.Entity;
|
||||
import net.minecraft.entity.EntityLivingBase;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.inventory.Container;
|
||||
import net.minecraft.inventory.ISidedInventory;
|
||||
import net.minecraft.nbt.NBTTagCompound;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.util.AxisAlignedBB;
|
||||
@ -41,14 +44,16 @@ import net.minecraft.util.DamageSource;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraftforge.common.util.ForgeDirection;
|
||||
|
||||
public class TileEntityMachineTurbofan extends TileEntityMachineBase implements ISidedInventory, IEnergyGenerator, IFluidContainer, IFluidAcceptor, IFluidStandardReceiver, IGUIProvider {
|
||||
public class TileEntityMachineTurbofan extends TileEntityMachineBase implements IEnergyGenerator, IFluidContainer, IFluidAcceptor, IFluidStandardTransceiver, IGUIProvider {
|
||||
|
||||
public long power;
|
||||
public static final long maxPower = 500_000;
|
||||
public static final long maxPower = 1_000_000;
|
||||
public FluidTank tank;
|
||||
public FluidTank blood;
|
||||
|
||||
public int afterburner;
|
||||
public boolean wasOn;
|
||||
public boolean showBlood = false;
|
||||
|
||||
public float spin;
|
||||
public float lastSpin;
|
||||
@ -57,8 +62,9 @@ public class TileEntityMachineTurbofan extends TileEntityMachineBase implements
|
||||
private AudioWrapper audio;
|
||||
|
||||
public TileEntityMachineTurbofan() {
|
||||
super(3);
|
||||
tank = new FluidTank(Fluids.KEROSENE, 24000, 0);
|
||||
super(5);
|
||||
tank = new FluidTank(Fluids.KEROSENE, 24000);
|
||||
blood = new FluidTank(Fluids.BLOOD, 24000);
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -72,6 +78,8 @@ public class TileEntityMachineTurbofan extends TileEntityMachineBase implements
|
||||
|
||||
this.power = nbt.getLong("powerTime");
|
||||
tank.readFromNBT(nbt, "fuel");
|
||||
blood.readFromNBT(nbt, "blood");
|
||||
this.showBlood = nbt.getBoolean("showBlood");
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -80,6 +88,8 @@ public class TileEntityMachineTurbofan extends TileEntityMachineBase implements
|
||||
|
||||
nbt.setLong("powerTime", power);
|
||||
tank.writeToNBT(nbt, "fuel");
|
||||
blood.writeToNBT(nbt, "blood");
|
||||
nbt.setBoolean("showBlood", showBlood);
|
||||
}
|
||||
|
||||
public long getPowerScaled(long i) {
|
||||
@ -88,7 +98,7 @@ public class TileEntityMachineTurbofan extends TileEntityMachineBase implements
|
||||
|
||||
protected DirPos[] getConPos() {
|
||||
|
||||
ForgeDirection dir = ForgeDirection.getOrientation(this.getBlockMetadata());
|
||||
ForgeDirection dir = ForgeDirection.getOrientation(this.getBlockMetadata() - 10).getRotation(ForgeDirection.UP);
|
||||
ForgeDirection rot = dir.getRotation(ForgeDirection.DOWN);
|
||||
|
||||
return new DirPos[] {
|
||||
@ -104,12 +114,31 @@ public class TileEntityMachineTurbofan extends TileEntityMachineBase implements
|
||||
|
||||
if(!worldObj.isRemote) {
|
||||
|
||||
for(DirPos pos : getConPos()) {
|
||||
this.sendPower(worldObj, pos.getX(), pos.getY(), pos.getZ(), pos.getDir());
|
||||
this.trySubscribe(tank.getTankType(), worldObj, pos.getX(), pos.getY(), pos.getZ(), pos.getDir());
|
||||
//meta below 12 means that it's an old multiblock configuration
|
||||
if(this.getBlockMetadata() < 12) {
|
||||
//get old direction
|
||||
ForgeDirection dir = ForgeDirection.getOrientation(this.getBlockMetadata());
|
||||
//remove tile from the world to prevent inventory dropping
|
||||
worldObj.removeTileEntity(xCoord, yCoord, zCoord);
|
||||
//use fillspace to create a new multiblock configuration
|
||||
worldObj.setBlock(xCoord, yCoord, zCoord, ModBlocks.machine_turbofan, dir.ordinal() + 10, 3);
|
||||
MultiblockHandlerXR.fillSpace(worldObj, xCoord, yCoord, zCoord, ((BlockDummyable) ModBlocks.machine_turbofan).getDimensions(), ModBlocks.machine_turbofan, dir);
|
||||
//restore connections
|
||||
ForgeDirection rot = dir.getRotation(ForgeDirection.UP);
|
||||
((BlockDummyable) ModBlocks.machine_turbofan).makeExtra(worldObj, xCoord + dir.offsetX, yCoord, zCoord + dir.offsetZ);
|
||||
((BlockDummyable) ModBlocks.machine_turbofan).makeExtra(worldObj, xCoord + dir.offsetX - rot.offsetX, yCoord, zCoord + dir.offsetZ - rot.offsetZ);
|
||||
((BlockDummyable) ModBlocks.machine_turbofan).makeExtra(worldObj, xCoord - dir.offsetX, yCoord, zCoord - dir.offsetZ);
|
||||
((BlockDummyable) ModBlocks.machine_turbofan).makeExtra(worldObj, xCoord - dir.offsetX - rot.offsetX, yCoord, zCoord - dir.offsetZ - rot.offsetZ);
|
||||
//load the tile data to restore the old values
|
||||
NBTTagCompound data = new NBTTagCompound();
|
||||
this.writeToNBT(data);
|
||||
worldObj.getTileEntity(xCoord, yCoord, zCoord).readFromNBT(data);
|
||||
return;
|
||||
}
|
||||
|
||||
tank.setType(4, slots);
|
||||
tank.loadTank(0, 1, slots);
|
||||
blood.setTankType(Fluids.BLOOD);
|
||||
|
||||
this.wasOn = false;
|
||||
|
||||
@ -119,27 +148,32 @@ public class TileEntityMachineTurbofan extends TileEntityMachineBase implements
|
||||
if(slots[2] != null && slots[2].getItem() == ModItems.flame_pony)
|
||||
this.afterburner = 100;
|
||||
|
||||
long burn = 0;
|
||||
long burnValue = 0;
|
||||
int amount = 1 + this.afterburner;
|
||||
|
||||
if(tank.getTankType().hasTrait(FT_Combustible.class) && tank.getTankType().getTrait(FT_Combustible.class).getGrade() == FuelGrade.AERO) {
|
||||
burn = tank.getTankType().getTrait(FT_Combustible.class).getCombustionEnergy() / 1_000;
|
||||
burnValue = tank.getTankType().getTrait(FT_Combustible.class).getCombustionEnergy() / 1_000;
|
||||
}
|
||||
|
||||
int toBurn = Math.min(amount, this.tank.getFill());
|
||||
int amountToBurn = Math.min(amount, this.tank.getFill());
|
||||
|
||||
if(toBurn > 0) {
|
||||
if(amountToBurn > 0) {
|
||||
this.wasOn = true;
|
||||
this.tank.setFill(this.tank.getFill() - toBurn);
|
||||
this.power += burn * toBurn;
|
||||
if(this.power > this.maxPower) {
|
||||
this.power = this.maxPower;
|
||||
}
|
||||
this.tank.setFill(this.tank.getFill() - amountToBurn);
|
||||
this.power += burnValue * amountToBurn;
|
||||
}
|
||||
|
||||
if(toBurn > 0) {
|
||||
power = Library.chargeItemsFromTE(slots, 3, power, power);
|
||||
|
||||
for(DirPos pos : getConPos()) {
|
||||
this.sendPower(worldObj, pos.getX(), pos.getY(), pos.getZ(), pos.getDir());
|
||||
this.trySubscribe(tank.getTankType(), worldObj, pos.getX(), pos.getY(), pos.getZ(), pos.getDir());
|
||||
if(this.blood.getFill() > 0) this.sendFluid(blood.getTankType(), worldObj, pos.getX(), pos.getY(), pos.getZ(), pos.getDir());
|
||||
}
|
||||
|
||||
if(burnValue > 0 && amountToBurn > 0) {
|
||||
|
||||
ForgeDirection dir = ForgeDirection.getOrientation(this.getBlockMetadata());
|
||||
ForgeDirection dir = ForgeDirection.getOrientation(this.getBlockMetadata() - 10).getRotation(ForgeDirection.UP);
|
||||
ForgeDirection rot = dir.getRotation(ForgeDirection.UP);
|
||||
|
||||
if(this.afterburner > 0) {
|
||||
@ -155,10 +189,14 @@ public class TileEntityMachineTurbofan extends TileEntityMachineBase implements
|
||||
PacketDispatcher.wrapper.sendToAllAround(new AuxParticlePacketNT(data, this.xCoord + 0.5F - dir.offsetX * (3 - i), this.yCoord + 1.5F, this.zCoord + 0.5F - dir.offsetZ * (3 - i)), new TargetPoint(worldObj.provider.dimensionId, xCoord, yCoord, zCoord, 150));
|
||||
}
|
||||
|
||||
/*if(this.afterburner > 90 && worldObj.rand.nextInt(30) == 0) {
|
||||
/*if(this.afterburner > 90 && worldObj.rand.nextInt(60) == 0) {
|
||||
worldObj.newExplosion(null, xCoord + 0.5 + dir.offsetX * 3.5, yCoord + 0.5, zCoord + 0.5 + dir.offsetZ * 3.5, 3F, false, false);
|
||||
}*/
|
||||
|
||||
if(this.afterburner > 90 && worldObj.rand.nextInt(30) == 0) {
|
||||
worldObj.playSoundEffect(xCoord + 0.5, yCoord + 1.5, zCoord + 0.5, "hbm:block.damage", 3.0F, 0.95F + worldObj.rand.nextFloat() * 0.2F);
|
||||
}
|
||||
|
||||
if(this.afterburner > 90) {
|
||||
NBTTagCompound data = new NBTTagCompound();
|
||||
data.setString("type", "gasfire");
|
||||
@ -220,15 +258,27 @@ public class TileEntityMachineTurbofan extends TileEntityMachineBase implements
|
||||
PacketDispatcher.wrapper.sendToAllAround(new AuxParticlePacketNT(vdat, e.posX, e.posY + e.height * 0.5, e.posZ), new TargetPoint(e.dimension, e.posX, e.posY + e.height * 0.5, e.posZ, 150));
|
||||
|
||||
worldObj.playSoundEffect(e.posX, e.posY, e.posZ, "mob.zombie.woodbreak", 2.0F, 0.95F + worldObj.rand.nextFloat() * 0.2F);
|
||||
|
||||
blood.setFill(blood.getFill() + 50);
|
||||
if(blood.getFill() > blood.getMaxFill()) {
|
||||
blood.setFill(blood.getMaxFill());
|
||||
}
|
||||
this.showBlood = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(this.power > this.maxPower) {
|
||||
this.power = this.maxPower;
|
||||
}
|
||||
|
||||
NBTTagCompound data = new NBTTagCompound();
|
||||
data.setLong("power", power);
|
||||
data.setByte("after", (byte) afterburner);
|
||||
data.setBoolean("wasOn", wasOn);
|
||||
data.setBoolean("showBlood", showBlood);
|
||||
tank.writeToNBT(data, "tank");
|
||||
blood.writeToNBT(data, "blood");
|
||||
this.networkPack(data, 150);
|
||||
|
||||
} else {
|
||||
@ -326,7 +376,9 @@ public class TileEntityMachineTurbofan extends TileEntityMachineBase implements
|
||||
this.power = nbt.getLong("power");
|
||||
this.afterburner = nbt.getByte("after");
|
||||
this.wasOn = nbt.getBoolean("wasOn");
|
||||
this.showBlood = nbt.getBoolean("showBlood");
|
||||
tank.readFromNBT(nbt, "tank");
|
||||
blood.readFromNBT(nbt, "blood");
|
||||
}
|
||||
|
||||
public AudioWrapper createAudioLoop() {
|
||||
@ -398,11 +450,10 @@ public class TileEntityMachineTurbofan extends TileEntityMachineBase implements
|
||||
public AxisAlignedBB getRenderBoundingBox() {
|
||||
return TileEntity.INFINITE_EXTENT_AABB;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
@SideOnly(Side.CLIENT)
|
||||
public double getMaxRenderDistanceSquared()
|
||||
{
|
||||
public double getMaxRenderDistanceSquared() {
|
||||
return 65536.0D;
|
||||
}
|
||||
|
||||
@ -411,9 +462,14 @@ public class TileEntityMachineTurbofan extends TileEntityMachineBase implements
|
||||
return new FluidTank[] { tank };
|
||||
}
|
||||
|
||||
@Override
|
||||
public FluidTank[] getSendingTanks() {
|
||||
return new FluidTank[] { blood };
|
||||
}
|
||||
|
||||
@Override
|
||||
public FluidTank[] getAllTanks() {
|
||||
return new FluidTank[] { tank };
|
||||
return new FluidTank[] { tank, blood };
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@ -8,6 +8,7 @@ import com.hbm.inventory.fluid.Fluids;
|
||||
import com.hbm.inventory.fluid.tank.FluidTank;
|
||||
import com.hbm.inventory.gui.GUIMachineCatalyticReformer;
|
||||
import com.hbm.inventory.recipes.ReformingRecipes;
|
||||
import com.hbm.items.ModItems;
|
||||
import com.hbm.lib.Library;
|
||||
import com.hbm.tileentity.IGUIProvider;
|
||||
import com.hbm.tileentity.IPersistentNBT;
|
||||
@ -102,6 +103,7 @@ public class TileEntityMachineCatalyticReformer extends TileEntityMachineBase im
|
||||
|
||||
if(power < 20_000) return;
|
||||
if(tanks[0].getFill() < 100) return;
|
||||
if(slots[10] == null || slots[10].getItem() != ModItems.catalytic_converter) return;
|
||||
|
||||
if(tanks[1].getFill() + out.getX().fill > tanks[1].getMaxFill()) return;
|
||||
if(tanks[2].getFill() + out.getY().fill > tanks[2].getMaxFill()) return;
|
||||
|
||||
@ -351,15 +351,19 @@ public class TileEntityCraneConsole extends TileEntity implements INBTPacketRece
|
||||
case "up":
|
||||
tiltFront = 30;
|
||||
if(!worldObj.isRemote) posFront += speed;
|
||||
break;
|
||||
case "down":
|
||||
tiltFront = -30;
|
||||
if(!worldObj.isRemote) posFront -= speed;
|
||||
break;
|
||||
case "left":
|
||||
tiltLeft = 30;
|
||||
if(!worldObj.isRemote) posLeft += speed;
|
||||
break;
|
||||
case "right":
|
||||
tiltLeft = -30;
|
||||
if(!worldObj.isRemote) posLeft -= speed;
|
||||
break;
|
||||
}
|
||||
|
||||
return new Object[] {};
|
||||
|
||||
@ -1313,6 +1313,7 @@ item.casing_50.name=Großkaliberhülse (x12)
|
||||
item.casing_9.name=Kleinkaliberhülse (x32)
|
||||
item.casing_buckshot.name=Schrothülse (x12)
|
||||
item.catalyst_clay.name=Tonerde-Katalysator
|
||||
item.catalytic_converter.name=Katalytischer Konverter
|
||||
item.cbt_device.name=CBT-Gerät
|
||||
item.cell_anti_schrabidium.name=Antischrabidiumzelle
|
||||
item.cell_antimatter.name=Antimaterienzelle
|
||||
@ -1492,6 +1493,7 @@ item.component_limiter.name=Stabilisatorkomponente
|
||||
item.containment_box.name=Sicherheitsbehälter
|
||||
item.cordite.name=Kordit
|
||||
item.cotton_candy.name=Radioaktive Zuckerwatte
|
||||
item.crackpipe.name=Gesundheitspfeife
|
||||
item.crate_caller.name=Nachschub-Requester
|
||||
item.crayon.black.name=Schwarzer Wachsmalstift
|
||||
item.crayon.blue.name=Blauer Wachsmalstift
|
||||
@ -1995,6 +1997,8 @@ item.ingot_neptunium.name=Neptuniumbarren
|
||||
item.ingot_neptunium_fuel.name=Neptuniumkernbrennstoffbarren
|
||||
item.ingot_niobium.name=Niobbarren
|
||||
item.ingot_osmiridium.name=Osmiridiumbarren
|
||||
item.ingot_pb209.name=Blei-209-Barren
|
||||
item.ingot_pet.name=Aluminiumverstärkte PET-Tafel
|
||||
item.ingot_phosphorus.name=Weiße Phosphortafel
|
||||
item.ingot_plutonium.name=Plutoniumbarren
|
||||
item.ingot_plutonium_fuel.name=Plutoniumkernbrennstoffbarren
|
||||
@ -2005,6 +2009,7 @@ item.ingot_pu238.name=Plutonium-238-Barren
|
||||
item.ingot_pu239.name=Plutonium-239-Barren
|
||||
item.ingot_pu240.name=Plutonium-240-Barren
|
||||
item.ingot_pu241.name=Plutonium-241-Barren
|
||||
item.ingot_pvc.name=PVC-Tafel
|
||||
item.ingot_red_copper.name=Minecraft-Kupfer
|
||||
item.ingot_reiium.name=Reiiumbarren
|
||||
item.ingot_rubber.name=Gummitafel
|
||||
@ -2544,6 +2549,7 @@ item.plate_armor_fau.name=Fau-Panzerplatte
|
||||
item.plate_armor_hev.name=Reaktive Panzerplatte
|
||||
item.plate_armor_lunar.name=Lunare Panzerplatte
|
||||
item.plate_armor_titanium.name=Titan-Panzerplatte
|
||||
item.plate_cast.name=Gegossene %splatte
|
||||
item.plate_combine_steel.name=CMB-Stahlplatte
|
||||
item.plate_copper.name=Kupferplatte
|
||||
item.plate_dalekanium.name=Wütendes Metall
|
||||
@ -3281,6 +3287,7 @@ shape.nugget=Nugget
|
||||
shape.quantum=Quantum
|
||||
shape.quart=Viertel Block
|
||||
shape.plate=Platte
|
||||
shape.plateTriple=Gussplatte
|
||||
shape.stamp=Stempel
|
||||
shape.wire=Draht
|
||||
|
||||
|
||||
@ -1916,6 +1916,7 @@ item.casing_50.name=Large Caliber Casing (x12)
|
||||
item.casing_9.name=Small Caliber Casing (x32)
|
||||
item.casing_buckshot.name=Buckshot Casing (x12)
|
||||
item.catalyst_clay.name=Clay Catalyst
|
||||
item.catalytic_converter.name=Catalytic Converter
|
||||
item.cbt_device.name=CBT Device
|
||||
item.cell_anti_schrabidium.name=Antischrabidium Cell
|
||||
item.cell_antimatter.name=Antimatter Cell
|
||||
@ -2097,6 +2098,7 @@ item.component_limiter.name=Stabilizer Component
|
||||
item.containment_box.name=Containment Box
|
||||
item.cordite.name=Cordite
|
||||
item.cotton_candy.name=Radioactive Cotton Candy
|
||||
item.crackpipe.name=Health Pipe
|
||||
item.crate_caller.name=Supply Drop Requester
|
||||
item.crayon.black.name=Black Crayon
|
||||
item.crayon.blue.name=Blue Crayon
|
||||
@ -2635,6 +2637,7 @@ item.ingot_neptunium_fuel.name=Neptunium Fuel Ingot
|
||||
item.ingot_niobium.name=Niobium Ingot
|
||||
item.ingot_osmiridium.name=Osmiridium Ingot
|
||||
item.ingot_pb209.name=Lead-209 Ingot
|
||||
item.ingot_pet.name=Aluminium-Metallized PET Bar
|
||||
item.ingot_phosphorus.name=Bar of White Phosphorus
|
||||
item.ingot_plutonium.name=Plutonium Ingot
|
||||
item.ingot_plutonium_fuel.name=Ingot of Plutonium Fuel
|
||||
@ -2645,6 +2648,7 @@ item.ingot_pu238.name=Plutonium-238 Ingot
|
||||
item.ingot_pu239.name=Plutonium-239 Ingot
|
||||
item.ingot_pu240.name=Plutonium-240 Ingot
|
||||
item.ingot_pu241.name=Plutonium-241 Ingot
|
||||
item.ingot_pvc.name=PVC Bar
|
||||
item.ingot_ra226.name=Radium-226 Ingot
|
||||
item.ingot_red_copper.name=Minecraft Grade Copper
|
||||
item.ingot_reiium.name=Reiium Ingot
|
||||
@ -3247,6 +3251,7 @@ item.plate_armor_lunar.name=Lunar Plating
|
||||
item.plate_armor_titanium.name=Titanium Armor Plate
|
||||
item.plate_bismuth.name=Bismuth Compound Plate
|
||||
item.plate_bismuth.desc=Guys, It's Bismuth's alchemical symbol, I swear.
|
||||
item.plate_cast.name=Cast %s Plate
|
||||
item.plate_combine_steel.name=CMB Steel Plate
|
||||
item.plate_copper.name=Copper Plate
|
||||
item.plate_dalekanium.name=Angry Metal
|
||||
@ -4075,6 +4080,7 @@ shape.nugget=Nugget
|
||||
shape.quantum=Quantum
|
||||
shape.quart=Quarter Block
|
||||
shape.plate=Plate
|
||||
shape.plateTriple=Cast Plate
|
||||
shape.stamp=Press Stamp
|
||||
shape.wire=Wire
|
||||
|
||||
|
||||
@ -51,6 +51,7 @@
|
||||
"block.turbinegasStartup": {"category": "block", "sounds": [{"name": "block/turbinegasStartup", "stream": true}]},
|
||||
"block.turbinegasRunning": {"category": "block", "sounds": [{"name": "block/turbinegasRunning", "stream": false}]},
|
||||
"block.turbinegasShutdown": {"category": "block", "sounds": [{"name": "block/turbinegasShutdown", "stream": true}]},
|
||||
"block.damage": {"category": "block", "sounds": ["block/dam1", "block/dam2", "block/dam3", "block/dam4"]},
|
||||
|
||||
"door.TransitionSealOpen": {"category": "block", "sounds": [{"name": "block/door/transition_seal_open", "stream": true}]},
|
||||
"door.wghStart": {"category": "block", "sounds": [{"name": "block/door/wgh_start", "stream": true}]},
|
||||
|
||||
BIN
src/main/resources/assets/hbm/textures/blocks/tatb_bottom.png
Normal file
|
After Width: | Height: | Size: 329 B |
BIN
src/main/resources/assets/hbm/textures/blocks/tatb_side.png
Normal file
|
After Width: | Height: | Size: 313 B |
BIN
src/main/resources/assets/hbm/textures/blocks/tatb_top.png
Normal file
|
After Width: | Height: | Size: 603 B |
|
Before Width: | Height: | Size: 5.1 KiB After Width: | Height: | Size: 5.2 KiB |
|
After Width: | Height: | Size: 311 B |
|
Before Width: | Height: | Size: 344 B After Width: | Height: | Size: 316 B |
|
Before Width: | Height: | Size: 159 B |
|
Before Width: | Height: | Size: 478 B After Width: | Height: | Size: 484 B |
BIN
src/main/resources/assets/hbm/textures/items/mold_plate_cast.png
Normal file
|
After Width: | Height: | Size: 429 B |
BIN
src/main/resources/assets/hbm/textures/items/plate_cast.png
Normal file
|
After Width: | Height: | Size: 350 B |
BIN
src/main/resources/assets/hbm/textures/items/plate_cast_alt.png
Normal file
|
After Width: | Height: | Size: 321 B |
BIN
src/main/resources/assets/hbm/textures/items/plate_cast_dark.png
Normal file
|
After Width: | Height: | Size: 344 B |