more recipe handlers, some fixes, finished RPA, fixed furnace NEI

This commit is contained in:
Bob 2022-02-27 16:32:41 +01:00
parent 8fab1b25d0
commit d3b3cb64b7
50 changed files with 610 additions and 58 deletions

View File

@ -0,0 +1,9 @@
package com.hbm.blocks;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.world.World;
public interface IStepTickReceiver {
public void onPlayerStep(World world, int x, int y, int z, EntityPlayer player);
}

View File

@ -280,6 +280,7 @@ public class ModBlocks {
public static Block deco_rbmk; public static Block deco_rbmk;
public static Block deco_rbmk_smooth; public static Block deco_rbmk_smooth;
public static Block deco_emitter;
public static Block deco_loot; public static Block deco_loot;
public static Block bobblehead; public static Block bobblehead;
@ -1477,14 +1478,15 @@ public class ModBlocks {
deco_rbmk = new BlockGeneric(Material.iron).setBlockName("deco_rbmk").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_side"); deco_rbmk = new BlockGeneric(Material.iron).setBlockName("deco_rbmk").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_side");
deco_rbmk_smooth = new BlockGeneric(Material.iron).setBlockName("deco_rbmk_smooth").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_top"); deco_rbmk_smooth = new BlockGeneric(Material.iron).setBlockName("deco_rbmk_smooth").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_top");
deco_emitter = new BlockEmitter().setBlockName("deco_emitter").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(20.0F).setBlockTextureName(RefStrings.MODID + ":emitter");
deco_loot = new BlockLoot().setBlockName("deco_loot").setCreativeTab(null).setHardness(0.0F).setResistance(0.0F).setBlockTextureName(RefStrings.MODID + ":block_steel"); deco_loot = new BlockLoot().setBlockName("deco_loot").setCreativeTab(null).setHardness(0.0F).setResistance(0.0F).setBlockTextureName(RefStrings.MODID + ":block_steel");
bobblehead = new BlockBobble().setBlockName("bobblehead").setCreativeTab(MainRegistry.blockTab).setHardness(0.0F).setResistance(0.0F).setBlockTextureName(RefStrings.MODID + ":block_steel"); bobblehead = new BlockBobble().setBlockName("bobblehead").setCreativeTab(MainRegistry.blockTab).setHardness(0.0F).setResistance(0.0F).setBlockTextureName(RefStrings.MODID + ":block_steel");
hazmat = new BlockGeneric(Material.cloth).setBlockName("hazmat").setStepSound(Block.soundTypeCloth).setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(100.0F).setBlockTextureName(RefStrings.MODID + ":hazmat"); hazmat = new BlockGeneric(Material.cloth).setBlockName("hazmat").setStepSound(Block.soundTypeCloth).setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(100.0F).setBlockTextureName(RefStrings.MODID + ":hazmat");
gravel_obsidian = new BlockFalling(Material.iron).setBlockName("gravel_obsidian").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeGravel).setHardness(5.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":gravel_obsidian"); gravel_obsidian = new BlockFalling(Material.iron).setBlockName("gravel_obsidian").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeGravel).setHardness(5.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":gravel_obsidian");
gravel_diamond = new BlockFalling(Material.sand).setBlockName("gravel_diamond").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeGravel).setHardness(0.6F).setBlockTextureName(RefStrings.MODID + ":gravel_diamond"); gravel_diamond = new BlockFalling(Material.sand).setBlockName("gravel_diamond").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeGravel).setHardness(0.6F).setBlockTextureName(RefStrings.MODID + ":gravel_diamond");
asphalt = new BlockSpeedy(Material.rock, 1.15).setBlockName("asphalt").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(100.0F).setBlockTextureName(RefStrings.MODID + ":asphalt"); asphalt = new BlockSpeedy(Material.rock, 1.5).setBlockName("asphalt").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(100.0F).setBlockTextureName(RefStrings.MODID + ":asphalt");
asphalt_light = new BlockSpeedy(Material.rock, 1.15).setBlockName("asphalt_light").setCreativeTab(MainRegistry.blockTab).setLightLevel(1F).setHardness(15.0F).setResistance(100.0F).setBlockTextureName(RefStrings.MODID + ":asphalt_light"); asphalt_light = new BlockSpeedy(Material.rock, 1.5).setBlockName("asphalt_light").setCreativeTab(MainRegistry.blockTab).setLightLevel(1F).setHardness(15.0F).setResistance(100.0F).setBlockTextureName(RefStrings.MODID + ":asphalt_light");
reinforced_brick = new BlockGeneric(Material.rock).setBlockName("reinforced_brick").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(8000.0F).setBlockTextureName(RefStrings.MODID + ":reinforced_brick"); reinforced_brick = new BlockGeneric(Material.rock).setBlockName("reinforced_brick").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(8000.0F).setBlockTextureName(RefStrings.MODID + ":reinforced_brick");
reinforced_glass = new BlockNTMGlassCT(0, RefStrings.MODID + ":reinforced_glass", Material.rock).setBlockName("reinforced_glass").setCreativeTab(MainRegistry.blockTab).setLightOpacity(0).setHardness(15.0F).setResistance(200.0F); reinforced_glass = new BlockNTMGlassCT(0, RefStrings.MODID + ":reinforced_glass", Material.rock).setBlockName("reinforced_glass").setCreativeTab(MainRegistry.blockTab).setLightOpacity(0).setHardness(15.0F).setResistance(200.0F);
@ -2488,6 +2490,7 @@ public class ModBlocks {
GameRegistry.registerBlock(deco_lead, deco_lead.getUnlocalizedName()); GameRegistry.registerBlock(deco_lead, deco_lead.getUnlocalizedName());
GameRegistry.registerBlock(deco_beryllium, deco_beryllium.getUnlocalizedName()); GameRegistry.registerBlock(deco_beryllium, deco_beryllium.getUnlocalizedName());
GameRegistry.registerBlock(deco_asbestos, deco_asbestos.getUnlocalizedName()); GameRegistry.registerBlock(deco_asbestos, deco_asbestos.getUnlocalizedName());
GameRegistry.registerBlock(deco_emitter, ItemBlockBase.class, deco_emitter.getUnlocalizedName());
GameRegistry.registerBlock(deco_loot, deco_loot.getUnlocalizedName()); GameRegistry.registerBlock(deco_loot, deco_loot.getUnlocalizedName());
GameRegistry.registerBlock(bobblehead, ItemBlockMeta.class, bobblehead.getUnlocalizedName()); GameRegistry.registerBlock(bobblehead, ItemBlockMeta.class, bobblehead.getUnlocalizedName());
GameRegistry.registerBlock(hazmat, hazmat.getUnlocalizedName()); GameRegistry.registerBlock(hazmat, hazmat.getUnlocalizedName());

View File

@ -0,0 +1,243 @@
package com.hbm.blocks.generic;
import java.awt.Color;
import java.util.List;
import com.hbm.blocks.ITooltipProvider;
import com.hbm.packet.AuxParticlePacketNT;
import com.hbm.packet.NBTPacket;
import com.hbm.packet.PacketDispatcher;
import com.hbm.tileentity.INBTPacketReceiver;
import api.hbm.block.IToolable;
import cpw.mods.fml.common.network.NetworkRegistry.TargetPoint;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.block.Block;
import net.minecraft.block.BlockContainer;
import net.minecraft.block.BlockPistonBase;
import net.minecraft.block.material.Material;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemDye;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.network.NetworkManager;
import net.minecraft.network.Packet;
import net.minecraft.network.play.server.S35PacketUpdateTileEntity;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.AxisAlignedBB;
import net.minecraft.util.EnumChatFormatting;
import net.minecraft.world.World;
import net.minecraftforge.common.util.ForgeDirection;
public class BlockEmitter extends BlockContainer implements IToolable, ITooltipProvider {
public BlockEmitter() {
super(Material.iron);
}
@Override
public TileEntity createNewTileEntity(World world, int meta) {
return new TileEntityEmitter();
}
@Override
public boolean isOpaqueCube() {
return false;
}
@Override
public void onBlockPlacedBy(World world, int x, int y, int z, EntityLivingBase player, ItemStack stack) {
int l = BlockPistonBase.determineOrientation(world, x, y, z, player);
world.setBlockMetadataWithNotify(x, y, z, l, 2);
}
@Override
public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int i, float fx, float fy, float fz) {
if(world.isRemote)
return true;
TileEntityEmitter te = (TileEntityEmitter)world.getTileEntity(x, y, z);
if(player.getHeldItem() != null) {
if(player.getHeldItem().getItem() instanceof ItemDye) {
te.color = ItemDye.field_150922_c[player.getHeldItem().getItemDamage()];
te.markDirty();
world.markBlockForUpdate(x, y, z);
player.getHeldItem().stackSize--;
return true;
}
}
return false;
}
@Override
public boolean onScrew(World world, EntityPlayer player, int x, int y, int z, int side, float fX, float fY, float fZ, ToolType tool) {
TileEntityEmitter te = (TileEntityEmitter)world.getTileEntity(x, y, z);
if(tool == ToolType.SCREWDRIVER) {
te.girth += 0.125F;
te.markDirty();
return true;
}
if(tool == ToolType.DEFUSER) {
te.girth -= 0.125F;
if(te.girth < 0.125F) te.girth = 0.125F;
te.markDirty();
return true;
}
if(tool == ToolType.HAND_DRILL) {
te.effect = (te.effect + 1) % te.effectCount;
te.markDirty();
return true;
}
return false;
}
public static class TileEntityEmitter extends TileEntity implements INBTPacketReceiver {
public static final int range = 100;
public int color;
public int beam;
public float girth = 0.5F;
public int effect = 0;
public static final int effectCount = 5;
@Override
public void updateEntity() {
if(!worldObj.isRemote) {
ForgeDirection dir = ForgeDirection.getOrientation(this.getBlockMetadata());
if(worldObj.getTotalWorldTime() % 20 == 0) {
for(int i = 1; i <= range; i++) {
beam = i;
int x = xCoord + dir.offsetX * i;
int y = yCoord + dir.offsetY * i;
int z = zCoord + dir.offsetZ * i;
Block b = worldObj.getBlock(x, y, z);
if(b.isBlockSolid(worldObj, x, y, z, dir.ordinal())) {
break;
}
}
}
if(effect == 4 && beam > 0) {
if(worldObj.getTotalWorldTime() % 5 == 0) {
double x = (int) (xCoord + dir.offsetX * (worldObj.getTotalWorldTime() / 5L) % beam) + 0.5;
double y = (int) (yCoord + dir.offsetY * (worldObj.getTotalWorldTime() / 5L) % beam) + 0.5;
double z = (int) (zCoord + dir.offsetZ * (worldObj.getTotalWorldTime() / 5L) % beam) + 0.5;
int prevColor = color;
if(color == 0) {
color = Color.HSBtoRGB(worldObj.getTotalWorldTime() / 50.0F, 0.5F, 0.25F) & 16777215;
}
NBTTagCompound data = new NBTTagCompound();
data.setString("type", "plasmablast");
data.setFloat("r", ((float)((color & 0xff0000) >> 16)) / 256F);
data.setFloat("g", ((float)((color & 0x00ff00) >> 8)) / 256F);
data.setFloat("b", ((float)((color & 0x0000ff))) / 256F);
data.setFloat("scale", girth * 5);
if(this.getBlockMetadata() == 2) {
data.setFloat("pitch", 90);
}
if(this.getBlockMetadata() == 3) {
data.setFloat("pitch", -90);
}
if(this.getBlockMetadata() == 4) {
data.setFloat("pitch", 90);
data.setFloat("yaw", 90);
}
if(this.getBlockMetadata() == 5) {
data.setFloat("pitch", -90);
data.setFloat("yaw", 90);
}
PacketDispatcher.wrapper.sendToAllAround(new AuxParticlePacketNT(data, x, y, z),
new TargetPoint(worldObj.provider.dimensionId, x, y, z, 100));
color = prevColor;
}
}
NBTTagCompound data = new NBTTagCompound();
data.setInteger("beam", this.beam);
data.setInteger("color", this.color);
data.setFloat("girth", this.girth);
data.setInteger("effect", this.effect);
PacketDispatcher.wrapper.sendToAllAround(new NBTPacket(data, xCoord, yCoord, zCoord), new TargetPoint(this.worldObj.provider.dimensionId, xCoord, yCoord, zCoord, 150));
}
}
@Override
public Packet getDescriptionPacket() {
NBTTagCompound nbt = new NBTTagCompound();
this.writeToNBT(nbt);
return new S35PacketUpdateTileEntity(this.xCoord, this.yCoord, this.zCoord, 0, nbt);
}
@Override
public void onDataPacket(NetworkManager net, S35PacketUpdateTileEntity pkt) {
this.readFromNBT(pkt.func_148857_g());
}
@Override
public void readFromNBT(NBTTagCompound nbt) {
super.readFromNBT(nbt);
this.color = nbt.getInteger("color");
this.girth = nbt.getFloat("girth");
this.effect = nbt.getInteger("effect");
}
@Override
public void writeToNBT(NBTTagCompound nbt) {
super.writeToNBT(nbt);
nbt.setInteger("color", this.color);
nbt.setFloat("girth", this.girth);
nbt.setInteger("effect", this.effect);
}
@Override
public AxisAlignedBB getRenderBoundingBox() {
return TileEntity.INFINITE_EXTENT_AABB;
}
@Override
@SideOnly(Side.CLIENT)
public double getMaxRenderDistanceSquared() {
return 65536.0D;
}
@Override
public void networkUnpack(NBTTagCompound nbt) {
this.beam = nbt.getInteger("beam");
this.color = nbt.getInteger("color");
this.girth = nbt.getFloat("girth");
this.effect = nbt.getInteger("effect");
}
}
@Override
public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean ext) {
list.add(EnumChatFormatting.GOLD + "Use screwdriver to widen beam");
list.add(EnumChatFormatting.GOLD + "Use defuser to narrow beam");
list.add(EnumChatFormatting.GOLD + "Use hand drill to cycle special effects");
list.add(EnumChatFormatting.GOLD + "Use dye to change color");
}
}

