big chungus (turbine edition), screwables, AZ-5 funsies
9
src/main/java/api/hbm/block/IScrewable.java
Normal file
@ -0,0 +1,9 @@
|
||||
package api.hbm.block;
|
||||
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
public interface IScrewable {
|
||||
|
||||
public boolean onScrew(World world, EntityPlayer player, int x, int y, int z, int side, float fX, float fY, float fZ);
|
||||
}
|
||||
@ -625,6 +625,7 @@ public class ModBlocks {
|
||||
public static Block barrel_corroded;
|
||||
public static Block barrel_iron;
|
||||
public static Block barrel_steel;
|
||||
public static Block barrel_tcalloy;
|
||||
public static Block barrel_antimatter;
|
||||
public static final int guiID_barrel = 92;
|
||||
|
||||
@ -1561,6 +1562,7 @@ public class ModBlocks {
|
||||
barrel_corroded = new BlockFluidBarrel(Material.iron, 6000).setBlockName("barrel_corroded").setStepSound(Block.soundTypeMetal).setHardness(2.0F).setResistance(5.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":barrel_corroded");
|
||||
barrel_iron = new BlockFluidBarrel(Material.iron, 8000).setBlockName("barrel_iron").setStepSound(Block.soundTypeMetal).setHardness(2.0F).setResistance(5.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":barrel_iron");
|
||||
barrel_steel = new BlockFluidBarrel(Material.iron, 16000).setBlockName("barrel_steel").setStepSound(Block.soundTypeMetal).setHardness(2.0F).setResistance(5.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":barrel_steel");
|
||||
barrel_tcalloy = new BlockFluidBarrel(Material.iron, 24000).setBlockName("barrel_tcalloy").setStepSound(Block.soundTypeMetal).setHardness(2.0F).setResistance(5.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":barrel_tcalloy");
|
||||
barrel_antimatter = new BlockFluidBarrel(Material.iron, 16000).setBlockName("barrel_antimatter").setStepSound(Block.soundTypeMetal).setHardness(2.0F).setResistance(5.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":barrel_antimatter");
|
||||
|
||||
machine_transformer = new MachineTransformer(Material.iron, 10000L, 1).setBlockName("machine_transformer").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_transformer_iron");
|
||||
@ -2470,6 +2472,7 @@ public class ModBlocks {
|
||||
GameRegistry.registerBlock(barrel_corroded, ItemBlockLore.class, barrel_corroded.getUnlocalizedName());
|
||||
GameRegistry.registerBlock(barrel_iron, ItemBlockLore.class, barrel_iron.getUnlocalizedName());
|
||||
GameRegistry.registerBlock(barrel_steel, ItemBlockLore.class, barrel_steel.getUnlocalizedName());
|
||||
GameRegistry.registerBlock(barrel_tcalloy, ItemBlockLore.class, barrel_tcalloy.getUnlocalizedName());
|
||||
GameRegistry.registerBlock(barrel_antimatter, ItemBlockLore.class, barrel_antimatter.getUnlocalizedName());
|
||||
GameRegistry.registerBlock(machine_battery_potato, machine_battery_potato.getUnlocalizedName());
|
||||
GameRegistry.registerBlock(machine_battery, machine_battery.getUnlocalizedName());
|
||||
|
||||
@ -3,7 +3,6 @@ package com.hbm.blocks.machine;
|
||||
import java.util.Random;
|
||||
|
||||
import com.hbm.blocks.ModBlocks;
|
||||
import com.hbm.interfaces.Spaghetti;
|
||||
import com.hbm.main.MainRegistry;
|
||||
import com.hbm.tileentity.machine.TileEntityBarrel;
|
||||
|
||||
@ -66,74 +65,64 @@ public class BlockFluidBarrel extends BlockContainer {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void setBlockBoundsBasedOnState(IBlockAccess p_149719_1_, int p_149719_2_, int p_149719_3_, int p_149719_4_)
|
||||
{
|
||||
float f = 0.0625F;
|
||||
this.setBlockBounds(2*f, 0.0F, 2*f, 14*f, 1.0F, 14*f);
|
||||
}
|
||||
|
||||
public void setBlockBoundsBasedOnState(IBlockAccess p_149719_1_, int p_149719_2_, int p_149719_3_, int p_149719_4_) {
|
||||
float f = 0.0625F;
|
||||
this.setBlockBounds(2 * f, 0.0F, 2 * f, 14 * f, 1.0F, 14 * f);
|
||||
}
|
||||
|
||||
@Override
|
||||
public AxisAlignedBB getCollisionBoundingBoxFromPool(World world, int x, int y, int z) {
|
||||
float f = 0.0625F;
|
||||
this.setBlockBounds(2*f, 0.0F, 2*f, 14*f, 1.0F, 14*f);
|
||||
float f = 0.0625F;
|
||||
this.setBlockBounds(2 * f, 0.0F, 2 * f, 14 * f, 1.0F, 14 * f);
|
||||
return AxisAlignedBB.getBoundingBox(x + this.minX, y + this.minY, z + this.minZ, x + this.maxX, y + this.maxY, z + this.maxZ);
|
||||
}
|
||||
|
||||
private final Random field_149933_a = new Random();
|
||||
private final Random field_149933_a = new Random();
|
||||
public 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_);
|
||||
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_);
|
||||
|
||||
if (tileentityfurnace != null)
|
||||
{
|
||||
for (int i1 = 0; i1 < tileentityfurnace.getSizeInventory(); ++i1)
|
||||
{
|
||||
ItemStack itemstack = tileentityfurnace.getStackInSlot(i1);
|
||||
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;
|
||||
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;
|
||||
while(itemstack.stackSize > 0) {
|
||||
int j1 = this.field_149933_a.nextInt(21) + 10;
|
||||
|
||||
if (j1 > itemstack.stackSize)
|
||||
{
|
||||
j1 = itemstack.stackSize;
|
||||
}
|
||||
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()));
|
||||
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());
|
||||
}
|
||||
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);
|
||||
}
|
||||
}
|
||||
}
|
||||
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_);
|
||||
}
|
||||
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_);
|
||||
}
|
||||
}
|
||||
|
||||
@ -5,6 +5,7 @@ import com.hbm.lib.RefStrings;
|
||||
import com.hbm.tileentity.machine.TileEntityHadronDiode;
|
||||
import com.hbm.tileentity.machine.TileEntityHadronDiode.DiodeConfig;
|
||||
|
||||
import api.hbm.block.IScrewable;
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import net.minecraft.block.BlockContainer;
|
||||
@ -16,8 +17,8 @@ import net.minecraft.util.IIcon;
|
||||
import net.minecraft.world.IBlockAccess;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
public class BlockHadronDiode extends BlockContainer {
|
||||
|
||||
public class BlockHadronDiode extends BlockContainer implements IScrewable {
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
private IIcon iconIn;
|
||||
@SideOnly(Side.CLIENT)
|
||||
@ -31,7 +32,7 @@ public class BlockHadronDiode extends BlockContainer {
|
||||
public TileEntity createNewTileEntity(World p_149915_1_, int p_149915_2_) {
|
||||
return new TileEntityHadronDiode();
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
@SideOnly(Side.CLIENT)
|
||||
public void registerBlockIcons(IIconRegister iconRegister) {
|
||||
@ -40,13 +41,13 @@ public class BlockHadronDiode extends BlockContainer {
|
||||
this.blockIcon = iconRegister.registerIcon(RefStrings.MODID + ":hadron_diode");
|
||||
}
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
public IIcon getIcon(IBlockAccess world, int x, int y, int z, int side) {
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
public IIcon getIcon(IBlockAccess world, int x, int y, int z, int side) {
|
||||
|
||||
TileEntityHadronDiode diode = (TileEntityHadronDiode) world.getTileEntity(x, y, z);
|
||||
|
||||
|
||||
DiodeConfig conf = diode.getConfig(side);
|
||||
|
||||
|
||||
switch(conf) {
|
||||
case NONE:
|
||||
return blockIcon;
|
||||
@ -56,25 +57,21 @@ public class BlockHadronDiode extends BlockContainer {
|
||||
default:
|
||||
return iconOut;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int side, float fx, float fy, float fz) {
|
||||
|
||||
if(player.getHeldItem() != null && player.getHeldItem().getItem() == ModItems.screwdriver) {
|
||||
|
||||
if(!world.isRemote) {
|
||||
TileEntityHadronDiode diode = (TileEntityHadronDiode) world.getTileEntity(x, y, z);
|
||||
int config = diode.getConfig(side).ordinal();
|
||||
config += 1;
|
||||
config %= DiodeConfig.values().length;
|
||||
diode.setConfig(side, config);
|
||||
}
|
||||
|
||||
world.markBlockForUpdate(x, y, z);
|
||||
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@Override
|
||||
public boolean onScrew(World world, EntityPlayer player, int x, int y, int z, int side, float fX, float fY, float fZ) {
|
||||
|
||||
if(!world.isRemote) {
|
||||
TileEntityHadronDiode diode = (TileEntityHadronDiode) world.getTileEntity(x, y, z);
|
||||
int config = diode.getConfig(side).ordinal();
|
||||
config += 1;
|
||||
config %= DiodeConfig.values().length;
|
||||
diode.setConfig(side, config);
|
||||
}
|
||||
|
||||
world.markBlockForUpdate(x, y, z);
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@ -1,12 +1,16 @@
|
||||
package com.hbm.blocks.machine;
|
||||
|
||||
import com.hbm.blocks.BlockDummyable;
|
||||
import com.hbm.handler.FluidTypeHandler.FluidType;
|
||||
import com.hbm.handler.MultiblockHandlerXR;
|
||||
import com.hbm.tileentity.TileEntityProxyCombo;
|
||||
import com.hbm.tileentity.machine.TileEntityChungus;
|
||||
|
||||
import net.minecraft.block.material.Material;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraftforge.common.util.ForgeDirection;
|
||||
|
||||
public class MachineChungus extends BlockDummyable {
|
||||
|
||||
@ -25,15 +29,107 @@ public class MachineChungus extends BlockDummyable {
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int side, float hitX, float hitY, float hitZ) {
|
||||
|
||||
if(!player.isSneaking()) {
|
||||
|
||||
int[] pos = this.findCore(world, x, y, z);
|
||||
|
||||
if(pos == null)
|
||||
return true;
|
||||
|
||||
TileEntityChungus entity = (TileEntityChungus) world.getTileEntity(pos[0], pos[1], pos[2]);
|
||||
if(entity != null) {
|
||||
|
||||
ForgeDirection dir = ForgeDirection.getOrientation(entity.getBlockMetadata() - this.offset);
|
||||
ForgeDirection turn = dir.getRotation(ForgeDirection.DOWN);
|
||||
|
||||
int iX = entity.xCoord + dir.offsetX + turn.offsetX * 2;
|
||||
int iX2 = entity.xCoord + dir.offsetX * 2 + turn.offsetX * 2;
|
||||
int iZ = entity.zCoord + dir.offsetZ + turn.offsetZ * 2;
|
||||
int iZ2 = entity.zCoord + dir.offsetZ * 2 + turn.offsetZ * 2;
|
||||
|
||||
if((x == iX || x == iX2) && (z == iZ || z == iZ2) && y < entity.yCoord + 2) {
|
||||
world.playSoundEffect(x + 0.5, y + 0.5, z + 0.5, "hbm:block.chungusLever", 1.5F, 1.0F);
|
||||
|
||||
if(!world.isRemote) {
|
||||
switch(entity.tanks[0].getTankType()) {
|
||||
case STEAM:
|
||||
entity.tanks[0].setTankType(FluidType.HOTSTEAM);
|
||||
entity.tanks[1].setTankType(FluidType.STEAM);
|
||||
entity.tanks[0].setFill(entity.tanks[0].getFill() / 10);
|
||||
entity.tanks[1].setFill(0);
|
||||
break;
|
||||
|
||||
case HOTSTEAM:
|
||||
entity.tanks[0].setTankType(FluidType.SUPERHOTSTEAM);
|
||||
entity.tanks[1].setTankType(FluidType.HOTSTEAM);
|
||||
entity.tanks[0].setFill(entity.tanks[0].getFill() / 10);
|
||||
entity.tanks[1].setFill(0);
|
||||
break;
|
||||
|
||||
case SUPERHOTSTEAM:
|
||||
entity.tanks[0].setTankType(FluidType.ULTRAHOTSTEAM);
|
||||
entity.tanks[1].setTankType(FluidType.SUPERHOTSTEAM);
|
||||
entity.tanks[0].setFill(entity.tanks[0].getFill() / 10);
|
||||
entity.tanks[1].setFill(0);
|
||||
break;
|
||||
|
||||
default:
|
||||
case ULTRAHOTSTEAM:
|
||||
entity.tanks[0].setTankType(FluidType.STEAM);
|
||||
entity.tanks[1].setTankType(FluidType.WATER);
|
||||
entity.tanks[0].setFill(Math.min(entity.tanks[0].getFill() * 1000, entity.tanks[0].getMaxFill()));
|
||||
entity.tanks[1].setFill(0);
|
||||
break;
|
||||
}
|
||||
|
||||
entity.markDirty();
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int[] getDimensions() {
|
||||
return new int[] { 3, 0, 10, 4, 2, 2 };
|
||||
return new int[] { 3, 0, 0, 3, 2, 2 };
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getOffset() {
|
||||
return 4;
|
||||
return 3;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void fillSpace(World world, int x, int y, int z, ForgeDirection dir, int o) {
|
||||
super.fillSpace(world, x, y, z, dir, o);
|
||||
MultiblockHandlerXR.fillSpace(world, x + dir.offsetX * o , y + dir.offsetY * o, z + dir.offsetZ * o, new int[] {4, -4, 0, 3, 1, 1}, this, dir);
|
||||
MultiblockHandlerXR.fillSpace(world, x + dir.offsetX * o , y + dir.offsetY * o, z + dir.offsetZ * o, new int[] {3, 0, 6, -1, 1, 1}, this, dir);
|
||||
MultiblockHandlerXR.fillSpace(world, x + dir.offsetX * o , y + dir.offsetY * o, z + dir.offsetZ * o, new int[] {2, 0, 10, -7, 1, 1}, this, dir);
|
||||
world.setBlock(x + dir.offsetX, y + 2, z + dir.offsetZ, this, dir.ordinal(), 3);
|
||||
|
||||
this.makeExtra(world, x + dir.offsetX, y + 2, z + dir.offsetZ);
|
||||
this.makeExtra(world, x + dir.offsetX * (o - 10), y, z + dir.offsetZ * (o - 10));
|
||||
ForgeDirection side = dir.getRotation(ForgeDirection.UP);
|
||||
this.makeExtra(world, x + dir.offsetX * o + side.offsetX * 2 , y, z + dir.offsetZ * o + side.offsetZ * 2);
|
||||
this.makeExtra(world, x + dir.offsetX * o - side.offsetX * 2 , y, z + dir.offsetZ * o - side.offsetZ * 2);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected boolean checkRequirement(World world, int x, int y, int z, ForgeDirection dir, int o) {
|
||||
|
||||
if(!MultiblockHandlerXR.checkSpace(world, x + dir.offsetX * o , y + dir.offsetY * o, z + dir.offsetZ * o, getDimensions(), x, y, z, dir)) return false;
|
||||
if(!MultiblockHandlerXR.checkSpace(world, x + dir.offsetX * o , y + dir.offsetY * o, z + dir.offsetZ * o, new int[] {3, 0, 6, -1, 1, 1}, x, y, z, dir)) return false;
|
||||
if(!MultiblockHandlerXR.checkSpace(world, x + dir.offsetX * o , y + dir.offsetY * o, z + dir.offsetZ * o, new int[] {2, 0, 10, -7, 1, 1}, x, y, z, dir)) return false;
|
||||
if(!world.getBlock(x + dir.offsetX, y + 2, z + dir.offsetZ).canPlaceBlockAt(world, x + dir.offsetX, y + 2, z + dir.offsetZ)) return false;
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@ -8,6 +8,7 @@ import com.hbm.main.MainRegistry;
|
||||
import com.hbm.tileentity.machine.rbmk.RBMKDials;
|
||||
import com.hbm.tileentity.machine.rbmk.TileEntityRBMKBase;
|
||||
|
||||
import api.hbm.block.IScrewable;
|
||||
import cpw.mods.fml.client.registry.RenderingRegistry;
|
||||
import cpw.mods.fml.common.network.internal.FMLNetworkHandler;
|
||||
import net.minecraft.block.Block;
|
||||
@ -20,7 +21,9 @@ import net.minecraft.util.AxisAlignedBB;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraftforge.common.util.ForgeDirection;
|
||||
|
||||
public abstract class RBMKBase extends BlockDummyable {
|
||||
public abstract class RBMKBase extends BlockDummyable implements IScrewable {
|
||||
|
||||
public static boolean dropLids = true;
|
||||
|
||||
protected RBMKBase() {
|
||||
super(Material.iron);
|
||||
@ -63,7 +66,6 @@ public abstract class RBMKBase extends BlockDummyable {
|
||||
}
|
||||
|
||||
if(!player.isSneaking()) {
|
||||
|
||||
FMLNetworkHandler.openGui(player, MainRegistry.instance, gui, world, pos[0], pos[1], pos[2]);
|
||||
return true;
|
||||
} else {
|
||||
@ -123,7 +125,7 @@ public abstract class RBMKBase extends BlockDummyable {
|
||||
@Override
|
||||
public void breakBlock(World world, int x, int y, int z, Block b, int i) {
|
||||
|
||||
if(!world.isRemote) {
|
||||
if(!world.isRemote && dropLids) {
|
||||
|
||||
if(i == DIR_NORMAL_LID.ordinal() + offset) {
|
||||
world.spawnEntityInWorld(new EntityItem(world, x + 0.5, y + 0.5 + RBMKDials.getColumnHeight(world), z + 0.5, new ItemStack(ModItems.rbmk_lid)));
|
||||
@ -135,6 +137,40 @@ public abstract class RBMKBase extends BlockDummyable {
|
||||
|
||||
super.breakBlock(world, x, y, z, b, i);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean onScrew(World world, EntityPlayer player, int x, int y, int z, int side, float fX, float fY, float fZ) {
|
||||
|
||||
int[] pos = this.findCore(world, x, y, z);
|
||||
|
||||
if(pos != null) {
|
||||
TileEntity te = world.getTileEntity(pos[0], pos[1], pos[2]);
|
||||
|
||||
if(te instanceof TileEntityRBMKBase) {
|
||||
|
||||
TileEntityRBMKBase rbmk = (TileEntityRBMKBase) te;
|
||||
int i = rbmk.getBlockMetadata();
|
||||
|
||||
if(rbmk.hasLid() && rbmk.isLidRemovable()) {
|
||||
|
||||
if(!world.isRemote) {
|
||||
if(i == DIR_NORMAL_LID.ordinal() + offset) {
|
||||
world.spawnEntityInWorld(new EntityItem(world, pos[0] + 0.5, pos[1] + 0.5 + RBMKDials.getColumnHeight(world), pos[2] + 0.5, new ItemStack(ModItems.rbmk_lid)));
|
||||
}
|
||||
if(i == DIR_GLASS_LID.ordinal() + offset) {
|
||||
world.spawnEntityInWorld(new EntityItem(world, pos[0] + 0.5, pos[1] + 0.5 + RBMKDials.getColumnHeight(world), pos[2] + 0.5, new ItemStack(ModItems.rbmk_lid_glass)));
|
||||
}
|
||||
|
||||
world.setBlockMetadataWithNotify(pos[0], pos[1], pos[2], DIR_NO_LID.ordinal() + this.offset, 3);
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
public static int renderIDRods = RenderingRegistry.getNextAvailableRenderId();
|
||||
public static int renderIDPassive = RenderingRegistry.getNextAvailableRenderId();
|
||||
|
||||
@ -170,6 +170,8 @@ public class ConsumableRecipes {
|
||||
GameRegistry.addRecipe(new ItemStack(ModItems.bathwater_mk2, 1), new Object[] { "MWM", "WBW", "MWM", 'M', ModItems.bottle_mercury, 'W', ModItems.nuclear_waste, 'B', ModItems.bathwater });
|
||||
GameRegistry.addRecipe(new ItemStack(ModItems.back_tesla, 1), new Object[] { "DGD", "GTG", "DGD", 'D', ModItems.ducttape, 'G', ModItems.wire_gold, 'T', ModBlocks.tesla });
|
||||
GameRegistry.addRecipe(new ItemStack(ModItems.medal_liquidator, 1), new Object[] { "GBG", "BFB", "GBG", 'G', ModItems.nugget_au198, 'B', ModItems.ingot_boron, 'F', ModItems.debris_fuel });
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(ModItems.injector_5htp, 1), new Object[] { ModItems.five_htp, ModItems.circuit_targeting_tier1, ModItems.plate_saturnite });
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(ModItems.injector_knife, 1), new Object[] { ModItems.injector_5htp, Items.iron_sword });
|
||||
|
||||
//Stealth boy
|
||||
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.stealth_boy, 1), new Object[] { " B", "LI", "LC", 'B', Item.getItemFromBlock(Blocks.stone_button), 'L', Items.leather, 'I', "ingotSteel", 'C', ModItems.circuit_red_copper }));
|
||||
|
||||
@ -101,6 +101,7 @@ public class MineralRecipes {
|
||||
RecipesCommon.addBillet(ModItems.billet_pu238, ModItems.nugget_pu238, "nuggetPlutonium238", "tinyPu238");
|
||||
RecipesCommon.addBillet(ModItems.billet_pu239, ModItems.nugget_pu239, "nuggetPlutonium239", "tinyPu239");
|
||||
RecipesCommon.addBillet(ModItems.billet_pu240, ModItems.nugget_pu240, "nuggetPlutonium240", "tinyPu240");
|
||||
RecipesCommon.addBillet(ModItems.billet_pu241, ModItems.nugget_pu241, "nuggetPlutonium241", "tinyPu241");
|
||||
RecipesCommon.addBillet(ModItems.billet_pu_mix, ModItems.nugget_pu_mix);
|
||||
RecipesCommon.addBillet(ModItems.billet_neptunium, ModItems.nugget_neptunium, "nuggetNeptunium237", "tinyNp237");
|
||||
RecipesCommon.addBillet(ModItems.billet_polonium, ModItems.nugget_polonium, "nuggetPolonium");
|
||||
@ -164,6 +165,7 @@ public class MineralRecipes {
|
||||
GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.pellet_rtg), new Object[] { ModItems.billet_pu238, ModItems.billet_pu238, ModItems.billet_pu238, "plateIron" }));
|
||||
GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.pellet_rtg_weak), new Object[] { ModItems.billet_u238, ModItems.billet_u238, ModItems.billet_pu238, "plateIron" }));
|
||||
GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.pellet_rtg_polonium), new Object[] { ModItems.billet_polonium, ModItems.billet_polonium, ModItems.billet_polonium, "plateIron" }));
|
||||
GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.pellet_rtg_gold), new Object[] { ModItems.billet_au198, ModItems.billet_au198, ModItems.billet_au198, "plateIron" }));
|
||||
|
||||
GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.block_copper), 1), new Object[] { "###", "###", "###", '#', ModItems.ingot_copper });
|
||||
GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.block_fluorite), 1), new Object[] { "###", "###", "###", '#', ModItems.fluorite });
|
||||
|
||||
@ -43,6 +43,7 @@ public class PowderRecipes {
|
||||
GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.powder_advanced_alloy, 3), new Object[] { "dustRedstone", "dustSteel", "dustCopper" }));
|
||||
GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.powder_advanced_alloy, 2), new Object[] { "dustRedCopperAlloy", "dustSteel" }));
|
||||
GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.powder_magnetized_tungsten, 1), new Object[] { "dustTungsten", "nuggetSchrabidium" }));
|
||||
GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.powder_tcalloy, 1), new Object[] { "dustSteel", "nuggetTechnetium99" }));
|
||||
GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.powder_red_copper, 2), new Object[] { "dustRedstone", "dustCopper" }));
|
||||
GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.powder_steel, 2), new Object[] { "dustIron", "dustCoal" }));
|
||||
GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.powder_dura_steel, 2), new Object[] { "dustSteel", "dustTungsten" }));
|
||||
|
||||
@ -163,6 +163,8 @@ public class RodRecipes {
|
||||
RecipesCommon.addRBMKRod(ModItems.billet_thorium_fuel, ModItems.rbmk_fuel_thmeu);
|
||||
RecipesCommon.addRBMKRod(ModItems.billet_plutonium_fuel, ModItems.rbmk_fuel_lep);
|
||||
RecipesCommon.addRBMKRod(ModItems.billet_pu_mix, ModItems.rbmk_fuel_mep);
|
||||
RecipesCommon.addRBMKRod(ModItems.billet_pu239, ModItems.rbmk_fuel_hep);
|
||||
RecipesCommon.addRBMKRod(ModItems.billet_pu241, ModItems.rbmk_fuel_hep241);
|
||||
RecipesCommon.addRBMKRod(ModItems.billet_neptunium_fuel, ModItems.rbmk_fuel_men);
|
||||
RecipesCommon.addRBMKRod(ModItems.billet_po210be, ModItems.rbmk_fuel_po210be);
|
||||
RecipesCommon.addRBMKRod(ModItems.billet_pu238be, ModItems.rbmk_fuel_pu238be);
|
||||
|
||||
@ -134,7 +134,7 @@ public class EntityEffectHandler {
|
||||
|
||||
float digamma = HbmLivingProps.getDigamma(entity);
|
||||
|
||||
if(digamma == 0)
|
||||
if(digamma < 0.01F)
|
||||
return;
|
||||
|
||||
int chance = Math.max(10 - (int)(digamma), 1);
|
||||
|
||||
@ -1,28 +1,38 @@
|
||||
package com.hbm.handler;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
import com.hbm.render.util.EnumSymbol;
|
||||
|
||||
public class FluidTypeHandler {
|
||||
|
||||
public enum FluidType {
|
||||
public static enum FluidTrait {
|
||||
AMAT,
|
||||
CORROSIVE,
|
||||
CORROSIVE_2,
|
||||
NO_CONTAINER;
|
||||
}
|
||||
|
||||
public static enum FluidType {
|
||||
NONE (0x888888, 0, 1, 1, 0, 0, 0, EnumSymbol.NONE, "hbmfluid.none"),
|
||||
|
||||
WATER (0x3333FF, 1, 1, 1, 0, 0, 0, EnumSymbol.NONE, "hbmfluid.water"),
|
||||
STEAM (0xe5e5e5, 9, 2, 1, 3, 0, 0, EnumSymbol.NONE, "hbmfluid.steam", true, false, false, 100),
|
||||
HOTSTEAM (0xE7D6D6, 1, 1, 2, 4, 0, 0, EnumSymbol.NONE, "hbmfluid.hotsteam", true, false, false, 300),
|
||||
SUPERHOTSTEAM (0xE7B7B7, 2, 1, 2, 4, 0, 0, EnumSymbol.NONE, "hbmfluid.superhotsteam", true, false, false, 450),
|
||||
ULTRAHOTSTEAM (0xE39393, 13, 1, 2, 4, 0, 0, EnumSymbol.NONE, "hbmfluid.ultrahotsteam", true, false, false, 600),
|
||||
STEAM (0xe5e5e5, 9, 2, 1, 3, 0, 0, EnumSymbol.NONE, "hbmfluid.steam", 100),
|
||||
HOTSTEAM (0xE7D6D6, 1, 1, 2, 4, 0, 0, EnumSymbol.NONE, "hbmfluid.hotsteam", 300),
|
||||
SUPERHOTSTEAM (0xE7B7B7, 2, 1, 2, 4, 0, 0, EnumSymbol.NONE, "hbmfluid.superhotsteam", 450),
|
||||
ULTRAHOTSTEAM (0xE39393, 13, 1, 2, 4, 0, 0, EnumSymbol.NONE, "hbmfluid.ultrahotsteam", 600),
|
||||
COOLANT (0xd8fcff, 2, 1, 1, 1, 0, 0, EnumSymbol.NONE, "hbmfluid.coolant"),
|
||||
|
||||
LAVA (0xFF3300, 3, 1, 1, 4, 0, 0, EnumSymbol.NOWATER, "hbmfluid.lava", true, false, false, 1200),
|
||||
LAVA (0xFF3300, 3, 1, 1, 4, 0, 0, EnumSymbol.NOWATER, "hbmfluid.lava", 1200),
|
||||
|
||||
DEUTERIUM (0x0000FF, 4, 1, 1, 3, 4, 0, EnumSymbol.NONE, "hbmfluid.deuterium"),
|
||||
TRITIUM (0x000099, 5, 1, 1, 3, 4, 0, EnumSymbol.RADIATION, "hbmfluid.tritium"),
|
||||
|
||||
OIL (0x020202, 6, 1, 1, 2, 1, 0, EnumSymbol.NONE, "hbmfluid.oil"),
|
||||
HOTOIL (0x300900, 8, 2, 1, 2, 3, 0, EnumSymbol.NONE, "hbmfluid.hotoil", true, false, false, 350),
|
||||
HOTOIL (0x300900, 8, 2, 1, 2, 3, 0, EnumSymbol.NONE, "hbmfluid.hotoil", 350),
|
||||
|
||||
HEAVYOIL (0x141312, 2, 2, 1, 2, 1, 0, EnumSymbol.NONE, "hbmfluid.heavyoil"),
|
||||
BITUMEN (0x1f2426, 3, 2, 1, 2, 0, 0, EnumSymbol.NONE, "hbmfluid.bitumen"),
|
||||
@ -48,30 +58,30 @@ public class FluidTypeHandler {
|
||||
|
||||
NITAN (0x8018ad, 15, 2, 1, 2, 4, 1, EnumSymbol.NONE, "hbmfluid.nitan"),
|
||||
|
||||
UF6 (0xD1CEBE, 14, 1, 1, 4, 0, 2, EnumSymbol.RADIATION, "hbmfluid.uf6", false, true, false),
|
||||
PUF6 (0x4C4C4C, 15, 1, 1, 4, 0, 4, EnumSymbol.RADIATION, "hbmfluid.puf6", false, true, false),
|
||||
SAS3 (0x4ffffc, 14, 2, 1, 5, 0, 4, EnumSymbol.RADIATION, "hbmfluid.sas3", false, true, false),
|
||||
SCHRABIDIC (0x006B6B, 14, 1, 2, 5, 0, 5, EnumSymbol.ACID, "hbmfluid.schrabidic", false, true, false),
|
||||
UF6 (0xD1CEBE, 14, 1, 1, 4, 0, 2, EnumSymbol.RADIATION, "hbmfluid.uf6", FluidTrait.CORROSIVE),
|
||||
PUF6 (0x4C4C4C, 15, 1, 1, 4, 0, 4, EnumSymbol.RADIATION, "hbmfluid.puf6", FluidTrait.CORROSIVE),
|
||||
SAS3 (0x4ffffc, 14, 2, 1, 5, 0, 4, EnumSymbol.RADIATION, "hbmfluid.sas3", FluidTrait.CORROSIVE),
|
||||
SCHRABIDIC (0x006B6B, 14, 1, 2, 5, 0, 5, EnumSymbol.ACID, "hbmfluid.schrabidic", FluidTrait.CORROSIVE_2),
|
||||
|
||||
AMAT (0x010101, 0, 2, 1, 5, 0, 5, EnumSymbol.ANTIMATTER, "hbmfluid.amat", false, false, true),
|
||||
ASCHRAB (0xb50000, 1, 2, 1, 5, 0, 5, EnumSymbol.ANTIMATTER, "hbmfluid.aschrab", false, false, true),
|
||||
AMAT (0x010101, 0, 2, 1, 5, 0, 5, EnumSymbol.ANTIMATTER, "hbmfluid.amat", FluidTrait.AMAT),
|
||||
ASCHRAB (0xb50000, 1, 2, 1, 5, 0, 5, EnumSymbol.ANTIMATTER, "hbmfluid.aschrab", FluidTrait.AMAT),
|
||||
|
||||
ACID (0xfff7aa, 10, 2, 1, 3, 0, 3, EnumSymbol.OXIDIZER, "hbmfluid.acid", false, true, false),
|
||||
WATZ (0x86653E, 11, 2, 1, 4, 0, 3, EnumSymbol.ACID, "hbmfluid.watz", false, true, false),
|
||||
CRYOGEL (0x32ffff, 0, 1, 2, 2, 0, 0, EnumSymbol.CROYGENIC, "hbmfluid.cryogel", false, false, false, -170),
|
||||
ACID (0xfff7aa, 10, 2, 1, 3, 0, 3, EnumSymbol.OXIDIZER, "hbmfluid.acid", FluidTrait.CORROSIVE),
|
||||
WATZ (0x86653E, 11, 2, 1, 4, 0, 3, EnumSymbol.ACID, "hbmfluid.watz", FluidTrait.CORROSIVE_2),
|
||||
CRYOGEL (0x32ffff, 0, 1, 2, 2, 0, 0, EnumSymbol.CROYGENIC, "hbmfluid.cryogel", -170),
|
||||
|
||||
HYDROGEN (0x4286f4, 3, 1, 2, 3, 4, 0, EnumSymbol.CROYGENIC, "hbmfluid.hydrogen"),
|
||||
OXYGEN (0x98bdf9, 4, 1, 2, 3, 0, 0, EnumSymbol.CROYGENIC, "hbmfluid.oxygen"),
|
||||
XENON (0xba45e8, 5, 1, 2, 0, 0, 0, EnumSymbol.ASPHYXIANT, "hbmfluid.xenon"),
|
||||
BALEFIRE (0x28e02e, 6, 1, 2, 4, 4, 3, EnumSymbol.RADIATION, "hbmfluid.balefire", true, true, false, 1500),
|
||||
BALEFIRE (0x28e02e, 6, 1, 2, 4, 4, 3, EnumSymbol.RADIATION, "hbmfluid.balefire", 1500, FluidTrait.CORROSIVE),
|
||||
|
||||
MERCURY (0x808080, 7, 1, 2, 2, 0, 0, EnumSymbol.NONE, "hbmfluid.mercury"),
|
||||
|
||||
PLASMA_DT (0xF7AFDE, 8, 1, 2, 0, 4, 0, EnumSymbol.RADIATION, "hbmfluid.plasma_dt", true, false, true, 3250),
|
||||
PLASMA_HD (0xF0ADF4, 9, 1, 2, 0, 4, 0, EnumSymbol.RADIATION, "hbmfluid.plasma_hd", true, false, true, 2500),
|
||||
PLASMA_HT (0xD1ABF2, 10, 1, 2, 0, 4, 0, EnumSymbol.RADIATION, "hbmfluid.plasma_ht", true, false, true, 3000),
|
||||
PLASMA_XM (0xC6A5FF, 11, 1, 2, 0, 4, 1, EnumSymbol.RADIATION, "hbmfluid.plasma_xm", true, false, true, 4250),
|
||||
PLASMA_BF (0xA7F1A3, 12, 1, 2, 4, 5, 4, EnumSymbol.ANTIMATTER, "hbmfluid.plasma_bf", true, false, true, 8500);
|
||||
PLASMA_DT (0xF7AFDE, 8, 1, 2, 0, 4, 0, EnumSymbol.RADIATION, "hbmfluid.plasma_dt", 3250, FluidTrait.NO_CONTAINER),
|
||||
PLASMA_HD (0xF0ADF4, 9, 1, 2, 0, 4, 0, EnumSymbol.RADIATION, "hbmfluid.plasma_hd", 2500, FluidTrait.NO_CONTAINER),
|
||||
PLASMA_HT (0xD1ABF2, 10, 1, 2, 0, 4, 0, EnumSymbol.RADIATION, "hbmfluid.plasma_ht", 3000, FluidTrait.NO_CONTAINER),
|
||||
PLASMA_XM (0xC6A5FF, 11, 1, 2, 0, 4, 1, EnumSymbol.RADIATION, "hbmfluid.plasma_xm", 4250, FluidTrait.NO_CONTAINER),
|
||||
PLASMA_BF (0xA7F1A3, 12, 1, 2, 4, 5, 4, EnumSymbol.ANTIMATTER, "hbmfluid.plasma_bf", 8500, FluidTrait.NO_CONTAINER);
|
||||
|
||||
|
||||
//Approximate HEX Color of the fluid, used for pipe rendering
|
||||
@ -85,19 +95,32 @@ public class FluidTypeHandler {
|
||||
//Unlocalized string ID of the fluid
|
||||
private String name;
|
||||
//Whether the fluid counts is too hot for certain tanks
|
||||
private boolean hot;
|
||||
//private boolean hot;
|
||||
//Whether the fluid counts as corrosive and requires a steel tank
|
||||
private boolean corrosive;
|
||||
//private boolean corrosive;
|
||||
//Whether the fluid is antimatter and requires magnetic storage
|
||||
private boolean antimatter;
|
||||
//private boolean antimatter;
|
||||
|
||||
public int poison;
|
||||
public int flammability;
|
||||
public int reactivity;
|
||||
public EnumSymbol symbol;
|
||||
public int temperature;
|
||||
public List<FluidTrait> traits = new ArrayList();
|
||||
|
||||
private FluidType(int color, int x, int y, int sheet, int p, int f, int r, EnumSymbol symbol, String name) {
|
||||
this(color, x, y, sheet, p, f, r, symbol, name, 0, new FluidTrait[0]);
|
||||
}
|
||||
|
||||
private FluidType(int color, int x, int y, int sheet, int p, int f, int r, EnumSymbol symbol, String name, FluidTrait... traits) {
|
||||
this(color, x, y, sheet, p, f, r, symbol, name, 0, traits);
|
||||
}
|
||||
|
||||
private FluidType(int color, int x, int y, int sheet, int p, int f, int r, EnumSymbol symbol, String name, int temperature) {
|
||||
this(color, x, y, sheet, p, f, r, symbol, name, temperature, new FluidTrait[0]);
|
||||
}
|
||||
|
||||
private FluidType(int color, int x, int y, int sheet, int p, int f, int r, EnumSymbol symbol, String name, int temperature, FluidTrait... traits) {
|
||||
this.color = color;
|
||||
this.textureX = x;
|
||||
this.textureY = y;
|
||||
@ -107,28 +130,8 @@ public class FluidTypeHandler {
|
||||
this.flammability = f;
|
||||
this.reactivity = r;
|
||||
this.symbol = symbol;
|
||||
this.temperature = 0;
|
||||
}
|
||||
|
||||
private FluidType(int color, int x, int y, int sheet, int p, int f, int r, EnumSymbol symbol, String name, boolean hot, boolean corrosive, boolean antimatter) {
|
||||
this.color = color;
|
||||
this.textureX = x;
|
||||
this.textureY = y;
|
||||
this.name = name;
|
||||
this.sheetID = sheet;
|
||||
this.poison = p;
|
||||
this.flammability = f;
|
||||
this.reactivity = r;
|
||||
this.symbol = symbol;
|
||||
this.hot = hot;
|
||||
this.corrosive = corrosive;
|
||||
this.antimatter = antimatter;
|
||||
this.temperature = 0;
|
||||
}
|
||||
|
||||
private FluidType(int color, int x, int y, int sheet, int p, int f, int r, EnumSymbol symbol, String name, boolean hot, boolean corrosive, boolean antimatter, int temperature) {
|
||||
this(color, x, y, sheet, p, f, r, symbol, name, hot, corrosive, antimatter);
|
||||
this.temperature = temperature;
|
||||
Collections.addAll(this.traits, traits);
|
||||
}
|
||||
|
||||
public int getColor() {
|
||||
@ -175,18 +178,19 @@ public class FluidTypeHandler {
|
||||
}
|
||||
|
||||
public boolean isHot() {
|
||||
return hot;
|
||||
return this.temperature >= 100;
|
||||
}
|
||||
|
||||
public boolean isCorrosive() {
|
||||
return corrosive;
|
||||
return this.traits.contains(FluidTrait.CORROSIVE) || this.traits.contains(FluidTrait.CORROSIVE_2);
|
||||
}
|
||||
|
||||
public boolean isAntimatter() {
|
||||
return antimatter;
|
||||
return this.traits.contains(FluidTrait.AMAT);
|
||||
}
|
||||
|
||||
public boolean hasNoContainer() {
|
||||
return this.traits.contains(FluidTrait.NO_CONTAINER);
|
||||
}
|
||||
};
|
||||
|
||||
//More stuff to follow.
|
||||
|
||||
}
|
||||
|
||||
@ -468,12 +468,23 @@ public class AssemblerRecipes {
|
||||
new ComparableStack(ModItems.hull_big_steel, 1),
|
||||
new OreDictStack("plateSteel", 12),
|
||||
new ComparableStack(ModItems.turbine_titanium, 3),
|
||||
new ComparableStack(ModItems.rotor_steel, 2),
|
||||
new ComparableStack(ModItems.generator_steel, 2),
|
||||
new ComparableStack(ModItems.generator_steel, 1),
|
||||
new ComparableStack(ModItems.bolt_compound, 3),
|
||||
new ComparableStack(ModItems.pipes_steel, 1),
|
||||
new ComparableStack(ModItems.circuit_aluminium, 1),
|
||||
}, 20);
|
||||
makeRecipe(new ComparableStack(ModBlocks.machine_chungus, 1), new AStack[] {
|
||||
new ComparableStack(ModItems.hull_big_steel, 6),
|
||||
new OreDictStack("plateSteel", 32),
|
||||
new OreDictStack("plateTitanium", 12),
|
||||
new ComparableStack(ModItems.ingot_tcalloy, 16),
|
||||
new ComparableStack(ModItems.turbine_tungsten, 5),
|
||||
new ComparableStack(ModItems.turbine_titanium, 3),
|
||||
new ComparableStack(ModItems.flywheel_beryllium, 1),
|
||||
new ComparableStack(ModItems.generator_steel, 10),
|
||||
new ComparableStack(ModItems.bolt_compound, 16),
|
||||
new ComparableStack(ModItems.pipes_steel, 3)
|
||||
}, 600);
|
||||
|
||||
makeRecipe(new ComparableStack(ModItems.pellet_chlorophyte, 2), new AStack[] {
|
||||
new ComparableStack(ModItems.powder_chlorophyte, 1),
|
||||
@ -737,7 +748,7 @@ public class AssemblerRecipes {
|
||||
hidden.put(new ComparableStack(ModItems.missile_soyuz_lander, 1), new HashSet() {{ add(ModItems.journal_bj); }});
|
||||
}
|
||||
|
||||
private static void makeRecipe(ComparableStack out, AStack[] in, int duration) {
|
||||
public static void makeRecipe(ComparableStack out, AStack[] in, int duration) {
|
||||
|
||||
if(out == null || Item.itemRegistry.getNameForObject(out.item) == null) {
|
||||
MainRegistry.logger.error("Canceling assembler registration, item was null!");
|
||||
|
||||
@ -21,9 +21,9 @@ public class CentrifugeRecipes {
|
||||
public static void register() {
|
||||
|
||||
recipes.put(new ComparableStack(ModItems.waste_uranium), new ItemStack[] {
|
||||
new ItemStack(ModItems.nugget_u235, 1),
|
||||
new ItemStack(ModItems.nugget_u238, 1),
|
||||
new ItemStack(ModItems.nugget_pu_mix, 2),
|
||||
new ItemStack(ModItems.nugget_technetium, 1),
|
||||
new ItemStack(ModItems.nuclear_waste_tiny, 2) });
|
||||
|
||||
recipes.put(new ComparableStack(ModItems.waste_plutonium), new ItemStack[] {
|
||||
|
||||
@ -1,6 +1,10 @@
|
||||
package com.hbm.inventory;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import com.hbm.handler.ArmorModHandler;
|
||||
import com.hbm.handler.FluidTypeHandler.FluidTrait;
|
||||
import com.hbm.handler.FluidTypeHandler.FluidType;
|
||||
import com.hbm.interfaces.IPartiallyFillable;
|
||||
import com.hbm.inventory.gui.GuiInfoContainer;
|
||||
@ -235,10 +239,26 @@ public class FluidTank {
|
||||
public void renderTankInfo(GuiInfoContainer gui, int mouseX, int mouseY, int x, int y, int width, int height) {
|
||||
if(x <= mouseX && x + width > mouseX && y < mouseY && y + height >= mouseY) {
|
||||
|
||||
if(type.temperature == 0)
|
||||
gui.drawFluidInfo(new String[] { I18n.format(this.type.getUnlocalizedName()), fluid + "/" + maxFluid + "mB" }, mouseX, mouseY);
|
||||
else
|
||||
gui.drawFluidInfo(new String[] { I18n.format(this.type.getUnlocalizedName()), fluid + "/" + maxFluid + "mB", EnumChatFormatting.RED + "" + type.temperature + "°C" }, mouseX, mouseY);
|
||||
List<String> list = new ArrayList();
|
||||
list.add(I18n.format(this.type.getUnlocalizedName()));
|
||||
list.add(fluid + "/" + maxFluid + "mB");
|
||||
|
||||
if(type.temperature < 0)
|
||||
list.add(EnumChatFormatting.BLUE + "" + type.temperature + "°C");
|
||||
|
||||
if(type.temperature > 0)
|
||||
list.add(EnumChatFormatting.RED + "" + type.temperature + "°C");
|
||||
|
||||
if(type.isAntimatter())
|
||||
list.add(EnumChatFormatting.DARK_RED + "Antimatter");
|
||||
|
||||
if(type.traits.contains(FluidTrait.CORROSIVE))
|
||||
list.add(EnumChatFormatting.YELLOW + "Corrosive");
|
||||
|
||||
if(type.traits.contains(FluidTrait.CORROSIVE_2))
|
||||
list.add(EnumChatFormatting.GOLD + "Strongly Corrosive");
|
||||
|
||||
gui.drawFluidInfo(list.toArray(new String[0]), mouseX, mouseY);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -94,6 +94,11 @@ public class MachineRecipes {
|
||||
return new ItemStack(ModItems.ingot_magnetized_tungsten, 1);
|
||||
}
|
||||
|
||||
if (mODE(item, new String[] {"ingotSteel", "dustSteel"}) && mODE(item2, new String[] {"nuggetTechnetium99", "tinyTc99"})
|
||||
|| mODE(item, new String[] {"nuggetTechnetium99", "tinyTc99"}) && mODE(item2, new String[] {"ingotSteel", "dustSteel"})) {
|
||||
return new ItemStack(ModItems.ingot_tcalloy, 1);
|
||||
}
|
||||
|
||||
if (item.getItem() == ModItems.plate_mixed && mODE(item2, "plateGold")
|
||||
|| mODE(item, "plateGold") && item2.getItem() == ModItems.plate_mixed) {
|
||||
return new ItemStack(ModItems.plate_paa, 2);
|
||||
@ -799,6 +804,8 @@ public class MachineRecipes {
|
||||
getFurnaceOutput(new ItemStack(ModItems.ingot_steel), new ItemStack(ModItems.ingot_cobalt)).copy());
|
||||
recipes.put(new ItemStack[] { new ItemStack(ModItems.ingot_saturnite), new ItemStack(ModItems.powder_meteorite) },
|
||||
getFurnaceOutput(new ItemStack(ModItems.ingot_saturnite), new ItemStack(ModItems.powder_meteorite)).copy());
|
||||
recipes.put(new ItemStack[] { new ItemStack(ModItems.ingot_steel), new ItemStack(ModItems.nugget_technetium) },
|
||||
getFurnaceOutput(new ItemStack(ModItems.ingot_steel), new ItemStack(ModItems.nugget_technetium)).copy());
|
||||
|
||||
if(GeneralConfig.enableBabyMode) {
|
||||
recipes.put(new ItemStack[] { new ItemStack(ModItems.canister_empty), new ItemStack(Items.coal) },
|
||||
|
||||
@ -21,6 +21,7 @@ public class OreDictManager {
|
||||
OreDictionary.registerOre("ingotPlutonium239", ModItems.ingot_pu239);
|
||||
OreDictionary.registerOre("ingotPlutonium240", ModItems.ingot_pu240);
|
||||
OreDictionary.registerOre("ingotNeptunium237", ModItems.ingot_neptunium);
|
||||
OreDictionary.registerOre("ingotTechnetium99", ModItems.ingot_technetium);
|
||||
OreDictionary.registerOre("U233", ModItems.ingot_u233);
|
||||
OreDictionary.registerOre("U235", ModItems.ingot_u235);
|
||||
OreDictionary.registerOre("U238", ModItems.ingot_u238);
|
||||
@ -58,6 +59,7 @@ public class OreDictManager {
|
||||
OreDictionary.registerOre("ingotAsbestos", ModItems.ingot_asbestos);
|
||||
OreDictionary.registerOre("ingotZirconium", ModItems.ingot_zirconium);
|
||||
OreDictionary.registerOre("ingotBoron", ModItems.ingot_boron);
|
||||
OreDictionary.registerOre("ingotTcAlloy", ModItems.ingot_tcalloy);
|
||||
|
||||
OreDictionary.registerOre("nuggetLead", ModItems.nugget_lead);
|
||||
OreDictionary.registerOre("nuggetBeryllium", ModItems.nugget_beryllium);
|
||||
@ -71,9 +73,11 @@ public class OreDictManager {
|
||||
OreDictionary.registerOre("nuggetPlutonium238", ModItems.nugget_pu238);
|
||||
OreDictionary.registerOre("nuggetPlutonium239", ModItems.nugget_pu239);
|
||||
OreDictionary.registerOre("nuggetPlutonium240", ModItems.nugget_pu240);
|
||||
OreDictionary.registerOre("nuggetPlutonium241", ModItems.nugget_pu241);
|
||||
OreDictionary.registerOre("nuggetAustralium", ModItems.nugget_australium);
|
||||
OreDictionary.registerOre("nuggetEuphemium", ModItems.nugget_euphemium);
|
||||
OreDictionary.registerOre("nuggetNeptunium237", ModItems.nugget_neptunium);
|
||||
OreDictionary.registerOre("nuggetTechnetium99", ModItems.nugget_technetium);
|
||||
OreDictionary.registerOre("nuggetPolonium", ModItems.nugget_polonium);
|
||||
OreDictionary.registerOre("nuggetSchrabidium", ModItems.nugget_schrabidium);
|
||||
OreDictionary.registerOre("nuggetZirconium", ModItems.nugget_zirconium);
|
||||
@ -84,7 +88,9 @@ public class OreDictManager {
|
||||
OreDictionary.registerOre("tinyPu238", ModItems.nugget_pu238);
|
||||
OreDictionary.registerOre("tinyPu239", ModItems.nugget_pu239);
|
||||
OreDictionary.registerOre("tinyPu240", ModItems.nugget_pu240);
|
||||
OreDictionary.registerOre("tinyPu241", ModItems.nugget_pu241);
|
||||
OreDictionary.registerOre("tinyNp237", ModItems.nugget_neptunium);
|
||||
OreDictionary.registerOre("tinyTc99", ModItems.nugget_technetium);
|
||||
|
||||
OreDictionary.registerOre("nuggetNeodymium", ModItems.fragment_neodymium);
|
||||
OreDictionary.registerOre("nuggetCobalt", ModItems.fragment_cobalt);
|
||||
@ -136,6 +142,7 @@ public class OreDictManager {
|
||||
OreDictionary.registerOre("dustPhosphorus", ModItems.powder_fire);
|
||||
OreDictionary.registerOre("dustZirconium", ModItems.powder_zirconium);
|
||||
OreDictionary.registerOre("dustBoron", ModItems.powder_boron);
|
||||
OreDictionary.registerOre("dustTcAlloy", ModItems.powder_tcalloy);
|
||||
|
||||
OreDictionary.registerOre("dustNeptunium", ModItems.powder_neptunium);
|
||||
OreDictionary.registerOre("dustIodine", ModItems.powder_iodine);
|
||||
|
||||
@ -222,8 +222,8 @@ public class SILEXRecipes {
|
||||
.addOut(new WeightedRandomObject(new ItemStack(ModItems.nuclear_waste_tiny), 15))
|
||||
);
|
||||
recipes.put(new ComparableStack(ModItems.nuclear_waste_long_depleted, 1, ItemWasteLong.WasteClass.URANIUM.ordinal()), new SILEXRecipe(900, 100)
|
||||
.addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_lead), 75))
|
||||
.addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_bismuth), 5))
|
||||
.addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_lead), 65))
|
||||
.addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_bismuth), 15))
|
||||
.addOut(new WeightedRandomObject(new ItemStack(ModItems.nuclear_waste_tiny), 20))
|
||||
);
|
||||
recipes.put(new ComparableStack(ModItems.nuclear_waste_short, 1, ItemWasteShort.WasteClass.URANIUM.ordinal()), new SILEXRecipe(900, 100)
|
||||
@ -235,8 +235,8 @@ public class SILEXRecipes {
|
||||
);
|
||||
recipes.put(new ComparableStack(ModItems.nuclear_waste_short_depleted, 1, ItemWasteShort.WasteClass.URANIUM.ordinal()), new SILEXRecipe(900, 100)
|
||||
.addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_neptunium), 15))
|
||||
.addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_lead), 35))
|
||||
.addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_bismuth), 5))
|
||||
.addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_lead), 25))
|
||||
.addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_bismuth), 15))
|
||||
.addOut(new WeightedRandomObject(new ItemStack(ModItems.nuclear_waste_tiny), 45))
|
||||
);
|
||||
|
||||
@ -260,8 +260,8 @@ public class SILEXRecipes {
|
||||
.addOut(new WeightedRandomObject(new ItemStack(ModItems.nuclear_waste_tiny), 25))
|
||||
);
|
||||
recipes.put(new ComparableStack(ModItems.nuclear_waste_long_depleted, 1, ItemWasteLong.WasteClass.THORIUM.ordinal()), new SILEXRecipe(900, 100)
|
||||
.addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_lead), 85))
|
||||
.addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_bismuth), 5))
|
||||
.addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_lead), 75))
|
||||
.addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_bismuth), 15))
|
||||
.addOut(new WeightedRandomObject(new ItemStack(ModItems.nuclear_waste_tiny), 10))
|
||||
);
|
||||
|
||||
|
||||
@ -63,7 +63,8 @@ public class GUIScreenTemplateFolder extends GuiScreen {
|
||||
allStacks.add(new ItemStack(ModItems.siren_track, 1, i));
|
||||
// Fluid IDs
|
||||
for(int i = 1; i < FluidType.values().length; i++)
|
||||
allStacks.add(new ItemStack(ModItems.fluid_identifier, 1, i));
|
||||
if(!FluidType.values()[i].hasNoContainer())
|
||||
allStacks.add(new ItemStack(ModItems.fluid_identifier, 1, i));
|
||||
// Assembly Templates
|
||||
for(int i = 0; i < AssemblerRecipes.recipeList.size(); i++)
|
||||
if(AssemblerRecipes.hidden.get(AssemblerRecipes.recipeList.get(i)) == null)
|
||||
|
||||
@ -104,6 +104,7 @@ public class ModItems {
|
||||
public static Item nugget_mox_fuel;
|
||||
public static Item nugget_schrabidium_fuel;
|
||||
public static Item ingot_advanced_alloy;
|
||||
public static Item ingot_tcalloy;
|
||||
public static Item lithium;
|
||||
public static Item ingot_zirconium;
|
||||
public static Item ingot_hes;
|
||||
@ -159,6 +160,7 @@ public class ModItems {
|
||||
public static Item billet_pu238;
|
||||
public static Item billet_pu239;
|
||||
public static Item billet_pu240;
|
||||
public static Item billet_pu241;
|
||||
public static Item billet_pu_mix;
|
||||
public static Item billet_neptunium;
|
||||
public static Item billet_polonium;
|
||||
@ -337,6 +339,7 @@ public class ModItems {
|
||||
public static Item powder_cerium;
|
||||
|
||||
public static Item powder_advanced_alloy;
|
||||
public static Item powder_tcalloy;
|
||||
public static Item powder_coal;
|
||||
public static Item powder_combine_steel;
|
||||
public static Item powder_diamond;
|
||||
@ -513,6 +516,7 @@ public class ModItems {
|
||||
public static Item turbine_tungsten;
|
||||
public static Item pellet_coal;
|
||||
public static Item ring_starmetal;
|
||||
public static Item flywheel_beryllium;
|
||||
|
||||
public static Item toothpicks;
|
||||
public static Item ducttape;
|
||||
@ -934,6 +938,8 @@ public class ModItems {
|
||||
public static ItemRBMKRod rbmk_fuel_thmeu;
|
||||
public static ItemRBMKRod rbmk_fuel_lep;
|
||||
public static ItemRBMKRod rbmk_fuel_mep;
|
||||
public static ItemRBMKRod rbmk_fuel_hep;
|
||||
public static ItemRBMKRod rbmk_fuel_hep241;
|
||||
public static ItemRBMKRod rbmk_fuel_men;
|
||||
public static ItemRBMKRod rbmk_fuel_mox;
|
||||
public static ItemRBMKRod rbmk_fuel_les;
|
||||
@ -2369,6 +2375,7 @@ public class ModItems {
|
||||
nugget_mox_fuel = new ItemHazard(ItemHazard.mox * ItemHazard.nugget).setUnlocalizedName("nugget_mox_fuel").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":nugget_mox_fuel");
|
||||
nugget_schrabidium_fuel = new ItemHazard(ItemHazard.saf * ItemHazard.nugget, false, true).setUnlocalizedName("nugget_schrabidium_fuel").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":nugget_schrabidium_fuel");
|
||||
ingot_advanced_alloy = new Item().setUnlocalizedName("ingot_advanced_alloy").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":ingot_advanced_alloy");
|
||||
ingot_tcalloy = new Item().setUnlocalizedName("ingot_tcalloy").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":ingot_tcalloy");
|
||||
|
||||
niter = new Item().setUnlocalizedName("niter").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":salpeter");
|
||||
ingot_copper = new Item().setUnlocalizedName("ingot_copper").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":ingot_copper");
|
||||
@ -2429,6 +2436,7 @@ public class ModItems {
|
||||
billet_pu238 = new ItemHazard(ItemHazard.pu238 * ItemHazard.billet, true).setUnlocalizedName("billet_pu238").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":billet_pu238");
|
||||
billet_pu239 = new ItemHazard(ItemHazard.pu239 * ItemHazard.billet).setUnlocalizedName("billet_pu239").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":billet_pu239");
|
||||
billet_pu240 = new ItemHazard(ItemHazard.pu240 * ItemHazard.billet).setUnlocalizedName("billet_pu240").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":billet_pu240");
|
||||
billet_pu241 = new ItemHazard().addRadiation(ItemHazard.pu241 * ItemHazard.billet).toItem().setUnlocalizedName("billet_pu241").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":billet_pu241");
|
||||
billet_pu_mix = new ItemHazard(ItemHazard.purg * ItemHazard.billet).setUnlocalizedName("billet_pu_mix").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":billet_pu_mix");
|
||||
billet_neptunium = new ItemHazard(ItemHazard.np237 * ItemHazard.billet).setUnlocalizedName("billet_neptunium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":billet_neptunium");
|
||||
billet_polonium = new ItemHazard(ItemHazard.po210 * ItemHazard.billet, true).setUnlocalizedName("billet_polonium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":billet_polonium");
|
||||
@ -2599,6 +2607,7 @@ public class ModItems {
|
||||
dust = new ItemCustomLore().setUnlocalizedName("dust").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":dust");
|
||||
fallout = new ItemHazard().addRadiation(ItemHazard.fo * ItemHazard.powder).toItem().setUnlocalizedName("fallout").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":fallout");
|
||||
powder_advanced_alloy = new Item().setUnlocalizedName("powder_advanced_alloy").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_advanced_alloy");
|
||||
powder_tcalloy = new Item().setUnlocalizedName("powder_tcalloy").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_tcalloy");
|
||||
powder_coal = new Item().setUnlocalizedName("powder_coal").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_coal");
|
||||
powder_combine_steel = new Item().setUnlocalizedName("powder_combine_steel").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_combine_steel");
|
||||
powder_diamond = new Item().setUnlocalizedName("powder_diamond").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_diamond");
|
||||
@ -2700,6 +2709,7 @@ public class ModItems {
|
||||
component_emitter = new Item().setUnlocalizedName("component_emitter").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":component_emitter");
|
||||
chlorine_pinwheel = new Item().setUnlocalizedName("chlorine_pinwheel").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":chlorine_pinwheel");
|
||||
ring_starmetal = new Item().setUnlocalizedName("ring_starmetal").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":ring_starmetal");
|
||||
flywheel_beryllium = new Item().setUnlocalizedName("flywheel_beryllium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":flywheel_beryllium");
|
||||
|
||||
cap_aluminium = new Item().setUnlocalizedName("cap_aluminium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":cap_aluminium");
|
||||
hull_small_steel = new Item().setUnlocalizedName("hull_small_steel").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":hull_small_steel");
|
||||
@ -3047,7 +3057,7 @@ public class ModItems {
|
||||
wild_p = new ItemModRevive(3).setUnlocalizedName("wild_p").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":wild_p");
|
||||
fabsols_vodka = new ItemModRevive(9999).setUnlocalizedName("fabsols_vodka").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":fabsols_vodka");
|
||||
injector_5htp = new ItemModAuto().setUnlocalizedName("injector_5htp").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":injector_5htp");
|
||||
injector_knife = new ItemModAuto().setUnlocalizedName("injector_knife").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":injector_knife");
|
||||
injector_knife = new ItemModKnife().setUnlocalizedName("injector_knife").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":injector_knife");
|
||||
medal_liquidator = new ItemModMedal().setUnlocalizedName("medal_liquidator").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":medal_liquidator");
|
||||
|
||||
can_empty = new Item().setUnlocalizedName("can_empty").setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":can_empty");
|
||||
@ -3276,6 +3286,20 @@ public class ModItems {
|
||||
.setMeltingPoint(2744)
|
||||
.addRadiation(ItemHazard.purg * ItemHazard.rod_rbmk).toItem()
|
||||
.setUnlocalizedName("rbmk_fuel_mep").setTextureName(RefStrings.MODID + ":rbmk_fuel_mep");
|
||||
rbmk_fuel_hep = (ItemRBMKRod) new ItemRBMKRod("Highly Enriched Plutonium-239")
|
||||
.setYield(100000000D)
|
||||
.setStats(250)
|
||||
.setHeat(1.5D)
|
||||
.setMeltingPoint(2744)
|
||||
.addRadiation(ItemHazard.pu239 * ItemHazard.rod_rbmk).toItem()
|
||||
.setUnlocalizedName("rbmk_fuel_hep").setTextureName(RefStrings.MODID + ":rbmk_fuel_hep");
|
||||
rbmk_fuel_hep241 = (ItemRBMKRod) new ItemRBMKRod("Highly Enriched Plutonium-241")
|
||||
.setYield(100000000D)
|
||||
.setStats(280)
|
||||
.setHeat(1.75D)
|
||||
.setMeltingPoint(2744)
|
||||
.addRadiation(ItemHazard.pu241 * ItemHazard.rod_rbmk).toItem()
|
||||
.setUnlocalizedName("rbmk_fuel_hep241").setTextureName(RefStrings.MODID + ":rbmk_fuel_hep241");
|
||||
rbmk_fuel_men = (ItemRBMKRod) new ItemRBMKRod(rbmk_pellet_men)
|
||||
.setYield(100000000D)
|
||||
.setStats(175)
|
||||
@ -4053,7 +4077,7 @@ public class ModItems {
|
||||
fuse = new ItemCustomLore().setUnlocalizedName("fuse").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":fuse");
|
||||
redcoil_capacitor = new ItemCapacitor(10).setUnlocalizedName("redcoil_capacitor").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":redcoil_capacitor");
|
||||
titanium_filter = new ItemCapacitor(6 * 60 * 60 * 20).setUnlocalizedName("titanium_filter").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":titanium_filter");
|
||||
screwdriver = new ItemCustomLore().setUnlocalizedName("screwdriver").setMaxStackSize(1).setFull3D().setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":screwdriver");
|
||||
screwdriver = new ItemScrewdriver().setUnlocalizedName("screwdriver").setMaxStackSize(1).setFull3D().setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":screwdriver");
|
||||
overfuse = new ItemCustomLore().setUnlocalizedName("overfuse").setMaxStackSize(1).setFull3D().setTextureName(RefStrings.MODID + ":overfuse");
|
||||
arc_electrode = new ItemCustomLore().setUnlocalizedName("arc_electrode").setMaxDamage(250).setCreativeTab(MainRegistry.controlTab).setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setFull3D().setTextureName(RefStrings.MODID + ":arc_electrode");
|
||||
arc_electrode_burnt = new Item().setUnlocalizedName("arc_electrode_burnt").setMaxStackSize(1).setFull3D().setTextureName(RefStrings.MODID + ":arc_electrode_burnt");
|
||||
@ -4463,6 +4487,11 @@ public class ModItems {
|
||||
|
||||
jackt = new ModArmor(MainRegistry.aMatSteel, 7, 1).setUnlocalizedName("jackt").setTextureName(RefStrings.MODID + ":jackt");
|
||||
jackt2 = new ModArmor(MainRegistry.aMatSteel, 7, 1).setUnlocalizedName("jackt2").setTextureName(RefStrings.MODID + ":jackt2");
|
||||
|
||||
initializeItem2();
|
||||
}
|
||||
|
||||
public static void initializeItem2() {
|
||||
|
||||
chainsaw = new ItemToolAbility(25, -0.05, MainRegistry.tMatChainsaw, EnumToolType.AXE)
|
||||
.addBreakAbility(new ToolAbility.SilkAbility())
|
||||
@ -4742,11 +4771,6 @@ public class ModItems {
|
||||
meteorite_sword_baleful = new ItemSwordMeteorite(500F, 0, matMeteorite).setUnlocalizedName("meteorite_sword_baleful").setTextureName(RefStrings.MODID + ":meteorite_sword");
|
||||
|
||||
mask_of_infamy = new MaskOfInfamy(ArmorMaterial.IRON, 8, 0).setUnlocalizedName("mask_of_infamy").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":mask_of_infamy");
|
||||
|
||||
initializeItem2();
|
||||
}
|
||||
|
||||
public static void initializeItem2() {
|
||||
|
||||
hazmat_helmet = new ArmorHazmat(MainRegistry.aMatHaz, 9, 0).setUnlocalizedName("hazmat_helmet").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":hazmat_helmet");
|
||||
hazmat_plate = new ArmorHazmat(MainRegistry.aMatHaz, 9, 1).setUnlocalizedName("hazmat_plate").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":hazmat_plate");
|
||||
@ -5037,6 +5061,7 @@ public class ModItems {
|
||||
GameRegistry.registerItem(ingot_tungsten, ingot_tungsten.getUnlocalizedName());
|
||||
GameRegistry.registerItem(ingot_aluminium, ingot_aluminium.getUnlocalizedName());
|
||||
GameRegistry.registerItem(ingot_steel, ingot_steel.getUnlocalizedName());
|
||||
GameRegistry.registerItem(ingot_tcalloy, ingot_tcalloy.getUnlocalizedName());
|
||||
GameRegistry.registerItem(ingot_lead, ingot_lead.getUnlocalizedName());
|
||||
GameRegistry.registerItem(ingot_bismuth, ingot_bismuth.getUnlocalizedName());
|
||||
GameRegistry.registerItem(ingot_beryllium, ingot_beryllium.getUnlocalizedName());
|
||||
@ -5101,6 +5126,7 @@ public class ModItems {
|
||||
GameRegistry.registerItem(billet_pu238, billet_pu238.getUnlocalizedName());
|
||||
GameRegistry.registerItem(billet_pu239, billet_pu239.getUnlocalizedName());
|
||||
GameRegistry.registerItem(billet_pu240, billet_pu240.getUnlocalizedName());
|
||||
GameRegistry.registerItem(billet_pu241, billet_pu241.getUnlocalizedName());
|
||||
GameRegistry.registerItem(billet_pu_mix, billet_pu_mix.getUnlocalizedName());
|
||||
GameRegistry.registerItem(billet_neptunium, billet_neptunium.getUnlocalizedName());
|
||||
GameRegistry.registerItem(billet_polonium, billet_polonium.getUnlocalizedName());
|
||||
@ -5162,6 +5188,7 @@ public class ModItems {
|
||||
GameRegistry.registerItem(powder_aluminium, powder_aluminium.getUnlocalizedName());
|
||||
GameRegistry.registerItem(powder_steel, powder_steel.getUnlocalizedName());
|
||||
GameRegistry.registerItem(powder_steel_tiny, powder_steel_tiny.getUnlocalizedName());
|
||||
GameRegistry.registerItem(powder_tcalloy, powder_tcalloy.getUnlocalizedName());
|
||||
GameRegistry.registerItem(powder_lead, powder_lead.getUnlocalizedName());
|
||||
GameRegistry.registerItem(powder_yellowcake, powder_yellowcake.getUnlocalizedName());
|
||||
GameRegistry.registerItem(powder_beryllium, powder_beryllium.getUnlocalizedName());
|
||||
@ -5428,6 +5455,7 @@ public class ModItems {
|
||||
GameRegistry.registerItem(blade_tungsten, blade_tungsten.getUnlocalizedName());
|
||||
GameRegistry.registerItem(turbine_titanium, turbine_titanium.getUnlocalizedName());
|
||||
GameRegistry.registerItem(turbine_tungsten, turbine_tungsten.getUnlocalizedName());
|
||||
GameRegistry.registerItem(flywheel_beryllium, flywheel_beryllium.getUnlocalizedName());
|
||||
GameRegistry.registerItem(generator_front, generator_front.getUnlocalizedName());
|
||||
GameRegistry.registerItem(toothpicks, toothpicks.getUnlocalizedName());
|
||||
GameRegistry.registerItem(ducttape, ducttape.getUnlocalizedName());
|
||||
@ -6034,6 +6062,8 @@ public class ModItems {
|
||||
GameRegistry.registerItem(rbmk_fuel_thmeu, rbmk_fuel_thmeu.getUnlocalizedName());
|
||||
GameRegistry.registerItem(rbmk_fuel_lep, rbmk_fuel_lep.getUnlocalizedName());
|
||||
GameRegistry.registerItem(rbmk_fuel_mep, rbmk_fuel_mep.getUnlocalizedName());
|
||||
GameRegistry.registerItem(rbmk_fuel_hep, rbmk_fuel_hep.getUnlocalizedName());
|
||||
GameRegistry.registerItem(rbmk_fuel_hep241, rbmk_fuel_hep241.getUnlocalizedName());
|
||||
GameRegistry.registerItem(rbmk_fuel_men, rbmk_fuel_men.getUnlocalizedName());
|
||||
GameRegistry.registerItem(rbmk_fuel_mox, rbmk_fuel_mox.getUnlocalizedName());
|
||||
GameRegistry.registerItem(rbmk_fuel_les, rbmk_fuel_les.getUnlocalizedName());
|
||||
|
||||
@ -1,12 +1,16 @@
|
||||
package com.hbm.items.armor;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.UUID;
|
||||
|
||||
import com.hbm.extprop.HbmLivingProps;
|
||||
import com.hbm.handler.ArmorModHandler;
|
||||
import com.hbm.items.ModItems;
|
||||
import com.hbm.potion.HbmPotion;
|
||||
|
||||
import net.minecraft.entity.EntityLivingBase;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.potion.PotionEffect;
|
||||
import net.minecraft.util.EnumChatFormatting;
|
||||
|
||||
public class ItemModAuto extends ItemArmorMod {
|
||||
@ -17,17 +21,30 @@ public class ItemModAuto extends ItemArmorMod {
|
||||
|
||||
@Override
|
||||
public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean bool) {
|
||||
|
||||
if(this == ModItems.injector_5htp) {
|
||||
list.add(EnumChatFormatting.BLUE + "Imported from Japsterdam.");
|
||||
}
|
||||
if(this == ModItems.injector_knife) {
|
||||
list.add(EnumChatFormatting.RED + "Pain.");
|
||||
list.add("");
|
||||
list.add(EnumChatFormatting.RED + "Hurts, doesn't it?");
|
||||
}
|
||||
|
||||
list.add(EnumChatFormatting.BLUE + "Imported from Japsterdam.");
|
||||
|
||||
list.add("");
|
||||
super.addInformation(stack, player, list, bool);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void addDesc(List list, ItemStack stack, ItemStack armor) {
|
||||
list.add(EnumChatFormatting.BLUE + " " + stack.getDisplayName());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void modUpdate(EntityLivingBase entity, ItemStack armor) {
|
||||
|
||||
if(!entity.worldObj.isRemote) {
|
||||
|
||||
if(HbmLivingProps.getDigamma(entity) >= 5F) {
|
||||
ArmorModHandler.removeMod(armor, ArmorModHandler.extra);
|
||||
entity.worldObj.playSoundAtEntity(entity, "hbm:item.syringe", 1.0F, 1.0F);
|
||||
HbmLivingProps.setDigamma(entity, HbmLivingProps.getDigamma(entity) - 5F);
|
||||
entity.addPotionEffect(new PotionEffect(HbmPotion.stability.id, 60 * 20, 0));
|
||||
entity.heal(20F);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
85
src/main/java/com/hbm/items/armor/ItemModKnife.java
Normal file
@ -0,0 +1,85 @@
|
||||
package com.hbm.items.armor;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.UUID;
|
||||
|
||||
import com.hbm.handler.ArmorModHandler;
|
||||
import com.hbm.packet.AuxParticlePacketNT;
|
||||
import com.hbm.packet.PacketDispatcher;
|
||||
|
||||
import cpw.mods.fml.common.network.NetworkRegistry.TargetPoint;
|
||||
import net.minecraft.entity.EntityLivingBase;
|
||||
import net.minecraft.entity.SharedMonsterAttributes;
|
||||
import net.minecraft.entity.ai.attributes.AttributeModifier;
|
||||
import net.minecraft.entity.ai.attributes.IAttributeInstance;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.entity.player.EntityPlayerMP;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.nbt.NBTTagCompound;
|
||||
import net.minecraft.util.EnumChatFormatting;
|
||||
|
||||
public class ItemModKnife extends ItemArmorMod {
|
||||
|
||||
public static final UUID trigamma_UUID = UUID.fromString("86d44ca9-44f1-4ca6-bdbb-d9d33bead251");
|
||||
|
||||
public ItemModKnife() {
|
||||
super(ArmorModHandler.extra, false, true, false, false);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean bool) {
|
||||
|
||||
list.add(EnumChatFormatting.RED + "Pain.");
|
||||
list.add("");
|
||||
list.add(EnumChatFormatting.RED + "Hurts, doesn't it?");
|
||||
|
||||
list.add("");
|
||||
super.addInformation(stack, player, list, bool);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void addDesc(List list, ItemStack stack, ItemStack armor) {
|
||||
list.add(EnumChatFormatting.RED + " " + stack.getDisplayName());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void modUpdate(EntityLivingBase entity, ItemStack armor) {
|
||||
|
||||
if(!entity.worldObj.isRemote) {
|
||||
|
||||
if(entity.ticksExisted % 50 == 0 && entity.getMaxHealth() > 2F) {
|
||||
|
||||
entity.worldObj.playSoundAtEntity(entity, "hbm:entity.slicer", 1.0F, 1.0F);
|
||||
|
||||
NBTTagCompound nbt = new NBTTagCompound();
|
||||
nbt.setString("type", "bloodvomit");
|
||||
nbt.setInteger("entity", entity.getEntityId());
|
||||
PacketDispatcher.wrapper.sendToAllAround(new AuxParticlePacketNT(nbt, 0, 0, 0), new TargetPoint(entity.dimension, entity.posX, entity.posY, entity.posZ, 25));
|
||||
|
||||
IAttributeInstance attributeinstance = entity.getAttributeMap().getAttributeInstance(SharedMonsterAttributes.maxHealth);
|
||||
|
||||
float health = entity.getMaxHealth();
|
||||
|
||||
try {
|
||||
attributeinstance.removeModifier(attributeinstance.getModifier(trigamma_UUID));
|
||||
} catch(Exception ex) { }
|
||||
|
||||
attributeinstance.applyModifier(new AttributeModifier(trigamma_UUID, "digamma", -(20F - health + 2), 0));
|
||||
|
||||
if(entity instanceof EntityPlayerMP) {
|
||||
NBTTagCompound data = new NBTTagCompound();
|
||||
data.setString("type", "properJolt");
|
||||
|
||||
if(entity.getMaxHealth() > 2F) {
|
||||
data.setInteger("time", 10000 + entity.getRNG().nextInt(10000));
|
||||
data.setInteger("maxTime", 10000);
|
||||
} else {
|
||||
data.setInteger("time", 0);
|
||||
data.setInteger("maxTime", 0);
|
||||
}
|
||||
PacketDispatcher.wrapper.sendTo(new AuxParticlePacketNT(data, 0, 0, 0), (EntityPlayerMP)entity);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -35,7 +35,7 @@ public class ItemBlockLore extends ItemBlock {
|
||||
if(this.field_150939_a == ModBlocks.barrel_corroded) {
|
||||
list.add(EnumChatFormatting.AQUA + "Capacity: 6,000mB");
|
||||
list.add(EnumChatFormatting.GREEN + "Can store hot fluids");
|
||||
list.add(EnumChatFormatting.GREEN + "Can store corrosive fluids");
|
||||
list.add(EnumChatFormatting.GREEN + "Can store highly corrosive fluids");
|
||||
list.add(EnumChatFormatting.YELLOW + "Cannot store antimatter");
|
||||
list.add(EnumChatFormatting.RED + "Leaky");
|
||||
}
|
||||
@ -51,16 +51,24 @@ public class ItemBlockLore extends ItemBlock {
|
||||
list.add(EnumChatFormatting.AQUA + "Capacity: 16,000mB");
|
||||
list.add(EnumChatFormatting.GREEN + "Can store hot fluids");
|
||||
list.add(EnumChatFormatting.GREEN + "Can store corrosive fluids");
|
||||
list.add(EnumChatFormatting.YELLOW + "Cannot store highly corrosive fluids properly");
|
||||
list.add(EnumChatFormatting.YELLOW + "Cannot store antimatter");
|
||||
}
|
||||
|
||||
if(this.field_150939_a == ModBlocks.barrel_antimatter) {
|
||||
list.add(EnumChatFormatting.AQUA + "Capacity: 16,000mB");
|
||||
list.add(EnumChatFormatting.GREEN + "Can store hot fluids");
|
||||
list.add(EnumChatFormatting.GREEN + "Can store corrosive fluids");
|
||||
list.add(EnumChatFormatting.GREEN + "Can store highly corrosive fluids");
|
||||
list.add(EnumChatFormatting.GREEN + "Can store antimatter");
|
||||
}
|
||||
|
||||
if(this.field_150939_a == ModBlocks.barrel_tcalloy) {
|
||||
list.add(EnumChatFormatting.AQUA + "Capacity: 24,000mB");
|
||||
list.add(EnumChatFormatting.GREEN + "Can store hot fluids");
|
||||
list.add(EnumChatFormatting.GREEN + "Can store highly corrosive fluids");
|
||||
list.add(EnumChatFormatting.YELLOW + "Cannot store antimatter");
|
||||
}
|
||||
|
||||
if(this.field_150939_a == ModBlocks.meteor_battery) {
|
||||
list.add("Provides infinite charge to tesla coils");
|
||||
}
|
||||
|
||||
@ -20,123 +20,111 @@ import net.minecraft.util.IIcon;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
public class ItemFluidIdentifier extends Item {
|
||||
|
||||
|
||||
IIcon overlayIcon;
|
||||
|
||||
public ItemFluidIdentifier()
|
||||
{
|
||||
this.setHasSubtypes(true);
|
||||
this.setMaxDamage(0);
|
||||
}
|
||||
public ItemFluidIdentifier() {
|
||||
this.setHasSubtypes(true);
|
||||
this.setMaxDamage(0);
|
||||
}
|
||||
|
||||
/*@Override
|
||||
public String getUnlocalizedName(ItemStack stack)
|
||||
{
|
||||
int i = stack.getItemDamage();
|
||||
return super.getUnlocalizedName() + "." + FluidType.getEnum(i).getName();
|
||||
}*/
|
||||
|
||||
public ItemStack getContainerItem(ItemStack stack) {
|
||||
return stack.copy();
|
||||
}
|
||||
|
||||
public boolean hasContainerItem() {
|
||||
return true;
|
||||
}
|
||||
|
||||
public boolean doesContainerItemLeaveCraftingGrid(ItemStack stack)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
/*
|
||||
* @Override public String getUnlocalizedName(ItemStack stack) { int i =
|
||||
* stack.getItemDamage(); return super.getUnlocalizedName() + "." +
|
||||
* FluidType.getEnum(i).getName(); }
|
||||
*/
|
||||
|
||||
public ItemStack getContainerItem(ItemStack stack) {
|
||||
return stack.copy();
|
||||
}
|
||||
|
||||
public boolean hasContainerItem() {
|
||||
return true;
|
||||
}
|
||||
|
||||
public boolean doesContainerItemLeaveCraftingGrid(ItemStack stack) {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
@SideOnly(Side.CLIENT)
|
||||
public void getSubItems(Item item, CreativeTabs tabs, List list)
|
||||
{
|
||||
for (int i = 0; i < FluidType.values().length; ++i)
|
||||
{
|
||||
list.add(new ItemStack(item, 1, i));
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean bool)
|
||||
{
|
||||
|
||||
if(!(stack.getItem() instanceof ItemFluidIdentifier))
|
||||
return;
|
||||
@SideOnly(Side.CLIENT)
|
||||
public void getSubItems(Item item, CreativeTabs tabs, List list) {
|
||||
|
||||
for(int i = 0; i < FluidType.values().length; ++i) {
|
||||
if(!FluidType.values()[i].hasNoContainer()) {
|
||||
list.add(new ItemStack(item, 1, i));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean bool) {
|
||||
|
||||
if(!(stack.getItem() instanceof ItemFluidIdentifier))
|
||||
return;
|
||||
|
||||
list.add(EnumChatFormatting.YELLOW + I18nUtil.resolveKey("info.templatefolder", I18nUtil.resolveKey(ModItems.template_folder.getUnlocalizedName() + ".name")));
|
||||
list.add("");
|
||||
list.add("Universal fluid identifier for:");
|
||||
list.add(" " + I18n.format(FluidType.getEnum(stack.getItemDamage()).getUnlocalizedName()));
|
||||
list.add("Universal fluid identifier for:");
|
||||
list.add(" " + I18n.format(FluidType.getEnum(stack.getItemDamage()).getUnlocalizedName()));
|
||||
}
|
||||
|
||||
|
||||
public static FluidType getType(ItemStack stack) {
|
||||
if(stack != null && stack.getItem() instanceof ItemFluidIdentifier)
|
||||
return FluidType.getEnum(stack.getItemDamage());
|
||||
else
|
||||
return FluidType.NONE;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public boolean onItemUse(ItemStack stack, EntityPlayer player, World world, int x, int y, int z, int i, float f1, float f2, float f3)
|
||||
{
|
||||
public boolean onItemUse(ItemStack stack, EntityPlayer player, World world, int x, int y, int z, int i, float f1, float f2, float f3) {
|
||||
TileEntity te = world.getTileEntity(x, y, z);
|
||||
if(te != null && te instanceof TileEntityFluidDuct) {
|
||||
|
||||
|
||||
if(!world.isRemote) {
|
||||
TileEntityFluidDuct duct = (TileEntityFluidDuct)te;
|
||||
TileEntityFluidDuct duct = (TileEntityFluidDuct) te;
|
||||
duct.type = FluidType.getEnum(stack.getItemDamage());
|
||||
}
|
||||
|
||||
|
||||
player.swingItem();
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@Override
|
||||
@SideOnly(Side.CLIENT)
|
||||
public boolean requiresMultipleRenderPasses()
|
||||
{
|
||||
return true;
|
||||
}
|
||||
public boolean requiresMultipleRenderPasses() {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Override
|
||||
@SideOnly(Side.CLIENT)
|
||||
public void registerIcons(IIconRegister p_94581_1_)
|
||||
{
|
||||
super.registerIcons(p_94581_1_);
|
||||
public void registerIcons(IIconRegister p_94581_1_) {
|
||||
super.registerIcons(p_94581_1_);
|
||||
|
||||
this.overlayIcon = p_94581_1_.registerIcon("hbm:fluid_identifier_overlay");
|
||||
}
|
||||
|
||||
@Override
|
||||
this.overlayIcon = p_94581_1_.registerIcon("hbm:fluid_identifier_overlay");
|
||||
}
|
||||
|
||||
@Override
|
||||
@SideOnly(Side.CLIENT)
|
||||
public IIcon getIconFromDamageForRenderPass(int p_77618_1_, int p_77618_2_)
|
||||
{
|
||||
return p_77618_2_ == 1 ? this.overlayIcon : super.getIconFromDamageForRenderPass(p_77618_1_, p_77618_2_);
|
||||
}
|
||||
public IIcon getIconFromDamageForRenderPass(int p_77618_1_, int p_77618_2_) {
|
||||
return p_77618_2_ == 1 ? this.overlayIcon : super.getIconFromDamageForRenderPass(p_77618_1_, p_77618_2_);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Override
|
||||
@SideOnly(Side.CLIENT)
|
||||
public int getColorFromItemStack(ItemStack stack, int p_82790_2_)
|
||||
{
|
||||
if (p_82790_2_ == 0)
|
||||
{
|
||||
return 16777215;
|
||||
}
|
||||
else
|
||||
{
|
||||
int j = FluidType.getEnum(stack.getItemDamage()).getMSAColor();
|
||||
public int getColorFromItemStack(ItemStack stack, int p_82790_2_) {
|
||||
if(p_82790_2_ == 0) {
|
||||
return 16777215;
|
||||
} else {
|
||||
int j = FluidType.getEnum(stack.getItemDamage()).getMSAColor();
|
||||
|
||||
if (j < 0)
|
||||
{
|
||||
j = 16777215;
|
||||
}
|
||||
if(j < 0) {
|
||||
j = 16777215;
|
||||
}
|
||||
|
||||
return j;
|
||||
}
|
||||
}
|
||||
return j;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -13,83 +13,73 @@ import net.minecraft.util.IIcon;
|
||||
import net.minecraft.util.StatCollector;
|
||||
|
||||
public class ItemFluidTank extends Item {
|
||||
|
||||
|
||||
IIcon overlayIcon;
|
||||
|
||||
public ItemFluidTank()
|
||||
{
|
||||
this.setHasSubtypes(true);
|
||||
this.setMaxDamage(0);
|
||||
}
|
||||
public ItemFluidTank() {
|
||||
this.setHasSubtypes(true);
|
||||
this.setMaxDamage(0);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Override
|
||||
@SideOnly(Side.CLIENT)
|
||||
public void getSubItems(Item item, CreativeTabs tabs, List list)
|
||||
{
|
||||
for (int i = 1; i < FluidType.values().length; ++i)
|
||||
{
|
||||
list.add(new ItemStack(item, 1, i));
|
||||
}
|
||||
}
|
||||
public void getSubItems(Item item, CreativeTabs tabs, List list) {
|
||||
|
||||
for(int i = 1; i < FluidType.values().length; ++i) {
|
||||
if(!FluidType.values()[i].hasNoContainer()) {
|
||||
list.add(new ItemStack(item, 1, i));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public String getItemStackDisplayName(ItemStack stack)
|
||||
{
|
||||
String s = ("" + StatCollector.translateToLocal(this.getUnlocalizedName() + ".name")).trim();
|
||||
String s1 = ("" + StatCollector.translateToLocal(FluidType.getEnum(stack.getItemDamage()).getUnlocalizedName())).trim();
|
||||
public String getItemStackDisplayName(ItemStack stack) {
|
||||
String s = ("" + StatCollector.translateToLocal(this.getUnlocalizedName() + ".name")).trim();
|
||||
String s1 = ("" + StatCollector.translateToLocal(FluidType.getEnum(stack.getItemDamage()).getUnlocalizedName())).trim();
|
||||
|
||||
if (s1 != null)
|
||||
{
|
||||
s = s + " " + s1;
|
||||
}
|
||||
if(s1 != null) {
|
||||
s = s + " " + s1;
|
||||
}
|
||||
|
||||
return s;
|
||||
}
|
||||
return s;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Override
|
||||
@SideOnly(Side.CLIENT)
|
||||
public boolean requiresMultipleRenderPasses()
|
||||
{
|
||||
return true;
|
||||
}
|
||||
public boolean requiresMultipleRenderPasses() {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Override
|
||||
@SideOnly(Side.CLIENT)
|
||||
public void registerIcons(IIconRegister p_94581_1_)
|
||||
{
|
||||
super.registerIcons(p_94581_1_);
|
||||
public void registerIcons(IIconRegister p_94581_1_) {
|
||||
super.registerIcons(p_94581_1_);
|
||||
|
||||
if(this == ModItems.fluid_tank_full)
|
||||
this.overlayIcon = p_94581_1_.registerIcon("hbm:fluid_tank_overlay");
|
||||
if(this == ModItems.fluid_barrel_full)
|
||||
this.overlayIcon = p_94581_1_.registerIcon("hbm:fluid_barrel_overlay");
|
||||
}
|
||||
|
||||
@Override
|
||||
if(this == ModItems.fluid_tank_full)
|
||||
this.overlayIcon = p_94581_1_.registerIcon("hbm:fluid_tank_overlay");
|
||||
if(this == ModItems.fluid_barrel_full)
|
||||
this.overlayIcon = p_94581_1_.registerIcon("hbm:fluid_barrel_overlay");
|
||||
}
|
||||
|
||||
@Override
|
||||
@SideOnly(Side.CLIENT)
|
||||
public IIcon getIconFromDamageForRenderPass(int p_77618_1_, int p_77618_2_)
|
||||
{
|
||||
return p_77618_2_ == 1 ? this.overlayIcon : super.getIconFromDamageForRenderPass(p_77618_1_, p_77618_2_);
|
||||
}
|
||||
public IIcon getIconFromDamageForRenderPass(int p_77618_1_, int p_77618_2_) {
|
||||
return p_77618_2_ == 1 ? this.overlayIcon : super.getIconFromDamageForRenderPass(p_77618_1_, p_77618_2_);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Override
|
||||
@SideOnly(Side.CLIENT)
|
||||
public int getColorFromItemStack(ItemStack stack, int p_82790_2_)
|
||||
{
|
||||
if (p_82790_2_ == 0)
|
||||
{
|
||||
return 16777215;
|
||||
}
|
||||
else
|
||||
{
|
||||
int j = FluidType.getEnum(stack.getItemDamage()).getMSAColor();
|
||||
public int getColorFromItemStack(ItemStack stack, int p_82790_2_) {
|
||||
if(p_82790_2_ == 0) {
|
||||
return 16777215;
|
||||
} else {
|
||||
int j = FluidType.getEnum(stack.getItemDamage()).getMSAColor();
|
||||
|
||||
if (j < 0)
|
||||
{
|
||||
j = 16777215;
|
||||
}
|
||||
if(j < 0) {
|
||||
j = 16777215;
|
||||
}
|
||||
|
||||
return j;
|
||||
}
|
||||
}
|
||||
return j;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
23
src/main/java/com/hbm/items/tool/ItemScrewdriver.java
Normal file
@ -0,0 +1,23 @@
|
||||
package com.hbm.items.tool;
|
||||
|
||||
import api.hbm.block.IScrewable;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
public class ItemScrewdriver extends Item {
|
||||
|
||||
@Override
|
||||
public boolean onItemUse(ItemStack stack, EntityPlayer player, World world, int x, int y, int z, int side, float fX, float fY, float fZ) {
|
||||
|
||||
Block b = world.getBlock(x, y, z);
|
||||
|
||||
if(b instanceof IScrewable) {
|
||||
return ((IScrewable)b).onScrew(world, player, x, y, z, side, fX, fY, fZ);
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@ -3,7 +3,7 @@ package com.hbm.lib;
|
||||
public class RefStrings {
|
||||
public static final String MODID = "hbm";
|
||||
public static final String NAME = "Hbm's Nuclear Tech Mod";
|
||||
public static final String VERSION = "1.0.27 BETA (3894)";
|
||||
public static final String VERSION = "1.0.27 BETA (3899)";
|
||||
//HBM's Beta Naming Convention:
|
||||
//V T (X)
|
||||
//V -> next release version
|
||||
|
||||
@ -1182,6 +1182,13 @@ public class ClientProxy extends ServerProxy {
|
||||
player.attackedAtYaw = 0F;
|
||||
}
|
||||
|
||||
if("properJolt".equals(type)) {
|
||||
|
||||
player.hurtTime = data.getInteger("time");
|
||||
player.maxHurtTime = data.getInteger("maxTime");
|
||||
player.attackedAtYaw = 0F;
|
||||
}
|
||||
|
||||
if("sweat".equals(type)) {
|
||||
|
||||
Entity e = world.getEntityByID(data.getInteger("entity"));
|
||||
|
||||
@ -202,6 +202,7 @@ public class CraftingManager {
|
||||
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.blade_tungsten, 2), new Object[] { "IP", "TP", "TI", 'P', "plateTitanium", 'T', "ingotTitanium", 'I', "ingotTungsten" }));
|
||||
GameRegistry.addRecipe(new ItemStack(ModItems.turbine_tungsten, 1), new Object[] { "BBB", "BSB", "BBB", 'B', ModItems.blade_tungsten, 'S', ModItems.ingot_dura_steel });
|
||||
GameRegistry.addRecipe(new ItemStack(ModItems.ring_starmetal, 1), new Object[] { " S ", "S S", " S ", 'S', ModItems.ingot_starmetal });
|
||||
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.flywheel_beryllium, 1), new Object[] { "BBB", "BTB", "BBB", 'B', "blockBeryllium", 'T', ModItems.bolt_compound }));
|
||||
|
||||
ItemStack infinity = new ItemStack(Items.enchanted_book);
|
||||
EnchantmentUtil.addEnchantment(infinity, Enchantment.infinity, 1);
|
||||
@ -680,6 +681,7 @@ public class CraftingManager {
|
||||
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.barrel_plastic, 1), new Object[] { "IPI", "I I", "IPI", 'I', ModItems.plate_polymer, 'P', "plateAluminum" }));
|
||||
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.barrel_iron, 1), new Object[] { "IPI", "I I", "IPI", 'I', "plateIron", 'P', "ingotIron" }));
|
||||
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.barrel_steel, 1), new Object[] { "IPI", "I I", "IPI", 'I', "plateSteel", 'P', "ingotSteel" }));
|
||||
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.barrel_tcalloy, 1), new Object[] { "IPI", "I I", "IPI", 'I', "ingotTcAlloy", 'P', "plateTitanium" }));
|
||||
GameRegistry.addRecipe(new ItemStack(ModBlocks.barrel_antimatter, 1), new Object[] { "IPI", "IPI", "IPI", 'I', ModItems.plate_saturnite, 'P', ModItems.coil_advanced_torus });
|
||||
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.tesla, 1), new Object[] { "CCC", "PIP", "WTW", 'C', ModItems.coil_copper, 'I', "ingotIron", 'P', "ingotPolymer", 'T', ModBlocks.machine_transformer, 'W', "plankWood" }));
|
||||
GameRegistry.addRecipe(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 });
|
||||
@ -928,6 +930,7 @@ public class CraftingManager {
|
||||
GameRegistry.addSmelting(ModItems.powder_dineutronium, new ItemStack(ModItems.ingot_dineutronium), 5.0F);
|
||||
GameRegistry.addSmelting(ModItems.powder_asbestos, new ItemStack(ModItems.ingot_asbestos), 1.0F);
|
||||
GameRegistry.addSmelting(ModItems.powder_zirconium, new ItemStack(ModItems.ingot_zirconium), 1.0F);
|
||||
GameRegistry.addSmelting(ModItems.powder_tcalloy, new ItemStack(ModItems.ingot_tcalloy), 1.0F);
|
||||
|
||||
GameRegistry.addSmelting(ModItems.powder_coal, new ItemStack(ModItems.coke), 1.0F);
|
||||
GameRegistry.addSmelting(ModItems.briquette_lignite, new ItemStack(ModItems.coke), 1.0F);
|
||||
|
||||
@ -1088,8 +1088,11 @@ public class MainRegistry {
|
||||
FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.particle_aschrab), new ItemStack(ModItems.particle_empty), FluidType.ASCHRAB, 1000));
|
||||
|
||||
for(int i = 1; i < FluidType.values().length; i++) {
|
||||
FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.fluid_tank_full, 1, i), new ItemStack(ModItems.fluid_tank_empty), FluidType.getEnum(i), 1000));
|
||||
FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.fluid_barrel_full, 1, i), new ItemStack(ModItems.fluid_barrel_empty), FluidType.getEnum(i), 16000));
|
||||
|
||||
if(!FluidType.values()[i].hasNoContainer()) {
|
||||
FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.fluid_tank_full, 1, i), new ItemStack(ModItems.fluid_tank_empty), FluidType.getEnum(i), 1000));
|
||||
FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.fluid_barrel_full, 1, i), new ItemStack(ModItems.fluid_barrel_empty), FluidType.getEnum(i), 16000));
|
||||
}
|
||||
}
|
||||
|
||||
TileEntityMachineReactorLarge.registerFuelEntry(1, ReactorFuelType.URANIUM, ModItems.nugget_uranium_fuel);
|
||||
|
||||
@ -47,7 +47,9 @@ public abstract class ItemRenderBase implements IItemRenderer {
|
||||
GL11.glScaled(1.5, 1.5, 1.5);
|
||||
|
||||
GL11.glScaled(0.25, 0.25, 0.25);
|
||||
GL11.glRotated(90, 0, 1, 0);
|
||||
|
||||
if(type != ItemRenderType.EQUIPPED)
|
||||
GL11.glRotated(90, 0, 1, 0);
|
||||
renderNonInv();
|
||||
}
|
||||
renderCommon();
|
||||
|
||||
@ -962,6 +962,22 @@ public class ItemRenderLibrary {
|
||||
bindTexture(ResourceManager.waste_drum_tex);
|
||||
ResourceManager.waste_drum.renderAll();
|
||||
}});
|
||||
|
||||
renderers.put(Item.getItemFromBlock(ModBlocks.machine_chungus), new ItemRenderBase() {
|
||||
public void renderInventory() {
|
||||
GL11.glTranslated(0.5, 0, 0);
|
||||
GL11.glScaled(2.5, 2.5, 2.5);
|
||||
}
|
||||
public void renderCommon() {
|
||||
GL11.glScaled(0.5, 0.5, 0.5);
|
||||
GL11.glRotated(90, 0, 1, 0);
|
||||
bindTexture(ResourceManager.chungus_tex);
|
||||
GL11.glShadeModel(GL11.GL_SMOOTH);
|
||||
ResourceManager.chungus.renderPart("Body");
|
||||
ResourceManager.chungus.renderPart("Lever");
|
||||
ResourceManager.chungus.renderPart("Blades");
|
||||
GL11.glShadeModel(GL11.GL_FLAT);
|
||||
}});
|
||||
}
|
||||
|
||||
private static void bindTexture(ResourceLocation res) {
|
||||
|
||||
@ -17,7 +17,7 @@ public class RenderChungus extends TileEntitySpecialRenderer {
|
||||
GL11.glPushMatrix();
|
||||
GL11.glTranslated(x + 0.5D, y, z + 0.5D);
|
||||
GL11.glEnable(GL11.GL_LIGHTING);
|
||||
GL11.glDisable(GL11.GL_CULL_FACE);
|
||||
GL11.glEnable(GL11.GL_CULL_FACE);
|
||||
|
||||
GL11.glRotatef(90, 0F, 1F, 0F);
|
||||
|
||||
@ -36,24 +36,29 @@ public class RenderChungus extends TileEntitySpecialRenderer {
|
||||
break;
|
||||
}
|
||||
|
||||
TileEntityChungus turbine = (TileEntityChungus) tile;
|
||||
|
||||
GL11.glTranslated(0, 0, -3);
|
||||
|
||||
bindTexture(ResourceManager.chungus_tex);
|
||||
|
||||
GL11.glShadeModel(GL11.GL_SMOOTH);
|
||||
ResourceManager.chungus.renderPart("Body");
|
||||
|
||||
GL11.glPushMatrix();
|
||||
GL11.glTranslated(0, 0, 4.5);
|
||||
GL11.glRotatef(15 - (turbine.tanks[0].getTankType().ordinal() - 2) * 10, 1, 0, 0);
|
||||
GL11.glTranslated(0, 0, -4.5);
|
||||
ResourceManager.chungus.renderPart("Lever");
|
||||
GL11.glShadeModel(GL11.GL_FLAT);
|
||||
GL11.glPopMatrix();
|
||||
|
||||
TileEntityChungus turbine = (TileEntityChungus) tile;
|
||||
|
||||
GL11.glTranslated(0, 1, 0);
|
||||
GL11.glRotatef(turbine.lastRotor + (turbine.rotor - turbine.lastRotor) * f, 0, 0, 1);
|
||||
GL11.glTranslated(0, -1, 0);
|
||||
GL11.glTranslated(0, 2.5, 0);
|
||||
GL11.glRotatef(turbine.lastRotor + (turbine.rotor - turbine.lastRotor) * f, 0, 0, -1);
|
||||
GL11.glTranslated(0, -2.5, 0);
|
||||
|
||||
ResourceManager.chungus.renderPart("Blades");
|
||||
|
||||
GL11.glEnable(GL11.GL_CULL_FACE);
|
||||
GL11.glShadeModel(GL11.GL_FLAT);
|
||||
|
||||
GL11.glPopMatrix();
|
||||
|
||||
|
||||
@ -4,6 +4,7 @@ import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import com.hbm.blocks.ModBlocks;
|
||||
import com.hbm.handler.FluidTypeHandler.FluidTrait;
|
||||
import com.hbm.handler.FluidTypeHandler.FluidType;
|
||||
import com.hbm.interfaces.IFluidAcceptor;
|
||||
import com.hbm.interfaces.IFluidSource;
|
||||
@ -60,7 +61,7 @@ public class TileEntityBarrel extends TileEntityMachineBase implements IFluidAcc
|
||||
Block b = this.getBlockType();
|
||||
|
||||
//for when you fill antimatter into a matter tank
|
||||
if(b != ModBlocks.barrel_antimatter && tank.getTankType().isAntimatter()) {
|
||||
if(b != ModBlocks.barrel_antimatter && tank.getTankType().traits.contains(FluidTrait.AMAT)) {
|
||||
worldObj.func_147480_a(xCoord, yCoord, zCoord, false);
|
||||
worldObj.newExplosion(null, xCoord + 0.5, yCoord + 0.5, zCoord + 0.5, 5, true, true);
|
||||
}
|
||||
@ -72,7 +73,8 @@ public class TileEntityBarrel extends TileEntityMachineBase implements IFluidAcc
|
||||
}
|
||||
|
||||
//for when you fill corrosive liquid into an iron tank
|
||||
if(b == ModBlocks.barrel_iron && tank.getTankType().isCorrosive()) {
|
||||
if((b == ModBlocks.barrel_iron && tank.getTankType().isCorrosive()) ||
|
||||
(b == ModBlocks.barrel_steel && tank.getTankType().traits.contains(FluidTrait.CORROSIVE_2))) {
|
||||
ItemStack[] copy = this.slots.clone();
|
||||
this.slots = new ItemStack[6];
|
||||
worldObj.setBlock(xCoord, yCoord, zCoord, ModBlocks.barrel_corroded);
|
||||
|
||||
@ -2,6 +2,7 @@ package com.hbm.tileentity.machine;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Random;
|
||||
|
||||
import com.hbm.blocks.BlockDummyable;
|
||||
import com.hbm.handler.FluidTypeHandler.FluidType;
|
||||
@ -29,7 +30,7 @@ public class TileEntityChungus extends TileEntity implements IFluidAcceptor, IFl
|
||||
|
||||
public long power;
|
||||
public static final long maxPower = 100000000000L;
|
||||
private boolean shouldTurn;
|
||||
private int turnTimer;
|
||||
public float rotor;
|
||||
public float lastRotor;
|
||||
|
||||
@ -69,25 +70,44 @@ public class TileEntityChungus extends TileEntity implements IFluidAcceptor, IFl
|
||||
if(power > maxPower)
|
||||
power = maxPower;
|
||||
|
||||
shouldTurn = cycles > 0;
|
||||
turnTimer--;
|
||||
|
||||
if(cycles > 0)
|
||||
turnTimer = 25;
|
||||
|
||||
this.fillFluidInit(tanks[1].getTankType());
|
||||
this.ffgeuaInit();
|
||||
|
||||
NBTTagCompound data = new NBTTagCompound();
|
||||
data.setLong("power", power);
|
||||
data.setBoolean("operational", shouldTurn);
|
||||
data.setInteger("type", tanks[0].getTankType().ordinal());
|
||||
data.setInteger("operational", turnTimer);
|
||||
this.networkPack(data, 150);
|
||||
|
||||
} else {
|
||||
|
||||
this.lastRotor = this.rotor;
|
||||
|
||||
if(shouldTurn) {
|
||||
if(turnTimer > 0) {
|
||||
|
||||
this.rotor += 30F;
|
||||
this.rotor += 25F;
|
||||
|
||||
if(this.rotor >= 360) {
|
||||
this.rotor -= 360;
|
||||
this.lastRotor -= 360;
|
||||
}
|
||||
|
||||
Random rand = worldObj.rand;
|
||||
ForgeDirection dir = ForgeDirection.getOrientation(this.getBlockMetadata() - BlockDummyable.offset);
|
||||
ForgeDirection side = dir.getRotation(ForgeDirection.UP);
|
||||
|
||||
for(int i = 0; i < 10; i++) {
|
||||
worldObj.spawnParticle("cloud",
|
||||
xCoord + 0.5 + dir.offsetX * (rand.nextDouble() + 1.25) + rand.nextGaussian() * side.offsetX * 0.65,
|
||||
yCoord + 2.5 + rand.nextGaussian() * 0.65,
|
||||
zCoord + 0.5 + dir.offsetZ * (rand.nextDouble() + 1.25) + rand.nextGaussian() * side.offsetZ * 0.65,
|
||||
-dir.offsetX * 0.2, 0, -dir.offsetZ * 0.2);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -99,7 +119,8 @@ public class TileEntityChungus extends TileEntity implements IFluidAcceptor, IFl
|
||||
@Override
|
||||
public void networkUnpack(NBTTagCompound data) {
|
||||
this.power = data.getLong("power");
|
||||
this.shouldTurn = data.getBoolean("operational");
|
||||
this.turnTimer = data.getInteger("operational");
|
||||
this.tanks[0].setTankType(FluidType.values()[data.getInteger("type")]);
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -126,7 +147,7 @@ public class TileEntityChungus extends TileEntity implements IFluidAcceptor, IFl
|
||||
@Override
|
||||
public void ffgeuaInit() {
|
||||
ForgeDirection dir = ForgeDirection.getOrientation(this.getBlockMetadata() - BlockDummyable.offset);
|
||||
ffgeua(xCoord + dir.offsetX * -4, yCoord, zCoord + dir.offsetZ * -4, getTact());
|
||||
ffgeua(xCoord - dir.offsetX * 11, yCoord, zCoord - dir.offsetZ * 11, getTact());
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -135,8 +156,8 @@ public class TileEntityChungus extends TileEntity implements IFluidAcceptor, IFl
|
||||
ForgeDirection dir = ForgeDirection.getOrientation(this.getBlockMetadata() - BlockDummyable.offset);
|
||||
dir = dir.getRotation(ForgeDirection.UP);
|
||||
|
||||
fillFluid(xCoord + dir.offsetX * 2, yCoord, zCoord + dir.offsetZ * 2, getTact(), type);
|
||||
fillFluid(xCoord + dir.offsetX * -2, yCoord, zCoord + dir.offsetZ * -2, getTact(), type);
|
||||
fillFluid(xCoord + dir.offsetX * 3, yCoord, zCoord + dir.offsetZ * 3, getTact(), type);
|
||||
fillFluid(xCoord + dir.offsetX * -3, yCoord, zCoord + dir.offsetZ * -3, getTact(), type);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@ -17,6 +17,7 @@ public class RBMKDials {
|
||||
public static final String KEY_REACTIVITY_MOD = "dialReactivityMod";
|
||||
public static final String KEY_SAVE_DIALS = "dialSaveDials";
|
||||
public static final String KEY_OUTGASSER_MOD = "dialOutgasserSpeedMod";
|
||||
public static final String KEV_SURGE_MOD = "dialControlSurgeMod";
|
||||
|
||||
public static void createDials(World world) {
|
||||
GameRules rules = world.getGameRules();
|
||||
@ -27,19 +28,20 @@ public class RBMKDials {
|
||||
rules.setOrCreateGameRule(KEY_FUEL_DIFFUSION_MOD, "1.0");
|
||||
rules.setOrCreateGameRule(KEY_HEAT_PROVISION, "0.2");
|
||||
rules.setOrCreateGameRule(KEY_COLUMN_HEIGHT, "4");
|
||||
rules.setOrCreateGameRule(KEY_PERMANENT_SCRAP, "false");
|
||||
rules.setOrCreateGameRule(KEY_PERMANENT_SCRAP, "true");
|
||||
rules.setOrCreateGameRule(KEY_BOILER_HEAT_CONSUMPTION, "0.1");
|
||||
rules.setOrCreateGameRule(KEY_CONTROL_SPEED_MOD, "1.0");
|
||||
rules.setOrCreateGameRule(KEY_REACTIVITY_MOD, "1.0");
|
||||
rules.setOrCreateGameRule(KEY_SAVE_DIALS, "true");
|
||||
rules.setOrCreateGameRule(KEY_OUTGASSER_MOD, "1.0");
|
||||
rules.setOrCreateGameRule(KEV_SURGE_MOD, "1.0");
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the amount of heat per tick removed from components passively
|
||||
* @param world
|
||||
* @return
|
||||
* @return >0
|
||||
*/
|
||||
public static double getPassiveCooling(World world) {
|
||||
return Math.max(shittyWorkaroundParseDouble(world.getGameRules().getGameRuleStringValue(KEY_PASSIVE_COOLING), 5.0D), 0.0D);
|
||||
@ -102,7 +104,7 @@ public class RBMKDials {
|
||||
/**
|
||||
* A multiplier for how quickly the control rods move.
|
||||
* @param world
|
||||
* @return
|
||||
* @return >0
|
||||
*/
|
||||
public static double getControlSpeed(World world) {
|
||||
return Math.max(shittyWorkaroundParseDouble(world.getGameRules().getGameRuleStringValue(KEY_CONTROL_SPEED_MOD), 1.0D), 0.0D);
|
||||
@ -111,7 +113,7 @@ public class RBMKDials {
|
||||
/**
|
||||
* A multiplier for how much flux the rods give out.
|
||||
* @param world
|
||||
* @return
|
||||
* @return >0
|
||||
*/
|
||||
public static double getReactivityMod(World world) {
|
||||
return Math.max(shittyWorkaroundParseDouble(world.getGameRules().getGameRuleStringValue(KEY_REACTIVITY_MOD), 1.0D), 0.0D);
|
||||
@ -120,12 +122,21 @@ public class RBMKDials {
|
||||
/**
|
||||
* A multiplier for how much flux the rods give out.
|
||||
* @param world
|
||||
* @return
|
||||
* @return >0
|
||||
*/
|
||||
public static double getOutgasserMod(World world) {
|
||||
return Math.max(shittyWorkaroundParseDouble(world.getGameRules().getGameRuleStringValue(KEY_OUTGASSER_MOD), 1.0D), 0.0D);
|
||||
}
|
||||
|
||||
/**
|
||||
* A multiplier for how high the power surge goes when inserting control rods
|
||||
* @param world
|
||||
* @return >0
|
||||
*/
|
||||
public static double getSurgeMod(World world) {
|
||||
return Math.max(shittyWorkaroundParseDouble(world.getGameRules().getGameRuleStringValue(KEV_SURGE_MOD), 1.0D), 0.0D);
|
||||
}
|
||||
|
||||
//why make the double representation accessible in a game rule when you can just force me to add a second pointless parsing operation?
|
||||
public static double shittyWorkaroundParseDouble(String s, double def) {
|
||||
|
||||
|
||||
@ -46,8 +46,16 @@ public abstract class TileEntityRBMKBase extends TileEntity implements INBTPacke
|
||||
public double heat;
|
||||
|
||||
public boolean hasLid() {
|
||||
|
||||
if(!isLidRemovable())
|
||||
return true;
|
||||
|
||||
return this.getBlockMetadata() != RBMKBase.DIR_NO_LID.ordinal() + RBMKBase.offset;
|
||||
}
|
||||
|
||||
public boolean isLidRemovable() {
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Approx melting point of steel
|
||||
@ -125,8 +133,9 @@ public abstract class TileEntityRBMKBase extends TileEntity implements INBTPacke
|
||||
for(TileEntityRBMKBase rbmk : rec) {
|
||||
double delta = targetHeat - rbmk.heat;
|
||||
rbmk.heat += delta * stepSize;
|
||||
rbmk.markDirty();
|
||||
}
|
||||
|
||||
this.markDirty();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -123,7 +123,9 @@ public class TileEntityRBMKConsole extends TileEntityMachineBase implements ICon
|
||||
TileEntity te = worldObj.getTileEntity(targetX + x, targetY, targetZ + z);
|
||||
|
||||
if(te instanceof TileEntityRBMKControlManual) {
|
||||
((TileEntityRBMKControlManual)te).targetLevel = MathHelper.clamp_double(data.getDouble("level"), 0, 1);
|
||||
TileEntityRBMKControlManual rod = (TileEntityRBMKControlManual) te;
|
||||
rod.startingLevel = rod.level;
|
||||
rod.setTarget(MathHelper.clamp_double(data.getDouble("level"), 0, 1));
|
||||
te.markDirty();
|
||||
}
|
||||
}
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
package com.hbm.tileentity.machine.rbmk;
|
||||
|
||||
import com.hbm.blocks.ModBlocks;
|
||||
import com.hbm.blocks.machine.rbmk.RBMKBase;
|
||||
import com.hbm.entity.projectile.EntityRBMKDebris.DebrisType;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
@ -20,9 +21,10 @@ public abstract class TileEntityRBMKControl extends TileEntityRBMKSlottedBase {
|
||||
public TileEntityRBMKControl() {
|
||||
super(0);
|
||||
}
|
||||
|
||||
public boolean hasLid() {
|
||||
return true;
|
||||
|
||||
@Override
|
||||
public boolean isLidRemovable() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -54,6 +56,14 @@ public abstract class TileEntityRBMKControl extends TileEntityRBMKSlottedBase {
|
||||
super.updateEntity();
|
||||
}
|
||||
|
||||
public void setTarget(double target) {
|
||||
this.targetLevel = target;
|
||||
}
|
||||
|
||||
public double getMult() {
|
||||
return this.level;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int trackingRange() {
|
||||
return 150;
|
||||
@ -83,6 +93,8 @@ public abstract class TileEntityRBMKControl extends TileEntityRBMKSlottedBase {
|
||||
|
||||
@Override
|
||||
public void onMelt(int reduce) {
|
||||
|
||||
RBMKBase.dropLids = false;
|
||||
|
||||
reduce = MathHelper.clamp_int(reduce, 1, 3);
|
||||
|
||||
@ -111,6 +123,8 @@ public abstract class TileEntityRBMKControl extends TileEntityRBMKSlottedBase {
|
||||
spawnDebris(DebrisType.ROD);
|
||||
}
|
||||
|
||||
RBMKBase.dropLids = true;
|
||||
|
||||
//control rods will not spawn lid projectiles since the lid is already part of the rod projectiles
|
||||
//super.onMelt(reduce);
|
||||
}
|
||||
|
||||
@ -10,12 +10,30 @@ import net.minecraft.util.Vec3;
|
||||
public class TileEntityRBMKControlManual extends TileEntityRBMKControl implements IControlReceiver {
|
||||
|
||||
public RBMKColor color;
|
||||
public double startingLevel;
|
||||
|
||||
@Override
|
||||
public String getName() {
|
||||
return "container.rbmkControl";
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setTarget(double target) {
|
||||
this.targetLevel = target;
|
||||
this.startingLevel = this.level;
|
||||
}
|
||||
|
||||
public double getMult() {
|
||||
|
||||
double surge = 0;
|
||||
|
||||
if(this.targetLevel < this.startingLevel && this.level != this.targetLevel) {
|
||||
surge = Math.sin(Math.pow(this.level, 15) * Math.PI) * (this.startingLevel - this.targetLevel) * RBMKDials.getSurgeMod(worldObj);
|
||||
}
|
||||
|
||||
return this.level + surge;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasPermission(EntityPlayer player) {
|
||||
return Vec3.createVectorHelper(xCoord - player.posX, yCoord - player.posY, zCoord - player.posZ).lengthVector() < 20;
|
||||
@ -25,7 +43,7 @@ public class TileEntityRBMKControlManual extends TileEntityRBMKControl implement
|
||||
public void receiveControl(NBTTagCompound data) {
|
||||
|
||||
if(data.hasKey("level")) {
|
||||
this.targetLevel = data.getDouble("level");
|
||||
this.setTarget(data.getDouble("level"));
|
||||
}
|
||||
|
||||
if(data.hasKey("color")) {
|
||||
|
||||
@ -142,10 +142,10 @@ public class TileEntityRBMKRod extends TileEntityRBMKSlottedBase implements IRBM
|
||||
if(te instanceof TileEntityRBMKControl) {
|
||||
TileEntityRBMKControl control = (TileEntityRBMKControl)te;
|
||||
|
||||
if(control.level == 0.0D)
|
||||
if(control.getMult() == 0.0D)
|
||||
break;
|
||||
|
||||
flux *= control.level;
|
||||
flux *= control.getMult();
|
||||
continue;
|
||||
}
|
||||
|
||||
|
||||
@ -704,6 +704,7 @@ item.billet_pu238.name=Plutonium-238-Billet
|
||||
item.billet_pu238be.name=Pu238Be-Billet
|
||||
item.billet_pu239.name=Plutonium-239-Billet
|
||||
item.billet_pu240.name=Plutonium-240-Billet
|
||||
item.billet_pu241.name=Plutonium-241-Billet
|
||||
item.billet_plutonium.name=Plutoniumbillet
|
||||
item.billet_plutonium_fuel.name=Plutoniumkernbrennstoffbillet
|
||||
item.billet_schrabidium.name=Schrabidiumbillet
|
||||
@ -1118,6 +1119,7 @@ item.fluid_identifier.name=Flüssigkeits-Kennzeichnung
|
||||
item.fluid_tank_empty.name=Leere universelle Flüssigkeitszelle
|
||||
item.fluid_tank_full.name=Universelle Flüssigkeitszelle:
|
||||
item.fluorite.name=Fluorit
|
||||
item.flywheel_beryllium.name=Berylliumschwungscheibe
|
||||
item.fmn.name=Flunitrazepamtablette
|
||||
item.folly_bullet.name=12,8cm Sternenmetall-Hochenergiegeschoss
|
||||
item.folly_bullet_du.name=12,8cm DU-Geschoss
|
||||
@ -1415,6 +1417,7 @@ item.ingot_solinium.name=Soliniumbarren
|
||||
item.ingot_starmetal.name=§9Sternenmetallbarren§r
|
||||
item.ingot_steel.name=Stahlbarren
|
||||
item.ingot_steel_dusted.name=Bestäubter Stahlbarren
|
||||
item.ingot_tcalloy.name=Technetiumstahlbarren
|
||||
item.ingot_technetium.name=Technetium-99-Barren
|
||||
item.ingot_th232.name=Thorium-232-Barren
|
||||
item.ingot_thorium_fuel.name=Thoriumkernbrennstoffbarren
|
||||
@ -1935,6 +1938,7 @@ item.powder_spark_mix.name=Sparkmischung
|
||||
item.powder_steel.name=Stahlstaub
|
||||
item.powder_steel_tiny.name=Kleiner Haufen Stahlstaub
|
||||
item.powder_strontium.name=Strontiumstaub
|
||||
item.powder_tcalloy.name=Technetiumstahlstaub
|
||||
item.powder_tennessine.name=Tennessinstaub
|
||||
item.powder_thermite.name=Thermit
|
||||
item.powder_thorium.name=Thoriumstaub
|
||||
@ -1966,11 +1970,13 @@ item.rbmk_fuel_drx.name=§cDigamma-RBMK-Kernbrennstoff
|
||||
item.rbmk_fuel_empty.name=Leere RBMK Kernbrennstoffstäbe
|
||||
item.rbmk_fuel_heaus.name=HEAus-RBMK-Kernbrennstoff
|
||||
item.rbmk_fuel_hes.name=HES-RBMK-Kernbrennstoff
|
||||
item.rbmk_fuel_hep.name=HEP-239-RBMK-Kernbrennstoff
|
||||
item.rbmk_fuel_hep241.name=HEP-241-RBMK-Kernbrennstoff
|
||||
item.rbmk_fuel_leaus.name=LEAus-RBMK-Kernbrennstoff
|
||||
item.rbmk_fuel_lep.name=LEP-RBMK-Kernbrennstoff
|
||||
item.rbmk_fuel_lep.name=LEP-239-RBMK-Kernbrennstoff
|
||||
item.rbmk_fuel_les.name=LES-RBMK-Kernbrennstoff
|
||||
item.rbmk_fuel_men.name=MEN-RBMK-Kernbrennstoff
|
||||
item.rbmk_fuel_mep.name=MEP-RBMK-Kernbrennstoff
|
||||
item.rbmk_fuel_mep.name=MEP-239-RBMK-Kernbrennstoff
|
||||
item.rbmk_fuel_mes.name=MES-RBMK-Kernbrennstoff
|
||||
item.rbmk_fuel_meu.name=MEU-RBMK-Kernbrennstoff
|
||||
item.rbmk_fuel_mox.name=MOX-RBMK-Kernbrennstoff
|
||||
@ -2464,6 +2470,7 @@ tile.barrel_corroded.name=Verrostetes Fass
|
||||
tile.barrel_iron.name=Eisenfass
|
||||
tile.barrel_plastic.name=Sicheres Fass™
|
||||
tile.barrel_steel.name=Stahlfass
|
||||
tile.barrel_tcalloy.name=Technetiumstahlfass
|
||||
tile.barricade.name=Sandsäcke
|
||||
tile.blast_door.name=Abschluss-Sprengtür
|
||||
tile.block_actinium.name=Actiniumblock
|
||||
@ -2769,6 +2776,7 @@ tile.machine_boiler_off.name=Dampfkessel
|
||||
tile.machine_boiler_on.name=Dampfkessel
|
||||
tile.machine_centrifuge.name=Zentrifuge
|
||||
tile.machine_chemplant.name=Chemiefabrik
|
||||
tile.machine_chungus.name=Leviathan-Dampfturbine
|
||||
tile.machine_coal_off.name=Verbrennungsgenerator
|
||||
tile.machine_coal_on.name=Verbrennungsgenerator
|
||||
tile.machine_combine_factory.name=CMB-Stahl Hochofen
|
||||
@ -3120,7 +3128,7 @@ trait.rbmx.skinTemp=Außenentropie: %s
|
||||
trait.rbmx.source=Selbstverbrennend
|
||||
trait.rbmx.splitsInto=Verlässt nach: %s
|
||||
trait.rbmx.splitsWith=Kommt von: %s
|
||||
trait.rbmx.xenon=Belivergiftung: %s
|
||||
trait.rbmx.xenon=Bleivergiftung: %s
|
||||
trait.rbmx.xenonBurn=Blei-Verbr.-Funkion: %s
|
||||
trait.rbmx.xenonGen=Blei-Erzg.-Funktion: %s
|
||||
|
||||
|
||||
@ -772,6 +772,7 @@ item.billet_pu238.name=Plutonium-238 Billet
|
||||
item.billet_pu238be.name=Pu238Be Billet
|
||||
item.billet_pu239.name=Plutonium-239 Billet
|
||||
item.billet_pu240.name=Plutonium-240 Billet
|
||||
item.billet_pu241.name=Plutonium-241 Billet
|
||||
item.billet_plutonium.name=Plutonium Billet
|
||||
item.billet_plutonium_fuel.name=Plutonium Fuel Billet
|
||||
item.billet_schrabidium.name=Schrabidium Billet
|
||||
@ -1186,6 +1187,7 @@ item.fluid_identifier.name=Fluid Identifier
|
||||
item.fluid_tank_empty.name=Empty Universal Fluid Tank
|
||||
item.fluid_tank_full.name=Universal Fluid Tank:
|
||||
item.fluorite.name=Fluorite
|
||||
item.flywheel_beryllium.name=Beryllium Flywheel
|
||||
item.fmn.name=Flunitrazepam Tablet
|
||||
item.folly_bullet.name=12.8cm Starmetal High-Energy Shell
|
||||
item.folly_bullet_du.name=12.8cm DU-Shell
|
||||
@ -1483,6 +1485,7 @@ item.ingot_solinium.name=Solinium Ingot
|
||||
item.ingot_starmetal.name=§9Starmetal Ingot§r
|
||||
item.ingot_steel.name=Steel Ingot
|
||||
item.ingot_steel_dusted.name=Dusted Steel Ingot
|
||||
item.ingot_tcalloy.name=Technetium Steel Ingot
|
||||
item.ingot_technetium.name=Technetium-99 Ingot
|
||||
item.ingot_th232.name=Thorium-232 Ingot
|
||||
item.ingot_thorium_fuel.name=Ingot of Thorium Fuel
|
||||
@ -2003,6 +2006,7 @@ item.powder_spark_mix.name=Spark Blend
|
||||
item.powder_steel.name=Steel Powder
|
||||
item.powder_steel_tiny.name=Tiny Pile of Steel Powder
|
||||
item.powder_strontium.name=Strontium Powder
|
||||
item.powder_tcalloy.name=Technetium Steel Powder
|
||||
item.powder_tennessine.name=Tennessine Powder
|
||||
item.powder_thermite.name=Thermite
|
||||
item.powder_thorium.name=Thorium Powder
|
||||
@ -2034,11 +2038,13 @@ item.rbmk_fuel_drx.name=§cDigamma RBMK Fuel Rod§r
|
||||
item.rbmk_fuel_empty.name=Empty RBMK Fuel Rod
|
||||
item.rbmk_fuel_heaus.name=HEAus RBMK Fuel Rod
|
||||
item.rbmk_fuel_hes.name=HES RBMK Fuel Rod
|
||||
item.rbmk_fuel_hep.name=HEP-239 RBMK Fuel Rod
|
||||
item.rbmk_fuel_hep241.name=HEP-241 RBMK Fuel Rod
|
||||
item.rbmk_fuel_leaus.name=LEAus RBMK Fuel Rod
|
||||
item.rbmk_fuel_lep.name=LEP RBMK Fuel Rod
|
||||
item.rbmk_fuel_lep.name=LEP-239 RBMK Fuel Rod
|
||||
item.rbmk_fuel_les.name=LES RBMK Fuel Rod
|
||||
item.rbmk_fuel_men.name=MEN RBMK Fuel Rod
|
||||
item.rbmk_fuel_mep.name=MEP RBMK Fuel Rod
|
||||
item.rbmk_fuel_mep.name=MEP-239 RBMK Fuel Rod
|
||||
item.rbmk_fuel_mes.name=MES RBMK Fuel Rod
|
||||
item.rbmk_fuel_meu.name=MEU RBMK Fuel Rod
|
||||
item.rbmk_fuel_mox.name=MOX RBMK Fuel Rod
|
||||
@ -2532,6 +2538,7 @@ tile.barrel_corroded.name=Corroded Barrel
|
||||
tile.barrel_iron.name=Iron Barrel
|
||||
tile.barrel_plastic.name=Safe Barrel™
|
||||
tile.barrel_steel.name=Steel Barrel
|
||||
tile.barrel_tcalloy.name=Technetium Steel Barrel
|
||||
tile.barricade.name=Sand Bags
|
||||
tile.blast_door.name=Sliding Blast Door
|
||||
tile.block_actinium.name=Block of Actinium
|
||||
@ -2853,6 +2860,7 @@ tile.machine_boiler_off.name=Boiler
|
||||
tile.machine_boiler_on.name=Boiler
|
||||
tile.machine_centrifuge.name=Centrifuge
|
||||
tile.machine_chemplant.name=Chemical Plant
|
||||
tile.machine_chungus.name=Leviathan Steam Turbine
|
||||
tile.machine_coal_off.name=Combustion Generator
|
||||
tile.machine_coal_on.name=Combustion Generator
|
||||
tile.machine_combine_factory.name=CMB Steel Furnace
|
||||
|
||||
@ -36,6 +36,7 @@
|
||||
"block.screm": {"category": "block", "sounds": ["screm/scream1", "screm/scream01", "screm/scream2", "screm/scream02", "screm/scream3", "screm/scream03", "screm/scream4", "screm/scream04", "screm/scream5", "screm/scream05", "screm/scream6", "screm/scream06", "screm/scream7", "screm/scream07", "screm/scream08", "screm/scream09", "screm/scream10", "screm/scream11", "screm/scream12", "screm/scream13", "screm/scream14", "screm/scream15", "screm/scream16", "screm/scream17", "screm/scream18", "screm/scream19", "screm/scream20", "screm/scream21", "screm/scream22", "screm/scream23", "screm/scream24", "screm/scream25"]},
|
||||
"block.rbmk_explosion": {"category": "block", "sounds": [{"name": "block/rbmk_explosion", "stream": false}]},
|
||||
"block.rbmk_az5_cover": {"category": "block", "sounds": [{"name": "block/rbmk_az5_cover", "stream": false}]},
|
||||
"block.chungusLever": {"category": "block", "sounds": [{"name": "block/chungusLever", "stream": false}]},
|
||||
|
||||
"item.techBleep": {"category": "player", "sounds": [{"name": "tool/techBleep", "stream": false}]},
|
||||
"item.techBoop": {"category": "player", "sounds": [{"name": "tool/techBoop", "stream": false}]},
|
||||
|
||||
BIN
src/main/resources/assets/hbm/sounds/block/chungusLever.ogg
Normal file
BIN
src/main/resources/assets/hbm/textures/blocks/barrel_tcalloy.png
Normal file
|
After Width: | Height: | Size: 877 B |
|
After Width: | Height: | Size: 223 B |
BIN
src/main/resources/assets/hbm/textures/items/dont_they_know.png
Normal file
|
After Width: | Height: | Size: 827 B |
|
After Width: | Height: | Size: 282 B |
BIN
src/main/resources/assets/hbm/textures/items/ingot_tcalloy.png
Normal file
|
After Width: | Height: | Size: 307 B |
|
After Width: | Height: | Size: 279 B |
BIN
src/main/resources/assets/hbm/textures/items/powder_tcalloy.png
Normal file
|
After Width: | Height: | Size: 313 B |
|
After Width: | Height: | Size: 555 B |
|
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 16 KiB |
@ -3,7 +3,7 @@
|
||||
"modid": "hbm",
|
||||
"name": "Hbm's Nuclear Tech",
|
||||
"description": "A mod that adds weapons, nuclear themed stuff and machines",
|
||||
"version":"1.0.27-3894",
|
||||
"version":"1.0.27-3899",
|
||||
"mcversion": "1.7.10",
|
||||
"url": "",
|
||||
"updateUrl": "",
|
||||
|
||||