View File

@ -1,12 +1,19 @@
package com.hbm.blocks.generic; package com.hbm.blocks.generic;
import java.util.List;
import com.hbm.blocks.IStepTickReceiver;
import com.hbm.blocks.ITooltipProvider;
import codechicken.lib.math.MathHelper;
import net.minecraft.block.Block; import net.minecraft.block.Block;
import net.minecraft.block.material.Material; import net.minecraft.block.material.Material;
import net.minecraft.entity.Entity; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.EntityLivingBase; import net.minecraft.item.ItemStack;
import net.minecraft.util.EnumChatFormatting;
import net.minecraft.world.World; import net.minecraft.world.World;
public class BlockSpeedy extends Block { public class BlockSpeedy extends Block implements IStepTickReceiver, ITooltipProvider {
double speed; double speed;
@ -16,12 +23,19 @@ public class BlockSpeedy extends Block {
} }
@Override @Override
public void onEntityWalking(World world, int x, int y, int z, Entity entity) { public void onPlayerStep(World world, int x, int y, int z, EntityPlayer player) {
if(entity instanceof EntityLivingBase) { //prevents vehicles from going mach 5 if(!world.isRemote)
double tan = Math.atan2(entity.motionX, entity.motionZ); return;
entity.motionX += Math.sin(tan) * speed;
entity.motionZ += Math.cos(tan) * speed; if(player.moveForward != 0 || player.moveStrafing != 0) {
player.motionX *= speed;
player.motionZ *= speed;
} }
} }
@Override
public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean ext) {
list.add(EnumChatFormatting.BLUE + "Increases speed by " + (MathHelper.floor_double((speed - 1) * 100)) + "%");
}
} }

View File

@ -1,6 +1,5 @@
package com.hbm.blocks.machine; package com.hbm.blocks.machine;
import com.hbm.items.ModItems;
import com.hbm.lib.RefStrings; import com.hbm.lib.RefStrings;
import com.hbm.tileentity.machine.TileEntityHadronDiode; import com.hbm.tileentity.machine.TileEntityHadronDiode;
import com.hbm.tileentity.machine.TileEntityHadronDiode.DiodeConfig; import com.hbm.tileentity.machine.TileEntityHadronDiode.DiodeConfig;

View File

@ -7,6 +7,7 @@ import com.hbm.inventory.fluid.Fluids;
import static com.hbm.inventory.OreDictManager.*; import static com.hbm.inventory.OreDictManager.*;
import com.hbm.items.ModItems; import com.hbm.items.ModItems;
import com.hbm.items.ItemEnums.EnumLegendaryType;
import com.hbm.main.CraftingManager; import com.hbm.main.CraftingManager;
import net.minecraft.init.Blocks; import net.minecraft.init.Blocks;
@ -92,6 +93,10 @@ public class ArmorRecipes {
CraftingManager.addRecipeAuto(new ItemStack(ModItems.dns_plate, 1), new Object[] { "PCP", "PBP", "PSP", 'P', ModItems.plate_armor_dnt, 'S', ModItems.ingot_chainsteel, 'B', ModItems.bj_plate_jetpack, 'C', ModItems.singularity_spark }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.dns_plate, 1), new Object[] { "PCP", "PBP", "PSP", 'P', ModItems.plate_armor_dnt, 'S', ModItems.ingot_chainsteel, 'B', ModItems.bj_plate_jetpack, 'C', ModItems.singularity_spark });
CraftingManager.addRecipeAuto(new ItemStack(ModItems.dns_legs, 1), new Object[] { "PCP", "PBP", "PSP", 'P', ModItems.plate_armor_dnt, 'S', ModItems.ingot_chainsteel, 'B', ModItems.bj_legs, 'C', ModItems.coin_worm }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.dns_legs, 1), new Object[] { "PCP", "PBP", "PSP", 'P', ModItems.plate_armor_dnt, 'S', ModItems.ingot_chainsteel, 'B', ModItems.bj_legs, 'C', ModItems.coin_worm });
CraftingManager.addRecipeAuto(new ItemStack(ModItems.dns_boots, 1), new Object[] { "PCP", "PBP", "PSP", 'P', ModItems.plate_armor_dnt, 'S', ModItems.ingot_chainsteel, 'B', ModItems.bj_boots, 'C', ModItems.demon_core_closed }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.dns_boots, 1), new Object[] { "PCP", "PBP", "PSP", 'P', ModItems.plate_armor_dnt, 'S', ModItems.ingot_chainsteel, 'B', ModItems.bj_boots, 'C', ModItems.demon_core_closed });
CraftingManager.addRecipeAuto(new ItemStack(ModItems.rpa_helmet, 1), new Object[] { "KPK", "PLP", " F ", 'L', DictFrame.fromOne(ModItems.parts_legendary, EnumLegendaryType.TIER2), 'K', ModItems.plate_kevlar, 'P', ModItems.plate_armor_ajr, 'F', ModItems.gas_mask_filter_combo });
CraftingManager.addRecipeAuto(new ItemStack(ModItems.rpa_plate, 1), new Object[] { "P P", "MLM", "PKP", 'L', DictFrame.fromOne(ModItems.parts_legendary, EnumLegendaryType.TIER2), 'K', ModItems.plate_kevlar, 'P', ModItems.plate_armor_ajr, 'M', ModItems.motor_desh });
CraftingManager.addRecipeAuto(new ItemStack(ModItems.rpa_legs, 1), new Object[] { "MPM", "KLK", "P P", 'L', DictFrame.fromOne(ModItems.parts_legendary, EnumLegendaryType.TIER2), 'K', ModItems.plate_kevlar, 'P', ModItems.plate_armor_ajr, 'M', ModItems.motor_desh });
CraftingManager.addRecipeAuto(new ItemStack(ModItems.rpa_boots, 1), new Object[] { "KLK", "P P", 'L', DictFrame.fromOne(ModItems.parts_legendary, EnumLegendaryType.TIER2), 'K', ModItems.plate_kevlar, 'P', ModItems.plate_armor_ajr });
//Euphemium armor //Euphemium armor
CraftingManager.addRecipeAuto(new ItemStack(ModItems.euphemium_helmet, 1), new Object[] { "EEE", "E E", 'E', ModItems.plate_euphemium }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.euphemium_helmet, 1), new Object[] { "EEE", "E E", 'E', ModItems.plate_euphemium });

View File

@ -402,7 +402,6 @@ public class WeaponRecipes {
CraftingManager.addRecipeAuto(new ItemStack(ModItems.custom_dirty, 1), new Object[] { " C ", "WLW", "WLW", 'C', CU.plate(), 'L', PB.plate(), 'W', ModItems.nuclear_waste }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.custom_dirty, 1), new Object[] { " C ", "WLW", "WLW", 'C', CU.plate(), 'L', PB.plate(), 'W', ModItems.nuclear_waste });
CraftingManager.addRecipeAuto(new ItemStack(ModItems.custom_schrab, 1), new Object[] { " C ", "LUL", "LUL", 'C', CU.plate(), 'L', PB.plate(), 'U', SA326.ingot() }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.custom_schrab, 1), new Object[] { " C ", "LUL", "LUL", 'C', CU.plate(), 'L', PB.plate(), 'U', SA326.ingot() });
CraftingManager.addRecipeAuto(new ItemStack(ModItems.demon_core_open, 1), new Object[] { "PRP", " CS", "PRP", 'P', TI.plate(), 'R', OreDictManager.getReflector(), 'C', ModItems.man_core, 'S', ModItems.screwdriver });
CraftingManager.addRecipeAuto(new ItemStack(ModBlocks.lamp_demon, 1), new Object[] { " D ", "S S", 'D', ModItems.demon_core_closed, 'S', STEEL.ingot() }); CraftingManager.addRecipeAuto(new ItemStack(ModBlocks.lamp_demon, 1), new Object[] { " D ", "S S", 'D', ModItems.demon_core_closed, 'S', STEEL.ingot() });
CraftingManager.addRecipeAuto(new ItemStack(ModItems.crucible, 1, 3), new Object[] { "MEM", "YDY", "YCY", 'M', ModItems.ingot_meteorite_forged, 'E', EUPH.ingot(), 'Y', ModItems.billet_yharonite, 'D', ModItems.demon_core_closed, 'C', ModItems.ingot_chainsteel }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.crucible, 1, 3), new Object[] { "MEM", "YDY", "YCY", 'M', ModItems.ingot_meteorite_forged, 'E', EUPH.ingot(), 'Y', ModItems.billet_yharonite, 'D', ModItems.demon_core_closed, 'C', ModItems.ingot_chainsteel });

View File

@ -43,6 +43,7 @@ public class HazmatRegistry {
double ajr = 1.3D; // 95% double ajr = 1.3D; // 95%
double bj = 1D; // 90% double bj = 1D; // 90%
double hev = 1.3D; // 95% double hev = 1.3D; // 95%
double rpa = 2D; // 99%
double fau = 4D; // 99.99% double fau = 4D; // 99.99%
double dns = 5D; // 99.999% double dns = 5D; // 99.999%
double security = 0.825D; // 85% double security = 0.825D; // 85%
@ -114,6 +115,11 @@ public class HazmatRegistry {
HazmatRegistry.registerHazmat(ModItems.hev_legs, hev * legs); HazmatRegistry.registerHazmat(ModItems.hev_legs, hev * legs);
HazmatRegistry.registerHazmat(ModItems.hev_boots, hev * boots); HazmatRegistry.registerHazmat(ModItems.hev_boots, hev * boots);
HazmatRegistry.registerHazmat(ModItems.rpa_helmet, rpa * helmet);
HazmatRegistry.registerHazmat(ModItems.rpa_plate, rpa * chest);
HazmatRegistry.registerHazmat(ModItems.rpa_legs, rpa * legs);
HazmatRegistry.registerHazmat(ModItems.rpa_boots, rpa * boots);
HazmatRegistry.registerHazmat(ModItems.fau_helmet, fau * helmet); HazmatRegistry.registerHazmat(ModItems.fau_helmet, fau * helmet);
HazmatRegistry.registerHazmat(ModItems.fau_plate, fau * chest); HazmatRegistry.registerHazmat(ModItems.fau_plate, fau * chest);
HazmatRegistry.registerHazmat(ModItems.fau_legs, fau * legs); HazmatRegistry.registerHazmat(ModItems.fau_legs, fau * legs);

View File

@ -280,17 +280,23 @@ public abstract class ToolAbility {
@Override @Override
public void onDig(World world, int x, int y, int z, EntityPlayer player, Block block, int meta, IItemAbility tool) { public void onDig(World world, int x, int y, int z, EntityPlayer player, Block block, int meta, IItemAbility tool) {
//a band-aid on a gaping wound List<ItemStack> drops = block.getDrops(world, x, y, z, world.getBlockMetadata(x, y, z), 0);
if(block == Blocks.lit_redstone_ore)
block = Blocks.redstone_ore;
ItemStack stack = new ItemStack(block, 1, meta); for(int i = 0; i < drops.size(); i++) {
ItemStack result = FurnaceRecipes.smelting().getSmeltingResult(stack); ItemStack stack = drops.get(i).copy();
ItemStack result = FurnaceRecipes.smelting().getSmeltingResult(stack);
if(result != null) { if(result != null) {
world.setBlockToAir(x, y, z); result = result.copy();
world.spawnEntityInWorld(new EntityItem(world, x + 0.5, y + 0.5, z + 0.5, result.copy())); result.stackSize *= stack.stackSize;
drops.set(i, result);
}
} }
world.setBlockToAir(x, y, z);
for(ItemStack stack : drops)
world.spawnEntityInWorld(new EntityItem(world, x + 0.5, y + 0.5, z + 0.5, stack.copy()));
} }
@Override @Override

View File

@ -0,0 +1,11 @@
package com.hbm.handler.nei;
import com.hbm.blocks.ModBlocks;
import com.hbm.inventory.recipes.RefineryRecipes;
public class CrackingHandler extends NEIUniversalHandler {
public CrackingHandler() {
super("ntmCracking", "Cracking", ModBlocks.machine_catalytic_cracker, RefineryRecipes.getCrackingRecipesForNEI());
}
}

View File

@ -0,0 +1,11 @@
package com.hbm.handler.nei;
import com.hbm.blocks.ModBlocks;
import com.hbm.inventory.recipes.RefineryRecipes;
public class FractioningHandler extends NEIUniversalHandler {
public FractioningHandler() {
super("ntmFractioning", "Fractioning", ModBlocks.machine_fraction_tower, RefineryRecipes.getFractionRecipesForNEI());
}
}

View File

@ -50,7 +50,7 @@ public abstract class NEIUniversalHandler extends TemplateRecipeHandler {
input = new PositionedStack[in.length]; input = new PositionedStack[in.length];
for(int i = 0; i < in.length; i++) { for(int i = 0; i < in.length; i++) {
ItemStack[] sub = in[i]; ItemStack[] sub = in[i];
this.input[i] = new PositionedStack(sub, 48 + i * 18, 24); this.input[i] = new PositionedStack(sub, 48 + i * -18, 24);
} }
output = new PositionedStack[out.length]; output = new PositionedStack[out.length];
for(int i = 0; i < out.length; i++) { for(int i = 0; i < out.length; i++) {
@ -95,8 +95,14 @@ public abstract class NEIUniversalHandler extends TemplateRecipeHandler {
@Override @Override
public void drawBackground(int recipe) { public void drawBackground(int recipe) {
super.drawBackground(recipe); super.drawBackground(recipe);
drawTexturedModalRect(47, 23, 5, 87, 18, 18);
drawTexturedModalRect(101, 23, 5, 87, 18, 18); RecipeSet rec = (RecipeSet) this.arecipes.get(recipe);
for(int i = 0; i < rec.input.length; i++)
drawTexturedModalRect(47 + i * -18, 23, 5, 87, 18, 18);
for(int i = 0; i < rec.output.length; i++)
drawTexturedModalRect(101 + i * 18, 23, 5, 87, 18, 18);
drawTexturedModalRect(74, 14, 59, 87, 18, 38); drawTexturedModalRect(74, 14, 59, 87, 18, 38);
} }

View File

@ -154,8 +154,12 @@ public class HazardRegistry {
HazardSystem.register(ball_dynamite, makeData(EXPLOSIVE, 2F)); HazardSystem.register(ball_dynamite, makeData(EXPLOSIVE, 2F));
HazardSystem.register(ball_tnt, makeData(EXPLOSIVE, 3F)); HazardSystem.register(ball_tnt, makeData(EXPLOSIVE, 3F));
HazardSystem.register(ingot_semtex, makeData(EXPLOSIVE, 5F));
HazardSystem.register(ingot_c4, makeData(EXPLOSIVE, 5F));
HazardSystem.register(stick_dynamite, makeData(EXPLOSIVE, 1F)); HazardSystem.register(stick_dynamite, makeData(EXPLOSIVE, 1F));
HazardSystem.register(stick_tnt, makeData(EXPLOSIVE, 1.5F)); HazardSystem.register(stick_tnt, makeData(EXPLOSIVE, 1.5F));
HazardSystem.register(stick_semtex, makeData(EXPLOSIVE, 2.5F));
HazardSystem.register(stick_c4, makeData(EXPLOSIVE, 2.5F));
HazardSystem.register(dynamite, makeData(EXPLOSIVE, 6F)); HazardSystem.register(dynamite, makeData(EXPLOSIVE, 6F));
HazardSystem.register(tnt, makeData(EXPLOSIVE, 8F)); HazardSystem.register(tnt, makeData(EXPLOSIVE, 8F));
@ -164,10 +168,8 @@ public class HazardRegistry {
HazardSystem.register("dustLignite", makeData(COAL, powder)); HazardSystem.register("dustLignite", makeData(COAL, powder));
HazardSystem.register("dustTinyLignite", makeData(COAL, powder_tiny)); HazardSystem.register("dustTinyLignite", makeData(COAL, powder_tiny));
HazardSystem.register(ingot_semtex, makeData(EXPLOSIVE, 10F)); HazardSystem.register(block_semtex, makeData(EXPLOSIVE, 25F));
HazardSystem.register(block_semtex, makeData(EXPLOSIVE, 40F)); HazardSystem.register(block_c4, makeData(EXPLOSIVE, 25F));
HazardSystem.register(ingot_c4, makeData(EXPLOSIVE, 10F));
HazardSystem.register(block_c4, makeData(EXPLOSIVE, 40F));
HazardSystem.register(cordite, makeData(EXPLOSIVE, 2F)); HazardSystem.register(cordite, makeData(EXPLOSIVE, 2F));
HazardSystem.register(ballistite, makeData(EXPLOSIVE, 1F)); HazardSystem.register(ballistite, makeData(EXPLOSIVE, 1F));

View File

@ -456,7 +456,7 @@ public class OreDictManager {
} }
public static void registerGroups() { public static void registerGroups() {
ANY_PLASTIC.addPrefix(INGOT, true).addPrefix(DUST, true); ANY_PLASTIC.addPrefix(INGOT, true).addPrefix(DUST, true).addPrefix(BLOCK, true);
ANY_TAR.addPrefix(ANY, false); ANY_TAR.addPrefix(ANY, false);
} }
@ -547,6 +547,9 @@ public class OreDictManager {
public static ItemStack fromOne(Item item, Enum en) { public static ItemStack fromOne(Item item, Enum en) {
return new ItemStack(item, 1, en.ordinal()); return new ItemStack(item, 1, en.ordinal());
} }
public static ItemStack fromOne(Item item, Enum en, int stacksize) {
return new ItemStack(item, stacksize, en.ordinal());
}
/** Same as fromOne but with an array of ItemStacks. The array type is Object[] so that the ODM methods work with it. Generates ItemStacks for the entire enum class. */ /** Same as fromOne but with an array of ItemStacks. The array type is Object[] so that the ODM methods work with it. Generates ItemStacks for the entire enum class. */
public static Object[] fromAll(Item item, Class<? extends Enum> en) { public static Object[] fromAll(Item item, Class<? extends Enum> en) {
Enum[] vals = en.getEnumConstants(); Enum[] vals = en.getEnumConstants();

View File

@ -414,8 +414,8 @@ public class MachineRecipes {
getFurnaceOutput(new ItemStack(ModItems.ingot_copper), new ItemStack(Items.redstone)).copy()); getFurnaceOutput(new ItemStack(ModItems.ingot_copper), new ItemStack(Items.redstone)).copy());
recipes.put(new ItemStack[] { new ItemStack(ModItems.ingot_red_copper), new ItemStack(ModItems.ingot_steel) }, recipes.put(new ItemStack[] { new ItemStack(ModItems.ingot_red_copper), new ItemStack(ModItems.ingot_steel) },
getFurnaceOutput(new ItemStack(ModItems.ingot_red_copper), new ItemStack(ModItems.ingot_steel)).copy()); getFurnaceOutput(new ItemStack(ModItems.ingot_red_copper), new ItemStack(ModItems.ingot_steel)).copy());
recipes.put(new ItemStack[] { new ItemStack(ModItems.canister_full, 1, Fluids.DIESEL.getContainerColor()), new ItemStack(Items.slime_ball) }, recipes.put(new ItemStack[] { new ItemStack(ModItems.canister_full, 1, Fluids.DIESEL.getID()), new ItemStack(Items.slime_ball) },
getFurnaceOutput(new ItemStack(ModItems.canister_full, 1, Fluids.DIESEL.getContainerColor()), new ItemStack(Items.slime_ball)).copy()); getFurnaceOutput(new ItemStack(ModItems.canister_full, 1, Fluids.DIESEL.getID()), new ItemStack(Items.slime_ball)).copy());
recipes.put(new ItemStack[] { new ItemStack(ModItems.ingot_tungsten), new ItemStack(ModItems.nugget_schrabidium) }, recipes.put(new ItemStack[] { new ItemStack(ModItems.ingot_tungsten), new ItemStack(ModItems.nugget_schrabidium) },
getFurnaceOutput(new ItemStack(ModItems.ingot_tungsten), new ItemStack(ModItems.nugget_schrabidium)).copy()); getFurnaceOutput(new ItemStack(ModItems.ingot_tungsten), new ItemStack(ModItems.nugget_schrabidium)).copy());
recipes.put(new ItemStack[] { new ItemStack(ModItems.plate_mixed), new ItemStack(ModItems.plate_gold) }, recipes.put(new ItemStack[] { new ItemStack(ModItems.plate_mixed), new ItemStack(ModItems.plate_gold) },

View File

@ -134,4 +134,40 @@ public class RefineryRecipes {
protected static Map<FluidType, Pair<FluidStack, FluidStack>> getCrackingRecipes() { protected static Map<FluidType, Pair<FluidStack, FluidStack>> getCrackingRecipes() {
return cracking; return cracking;
} }
public static HashMap<Object, Object> getFractionRecipesForNEI() {
HashMap<Object, Object> recipes = new HashMap();
for(Entry<FluidType, Pair<FluidStack, FluidStack>> recipe : fractions.entrySet()) {
ItemStack[] out = new ItemStack[] {
ItemFluidIcon.make(recipe.getValue().getKey()),
ItemFluidIcon.make(recipe.getValue().getValue())
};
recipes.put(ItemFluidIcon.make(recipe.getKey(), 100), out);
}
return recipes;
}
public static HashMap<Object, Object> getCrackingRecipesForNEI() {
HashMap<Object, Object> recipes = new HashMap();
for(Entry<FluidType, Pair<FluidStack, FluidStack>> recipe : cracking.entrySet()) {
ItemStack[] in = new ItemStack[] {
ItemFluidIcon.make(recipe.getKey(), 100),
ItemFluidIcon.make(Fluids.STEAM, 200)
};
ItemStack[] out = new ItemStack[] {
ItemFluidIcon.make(recipe.getValue().getKey()),
ItemFluidIcon.make(recipe.getValue().getValue())
};
recipes.put(in, recipe.getValue().getValue().type == Fluids.NONE ? ItemFluidIcon.make(recipe.getValue().getKey()) : out);
}
return recipes;
}
} }

View File

@ -246,6 +246,13 @@ public class AnvilRecipes {
new ComparableStack(ModItems.nuclear_waste_vitrified, 10) new ComparableStack(ModItems.nuclear_waste_vitrified, 10)
}, new AnvilOutput(new ItemStack(ModBlocks.vitrified_barrel))).setTier(3)); }, new AnvilOutput(new ItemStack(ModBlocks.vitrified_barrel))).setTier(3));
constructionRecipes.add(new AnvilConstructionRecipe(
new AStack[] {
new ComparableStack(ModItems.man_core, 1),
new OreDictStack(BE.ingot(), 4),
new ComparableStack(ModItems.screwdriver, 1)
}, new AnvilOutput(new ItemStack(ModItems.demon_core_open))).setTier(3));
constructionRecipes.add(new AnvilConstructionRecipe( constructionRecipes.add(new AnvilConstructionRecipe(
new AStack[] {new OreDictStack(DESH.ingot(), 4), new OreDictStack(POLYMER.dust(), 2), new OreDictStack(DURA.ingot(), 1)}, new AStack[] {new OreDictStack(DESH.ingot(), 4), new OreDictStack(POLYMER.dust(), 2), new OreDictStack(DURA.ingot(), 1)},
new AnvilOutput(new ItemStack(ModItems.plate_desh, 4))).setTier(3)); new AnvilOutput(new ItemStack(ModItems.plate_desh, 4))).setTier(3));
@ -509,7 +516,7 @@ public class AnvilRecipes {
new AnvilOutput[] { new AnvilOutput[] {
new AnvilOutput(new ItemStack(Items.redstone, 4)), new AnvilOutput(new ItemStack(Items.redstone, 4)),
new AnvilOutput(new ItemStack(ModItems.ingot_polymer, 2)), new AnvilOutput(new ItemStack(ModItems.ingot_polymer, 2)),
new AnvilOutput(new ItemStack(GeneralConfig.enable528 ? ModItems.circuit_bismuth : ModItems.ingot_asbestos, 2)), new AnvilOutput(new ItemStack(GeneralConfig.enable528 ? ModItems.circuit_tantalium : ModItems.ingot_asbestos, 2)),
new AnvilOutput(new ItemStack(ModItems.ingot_bismuth, 1)) new AnvilOutput(new ItemStack(ModItems.ingot_bismuth, 1))
} }
).setTier(4)); ).setTier(4));
@ -519,7 +526,7 @@ public class AnvilRecipes {
new AnvilOutput(new ItemStack(Items.redstone, 2)), new AnvilOutput(new ItemStack(Items.redstone, 2)),
new AnvilOutput(new ItemStack(ModItems.ingot_polymer, 1)), new AnvilOutput(new ItemStack(ModItems.ingot_polymer, 1)),
new AnvilOutput(new ItemStack(ModItems.ingot_polymer, 1), 0.5F), new AnvilOutput(new ItemStack(ModItems.ingot_polymer, 1), 0.5F),
new AnvilOutput(new ItemStack(GeneralConfig.enable528 ? ModItems.circuit_bismuth : ModItems.ingot_asbestos, 1)), new AnvilOutput(new ItemStack(GeneralConfig.enable528 ? ModItems.circuit_tantalium : ModItems.ingot_asbestos, 1)),
new AnvilOutput(new ItemStack(ModItems.ingot_bismuth, 1), 0.75F) new AnvilOutput(new ItemStack(ModItems.ingot_bismuth, 1), 0.75F)
} }
).setTier(4)); ).setTier(4));

View File

@ -19,4 +19,10 @@ public class ItemEnums {
CRACK, CRACK,
COAL COAL
} }
public static enum EnumLegendaryType {
TIER1,
TIER2,
TIER3
}
} }

View File

@ -9,6 +9,7 @@ import com.hbm.handler.WeaponAbility;
import com.hbm.handler.guncfg.*; import com.hbm.handler.guncfg.*;
import com.hbm.interfaces.ICustomWarhead.SaltedFuel.HalfLifeType; import com.hbm.interfaces.ICustomWarhead.SaltedFuel.HalfLifeType;
import com.hbm.inventory.fluid.Fluids; import com.hbm.inventory.fluid.Fluids;
import com.hbm.items.ItemEnums.EnumLegendaryType;
import com.hbm.items.armor.*; import com.hbm.items.armor.*;
import com.hbm.items.bomb.*; import com.hbm.items.bomb.*;
import com.hbm.items.food.*; import com.hbm.items.food.*;
@ -531,6 +532,8 @@ public class ModItems {
public static Item chlorine_pinwheel; public static Item chlorine_pinwheel;
public static Item deuterium_filter; public static Item deuterium_filter;
public static Item parts_legendary;
public static Item circuit_raw; public static Item circuit_raw;
public static Item circuit_aluminium; public static Item circuit_aluminium;
public static Item circuit_copper; public static Item circuit_copper;
@ -2994,6 +2997,7 @@ public class ModItems {
ring_starmetal = new Item().setUnlocalizedName("ring_starmetal").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":ring_starmetal"); 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"); flywheel_beryllium = new Item().setUnlocalizedName("flywheel_beryllium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":flywheel_beryllium");
deuterium_filter = new Item().setUnlocalizedName("deuterium_filter").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":deuterium_filter"); deuterium_filter = new Item().setUnlocalizedName("deuterium_filter").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":deuterium_filter");
parts_legendary = new ItemEnumMulti(EnumLegendaryType.class, false, true).setUnlocalizedName("parts_legendary").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":parts_legendary");
cap_aluminium = new Item().setUnlocalizedName("cap_aluminium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":cap_aluminium"); 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"); hull_small_steel = new Item().setUnlocalizedName("hull_small_steel").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":hull_small_steel");
@ -4739,10 +4743,10 @@ public class ModItems {
chemistry_icon = new ItemChemistryIcon().setUnlocalizedName("chemistry_icon").setMaxStackSize(1).setCreativeTab(null); chemistry_icon = new ItemChemistryIcon().setUnlocalizedName("chemistry_icon").setMaxStackSize(1).setCreativeTab(null);
fluid_identifier = new ItemFluidIdentifier().setUnlocalizedName("fluid_identifier").setMaxStackSize(1).setCreativeTab(MainRegistry.templateTab).setTextureName(RefStrings.MODID + ":fluid_identifier"); fluid_identifier = new ItemFluidIdentifier().setUnlocalizedName("fluid_identifier").setMaxStackSize(1).setCreativeTab(MainRegistry.templateTab).setTextureName(RefStrings.MODID + ":fluid_identifier");
fluid_icon = new ItemFluidIcon().setUnlocalizedName("fluid_icon").setCreativeTab(null).setTextureName(RefStrings.MODID + ":fluid_icon"); fluid_icon = new ItemFluidIcon().setUnlocalizedName("fluid_icon").setCreativeTab(null).setTextureName(RefStrings.MODID + ":fluid_icon");
fluid_tank_full = new ItemFluidTank().setUnlocalizedName("fluid_tank_full").setContainerItem(ModItems.fluid_tank_empty).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":fluid_tank");
fluid_tank_empty = new Item().setUnlocalizedName("fluid_tank_empty").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":fluid_tank"); fluid_tank_empty = new Item().setUnlocalizedName("fluid_tank_empty").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":fluid_tank");
fluid_tank_lead_full = new ItemFluidTank().setUnlocalizedName("fluid_tank_lead_full").setContainerItem(ModItems.fluid_tank_lead_empty).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":fluid_tank_lead"); fluid_tank_full = new ItemFluidTank().setUnlocalizedName("fluid_tank_full").setContainerItem(ModItems.fluid_tank_empty).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":fluid_tank");
fluid_tank_lead_empty = new Item().setUnlocalizedName("fluid_tank_lead_empty").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":fluid_tank_lead"); fluid_tank_lead_empty = new Item().setUnlocalizedName("fluid_tank_lead_empty").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":fluid_tank_lead");
fluid_tank_lead_full = new ItemFluidTank().setUnlocalizedName("fluid_tank_lead_full").setContainerItem(ModItems.fluid_tank_lead_empty).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":fluid_tank_lead");
fluid_barrel_full = new ItemFluidTank().setUnlocalizedName("fluid_barrel_full").setContainerItem(ModItems.fluid_barrel_empty).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":fluid_barrel"); fluid_barrel_full = new ItemFluidTank().setUnlocalizedName("fluid_barrel_full").setContainerItem(ModItems.fluid_barrel_empty).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":fluid_barrel");
fluid_barrel_empty = new Item().setUnlocalizedName("fluid_barrel_empty").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":fluid_barrel"); fluid_barrel_empty = new Item().setUnlocalizedName("fluid_barrel_empty").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":fluid_barrel");
fluid_barrel_infinite = new Item().setUnlocalizedName("fluid_barrel_infinite").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":fluid_barrel_infinite"); fluid_barrel_infinite = new Item().setUnlocalizedName("fluid_barrel_infinite").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":fluid_barrel_infinite");
@ -4914,18 +4918,18 @@ public class ModItems {
ajro_legs = new ArmorAJRO(aMatAJR, 7, 2, RefStrings.MODID + ":textures/armor/starmetal_2.png", 2500000, 10000, 2000, 25).cloneStats((ArmorFSB) ajro_helmet).setUnlocalizedName("ajro_legs").setTextureName(RefStrings.MODID + ":ajro_legs"); ajro_legs = new ArmorAJRO(aMatAJR, 7, 2, RefStrings.MODID + ":textures/armor/starmetal_2.png", 2500000, 10000, 2000, 25).cloneStats((ArmorFSB) ajro_helmet).setUnlocalizedName("ajro_legs").setTextureName(RefStrings.MODID + ":ajro_legs");
ajro_boots = new ArmorAJRO(aMatAJR, 7, 3, RefStrings.MODID + ":textures/armor/starmetal_1.png", 2500000, 10000, 2000, 25).cloneStats((ArmorFSB) ajro_helmet).setUnlocalizedName("ajro_boots").setTextureName(RefStrings.MODID + ":ajro_boots"); ajro_boots = new ArmorAJRO(aMatAJR, 7, 3, RefStrings.MODID + ":textures/armor/starmetal_1.png", 2500000, 10000, 2000, 25).cloneStats((ArmorFSB) ajro_helmet).setUnlocalizedName("ajro_boots").setTextureName(RefStrings.MODID + ":ajro_boots");
rpa_helmet = new ArmorRPA(aMatAJR, 7, 0, RefStrings.MODID + ":textures/armor/starmetal_1.png", 2500000, 10000, 2000, 25).setMod(0.25F).setCap(6.0F).setThreshold(4F) rpa_helmet = new ArmorRPA(aMatAJR, 7, 0, RefStrings.MODID + ":textures/armor/starmetal_1.png", 2500000, 10000, 2000, 25).setMod(0.1F).setCap(6.0F).setThreshold(20F)
.setFireproof(true) .setFireproof(true)
.enableVATS(true) .enableVATS(true)
.setHasGeigerSound(true) .setHasGeigerSound(true)
.setHasHardLanding(true) .setHasHardLanding(true)
.addEffect(new PotionEffect(Potion.jump.id, 20, 0)) .addEffect(new PotionEffect(Potion.damageBoost.id, 20, 3))
.addEffect(new PotionEffect(Potion.damageBoost.id, 20, 0))
.setBlastProtection(0.25F) .setBlastProtection(0.25F)
.setStep("hbm:step.metal") .setProjectileProtection(0.25F)
.setJump("hbm:step.iron_jump") .setProtectionLevel(1500)
.setFall("hbm:step.iron_land") .setStep("hbm:step.powered")
.addResistance("monoxide", 0F) .setJump("hbm:step.powered")
.setFall("hbm:step.powered")
.addResistance("fall", 0).setUnlocalizedName("rpa_helmet").setTextureName(RefStrings.MODID + ":rpa_helmet"); .addResistance("fall", 0).setUnlocalizedName("rpa_helmet").setTextureName(RefStrings.MODID + ":rpa_helmet");
rpa_plate = new ArmorRPA(aMatAJR, 7, 1, RefStrings.MODID + ":textures/armor/starmetal_1.png", 2500000, 10000, 2000, 25).cloneStats((ArmorFSB) rpa_helmet).setUnlocalizedName("rpa_plate").setTextureName(RefStrings.MODID + ":rpa_plate"); rpa_plate = new ArmorRPA(aMatAJR, 7, 1, RefStrings.MODID + ":textures/armor/starmetal_1.png", 2500000, 10000, 2000, 25).cloneStats((ArmorFSB) rpa_helmet).setUnlocalizedName("rpa_plate").setTextureName(RefStrings.MODID + ":rpa_plate");
rpa_legs = new ArmorRPA(aMatAJR, 7, 2, RefStrings.MODID + ":textures/armor/starmetal_2.png", 2500000, 10000, 2000, 25).cloneStats((ArmorFSB) rpa_helmet).setUnlocalizedName("rpa_legs").setTextureName(RefStrings.MODID + ":rpa_legs"); rpa_legs = new ArmorRPA(aMatAJR, 7, 2, RefStrings.MODID + ":textures/armor/starmetal_2.png", 2500000, 10000, 2000, 25).cloneStats((ArmorFSB) rpa_helmet).setUnlocalizedName("rpa_legs").setTextureName(RefStrings.MODID + ":rpa_legs");
@ -6067,6 +6071,7 @@ public class ModItems {
GameRegistry.registerItem(chlorine_pinwheel, chlorine_pinwheel.getUnlocalizedName()); GameRegistry.registerItem(chlorine_pinwheel, chlorine_pinwheel.getUnlocalizedName());
GameRegistry.registerItem(ring_starmetal, ring_starmetal.getUnlocalizedName()); GameRegistry.registerItem(ring_starmetal, ring_starmetal.getUnlocalizedName());
GameRegistry.registerItem(deuterium_filter, deuterium_filter.getUnlocalizedName()); GameRegistry.registerItem(deuterium_filter, deuterium_filter.getUnlocalizedName());
GameRegistry.registerItem(parts_legendary, parts_legendary.getUnlocalizedName());
//Teleporter Parts //Teleporter Parts
GameRegistry.registerItem(telepad, telepad.getUnlocalizedName()); GameRegistry.registerItem(telepad, telepad.getUnlocalizedName());

View File

@ -5,7 +5,6 @@ import java.util.List;
import net.minecraft.block.Block; import net.minecraft.block.Block;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item; import net.minecraft.item.Item;
import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.util.EnumChatFormatting; import net.minecraft.util.EnumChatFormatting;

View File

@ -28,10 +28,10 @@ public class ItemChemistryIcon extends Item {
public String getItemStackDisplayName(ItemStack stack) { public String getItemStackDisplayName(ItemStack stack) {
ChemRecipe chem = ChemplantRecipes.recipes.get(stack.getItemDamage() % ChemplantRecipes.recipes.size()); ChemRecipe recipe = ChemplantRecipes.indexMapping.get(stack.getItemDamage());
String s = ("" + StatCollector.translateToLocal(ModItems.chemistry_template.getUnlocalizedName() + ".name")).trim(); String s = ("" + StatCollector.translateToLocal(ModItems.chemistry_template.getUnlocalizedName() + ".name")).trim();
String s1 = ("" + StatCollector.translateToLocal("chem." + chem.name)).trim(); String s1 = ("" + StatCollector.translateToLocal("chem." + recipe.name)).trim();
if(s1 != null) { if(s1 != null) {
s = s + " " + s1; s = s + " " + s1;
@ -59,6 +59,6 @@ public class ItemChemistryIcon extends Item {
@SideOnly(Side.CLIENT) @SideOnly(Side.CLIENT)
public IIcon getIconFromDamage(int i) { public IIcon getIconFromDamage(int i) {
return this.icons[ChemplantRecipes.indexMapping.get(i).listing]; return this.icons[ChemplantRecipes.indexMapping.get(i).listing % this.icons.length];
} }
} }

View File

@ -1,6 +1,8 @@
package com.hbm.items.machine; package com.hbm.items.machine;
import java.util.List; import java.util.List;
import com.hbm.inventory.FluidStack;
import com.hbm.inventory.fluid.FluidType; import com.hbm.inventory.fluid.FluidType;
import com.hbm.inventory.fluid.Fluids; import com.hbm.inventory.fluid.Fluids;
import com.hbm.items.ModItems; import com.hbm.items.ModItems;
@ -50,6 +52,10 @@ public class ItemFluidIcon extends Item {
return stack; return stack;
} }
public static ItemStack make(FluidStack stack) {
return make(stack.type, stack.fill);
}
public static ItemStack make(FluidType fluid, int i) { public static ItemStack make(FluidType fluid, int i) {
return addQuantity(new ItemStack(ModItems.fluid_icon, 1, fluid.ordinal()), i); return addQuantity(new ItemStack(ModItems.fluid_icon, 1, fluid.ordinal()), i);
} }

View File

@ -3,7 +3,7 @@ package com.hbm.lib;
public class RefStrings { public class RefStrings {
public static final String MODID = "hbm"; public static final String MODID = "hbm";
public static final String NAME = "Hbm's Nuclear Tech Mod"; public static final String NAME = "Hbm's Nuclear Tech Mod";
public static final String VERSION = "1.0.27 BETA (4152)"; public static final String VERSION = "1.0.27 BETA (4158)";
//HBM's Beta Naming Convention: //HBM's Beta Naming Convention:
//V T (X) //V T (X)
//V -> next release version //V -> next release version

View File

@ -38,6 +38,7 @@ import java.util.Random;
import com.hbm.blocks.ModBlocks; import com.hbm.blocks.ModBlocks;
import com.hbm.blocks.generic.BlockBobble.TileEntityBobble; import com.hbm.blocks.generic.BlockBobble.TileEntityBobble;
import com.hbm.blocks.generic.BlockEmitter.TileEntityEmitter;
import com.hbm.blocks.generic.BlockLoot.TileEntityLoot; import com.hbm.blocks.generic.BlockLoot.TileEntityLoot;
import com.hbm.entity.effect.*; import com.hbm.entity.effect.*;
import com.hbm.entity.grenade.*; import com.hbm.entity.grenade.*;
@ -111,6 +112,7 @@ public class ClientProxy extends ServerProxy {
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityDemonLamp.class, new RenderDemonLamp()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityDemonLamp.class, new RenderDemonLamp());
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityLoot.class, new RenderLoot()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityLoot.class, new RenderLoot());
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityBobble.class, new RenderBobble()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityBobble.class, new RenderBobble());
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityEmitter.class, new RenderEmitter());
//bombs //bombs
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityNukeGadget.class, new RenderNukeGadget()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityNukeGadget.class, new RenderNukeGadget());
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityNukeBoy.class, new RenderNukeBoy()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityNukeBoy.class, new RenderNukeBoy());

View File

@ -13,6 +13,7 @@ import com.hbm.inventory.fluid.Fluids;
import static com.hbm.inventory.OreDictManager.*; import static com.hbm.inventory.OreDictManager.*;
import com.hbm.items.ModItems; import com.hbm.items.ModItems;
import com.hbm.items.ItemEnums.EnumLegendaryType;
import com.hbm.items.machine.ItemBattery; import com.hbm.items.machine.ItemBattery;
import com.hbm.items.special.ItemCircuitStarComponent.CircuitComponentType; import com.hbm.items.special.ItemCircuitStarComponent.CircuitComponentType;
import com.hbm.items.special.ItemHolotapeImage.EnumHoloImage; import com.hbm.items.special.ItemHolotapeImage.EnumHoloImage;
@ -238,6 +239,7 @@ public class CraftingManager {
addRecipeAuto(new ItemStack(ModBlocks.machine_arc_furnace_off, 1), new Object[] { "ITI", "PFP", "ITI", 'I', W.ingot(), 'T', ModBlocks.machine_transformer, 'P', ModItems.board_copper, 'F', Blocks.furnace }); addRecipeAuto(new ItemStack(ModBlocks.machine_arc_furnace_off, 1), new Object[] { "ITI", "PFP", "ITI", 'I', W.ingot(), 'T', ModBlocks.machine_transformer, 'P', ModItems.board_copper, 'F', Blocks.furnace });
addRecipeAuto(new ItemStack(Item.getItemFromBlock(ModBlocks.red_wire_coated), 16), new Object[] { "WRW", "RIR", "WRW", 'W', ModItems.plate_polymer, 'I', MINGRADE.ingot(), 'R', ModItems.wire_red_copper }); addRecipeAuto(new ItemStack(Item.getItemFromBlock(ModBlocks.red_wire_coated), 16), new Object[] { "WRW", "RIR", "WRW", 'W', ModItems.plate_polymer, 'I', MINGRADE.ingot(), 'R', ModItems.wire_red_copper });
addRecipeAuto(new ItemStack(ModBlocks.cable_switch, 1), new Object[] { "S", "W", 'S', Blocks.lever, 'W', ModBlocks.red_wire_coated }); addRecipeAuto(new ItemStack(ModBlocks.cable_switch, 1), new Object[] { "S", "W", 'S', Blocks.lever, 'W', ModBlocks.red_wire_coated });
addRecipeAuto(new ItemStack(ModBlocks.cable_detector, 1), new Object[] { "S", "W", 'S', REDSTONE.dust(), 'W', ModBlocks.red_wire_coated });
addRecipeAuto(new ItemStack(ModBlocks.machine_detector, 1), new Object[] { "IRI", "CTC", "IRI", 'I', ModItems.plate_polymer, 'R', REDSTONE.dust(), 'C', ModItems.wire_red_copper, 'T', ModItems.coil_tungsten }); addRecipeAuto(new ItemStack(ModBlocks.machine_detector, 1), new Object[] { "IRI", "CTC", "IRI", 'I', ModItems.plate_polymer, 'R', REDSTONE.dust(), 'C', ModItems.wire_red_copper, 'T', ModItems.coil_tungsten });
addRecipeAuto(new ItemStack(Item.getItemFromBlock(ModBlocks.red_cable), 16), new Object[] { " W ", "RRR", " W ", 'W', ModItems.plate_polymer, 'R', ModItems.wire_red_copper }); addRecipeAuto(new ItemStack(Item.getItemFromBlock(ModBlocks.red_cable), 16), new Object[] { " W ", "RRR", " W ", 'W', ModItems.plate_polymer, 'R', ModItems.wire_red_copper });
addRecipeAuto(new ItemStack(ModBlocks.red_connector, 4), new Object[] { "C", "I", "S", 'C', ModItems.coil_copper, 'I', ModItems.plate_polymer, 'S', STEEL.ingot() }); addRecipeAuto(new ItemStack(ModBlocks.red_connector, 4), new Object[] { "C", "I", "S", 'C', ModItems.coil_copper, 'I', ModItems.plate_polymer, 'S', STEEL.ingot() });
@ -460,8 +462,8 @@ public class CraftingManager {
addShapelessAuto(new ItemStack(ModItems.solid_fuel_presto_triplet, 1), new Object[] { ModItems.solid_fuel_presto, ModItems.solid_fuel_presto, ModItems.solid_fuel_presto, ModItems.ball_dynamite }); addShapelessAuto(new ItemStack(ModItems.solid_fuel_presto_triplet, 1), new Object[] { ModItems.solid_fuel_presto, ModItems.solid_fuel_presto, ModItems.solid_fuel_presto, ModItems.ball_dynamite });
addRecipeAuto(new ItemStack(Item.getItemFromBlock(ModBlocks.flame_war), 1), new Object[] { "WHW", "CTP", "WOW", 'W', Item.getItemFromBlock(Blocks.planks), 'T', Item.getItemFromBlock(Blocks.tnt), 'H', ModItems.flame_pony, 'C', ModItems.flame_conspiracy, 'P', ModItems.flame_politics, 'O', ModItems.flame_opinion }); addRecipeAuto(new ItemStack(Item.getItemFromBlock(ModBlocks.flame_war), 1), new Object[] { "WHW", "CTP", "WOW", 'W', Item.getItemFromBlock(Blocks.planks), 'T', Item.getItemFromBlock(Blocks.tnt), 'H', ModItems.flame_pony, 'C', ModItems.flame_conspiracy, 'P', ModItems.flame_politics, 'O', ModItems.flame_opinion });
addRecipeAuto(new ItemStack(ModBlocks.det_cord, 8), new Object[] { "TNT", "NGN", "TNT", 'T', IRON.plate(), 'N', KNO.dust(), 'G', Items.gunpowder }); addRecipeAuto(new ItemStack(ModBlocks.det_cord, 4), new Object[] { " P ", "PGP", " P ", 'P', Items.paper, 'G', Items.gunpowder });
addRecipeAuto(new ItemStack(ModBlocks.det_charge, 1), new Object[] { "PDP", "DTD", "PDP", 'P', STEEL.plate(), 'D', ModBlocks.det_cord, 'T', ModItems.ingot_semtex }); addRecipeAuto(new ItemStack(ModBlocks.det_charge, 1), new Object[] { "PDP", "DTD", "PDP", 'P', STEEL.plate(), 'D', ModBlocks.det_cord, 'T', ANY_PLASTICEXPLOSIVE.ingot() });
addRecipeAuto(new ItemStack(ModBlocks.det_nuke, 1), new Object[] { "PDP", "DCD", "PDP", 'P', ModItems.plate_desh, 'D', ModBlocks.det_charge, 'C', ModItems.man_core }); addRecipeAuto(new ItemStack(ModBlocks.det_nuke, 1), new Object[] { "PDP", "DCD", "PDP", 'P', ModItems.plate_desh, 'D', ModBlocks.det_charge, 'C', ModItems.man_core });
addRecipeAuto(new ItemStack(ModBlocks.det_miner, 4), new Object[] { "FFF", "ITI", "ITI", 'F', Items.flint, 'I', IRON.plate(), 'T', ModItems.ball_dynamite }); addRecipeAuto(new ItemStack(ModBlocks.det_miner, 4), new Object[] { "FFF", "ITI", "ITI", 'F', Items.flint, 'I', IRON.plate(), 'T', ModItems.ball_dynamite });
addRecipeAuto(new ItemStack(ModBlocks.det_miner, 12), new Object[] { "FFF", "ITI", "ITI", 'F', Items.flint, 'I', STEEL.plate(), 'T', ANY_PLASTICEXPLOSIVE.ingot() }); addRecipeAuto(new ItemStack(ModBlocks.det_miner, 12), new Object[] { "FFF", "ITI", "ITI", 'F', Items.flint, 'I', STEEL.plate(), 'T', ANY_PLASTICEXPLOSIVE.ingot() });
@ -849,6 +851,8 @@ public class CraftingManager {
addRecipeAuto(new ItemStack(ModBlocks.deco_pipe_quad_marked, 8), new Object[] { "PPP", "PCP", "PPP", 'P', ModBlocks.deco_pipe_quad_green, 'C', KEY_GREEN }); addRecipeAuto(new ItemStack(ModBlocks.deco_pipe_quad_marked, 8), new Object[] { "PPP", "PCP", "PPP", 'P', ModBlocks.deco_pipe_quad_green, 'C', KEY_GREEN });
addRecipeAuto(new ItemStack(ModBlocks.deco_pipe_framed_marked, 8), new Object[] { "PPP", "PCP", "PPP", 'P', ModBlocks.deco_pipe_framed_green, 'C', KEY_GREEN }); addRecipeAuto(new ItemStack(ModBlocks.deco_pipe_framed_marked, 8), new Object[] { "PPP", "PCP", "PPP", 'P', ModBlocks.deco_pipe_framed_green, 'C', KEY_GREEN });
addRecipeAuto(new ItemStack(ModBlocks.deco_emitter), new Object[] { "IDI", "DRD", "IDI", 'I', IRON.ingot(), 'D', DIAMOND.gem(), 'R', REDSTONE.block() });
addRecipeAuto(new ItemStack(Items.name_tag), new Object[] { "SB ", "BPB", " BP", 'S', Items.string, 'B', KEY_SLIME, 'P', Items.paper }); addRecipeAuto(new ItemStack(Items.name_tag), new Object[] { "SB ", "BPB", " BP", 'S', Items.string, 'B', KEY_SLIME, 'P', Items.paper });
addRecipeAuto(new ItemStack(Items.name_tag), new Object[] { "SB ", "BPB", " BP", 'S', Items.string, 'B', ANY_TAR.any(), 'P', Items.paper }); addRecipeAuto(new ItemStack(Items.name_tag), new Object[] { "SB ", "BPB", " BP", 'S', Items.string, 'B', ANY_TAR.any(), 'P', Items.paper });
addRecipeAuto(new ItemStack(ModItems.rag, 4), new Object[] { "SW", "WS", 'S', Items.string, 'W', Blocks.wool }); addRecipeAuto(new ItemStack(ModItems.rag, 4), new Object[] { "SW", "WS", 'S', Items.string, 'W', Blocks.wool });
@ -884,6 +888,12 @@ public class CraftingManager {
addShapelessAuto(new ItemStack(ModItems.canister_full, 1, Fluids.BIOFUEL.getID()), new Object[] { ModItems.canister_biofuel }); addShapelessAuto(new ItemStack(ModItems.canister_full, 1, Fluids.BIOFUEL.getID()), new Object[] { ModItems.canister_biofuel });
addShapelessAuto(new ItemStack(ModItems.canister_full, 1, Fluids.ETHANOL.getID()), new Object[] { ModItems.canister_ethanol }); addShapelessAuto(new ItemStack(ModItems.canister_full, 1, Fluids.ETHANOL.getID()), new Object[] { ModItems.canister_ethanol });
addShapelessAuto(DictFrame.fromOne(ModItems.parts_legendary, EnumLegendaryType.TIER1), new Object[] { ModItems.ingot_chainsteel, ASBESTOS.ingot(), ModItems.gem_alexandrite });
addShapelessAuto(DictFrame.fromOne(ModItems.parts_legendary, EnumLegendaryType.TIER1, 3), new Object[] { DictFrame.fromOne(ModItems.parts_legendary, EnumLegendaryType.TIER2) });
addShapelessAuto(DictFrame.fromOne(ModItems.parts_legendary, EnumLegendaryType.TIER2), new Object[] { ModItems.ingot_chainsteel, ModItems.ingot_bismuth, ModItems.gem_alexandrite, ModItems.gem_alexandrite });
addShapelessAuto(DictFrame.fromOne(ModItems.parts_legendary, EnumLegendaryType.TIER2, 3), new Object[] { DictFrame.fromOne(ModItems.parts_legendary, EnumLegendaryType.TIER3) });
addShapelessAuto(DictFrame.fromOne(ModItems.parts_legendary, EnumLegendaryType.TIER3), new Object[] { ModItems.ingot_chainsteel, ModItems.ingot_smore, ModItems.gem_alexandrite, ModItems.gem_alexandrite, ModItems.gem_alexandrite });
if(GeneralConfig.enableBabyMode) { if(GeneralConfig.enableBabyMode) {
addShapelessAuto(new ItemStack(ModItems.cordite, 3), new Object[] { ModItems.ballistite, Items.gunpowder, new ItemStack(Blocks.wool, 1, OreDictionary.WILDCARD_VALUE) }); addShapelessAuto(new ItemStack(ModItems.cordite, 3), new Object[] { ModItems.ballistite, Items.gunpowder, new ItemStack(Blocks.wool, 1, OreDictionary.WILDCARD_VALUE) });
addShapelessAuto(new ItemStack(ModItems.ingot_semtex, 3), new Object[] { Items.slime_ball, Blocks.tnt, KNO.dust() }); addShapelessAuto(new ItemStack(ModItems.ingot_semtex, 3), new Object[] { Items.slime_ball, Blocks.tnt, KNO.dust() });

View File

@ -13,6 +13,7 @@ import org.apache.commons.lang3.math.NumberUtils;
import org.apache.logging.log4j.Level; import org.apache.logging.log4j.Level;
import com.google.common.collect.Multimap; import com.google.common.collect.Multimap;
import com.hbm.blocks.IStepTickReceiver;
import com.hbm.blocks.ModBlocks; import com.hbm.blocks.ModBlocks;
import com.hbm.blocks.generic.BlockAshes; import com.hbm.blocks.generic.BlockAshes;
import com.hbm.config.GeneralConfig; import com.hbm.config.GeneralConfig;
@ -61,6 +62,7 @@ import com.hbm.util.EntityDamageUtil;
import com.hbm.world.WorldProviderNTM; import com.hbm.world.WorldProviderNTM;
import com.hbm.world.generator.TimedGenerator; import com.hbm.world.generator.TimedGenerator;
import codechicken.lib.math.MathHelper;
import cpw.mods.fml.common.eventhandler.Event.Result; import cpw.mods.fml.common.eventhandler.Event.Result;
import cpw.mods.fml.common.eventhandler.EventPriority; import cpw.mods.fml.common.eventhandler.EventPriority;
import cpw.mods.fml.common.eventhandler.SubscribeEvent; import cpw.mods.fml.common.eventhandler.SubscribeEvent;
@ -1099,6 +1101,18 @@ public class ModEventHandler {
if(player.ticksExisted == 100 || player.ticksExisted == 200) if(player.ticksExisted == 100 || player.ticksExisted == 200)
CraftingManager.crumple(); CraftingManager.crumple();
if(event.phase == TickEvent.Phase.START) {
int x = MathHelper.floor_double(player.posX);
int y = MathHelper.floor_double(player.posY - player.yOffset - 0.5);
int z = MathHelper.floor_double(player.posZ);
Block b = player.worldObj.getBlock(x, y, z);
if(b instanceof IStepTickReceiver) {
IStepTickReceiver step = (IStepTickReceiver) b;
step.onPlayerStep(player.worldObj, x, y, z, player);
}
}
if(!player.worldObj.isRemote && event.phase == TickEvent.Phase.START) { if(!player.worldObj.isRemote && event.phase == TickEvent.Phase.START) {
/// GHOST FIX START /// /// GHOST FIX START ///

View File

@ -71,6 +71,10 @@ public class NEIConfig implements IConfigureNEI {
API.registerUsageHandler(new LiquefactionHandler()); API.registerUsageHandler(new LiquefactionHandler());
API.registerRecipeHandler(new SolidificationHandler()); API.registerRecipeHandler(new SolidificationHandler());
API.registerUsageHandler(new SolidificationHandler()); API.registerUsageHandler(new SolidificationHandler());
API.registerRecipeHandler(new CrackingHandler());
API.registerUsageHandler(new CrackingHandler());
API.registerRecipeHandler(new FractioningHandler());
API.registerUsageHandler(new FractioningHandler());
//Some things are even beyond my control...or are they? //Some things are even beyond my control...or are they?
API.hideItem(ItemBattery.getEmptyBattery(ModItems.memory)); API.hideItem(ItemBattery.getEmptyBattery(ModItems.memory));

View File

@ -0,0 +1,79 @@
package com.hbm.render.tileentity;
import java.awt.Color;
import org.lwjgl.opengl.GL11;
import com.hbm.blocks.generic.BlockEmitter.TileEntityEmitter;
import com.hbm.render.util.BeamPronter;
import com.hbm.render.util.BeamPronter.EnumBeamType;
import com.hbm.render.util.BeamPronter.EnumWaveType;
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.Vec3;
public class RenderEmitter extends TileEntitySpecialRenderer {
@Override
public void renderTileEntityAt(TileEntity tileEntity, double x, double y, double z, float f) {
GL11.glPushMatrix();
GL11.glTranslated(x + 0.5, y, z + 0.5);
GL11.glEnable(GL11.GL_LIGHTING);
GL11.glEnable(GL11.GL_CULL_FACE);
GL11.glRotatef(90, 0F, 1F, 0F);
switch(tileEntity.getBlockMetadata()) {
case 0:
GL11.glTranslated(0.0D, 0.5D, -0.5D);
GL11.glRotatef(90, 1F, 0F, 0F); break;
case 1:
GL11.glTranslated(0.0D, 0.5D, 0.5D);
GL11.glRotatef(90, -1F, 0F, 0F); break;
case 2: GL11.glRotatef(90, 0F, 1F, 0F); break;
case 4: GL11.glRotatef(180, 0F, 1F, 0F); break;
case 3: GL11.glRotatef(270, 0F, 1F, 0F); break;
case 5: GL11.glRotatef(0, 0F, 1F, 0F); break;
}
GL11.glTranslated(0, 0.5, 0.5);
TileEntityEmitter emitter = (TileEntityEmitter) tileEntity;
int range = emitter.beam - 1;
int originalColor = emitter.color == 0 ? Color.HSBtoRGB(tileEntity.getWorldObj().getTotalWorldTime() / 50.0F, 0.5F, 0.25F) & 16777215 : emitter.color;
float girth = emitter.girth;
int r = (originalColor & 0xff0000) >> 16;
int g = (originalColor & 0x00ff00) >> 8;
int b = (originalColor & 0x0000ff);
float innerMult = 0.85F;
float outerMult = 0.1F;
int colorInner = ((int)(r * innerMult) << 16) | ((int)(g * innerMult) << 8) | ((int)(b * innerMult));
int colorOuter = ((int)(r * outerMult) << 16) | ((int)(g * outerMult) << 8) | ((int)(b * outerMult));
if(range > 0) {
int segments = (int)Math.max(Math.sqrt(girth * 50), 2);
BeamPronter.prontBeam(Vec3.createVectorHelper(0, 0, range), EnumWaveType.SPIRAL, EnumBeamType.SOLID, colorOuter, colorInner, 0, 1, 0F, segments, girth);
if(emitter.effect == 1) {
BeamPronter.prontBeam(Vec3.createVectorHelper(0, 0, range), EnumWaveType.RANDOM, EnumBeamType.SOLID, colorOuter, colorInner, (int) tileEntity.getWorldObj().getTotalWorldTime() / 2, (int)Math.max(range / girth / 2, 1), girth * 2, 4, girth * 0.1F);
BeamPronter.prontBeam(Vec3.createVectorHelper(0, 0, range), EnumWaveType.RANDOM, EnumBeamType.SOLID, colorOuter, colorInner, (int) tileEntity.getWorldObj().getTotalWorldTime() / 2 + 15, (int)Math.max(range / girth / 4, 1), girth * 2, 4, girth * 0.1F);
}
if(emitter.effect == 2) {
BeamPronter.prontBeam(Vec3.createVectorHelper(0, 0, range), EnumWaveType.SPIRAL, EnumBeamType.SOLID, colorOuter, colorInner, (int) (tileEntity.getWorldObj().getTotalWorldTime() + f) * -10 % 360, (int)Math.max(range / girth / 2, 1), girth * 2, 4, girth * 0.1F);
BeamPronter.prontBeam(Vec3.createVectorHelper(0, 0, range), EnumWaveType.SPIRAL, EnumBeamType.SOLID, colorOuter, colorInner, (int) (tileEntity.getWorldObj().getTotalWorldTime() + f) * -10 % 360 + 180, (int)Math.max(range / girth / 2, 1), girth * 2, 4, girth * 0.1F);
}
if(emitter.effect == 3) {
BeamPronter.prontBeam(Vec3.createVectorHelper(0, 0, range), EnumWaveType.SPIRAL, EnumBeamType.SOLID, colorOuter, colorInner, (int) (tileEntity.getWorldObj().getTotalWorldTime() + f) * -10 % 360, (int)Math.max(range / girth / 2, 1), girth * 2, 4, girth * 0.1F);
BeamPronter.prontBeam(Vec3.createVectorHelper(0, 0, range), EnumWaveType.SPIRAL, EnumBeamType.SOLID, colorOuter, colorInner, (int) (tileEntity.getWorldObj().getTotalWorldTime() + f) * -10 % 360 + 120, (int)Math.max(range / girth / 2, 1), girth * 2, 4, girth * 0.1F);
BeamPronter.prontBeam(Vec3.createVectorHelper(0, 0, range), EnumWaveType.SPIRAL, EnumBeamType.SOLID, colorOuter, colorInner, (int) (tileEntity.getWorldObj().getTotalWorldTime() + f) * -10 % 360 + 240, (int)Math.max(range / girth / 2, 1), girth * 2, 4, girth * 0.1F);
}
}
GL11.glEnable(GL11.GL_LIGHTING);
GL11.glPopMatrix();
}
}

View File

@ -59,7 +59,8 @@ public class BeamPronter {
spinner.rotateAroundY((float) Math.PI * (float) start / 180F); spinner.rotateAroundY((float) Math.PI * (float) start / 180F);
spinner.rotateAroundY((float) Math.PI * 45F / 180F * i); spinner.rotateAroundY((float) Math.PI * 45F / 180F * i);
} else if(wave == EnumWaveType.RANDOM) { } else if(wave == EnumWaveType.RANDOM) {
spinner.rotateAroundY((float) Math.PI * 4 * rand.nextFloat()); spinner.rotateAroundY((float) Math.PI * 2 * rand.nextFloat());
spinner.rotateAroundY((float) Math.PI * 2 * rand.nextFloat());
} }
double pX = unit.xCoord * segLength * i + spinner.xCoord; double pX = unit.xCoord * segLength * i + spinner.xCoord;
@ -82,7 +83,20 @@ public class BeamPronter {
for(int j = 1; j <= layers; j++) { for(int j = 1; j <= layers; j++) {
float inter = (float) (j - 1) / (float) (layers - 1); float inter = (float) (j - 1) / (float) (layers - 1);
int color = (int) (outerColor + (innerColor - outerColor) * inter);
int r1 = ((outerColor & 0xFF0000) >> 16);
int g1 = ((outerColor & 0x00FF00) >> 8);
int b1 = ((outerColor & 0x0000FF) >> 0);
int r2 = ((innerColor & 0xFF0000) >> 16);
int g2 = ((innerColor & 0x00FF00) >> 8);
int b2 = ((innerColor & 0x0000FF) >> 0);
int r = ((int)(r1 + (r2 - r1) * inter)) << 16;
int g = ((int)(g1 + (g2 - g1) * inter)) << 8;
int b = ((int)(b1 + (b2 - b1) * inter)) << 0;
int color = r | g | b;
tessellator.startDrawingQuads(); tessellator.startDrawingQuads();
tessellator.setColorOpaque_I(color); tessellator.setColorOpaque_I(color);

View File

@ -3,6 +3,7 @@ package com.hbm.tileentity;
import java.util.HashMap; import java.util.HashMap;
import com.hbm.blocks.generic.BlockBobble.TileEntityBobble; import com.hbm.blocks.generic.BlockBobble.TileEntityBobble;
import com.hbm.blocks.generic.BlockEmitter.TileEntityEmitter;
import com.hbm.blocks.generic.BlockLoot.TileEntityLoot; import com.hbm.blocks.generic.BlockLoot.TileEntityLoot;
import com.hbm.tileentity.bomb.*; import com.hbm.tileentity.bomb.*;
import com.hbm.tileentity.conductor.*; import com.hbm.tileentity.conductor.*;
@ -188,6 +189,7 @@ public class TileMappings {
put(TileEntityLoot.class, "tileentity_ntm_loot"); put(TileEntityLoot.class, "tileentity_ntm_loot");
put(TileEntityBobble.class, "tileentity_ntm_bobblehead"); put(TileEntityBobble.class, "tileentity_ntm_bobblehead");
put(TileEntityEmitter.class, "tileentity_ntm_emitter");
put(TileEntityDoorGeneric.class, "tileentity_ntm_door"); put(TileEntityDoorGeneric.class, "tileentity_ntm_door");

View File

@ -1,6 +1,5 @@
package com.hbm.tileentity.machine; package com.hbm.tileentity.machine;
import java.util.ArrayList;
import java.util.List; import java.util.List;
import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidAcceptor;

View File

@ -130,6 +130,17 @@ public class TileEntityMachineChemplant extends TileEntityMachineBase implements
} }
this.networkPack(data, 150); this.networkPack(data, 150);
} else {
if(isProgressing && this.worldObj.getTotalWorldTime() % 3 == 0) {
ForgeDirection dir = ForgeDirection.getOrientation(this.getBlockMetadata() - BlockDummyable.offset).getOpposite();
ForgeDirection rot = dir.getRotation(ForgeDirection.UP);
double x = xCoord + 0.5 + dir.offsetX * 1.125 + rot.offsetX * 0.125;
double y = yCoord + 3;
double z = zCoord + 0.5 + dir.offsetZ * 1.125 + rot.offsetZ * 0.125;
worldObj.spawnParticle("cloud", x, y, z, 0.0, 0.1, 0.0);
}
} }
} }

View File

@ -59,6 +59,7 @@ public class ArmorUtil {
ArmorRegistry.registerHazard(ModItems.dns_helmet, HazardClass.PARTICLE_COARSE, HazardClass.PARTICLE_FINE, HazardClass.GAS_CHLORINE, HazardClass.BACTERIA, HazardClass.GAS_MONOXIDE, HazardClass.LIGHT, HazardClass.SAND); ArmorRegistry.registerHazard(ModItems.dns_helmet, HazardClass.PARTICLE_COARSE, HazardClass.PARTICLE_FINE, HazardClass.GAS_CHLORINE, HazardClass.BACTERIA, HazardClass.GAS_MONOXIDE, HazardClass.LIGHT, HazardClass.SAND);
ArmorRegistry.registerHazard(ModItems.schrabidium_helmet, HazardClass.PARTICLE_COARSE, HazardClass.PARTICLE_FINE, HazardClass.GAS_CHLORINE, HazardClass.BACTERIA, HazardClass.GAS_MONOXIDE, HazardClass.LIGHT, HazardClass.SAND); ArmorRegistry.registerHazard(ModItems.schrabidium_helmet, HazardClass.PARTICLE_COARSE, HazardClass.PARTICLE_FINE, HazardClass.GAS_CHLORINE, HazardClass.BACTERIA, HazardClass.GAS_MONOXIDE, HazardClass.LIGHT, HazardClass.SAND);
ArmorRegistry.registerHazard(ModItems.euphemium_helmet, HazardClass.PARTICLE_COARSE, HazardClass.PARTICLE_FINE, HazardClass.GAS_CHLORINE, HazardClass.BACTERIA, HazardClass.GAS_MONOXIDE, HazardClass.LIGHT, HazardClass.SAND); ArmorRegistry.registerHazard(ModItems.euphemium_helmet, HazardClass.PARTICLE_COARSE, HazardClass.PARTICLE_FINE, HazardClass.GAS_CHLORINE, HazardClass.BACTERIA, HazardClass.GAS_MONOXIDE, HazardClass.LIGHT, HazardClass.SAND);
ArmorRegistry.registerHazard(ModItems.rpa_helmet, HazardClass.PARTICLE_COARSE, HazardClass.PARTICLE_FINE, HazardClass.GAS_CHLORINE, HazardClass.BACTERIA, HazardClass.GAS_MONOXIDE, HazardClass.LIGHT, HazardClass.SAND);
//Ob ihr wirklich richtig steht, seht ihr wenn das Licht angeht! //Ob ihr wirklich richtig steht, seht ihr wenn das Licht angeht!
registerIfExists(Compat.MOD_GT6, "gt.armor.hazmat.universal.head", HazardClass.PARTICLE_COARSE, HazardClass.PARTICLE_FINE, HazardClass.GAS_CHLORINE, HazardClass.BACTERIA, HazardClass.GAS_MONOXIDE, HazardClass.LIGHT, HazardClass.SAND); registerIfExists(Compat.MOD_GT6, "gt.armor.hazmat.universal.head", HazardClass.PARTICLE_COARSE, HazardClass.PARTICLE_FINE, HazardClass.GAS_CHLORINE, HazardClass.BACTERIA, HazardClass.GAS_MONOXIDE, HazardClass.LIGHT, HazardClass.SAND);

View File

@ -365,8 +365,10 @@ public class InventoryUtil {
if(o instanceof ItemStack[]) { if(o instanceof ItemStack[]) {
ItemStack[] ingredients = (ItemStack[]) o; ItemStack[] ingredients = (ItemStack[]) o;
ItemStack[][] stacks = new ItemStack[1][0]; ItemStack[][] stacks = new ItemStack[ingredients.length][1];
stacks[0] = ingredients; for(int i = 0; i < ingredients.length; i++) {
stacks[i][0] = ingredients[i];
}
return stacks; return stacks;
} }

View File

@ -110,9 +110,11 @@ bomb.triggered=Erfolgreich ausgelöst!
book.test.page1=Testseite 1 book.test.page1=Testseite 1
chem.ASPHALT=Asphaltherstellung chem.ASPHALT=Asphaltherstellung
chem.BAKELITE=Bakelitherstellung
chem.BALEFIRE=BF-Raketentreibstoffherstellung chem.BALEFIRE=BF-Raketentreibstoffherstellung
chem.BP_BIOFUEL=Biodieselumesterung chem.BP_BIOFUEL=Biodieselumesterung
chem.BP_BIOGAS=Biogasherstellung chem.BP_BIOGAS=Biogasherstellung
chem.C4=C4-Synthese
chem.CC_HEATING=Fortgeschrittene Kohleverflüssigung chem.CC_HEATING=Fortgeschrittene Kohleverflüssigung
chem.CC_HEAVY=Einfache Kohleverflüssigung chem.CC_HEAVY=Einfache Kohleverflüssigung
chem.CC_I=Erweiterte Kohleverflüssigung chem.CC_I=Erweiterte Kohleverflüssigung
@ -120,6 +122,8 @@ chem.CC_NAPHTHA=Naphtha-Kohleverflüssigung
chem.CC_OIL=Kohleverflüssigung chem.CC_OIL=Kohleverflüssigung
chem.CIRCUIT_4=Überstaktete Schaltkreisherstellung chem.CIRCUIT_4=Überstaktete Schaltkreisherstellung
chem.CIRCUIT_5=Leistungsstarke Schaltkreisherstellung chem.CIRCUIT_5=Leistungsstarke Schaltkreisherstellung
chem.CO2=CO2-Herstellung
chem.COALGAS_LEADED=Bleikohlebenzin mischen
chem.COLTAN_CLEANING=Coltanreinigung chem.COLTAN_CLEANING=Coltanreinigung
chem.COLTAN_CRYSTAL=Tantal-Kristallisierung chem.COLTAN_CRYSTAL=Tantal-Kristallisierung
chem.COLTAN_PAIN=Pandemonium(III)tantalit-Herstellung chem.COLTAN_PAIN=Pandemonium(III)tantalit-Herstellung
@ -148,15 +152,19 @@ chem.FP_SMEAR=Industrieölverarbeitung
chem.FR_PETROIL=Gemischherstellung chem.FR_PETROIL=Gemischherstellung
chem.FR_REOIL=Öl-Wiederaufbereitung chem.FR_REOIL=Öl-Wiederaufbereitung
chem.GASOLINE=Benzinherstellung chem.GASOLINE=Benzinherstellung
chem.GASOLINE_LEADED=Bleibenzin mischen
chem.HELIUM3=Helium-3-Extraktion aus Mondgestein chem.HELIUM3=Helium-3-Extraktion aus Mondgestein
chem.KEVLAR=Kevlarverbundherstellung chem.KEVLAR=Kevlarverbundherstellung
chem.LPG=Petroleumgasverflüssigung chem.LPG=Petroleumgasverflüssigung
chem.LUBRICANT=Schmieröl mischen
chem.NITAN=NITAN-Supertreibstoff mischen chem.NITAN=NITAN-Supertreibstoff mischen
chem.OIL_SAND=Teersand-Extraktion chem.OIL_SAND=Teersand-Extraktion
chem.OSMIRIDIUM_DEATH=Osmiridiumlösung-Herstellung chem.OSMIRIDIUM_DEATH=Osmiridiumlösung-Herstellung
chem.PEROXIDE=Wasserstoffperoxidherstellung chem.PEROXIDE=Wasserstoffperoxidherstellung
chem.PETROIL_LEADED=Bleigemisch mischen
chem.POLYMER=Polymersynthese chem.POLYMER=Polymersynthese
chem.PUF6=Plutoniumhexafluoridproduktion chem.PUF6=Plutoniumhexafluoridproduktion
chem.RUBBER=Gummiherstellung
chem.SAS3=Schrabidiumtrisulfatherstellung chem.SAS3=Schrabidiumtrisulfatherstellung
chem.SATURN=Saturnitherstellung chem.SATURN=Saturnitherstellung
chem.SCHRABIDATE=Eisenschrabidatherstellung chem.SCHRABIDATE=Eisenschrabidatherstellung
@ -180,6 +188,7 @@ chem.SOLID_FUEL=Festbrennstoffherstellung
chem.STEAM=Wasser kochen chem.STEAM=Wasser kochen
chem.TEL=TEL mischen chem.TEL=TEL mischen
chem.TEST=Test chem.TEST=Test
chem.TNT=TNT-Synthese
chem.UF6=Uranhexafluoridproduktion chem.UF6=Uranhexafluoridproduktion
chem.VIT_GAS=Gas-Atommüllvitrifizierung chem.VIT_GAS=Gas-Atommüllvitrifizierung
chem.VIT_LIQUID=Flüssig-Atommüllvitrifizierung chem.VIT_LIQUID=Flüssig-Atommüllvitrifizierung
@ -463,6 +472,7 @@ hbmfluid.bitumen=Bitumen
hbmfluid.carbondioxide=Kohlenstoffdioxid hbmfluid.carbondioxide=Kohlenstoffdioxid
hbmfluid.coolant=Kühlflüssigkeit hbmfluid.coolant=Kühlflüssigkeit
hbmfluid.coalgas=Kohlebenzin hbmfluid.coalgas=Kohlebenzin
hbmfluid.coalgas_leaded=Bleikohlebenzin
hbmfluid.coaloil=Kohleöl hbmfluid.coaloil=Kohleöl
hbmfluid.crackoil=Crack-Öl hbmfluid.crackoil=Crack-Öl
hbmfluid.cryogel=Kryogel hbmfluid.cryogel=Kryogel
@ -474,7 +484,8 @@ hbmfluid.ethanol=Ethanol
hbmfluid.enderjuice=Endersaft hbmfluid.enderjuice=Endersaft
hbmfluid.fracksol=Frackinglösung hbmfluid.fracksol=Frackinglösung
hbmfluid.gas=Erdgas hbmfluid.gas=Erdgas
hbmfluid.gasoline=Bleibenzin hbmfluid.gasoline=Benzin
hbmfluid.gasoline_leaded=Bleibenzin
hbmfluid.heatingoil=Heizöl hbmfluid.heatingoil=Heizöl
hbmfluid.heavyoil=Schweröl hbmfluid.heavyoil=Schweröl
hbmfluid.heavywater=Schweres Wasser hbmfluid.heavywater=Schweres Wasser
@ -498,6 +509,7 @@ hbmfluid.oil=Rohöl
hbmfluid.oxygen=Flüssiger Sauerstoff hbmfluid.oxygen=Flüssiger Sauerstoff
hbmfluid.pain=Pandemonium(III)tantalit-Lösung hbmfluid.pain=Pandemonium(III)tantalit-Lösung
hbmfluid.petroil=Gemisch hbmfluid.petroil=Gemisch
hbmfluid.petroil_leaded=Bleigemisch
hbmfluid.petroleum=Petroleumgas hbmfluid.petroleum=Petroleumgas
hbmfluid.plasma_bf=Balefire-Plasma hbmfluid.plasma_bf=Balefire-Plasma
hbmfluid.plasma_dh3=Deuterium-Helium-3-Plasma hbmfluid.plasma_dh3=Deuterium-Helium-3-Plasma
@ -2073,6 +2085,7 @@ item.particle_muon.name=Myonenkapsel
item.particle_sparkticle.name=Sparktikelkapsel item.particle_sparkticle.name=Sparktikelkapsel
item.particle_strange.name=Strange-Quark-Kapsel item.particle_strange.name=Strange-Quark-Kapsel
item.particle_tachyon.name=Tachyonenkapsel item.particle_tachyon.name=Tachyonenkapsel
item.parts_legendary.name=Legendäre Teile
item.peas.name=Erbsen item.peas.name=Erbsen
item.pedestal_steel.name=Stahlsockel item.pedestal_steel.name=Stahlsockel
item.pellet_advanced.name=Fortgeschrittenes Watzaufwertugspellet item.pellet_advanced.name=Fortgeschrittenes Watzaufwertugspellet
@ -2607,7 +2620,9 @@ item.steel_pickaxe.name=Stahlspitzhacke
item.steel_plate.name=Stahlbrustpanzer item.steel_plate.name=Stahlbrustpanzer
item.steel_shovel.name=Stahlschaufel item.steel_shovel.name=Stahlschaufel
item.steel_sword.name=Stahlschwert item.steel_sword.name=Stahlschwert
item.stick_c4.name=Stange C4
item.stick_dynamite.name=Stange Dynamit item.stick_dynamite.name=Stange Dynamit
item.stick_semtex.name=Stange Semtex
item.stick_tnt.name=Stange TNT item.stick_tnt.name=Stange TNT
item.stopsign.name=Stopschild-Streitaxt item.stopsign.name=Stopschild-Streitaxt
item.sulfur.name=Schwefel item.sulfur.name=Schwefel
@ -2868,6 +2883,7 @@ tile.block_advanced_alloy.name=Fortgeschrittener Legierungsblock
tile.block_aluminium.name=Aluminiumblock tile.block_aluminium.name=Aluminiumblock
tile.block_asbestos.name=Asbestblock tile.block_asbestos.name=Asbestblock
tile.block_australium.name=Australiumblock tile.block_australium.name=Australiumblock
tile.block_bakelite.name=Bakelitblock
tile.block_beryllium.name=Berylliumblock tile.block_beryllium.name=Berylliumblock
tile.block_bismuth.name=Bismutblock tile.block_bismuth.name=Bismutblock
tile.block_boron.name=Borblock tile.block_boron.name=Borblock
@ -2921,6 +2937,7 @@ tile.block_niobium.name=Niobblock
tile.block_plutonium.name=Plutoniumblock tile.block_plutonium.name=Plutoniumblock
tile.block_plutonium_fuel.name=Plutoniumkernbrennstoffblock tile.block_plutonium_fuel.name=Plutoniumkernbrennstoffblock
tile.block_polonium.name=Polonium-210-Block tile.block_polonium.name=Polonium-210-Block
tile.block_polymer.name=Polymerblock
tile.block_pu_mix.name=Reaktorfähiger Plutoniumblock tile.block_pu_mix.name=Reaktorfähiger Plutoniumblock
tile.block_pu238.name=Plutonium-238-Block tile.block_pu238.name=Plutonium-238-Block
tile.block_pu239.name=Plutonium-239-Block tile.block_pu239.name=Plutonium-239-Block
@ -2928,6 +2945,7 @@ tile.block_pu240.name=Plutonium-240-Block
tile.block_red_copper.name=Roter Kupferblock tile.block_red_copper.name=Roter Kupferblock
tile.block_red_phosphorus.name=Roter Phosphorblock tile.block_red_phosphorus.name=Roter Phosphorblock
tile.block_reiium.name=Reiiumblock tile.block_reiium.name=Reiiumblock
tile.block_rubber.name=Gummiblock
tile.block_schrabidate.name=Eisenschrabidatblock tile.block_schrabidate.name=Eisenschrabidatblock
tile.block_schrabidium.name=Schrabidiumblock tile.block_schrabidium.name=Schrabidiumblock
tile.block_schrabidium_cluster.name=Schrabidium-Cluster tile.block_schrabidium_cluster.name=Schrabidium-Cluster
@ -3048,6 +3066,7 @@ tile.crystal_virus.name=Dunkler Kristall
tile.deco_aluminium.name=Aluminium-Dekoblock tile.deco_aluminium.name=Aluminium-Dekoblock
tile.deco_asbestos.name=Asbestdach tile.deco_asbestos.name=Asbestdach
tile.deco_beryllium.name=Beryllium-Dekoblock tile.deco_beryllium.name=Beryllium-Dekoblock
tile.deco_emitter.name=Deko-Lichtemitter
tile.deco_lead.name=Blei-Dekoblock tile.deco_lead.name=Blei-Dekoblock
tile.deco_rbmk.name=RBMK-Dekoblock tile.deco_rbmk.name=RBMK-Dekoblock
tile.deco_rbmk_smooth.name=Glatter RBMK-Dekoblock tile.deco_rbmk_smooth.name=Glatter RBMK-Dekoblock

View File

@ -277,9 +277,11 @@ book.starter.page18=vær is just a guy who has been trapped in the grey void fea
#book.rbmk.page16=§4§lAvoid. #book.rbmk.page16=§4§lAvoid.
chem.ASPHALT=Asphalt Production chem.ASPHALT=Asphalt Production
chem.BAKELITE=Bakelite Production
chem.BALEFIRE=BF Rocket Fuel Mixing chem.BALEFIRE=BF Rocket Fuel Mixing
chem.BP_BIOFUEL=Biofuel Transesterification chem.BP_BIOFUEL=Biofuel Transesterification
chem.BP_BIOGAS=Biogas Production chem.BP_BIOGAS=Biogas Production
chem.C4=C-4 Synthesis
chem.CC_HEATING=Advanced Coal Liquefaction chem.CC_HEATING=Advanced Coal Liquefaction
chem.CC_HEAVY=Basic Coal Liquefaction chem.CC_HEAVY=Basic Coal Liquefaction
chem.CC_I=Enhanced Coal Liquefaction chem.CC_I=Enhanced Coal Liquefaction
@ -288,6 +290,7 @@ chem.CC_OIL=Coal Liquefaction
chem.CIRCUIT_4=Overclocked Circuit Production chem.CIRCUIT_4=Overclocked Circuit Production
chem.CIRCUIT_5=High Performance Circuit Production chem.CIRCUIT_5=High Performance Circuit Production
chem.CO2=Carbon Dioxide Production chem.CO2=Carbon Dioxide Production
chem.COALGAS_LEADED=Leaded Coal Gasoline Mixing
chem.COLTAN_CLEANING=Coltan Purifying chem.COLTAN_CLEANING=Coltan Purifying
chem.COLTAN_CRYSTAL=Tantalium Crystallizing chem.COLTAN_CRYSTAL=Tantalium Crystallizing
chem.COLTAN_PAIN=Pandemonium(III)tantalite Production chem.COLTAN_PAIN=Pandemonium(III)tantalite Production
@ -318,17 +321,21 @@ chem.FR_PETROIL=Petroil Mixing
chem.FR_REOIL=Oil Reprocessing chem.FR_REOIL=Oil Reprocessing
chem.FRACKSOL=Fracking Solution Production chem.FRACKSOL=Fracking Solution Production
chem.GASOLINE=Gasoline Production chem.GASOLINE=Gasoline Production
chem.GASOLINE_LEADED=Leaded Gasoline Mixing
chem.HEAVY_ELECTROLYSIS=Heavy Water Cryo-Electrolysis chem.HEAVY_ELECTROLYSIS=Heavy Water Cryo-Electrolysis
chem.HELIUM3=Helium-3 Extraction from Moon Turf chem.HELIUM3=Helium-3 Extraction from Moon Turf
chem.KEVLAR=Kevlar Compound Production chem.KEVLAR=Kevlar Compound Production
chem.LPG=Petroleum Gas Liquefaction chem.LPG=Petroleum Gas Liquefaction
chem.LUBRICANT=Lubricant Mixing
chem.METH=Methamphetamine Synthesis chem.METH=Methamphetamine Synthesis
chem.NITAN=NITAN Super Fuel Mixing chem.NITAN=NITAN Super Fuel Mixing
chem.OIL_SAND=Tar Sand Extraction chem.OIL_SAND=Tar Sand Extraction
chem.OSMIRIDIUM_DEATH=Osmiridic Solution Production chem.OSMIRIDIUM_DEATH=Osmiridic Solution Production
chem.PEROXIDE=Hydrogen Peroxide Production chem.PEROXIDE=Hydrogen Peroxide Production
chem.PETROIL_LEADED=Leaded Petroil Mixing
chem.POLYMER=Polymer Synthesis chem.POLYMER=Polymer Synthesis
chem.PUF6=Plutonium Hexafluoride Production chem.PUF6=Plutonium Hexafluoride Production
chem.RUBBER=Rubber Production
chem.SAS3=Schrabidium Trisulfide Production chem.SAS3=Schrabidium Trisulfide Production
chem.SATURN=Saturnite Production chem.SATURN=Saturnite Production
chem.SCHRABIDATE=Ferric Schrabidate Production chem.SCHRABIDATE=Ferric Schrabidate Production
@ -352,6 +359,7 @@ chem.SOLID_FUEL=Solid Rocket Fuel Production
chem.STEAM=Water Boiling chem.STEAM=Water Boiling
chem.TEL=TEL Mixing chem.TEL=TEL Mixing
chem.TEST=Test chem.TEST=Test
chem.TNT=TNT Synthesis
chem.UF6=Uranium Hexafluoride Production chem.UF6=Uranium Hexafluoride Production
chem.VIT_GAS=Gaseous Nuclear Waste Vitrification chem.VIT_GAS=Gaseous Nuclear Waste Vitrification
chem.VIT_LIQUID=Liquid Nuclear Waste Vitrification chem.VIT_LIQUID=Liquid Nuclear Waste Vitrification
@ -655,6 +663,7 @@ hbmfluid.biogas=Biogas
hbmfluid.bitumen=Bitumen hbmfluid.bitumen=Bitumen
hbmfluid.carbondioxide=Carbon Dioxide hbmfluid.carbondioxide=Carbon Dioxide
hbmfluid.coalgas=Coal Gasoline hbmfluid.coalgas=Coal Gasoline
hbmfluid.coalgas_leaded=Leaded Coal Gasoline
hbmfluid.coaloil=Coal Oil hbmfluid.coaloil=Coal Oil
hbmfluid.coolant=Coolant hbmfluid.coolant=Coolant
hbmfluid.crackoil=Cracked Oil hbmfluid.crackoil=Cracked Oil
@ -667,7 +676,8 @@ hbmfluid.ethanol=Ethanol
hbmfluid.enderjuice=Ender Juice hbmfluid.enderjuice=Ender Juice
hbmfluid.fracksol=Fracking Solution hbmfluid.fracksol=Fracking Solution
hbmfluid.gas=Natural Gas hbmfluid.gas=Natural Gas
hbmfluid.gasoline=Leaded Gasoline hbmfluid.gasoline=Gasoline
hbmfluid.gasoline_leaded=Leaded Gasoline
hbmfluid.heatingoil=Heating Oil hbmfluid.heatingoil=Heating Oil
hbmfluid.heavyoil=Heavy Oil hbmfluid.heavyoil=Heavy Oil
hbmfluid.heavywater=Heavy Water hbmfluid.heavywater=Heavy Water
@ -691,6 +701,7 @@ hbmfluid.oil=Crude Oil
hbmfluid.oxygen=Liquid Oxygen hbmfluid.oxygen=Liquid Oxygen
hbmfluid.pain=Pandemonium(III)tantalite Solution hbmfluid.pain=Pandemonium(III)tantalite Solution
hbmfluid.petroil=Petroil hbmfluid.petroil=Petroil
hbmfluid.petroil_leaded=Leaded Petroil
hbmfluid.petroleum=Petroleum Gas hbmfluid.petroleum=Petroleum Gas
hbmfluid.plasma_bf=Balefire Plasma hbmfluid.plasma_bf=Balefire Plasma
hbmfluid.plasma_dh3=Deuterium-Helium-3 Plasma hbmfluid.plasma_dh3=Deuterium-Helium-3 Plasma
@ -2335,6 +2346,7 @@ item.particle_muon.name=Muon Capsule
item.particle_sparkticle.name=Sparkticle Capsule item.particle_sparkticle.name=Sparkticle Capsule
item.particle_strange.name=Strange Quark Capsule item.particle_strange.name=Strange Quark Capsule
item.particle_tachyon.name=Tachyon Capsule item.particle_tachyon.name=Tachyon Capsule
item.parts_legendary.name=Legendary Parts
item.peas.name=Peas item.peas.name=Peas
item.pedestal_steel.name=Steel Pedestal item.pedestal_steel.name=Steel Pedestal
item.pellet_advanced.name=Advanced Watz Performance Improver item.pellet_advanced.name=Advanced Watz Performance Improver
@ -2961,7 +2973,9 @@ item.steel_pickaxe.name=Steel Pickaxe
item.steel_plate.name=Steel Chestplate item.steel_plate.name=Steel Chestplate
item.steel_shovel.name=Steel Shovel item.steel_shovel.name=Steel Shovel
item.steel_sword.name=Steel Sword item.steel_sword.name=Steel Sword
item.stick_c4.name=Stick of C-4
item.stick_dynamite.name=Stick of Dynamite item.stick_dynamite.name=Stick of Dynamite
item.stick_semtex.name=Stick of Semtex
item.stick_tnt.name=Stick of TNT item.stick_tnt.name=Stick of TNT
item.stopsign.name=Stop Sign Battle Axe item.stopsign.name=Stop Sign Battle Axe
item.sulfur.name=Sulfur item.sulfur.name=Sulfur
@ -3232,6 +3246,7 @@ tile.block_advanced_alloy.name=Block of Advanced Alloy
tile.block_aluminium.name=Block of Aluminium tile.block_aluminium.name=Block of Aluminium
tile.block_asbestos.name=Block of Asbestos tile.block_asbestos.name=Block of Asbestos
tile.block_australium.name=Block of Australium tile.block_australium.name=Block of Australium
tile.block_bakelite.name=Block of Bakelite
tile.block_beryllium.name=Block of Beryllium tile.block_beryllium.name=Block of Beryllium
tile.block_bismuth.name=Block of Bismuth tile.block_bismuth.name=Block of Bismuth
tile.block_boron.name=Block of Boron tile.block_boron.name=Block of Boron
@ -3285,6 +3300,7 @@ tile.block_niobium.name=Block of Niobium
tile.block_plutonium.name=Block of Plutonium tile.block_plutonium.name=Block of Plutonium
tile.block_plutonium_fuel.name=Block of Plutonium Fuel tile.block_plutonium_fuel.name=Block of Plutonium Fuel
tile.block_polonium.name=Block of Polonium-210 tile.block_polonium.name=Block of Polonium-210
tile.block_polymer.name=Block of Polymer
tile.block_pu_mix.name=Block of Reactor Grade Plutonium tile.block_pu_mix.name=Block of Reactor Grade Plutonium
tile.block_pu238.name=Block of Plutonium-238 tile.block_pu238.name=Block of Plutonium-238
tile.block_pu239.name=Block of Plutonium-239 tile.block_pu239.name=Block of Plutonium-239
@ -3293,6 +3309,7 @@ tile.block_ra226.name=Block of Radium-226
tile.block_red_copper.name=Block of Red Copper tile.block_red_copper.name=Block of Red Copper
tile.block_red_phosphorus.name=Block of Red Phosphorus tile.block_red_phosphorus.name=Block of Red Phosphorus
tile.block_reiium.name=Block of Reiium tile.block_reiium.name=Block of Reiium
tile.block_rubber.name=Block of Rubber
tile.block_schrabidate.name=Block of Ferric Schrabidate tile.block_schrabidate.name=Block of Ferric Schrabidate
tile.block_schrabidium.name=Block of Schrabidium tile.block_schrabidium.name=Block of Schrabidium
tile.block_schrabidium_cluster.name=Schrabidium Cluster tile.block_schrabidium_cluster.name=Schrabidium Cluster
@ -3413,6 +3430,7 @@ tile.crystal_virus.name=Dark Crystal
tile.deco_aluminium.name=Aluminium Deco Block tile.deco_aluminium.name=Aluminium Deco Block
tile.deco_asbestos.name=Asbestos Roof tile.deco_asbestos.name=Asbestos Roof
tile.deco_beryllium.name=Beryllium Deco Block tile.deco_beryllium.name=Beryllium Deco Block
tile.deco_emitter.name=Deco Light Emitter
tile.deco_lead.name=Lead Deco Block tile.deco_lead.name=Lead Deco Block
tile.deco_rbmk.name=RBMK Deco Block tile.deco_rbmk.name=RBMK Deco Block
tile.deco_rbmk_smooth.name=Smooth RBMK Deco Block tile.deco_rbmk_smooth.name=Smooth RBMK Deco Block

View File

@ -194,6 +194,7 @@
"step.iron_land": {"category": "player", "sounds": [{"name": "footsteps/iron_land", "stream": false}]}, "step.iron_land": {"category": "player", "sounds": [{"name": "footsteps/iron_land", "stream": false}]},
"step.iron": {"category": "player", "sounds": ["footsteps/iron1", "footsteps/iron2", "footsteps/iron3", "footsteps/iron4"]}, "step.iron": {"category": "player", "sounds": ["footsteps/iron1", "footsteps/iron2", "footsteps/iron3", "footsteps/iron4"]},
"step.metalBlock": {"category": "block", "sounds": ["footsteps/metalStep1", "footsteps/metalStep2", "footsteps/metalStep3", "footsteps/metalStep4"]}, "step.metalBlock": {"category": "block", "sounds": ["footsteps/metalStep1", "footsteps/metalStep2", "footsteps/metalStep3", "footsteps/metalStep4"]},
"step.powered": {"category": "player", "sounds": ["footsteps/powered1", "footsteps/powered2", "footsteps/powered3"]},
"player.vomit": {"category": "player", "sounds": [{"name": "player/vomit", "stream": false}]}, "player.vomit": {"category": "player", "sounds": [{"name": "player/vomit", "stream": false}]},
"player.cough": {"category": "player", "sounds": ["player/cough1", "player/cough2", "player/cough3", "player/cough4"]}, "player.cough": {"category": "player", "sounds": ["player/cough1", "player/cough2", "player/cough3", "player/cough4"]},

Binary file not shown.

After

Width:  |  Height:  |  Size: 380 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 464 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 169 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 397 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 249 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 347 B

View File

@ -3,7 +3,7 @@
"modid": "hbm", "modid": "hbm",
"name": "Hbm's Nuclear Tech", "name": "Hbm's Nuclear Tech",
"description": "A mod that adds weapons, nuclear themed stuff and machines", "description": "A mod that adds weapons, nuclear themed stuff and machines",
"version":"1.0.27_X4152", "version":"1.0.27_X4158",
"mcversion": "1.7.10", "mcversion": "1.7.10",
"url": "", "url": "",
"updateUrl": "", "updateUrl": "",