and there we go

This commit is contained in:
Bob 2022-10-16 18:13:56 +02:00
parent 6363cf4b1a
commit fff48c5ca1
34 changed files with 395 additions and 67 deletions

View File

@ -2982,12 +2982,12 @@ public class ModBlocks {
GameRegistry.registerBlock(door_bunker, door_bunker.getUnlocalizedName());
//Crates
GameRegistry.registerBlock(crate_iron, crate_iron.getUnlocalizedName());
GameRegistry.registerBlock(crate_steel, crate_steel.getUnlocalizedName());
GameRegistry.registerBlock(crate_desh, crate_desh.getUnlocalizedName());
GameRegistry.registerBlock(crate_tungsten, crate_tungsten.getUnlocalizedName());
GameRegistry.registerBlock(safe, safe.getUnlocalizedName());
GameRegistry.registerBlock(mass_storage, ItemBlockBase.class, mass_storage.getUnlocalizedName());
register(crate_iron);
register(crate_steel);
register(crate_desh);
register(crate_tungsten);
register(safe);
register(mass_storage);
//Junk
GameRegistry.registerBlock(boxcar, boxcar.getUnlocalizedName());

View File

@ -3,6 +3,7 @@ package com.hbm.blocks.generic;
import java.io.IOException;
import java.util.Random;
import com.hbm.blocks.IBlockMulti;
import com.hbm.blocks.ModBlocks;
import com.hbm.items.ModItems;
import com.hbm.items.tool.ItemLock;
@ -38,7 +39,7 @@ import net.minecraft.util.IIcon;
import net.minecraft.util.MathHelper;
import net.minecraft.world.World;
public class BlockStorageCrate extends BlockContainer {
public class BlockStorageCrate extends BlockContainer implements IBlockMulti {
@SideOnly(Side.CLIENT)
private IIcon iconTop;
@ -264,4 +265,9 @@ public class BlockStorageCrate extends BlockContainer {
public Item getItemDropped(int i, Random rand, int j) {
return null;
}
@Override
public int getSubCount() {
return 0;
}
}

View File

@ -1,9 +1,6 @@
package com.hbm.blocks.machine;
import java.util.Random;
import com.hbm.blocks.ModBlocks;
import com.hbm.interfaces.IDummy;
import com.hbm.main.MainRegistry;
import com.hbm.tileentity.machine.TileEntityDummy;
import com.hbm.tileentity.machine.TileEntityMachineAssembler;
@ -11,8 +8,6 @@ import com.hbm.tileentity.machine.TileEntityMachineAssembler;
import cpw.mods.fml.common.network.internal.FMLNetworkHandler;
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.material.Material;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;

View File

@ -6,9 +6,11 @@ import java.util.List;
import com.hbm.blocks.BlockDummyable;
import com.hbm.blocks.IBlockMulti;
import com.hbm.blocks.ILookOverlay;
import com.hbm.blocks.ITooltipProvider;
import com.hbm.inventory.fluid.FluidType;
import com.hbm.inventory.fluid.trait.FT_Heatable;
import com.hbm.inventory.fluid.trait.FT_Heatable.HeatingType;
import com.hbm.items.ModItems;
import com.hbm.items.machine.IItemFluidIdentifier;
import com.hbm.tileentity.TileEntityProxyCombo;
import com.hbm.tileentity.machine.TileEntityHeatBoiler;
@ -29,7 +31,7 @@ import net.minecraft.world.World;
import net.minecraftforge.client.event.RenderGameOverlayEvent.Pre;
import net.minecraftforge.common.util.ForgeDirection;
public class MachineHeatBoiler extends BlockDummyable implements ILookOverlay, IBlockMulti {
public class MachineHeatBoiler extends BlockDummyable implements ILookOverlay, ITooltipProvider, IBlockMulti {
public MachineHeatBoiler() {
super(Material.iron);
@ -112,9 +114,12 @@ public class MachineHeatBoiler extends BlockDummyable implements ILookOverlay, I
int[] pos = this.findCore(world, x, y, z);
if(pos != null) {
TileEntityHeatBoiler stirling = (TileEntityHeatBoiler)world.getTileEntity(pos[0], pos[1], pos[2]);
if(stirling.hasExploded) {
dmg = 1;
TileEntityHeatBoiler boiler = (TileEntityHeatBoiler)world.getTileEntity(pos[0], pos[1], pos[2]);
if(boiler.hasExploded) {
//dmg = 1;
ret.add(new ItemStack(ModItems.ingot_steel, 4));
ret.add(new ItemStack(ModItems.plate_copper, 8));
return ret;
}
}
@ -180,4 +185,9 @@ public class MachineHeatBoiler extends BlockDummyable implements ILookOverlay, I
public int getSubCount() {
return 0;
}
@Override
public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean ext) {
this.addStandardInfo(stack, player, list, ext);
}
}

View File

@ -282,6 +282,7 @@ public class WeaponRecipes {
CraftingManager.addRecipeAuto(new ItemStack(ModItems.ammo_arty, 1, 3), new Object[] { " P ", "NSN", " P ", 'P', PU239.nugget(), 'N', OreDictManager.getReflector(), 'S', new ItemStack(ModItems.ammo_arty, 1, 0) });
CraftingManager.addRecipeAuto(new ItemStack(ModItems.ammo_arty, 1, 6), new Object[] { "DSD", "SCS", "DSD", 'D', OreDictManager.getReflector(), 'S', new ItemStack(ModItems.ammo_arty, 1, 3), 'C', ModBlocks.det_cord });
CraftingManager.addShapelessAuto(new ItemStack(ModItems.ammo_arty, 1, 4), new Object[] { new ItemStack(ModItems.ammo_arty, 1, 2), ModItems.boy_bullet, ModItems.boy_target, ModItems.boy_shielding, ModItems.circuit_red_copper, ModItems.ducttape });
CraftingManager.addRecipeAuto(new ItemStack(ModItems.ammo_arty, 1, 8), new Object[] { " I ", " S ", "CCC", 'C', ModItems.cordite, 'I', ModItems.sphere_steel, 'S', ModItems.hull_small_steel });
//DGK Belts
CraftingManager.addRecipeAuto(new ItemStack(ModItems.ammo_dgk, 1), new Object[] { "LLL", "GGG", "CCC", 'L', PB.plate(), 'G', ModItems.ballistite, 'C', CU.ingot() });

View File

@ -0,0 +1,81 @@
package com.hbm.crafting.handlers;
import com.hbm.items.ModItems;
import net.minecraft.inventory.InventoryCrafting;
import net.minecraft.item.ItemStack;
import net.minecraft.item.crafting.IRecipe;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.world.World;
public class CargoShellCraftingHandler implements IRecipe {
@Override
public boolean matches(InventoryCrafting inventory, World world) {
int itemCount = 0;
int shellCount = 0;
for(int i = 0; i < 9; i++) {
ItemStack stack = inventory.getStackInRowAndColumn(i % 3, i / 3);
if(stack != null) {
if(stack.getItem().hasContainerItem(stack) || !stack.getItem().doesContainerItemLeaveCraftingGrid(stack))
return false;
itemCount++;
if(stack.getItem() == ModItems.ammo_arty && stack.getItemDamage() == 8 && !stack.hasTagCompound()) {
shellCount++;
}
}
}
return itemCount == 2 && shellCount == 1;
}
@Override
public ItemStack getCraftingResult(InventoryCrafting inventory) {
ItemStack shell = null;
ItemStack cargo = null;
for(int i = 0; i < 9; i++) {
ItemStack stack = inventory.getStackInRowAndColumn(i % 3, i / 3);
if(stack == null)
continue;
if(stack.getItem() == ModItems.ammo_arty && stack.getItemDamage() == 8 && !stack.hasTagCompound()) {
ItemStack copy = stack.copy();
copy.stackSize = 1;
shell = copy;
} else {
ItemStack copy = stack.copy();
copy.stackSize = 1;
cargo = copy;
}
}
if(shell == null || cargo == null)
return null;
if(!shell.hasTagCompound())
shell.stackTagCompound = new NBTTagCompound();
shell.stackTagCompound.setTag("cargo", cargo.writeToNBT(new NBTTagCompound()));
return shell;
}
@Override
public int getRecipeSize() {
return 9;
}
@Override
public ItemStack getRecipeOutput() {
return new ItemStack(ModItems.ammo_shell, 1, 8);
}
}

View File

@ -86,6 +86,13 @@ public class EntityArtilleryRocket extends EntityThrowableInterp implements IChu
@Override
public void onUpdate() {
if(worldObj.isRemote) {
this.lastTickPosX = this.posX;
this.lastTickPosY = this.posY;
this.lastTickPosZ = this.posZ;
}
super.onUpdate();
if(!worldObj.isRemote) {
@ -103,6 +110,14 @@ public class EntityArtilleryRocket extends EntityThrowableInterp implements IChu
loadNeighboringChunks((int)Math.floor(posX / 16D), (int)Math.floor(posZ / 16D));
this.getType().onUpdate(this);
} else {
Vec3 v = Vec3.createVectorHelper(lastTickPosX - posX, lastTickPosY - posY, lastTickPosZ - posZ);
double velocity = v.lengthVector();
v = v.normalize();
int offset = 6;
if(velocity > 1) for(int i = offset; i < velocity + offset; i++) MainRegistry.proxy.spawnParticle(posX + v.xCoord * i, posY + v.yCoord * i, posZ + v.zCoord * i, "exKerosene", null);
}
}
@ -195,4 +210,9 @@ public class EntityArtilleryRocket extends EntityThrowableInterp implements IChu
public RadarTargetType getTargetType() {
return RadarTargetType.ARTILLERY;
}
@Override
public int approachNum() {
return 0; //
}
}

View File

@ -11,9 +11,12 @@ import com.hbm.main.MainRegistry;
import api.hbm.entity.IRadarDetectable;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.MathHelper;
import net.minecraft.util.MovingObjectPosition;
import net.minecraft.util.Vec3;
import net.minecraft.world.ChunkCoordIntPair;
import net.minecraft.world.World;
import net.minecraftforge.common.ForgeChunkManager;
@ -43,9 +46,12 @@ public class EntityArtilleryShell extends EntityThrowableNT implements IChunkLoa
private boolean shouldWhistle = false;
private boolean didWhistle = false;
private ItemStack cargo = null;
public EntityArtilleryShell(World world) {
super(world);
this.ignoreFrustumCheck = true;
this.setSize(0.5F, 0.5F);
}
@Override
@ -133,6 +139,10 @@ public class EntityArtilleryShell extends EntityThrowableNT implements IChunkLoa
} else {
this.setPosition(this.posX, this.posY, this.posZ);
}
if(Vec3.createVectorHelper(this.syncPosX - this.posX, this.syncPosY - this.posY, this.syncPosZ - this.posZ).lengthVector() < 0.2) {
worldObj.spawnParticle("smoke", posX, posY + 0.5, posZ, 0.0, 0.1, 0.0);
}
}
}
@ -210,22 +220,30 @@ public class EntityArtilleryShell extends EntityThrowableNT implements IChunkLoa
public void writeEntityToNBT(NBTTagCompound nbt) {
super.writeEntityToNBT(nbt);
nbt.setInteger("type", this.dataWatcher.getWatchableObjectInt(10));
nbt.setBoolean("shouldWhistle", this.shouldWhistle);
nbt.setBoolean("didWhistle", this.didWhistle);
nbt.setDouble("targetX", this.targetX);
nbt.setDouble("targetY", this.targetY);
nbt.setDouble("targetZ", this.targetZ);
if(this.cargo != null)
nbt.setTag("cargo", this.cargo.writeToNBT(new NBTTagCompound()));
}
@Override
public void readEntityFromNBT(NBTTagCompound nbt) {
super.readEntityFromNBT(nbt);
this.dataWatcher.updateObject(10, nbt.getInteger("type"));
this.shouldWhistle = nbt.getBoolean("shouldWhistle");
this.didWhistle = nbt.getBoolean("didWhistle");
this.targetX = nbt.getDouble("targetX");
this.targetY = nbt.getDouble("targetY");
this.targetZ = nbt.getDouble("targetZ");
NBTTagCompound compound = nbt.getCompoundTag("cargo");
this.setCargo(ItemStack.loadItemStackFromNBT(compound));
}
@Override
@ -238,6 +256,39 @@ public class EntityArtilleryShell extends EntityThrowableNT implements IChunkLoa
return 9.81 * 0.05;
}
@Override
protected int groundDespawn() {
return cargo != null ? 0 : 1200;
}
@Override
public boolean canBeCollidedWith() {
return true;
}
@Override
public boolean canAttackWithItem() {
return true;
}
public void setCargo(ItemStack stack) {
this.cargo = stack;
}
@Override
public boolean interactFirst(EntityPlayer player) {
if(!worldObj.isRemote) {
if(this.cargo != null) {
player.inventory.addItemStackToInventory(this.cargo.copy());
player.inventoryContainer.detectAndSendChanges();
}
this.setDead();
}
return false;
}
@Override
public RadarTargetType getTargetType() {
return RadarTargetType.ARTILLERY;

View File

@ -32,10 +32,6 @@ public abstract class EntityThrowableInterp extends EntityThrowableNT {
public void onUpdate() {
if(!worldObj.isRemote) {
int orientation = this.dataWatcher.getWatchableObjectInt(10);
if(orientation >= 6 && !this.inGround) {
this.dataWatcher.updateObject(10, orientation - 6);
}
super.onUpdate();
} else {
if(this.turnProgress > 0) {

View File

@ -226,8 +226,8 @@ public abstract class EntityThrowableNT extends Entity implements IProjectile {
this.prevRotationYaw += 360.0F;
}
//this.rotationPitch = this.prevRotationPitch + (this.rotationPitch - this.prevRotationPitch) * 0.2F;
//this.rotationYaw = this.prevRotationYaw + (this.rotationYaw - this.prevRotationYaw) * 0.2F;
this.rotationPitch = this.prevRotationPitch + (this.rotationPitch - this.prevRotationPitch) * 0.2F;
this.rotationYaw = this.prevRotationYaw + (this.rotationYaw - this.prevRotationYaw) * 0.2F;
float drag = this.getAirDrag();
double gravity = this.getGravityVelocity();

View File

@ -150,8 +150,8 @@ public abstract class GuiInfoContainer extends GuiContainer {
minY = this.height - height - 6;
}
this.zLevel = 300.0F;
itemRender.zLevel = 300.0F;
this.zLevel = 400.0F;
itemRender.zLevel = 400.0F;
//int j1 = -267386864;
int colorBg = 0xF0100010;
this.drawGradientRect(minX - 3, minY - 4, minX + longestline + 3, minY - 3, colorBg, colorBg);
@ -193,6 +193,7 @@ public abstract class GuiInfoContainer extends GuiContainer {
this.drawGradientRect(minX + indent - 1, minY - 1, minX + indent + 17, minY + 17, 0xffff0000, 0xffff0000);
this.drawGradientRect(minX + indent, minY, minX + indent + 16, minY + 16, 0xffb0b0b0, 0xffb0b0b0);
}
GL11.glEnable(GL11.GL_DEPTH_TEST);
itemRender.renderItemAndEffectIntoGUI(this.fontRendererObj, this.mc.getTextureManager(), stack, minX + indent, minY);
itemRender.renderItemOverlayIntoGUI(this.fontRendererObj, this.mc.getTextureManager(), stack, minX + indent, minY, null);
RenderHelper.disableStandardItemLighting();

View File

@ -284,7 +284,7 @@ public class AssemblerRecipes {
makeRecipe(new ComparableStack(ModBlocks.machine_well, 1), new AStack[] {new ComparableStack(ModBlocks.steel_scaffold, 20), new ComparableStack(ModBlocks.steel_beam, 8), new ComparableStack(ModItems.tank_steel, 2), new ComparableStack(ModItems.motor, 1), new ComparableStack(ModItems.pipes_steel, 3), new ComparableStack(ModItems.drill_titanium, 1), new ComparableStack(ModItems.wire_red_copper, 6), },250);
makeRecipe(new ComparableStack(ModBlocks.machine_pumpjack, 1), new AStack[] {new ComparableStack(ModBlocks.steel_scaffold, 8), new OreDictStack(STEEL.block(), 8), new ComparableStack(ModItems.pipes_steel, 4), new ComparableStack(ModItems.tank_steel, 4), new OreDictStack(STEEL.ingot(), 24), new OreDictStack(STEEL.plate(), 16), new OreDictStack(AL.plate(), 6), new ComparableStack(ModItems.drill_titanium, 1), new ComparableStack(ModItems.motor, 2), new ComparableStack(ModItems.wire_red_copper, 8), },400);
makeRecipe(new ComparableStack(ModBlocks.machine_flare, 1), new AStack[] {new OreDictStack(STEEL.ingot(), 12), new OreDictStack(IRON.ingot(), 12), new OreDictStack(CU.plate(), 4), new ComparableStack(ModItems.tank_steel, 1), new ComparableStack(ModBlocks.deco_pipe_quad, 8), new ComparableStack(ModItems.hull_small_steel, 4), new ComparableStack(ModItems.thermo_element, 3), },200);
makeRecipe(new ComparableStack(ModBlocks.machine_refinery, 1), new AStack[] {new OreDictStack(STEEL.ingot(), 16), new OreDictStack(STEEL.plate(), 20), new OreDictStack(CU.plate(), 16), new ComparableStack(ModItems.hull_big_steel, 6), new ComparableStack(ModItems.pipes_steel, 2), new ComparableStack(ModItems.coil_tungsten, 8), new ComparableStack(ModItems.wire_red_copper, 8), new ComparableStack(ModItems.circuit_copper, 2), new ComparableStack(ModItems.circuit_red_copper, 1), new ComparableStack(ModItems.plate_polymer, 8), },350);
makeRecipe(new ComparableStack(ModBlocks.machine_refinery, 1), new AStack[] {new OreDictStack(STEEL.plate(), 16), new OreDictStack(CU.plate(), 16), new ComparableStack(ModItems.hull_big_steel, 6), new ComparableStack(ModItems.pipes_steel, 2), new ComparableStack(ModItems.plate_polymer, 8), new ComparableStack(ModItems.circuit_red_copper, 1) },350);
makeRecipe(new ComparableStack(ModBlocks.machine_epress, 1), new AStack[] {new OreDictStack(STEEL.plate(), 8), new ComparableStack(ModItems.plate_polymer, 4), new ComparableStack(ModItems.pipes_steel, 1), new ComparableStack(ModItems.bolt_tungsten, 4), new ComparableStack(ModItems.coil_copper, 2), new ComparableStack(ModItems.motor, 1), new ComparableStack(ModItems.circuit_copper, 1), new ComparableStack(ModItems.canister_full, 1, Fluids.LUBRICANT.getID()), },160);
makeRecipe(new ComparableStack(ModBlocks.machine_chemplant, 1), new AStack[] {new OreDictStack(STEEL.ingot(), 8), new OreDictStack(CU.plate(), 6), new ComparableStack(ModItems.tank_steel, 4), new ComparableStack(ModItems.hull_big_steel, 1), new ComparableStack(ModItems.coil_tungsten, 3), new ComparableStack(ModItems.circuit_copper, 2), new ComparableStack(ModItems.circuit_red_copper, 1), new ComparableStack(ModItems.plate_polymer, 8), },200);
makeRecipe(new ComparableStack(ModBlocks.machine_crystallizer, 1), new AStack[] {new ComparableStack(ModItems.hull_big_steel, 4), new ComparableStack(ModItems.pipes_steel, 1), new OreDictStack(DESH.ingot(), 4), new ComparableStack(ModItems.motor, 2), new ComparableStack(ModItems.blades_advanced_alloy, 2), new OreDictStack(STEEL.ingot(), 16), new OreDictStack(TI.plate(), 16), new ComparableStack(Blocks.glass, 4), new ComparableStack(ModItems.circuit_gold, 1), },400);
@ -395,7 +395,7 @@ public class AssemblerRecipes {
makeRecipe(new ComparableStack(ModBlocks.ams_limiter, 1), new AStack[] {new ComparableStack(ModItems.board_copper, 6), new OreDictStack(STEEL.plate(), 24), new ComparableStack(ModBlocks.steel_scaffold, 20), new ComparableStack(ModItems.crystal_diamond, 1)}, 600);
makeRecipe(new ComparableStack(ModBlocks.ams_emitter, 1), new AStack[] {new ComparableStack(ModItems.board_copper, 24), new OreDictStack(STEEL.plate(), 32), new ComparableStack(ModBlocks.steel_scaffold, 40), new ComparableStack(ModItems.crystal_redstone, 5), new ComparableStack(ModBlocks.machine_lithium_battery)}, 600);
makeRecipe(new ComparableStack(ModBlocks.ams_base, 1), new AStack[] {new ComparableStack(ModItems.board_copper, 12), new OreDictStack(STEEL.plate(), 28), new ComparableStack(ModBlocks.steel_scaffold, 30), new ComparableStack(ModBlocks.steel_grate, 8), new ComparableStack(ModBlocks.barrel_steel, 2)}, 600);
makeRecipe(new ComparableStack(ModBlocks.machine_radar, 1), new AStack[] {new OreDictStack(STEEL.ingot(), 8), new OreDictStack(STEEL.plate(), 16), new OreDictStack(ANY_PLASTIC.ingot(), 4), new ComparableStack(ModItems.plate_polymer, 24), new ComparableStack(ModItems.magnetron, 10), new ComparableStack(ModItems.motor, 3), new ComparableStack(ModItems.circuit_gold, 4), new ComparableStack(ModItems.coil_copper, 12), new ComparableStack(ModItems.crt_display, 4), },300);
makeRecipe(new ComparableStack(ModBlocks.machine_radar, 1), new AStack[] {new OreDictStack(STEEL.plate(), 16), new OreDictStack(ANY_PLASTIC.ingot(), 4), new ComparableStack(ModItems.plate_polymer, 24), new ComparableStack(ModItems.magnetron, 10), new ComparableStack(ModItems.motor, 3), new ComparableStack(ModItems.circuit_gold, 4), new ComparableStack(ModItems.coil_copper, 12), new ComparableStack(ModItems.crt_display, 4), },300);
makeRecipe(new ComparableStack(ModBlocks.machine_forcefield, 1), new AStack[] {new OreDictStack(ALLOY.plate(), 8), new ComparableStack(ModItems.plate_desh, 4), new ComparableStack(ModItems.coil_gold_torus, 6), new ComparableStack(ModItems.coil_magnetized_tungsten, 12), new ComparableStack(ModItems.motor, 1), new ComparableStack(ModItems.upgrade_radius, 1), new ComparableStack(ModItems.upgrade_health, 1), new ComparableStack(ModItems.circuit_targeting_tier5, 1), new ComparableStack(ModBlocks.machine_transformer, 1), },1000);
makeRecipe(new ComparableStack(ModItems.mp_thruster_10_kerosene, 1), new AStack[] {new ComparableStack(ModItems.seg_10, 1), new ComparableStack(ModBlocks.deco_pipe_quad, 1), new OreDictStack(W.ingot(), 4), new OreDictStack(STEEL.plate(), 4), },100);
makeRecipe(new ComparableStack(ModItems.mp_thruster_10_solid, 1), new AStack[] {new ComparableStack(ModItems.seg_10, 1), new ComparableStack(ModItems.coil_tungsten, 1), new OreDictStack(DURA.ingot(), 4), new OreDictStack(STEEL.plate(), 4), },100);
@ -750,6 +750,35 @@ public class AssemblerRecipes {
new ComparableStack(ModBlocks.machine_radar, 1),
new ComparableStack(ModItems.crt_display, 1)
}, 200);
makeRecipe(new ComparableStack(ModBlocks.turret_himars, 1), new AStack[] {
new ComparableStack(ModBlocks.machine_battery, 1),
new OreDictStack(STEEL.ingot(), 128),
new OreDictStack(DURA.ingot(), 64),
new OreDictStack(ANY_PLASTIC.ingot(), 64),
new ComparableStack(ModItems.motor_desh, 5),
new ComparableStack(ModItems.circuit_targeting_tier4, 3),
new ComparableStack(ModItems.mechanism_launcher_2, 5),
new ComparableStack(ModBlocks.machine_radar, 1),
new ComparableStack(ModItems.crt_display, 1)
}, 300);
makeRecipe(new ComparableStack(ModItems.ammo_himars, 1, 0), new AStack[] {
new OreDictStack(STEEL.plate(), 24),
new OreDictStack(ANY_PLASTIC.ingot(), 12),
new OreDictStack(ANY_SMOKELESS.dust(), 48),
new OreDictStack(ANY_HIGHEXPLOSIVE.ingot(), 6),
new ComparableStack(ModItems.circuit_copper, 6),
new ComparableStack(ModItems.wire_gold, 12)
}, 100);
makeRecipe(new ComparableStack(ModItems.ammo_himars, 1, 1), new AStack[] {
new OreDictStack(STEEL.plate(), 24),
new OreDictStack(ANY_PLASTIC.ingot(), 6),
new OreDictStack(ANY_SMOKELESS.dust(), 36),
new OreDictStack(ANY_HIGHEXPLOSIVE.ingot(), 4),
new ComparableStack(ModItems.circuit_red_copper, 2),
new ComparableStack(ModItems.wire_gold, 8)
}, 100);
makeRecipe(new ComparableStack(ModBlocks.machine_silex, 1), new AStack[] {
new ComparableStack(Blocks.glass, 12),

View File

@ -28,9 +28,6 @@ public class MachineRecipes {
//return: FluidType, amount produced, amount required, heat required (°C * 100)
public static Object[] getBoilerOutput(FluidType type) {
if(type == Fluids.WATER) return new Object[] { Fluids.STEAM, 500, 5, 10000 };
if(type == Fluids.STEAM) return new Object[] { Fluids.HOTSTEAM, 5, 50, 30000 };
if(type == Fluids.HOTSTEAM) return new Object[] { Fluids.SUPERHOTSTEAM, 5, 50, 45000 };
if(type == Fluids.OIL) return new Object[] { Fluids.HOTOIL, 5, 5, 35000 };
if(type == Fluids.CRACKOIL) return new Object[] { Fluids.HOTCRACKOIL, 5, 5, 35000 };

View File

@ -3,13 +3,16 @@ package com.hbm.items.tool;
import java.util.List;
import com.hbm.blocks.ModBlocks;
import com.hbm.main.MainRegistry;
import com.hbm.packet.PacketDispatcher;
import com.hbm.packet.PlayerInformPacket;
import com.hbm.util.ChatBuilder;
import net.minecraft.client.resources.I18n;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.util.ChatComponentTranslation;
import net.minecraft.util.ChatStyle;
import net.minecraft.util.EnumChatFormatting;
import net.minecraft.world.World;
@ -77,17 +80,17 @@ public class ItemOilDetector extends Item {
oil = true;
if(!world.isRemote) {
if(direct) {
player.addChatMessage(new ChatComponentTranslation(this.getUnlocalizedName() + ".bullseye").setChatStyle(new ChatStyle().setColor(EnumChatFormatting.DARK_GREEN)));
PacketDispatcher.wrapper.sendTo(new PlayerInformPacket(ChatBuilder.start("").nextTranslation(this.getUnlocalizedName() + ".bullseye").color(EnumChatFormatting.DARK_GREEN).flush(), MainRegistry.proxy.ID_DETONATOR), (EntityPlayerMP) player);
} else if(oil) {
player.addChatMessage(new ChatComponentTranslation(this.getUnlocalizedName() + ".detected").setChatStyle(new ChatStyle().setColor(EnumChatFormatting.GOLD)));
PacketDispatcher.wrapper.sendTo(new PlayerInformPacket(ChatBuilder.start("").nextTranslation(this.getUnlocalizedName() + ".detected").color(EnumChatFormatting.GOLD).flush(), MainRegistry.proxy.ID_DETONATOR), (EntityPlayerMP) player);
} else {
player.addChatMessage(new ChatComponentTranslation(this.getUnlocalizedName() + ".noOil").setChatStyle(new ChatStyle().setColor(EnumChatFormatting.RED)));
PacketDispatcher.wrapper.sendTo(new PlayerInformPacket(ChatBuilder.start("").nextTranslation(this.getUnlocalizedName() + ".noOil").color(EnumChatFormatting.RED).flush(), MainRegistry.proxy.ID_DETONATOR), (EntityPlayerMP) player);
}
}
world.playSoundAtEntity(player, "hbm:item.techBleep", 1.0F, 1.0F);
world.playSoundAtEntity(player, "hbm:item.techBleep", 1.0F, 1.0F);
player.swingItem();

View File

@ -121,10 +121,20 @@ public class ItemAmmoArty extends Item {
list.add(r + "(that is the best skull and crossbones");
list.add(r + "minecraft's unicode has to offer)");
break;
case CARGO:
if(stack.hasTagCompound() && stack.stackTagCompound.getCompoundTag("cargo") != null) {
ItemStack cargo = ItemStack.loadItemStackFromNBT(stack.stackTagCompound.getCompoundTag("cargo"));
list.add(y + cargo.getDisplayName());
} else {
list.add(r + "Empty");
}
break;
}
}
private IIcon[] icons = new IIcon[itemTypes.length];
private IIcon iconCargo;
@SideOnly(Side.CLIENT)
public void registerIcons(IIconRegister reg) {
@ -134,6 +144,18 @@ public class ItemAmmoArty extends Item {
for(int i = 0; i < icons.length; i++) {
this.icons[i] = reg.registerIcon(RefStrings.MODID + ":" + itemTypes[i].name);
}
this.iconCargo = reg.registerIcon(RefStrings.MODID + ":ammo_arty_cargo_full");
}
@SideOnly(Side.CLIENT)
public IIcon getIconIndex(ItemStack stack) {
if(stack.getItemDamage() == CARGO && stack.hasTagCompound() && stack.stackTagCompound.getCompoundTag("cargo") != null) {
return this.iconCargo;
}
return this.getIconFromDamage(stack.getItemDamage());
}
@Override

View File

@ -32,6 +32,7 @@ public class ItemAmmoHIMARS extends Item {
this.setHasSubtypes(true);
this.setCreativeTab(MainRegistry.weaponTab);
this.setTextureName(RefStrings.MODID + ":ammo_rocket");
this.setMaxStackSize(1);
init();
}

View File

@ -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 (4375)";
public static final String VERSION = "1.0.27 BETA (4389)";
//HBM's Beta Naming Convention:
//V T (X)
//V -> next release version

View File

@ -384,6 +384,7 @@ public class ClientProxy extends ServerProxy {
//templates
MinecraftForgeClient.registerItemRenderer(ModItems.assembly_template, new ItemRenderTemplate());
MinecraftForgeClient.registerItemRenderer(ModItems.chemistry_template, new ItemRenderTemplate());
MinecraftForgeClient.registerItemRenderer(ModItems.crucible_template, new ItemRenderTemplate());
//hot stuff
MinecraftForgeClient.registerItemRenderer(ModItems.ingot_steel_dusted, new ItemRendererHot());
MinecraftForgeClient.registerItemRenderer(ModItems.ingot_chainsteel, new ItemRendererHot());

View File

@ -2,7 +2,6 @@ package com.hbm.main;
import java.util.ArrayList;
import java.util.List;
import java.util.Map.Entry;
import com.hbm.blocks.ModBlocks;
import com.hbm.blocks.generic.BlockGenericStairs;
@ -59,10 +58,12 @@ public class CraftingManager {
GameRegistry.addRecipe(new RBMKFuelCraftingHandler());
GameRegistry.addRecipe(new MKUCraftingHandler());
GameRegistry.addRecipe(new ToolboxCraftingHandler());
GameRegistry.addRecipe(new CargoShellCraftingHandler());
//TODO: find out what this actually did
RecipeSorter.register("hbm:rbmk", RBMKFuelCraftingHandler.class, RecipeSorter.Category.SHAPELESS, "after:minecraft:shapeless");
RecipeSorter.register("hbm:toolbox", ToolboxCraftingHandler.class, RecipeSorter.Category.SHAPELESS, "after:minecraft:shapeless");
RecipeSorter.register("hbm:cargo", CargoShellCraftingHandler.class, RecipeSorter.Category.SHAPELESS, "after:minecraft:shapeless");
RecipeSorter.register("hbm:mku", MKUCraftingHandler.class, RecipeSorter.Category.SHAPED, "after:minecraft:shaped before:minecraft:shapeless");
}

View File

@ -1360,8 +1360,9 @@ public class ItemRenderLibrary {
renderers.put(ModItems.ammo_himars, new ItemRenderBase( ) {
public void renderInventory() {
GL11.glTranslated(0, -2.5, 0);
GL11.glScaled(4, 4, 4);
GL11.glTranslated(0, -2, 0);
double scale = 2.75D;
GL11.glScaled(scale, scale, scale);
GL11.glRotated(System.currentTimeMillis() % 3600 / 10D, 0, 1, 0);
}
public void renderCommonWithStack(ItemStack item) {
@ -1370,7 +1371,20 @@ public class ItemRenderLibrary {
GL11.glRotated(90, 1, 0, 0);
HIMARSRocket type = ItemAmmoHIMARS.itemTypes[item.getItemDamage()];
GL11.glShadeModel(GL11.GL_SMOOTH);
bindTexture(type.texture); ResourceManager.turret_himars.renderPart(type.modelType == 0 ? "RocketStandard" : "RocketSingle");
bindTexture(type.texture);
if(type.modelType == 0) {
GL11.glTranslated(0.75, 0, 0);
ResourceManager.turret_himars.renderPart("RocketStandard");
GL11.glTranslated(-1.5, 0, 0);
GL11.glTranslated(0, -3.375D, 0);
ResourceManager.turret_himars.renderPart("TubeStandard");
} else {
GL11.glTranslated(0.75, 0, 0);
ResourceManager.turret_himars.renderPart("RocketSingle");
GL11.glTranslated(-1.5, 0, 0);
GL11.glTranslated(0, -3.375D, 0);
ResourceManager.turret_himars.renderPart("TubeSingle");
}
GL11.glShadeModel(GL11.GL_FLAT);
}});

View File

@ -266,7 +266,7 @@ public class TileEntityCrucible extends TileEntityMachineBase implements IGUIPro
CrucibleRecipe recipe = getLoadedRecipe();
for(MaterialStack material : materials) {
boolean mainStack = recipe != null && getQuantaFromType(recipe.input, material.material) > 0;
boolean mainStack = recipe != null && (getQuantaFromType(recipe.input, material.material) > 0 || getQuantaFromType(recipe.output, material.material) > 0);
if(mainStack) {
this.addToStack(this.recipeStack, material);
@ -359,6 +359,7 @@ public class TileEntityCrucible extends TileEntityMachineBase implements IGUIPro
//this allows pouring the ouput material back into the crucible
if(recipe != null && getQuantaFromType(recipe.output, mat.material) > 0) {
recipeAmount += mat.amount;
matchesRecipe = true;
continue;
}

View File

@ -63,7 +63,6 @@ public class TileEntityHeatBoiler extends TileEntityLoadedBase implements IFluid
if(this.tanks[1].getFill() > 0) {
this.sendFluid();
fillFluidInit(tanks[1].getTankType());
}
}

View File

@ -272,7 +272,7 @@ public class TileEntityITER extends TileEntityMachineBase implements IEnergyUser
slots[1].stackSize--;
if(slots[1].stackSize <=0)
if(slots[1].stackSize <= 0)
slots[1] = null;
this.markDirty();
@ -286,7 +286,16 @@ public class TileEntityITER extends TileEntityMachineBase implements IEnergyUser
@Override
public int[] getAccessibleSlotsFromSide(int p_94128_1_) {
return new int[] { 2, 4 };
return new int[] { 1, 2, 4 };
}
@Override
public boolean isItemValidForSlot(int i, ItemStack itemStack) {
if(i == 1 && BreederRecipes.getOutput(itemStack) != null)
return true;
return false;
}
private void produceByproduct() {

View File

@ -173,6 +173,8 @@ public class TileEntityRBMKRod extends TileEntityRBMKSlottedBase implements IRBM
if(rod.getStackInSlot(0) != null && rod.getStackInSlot(0).getItem() instanceof ItemRBMKRod) {
rod.receiveFlux(stream, flux);
return 0;
} else {
return flux;
}
}
@ -190,7 +192,7 @@ public class TileEntityRBMKRod extends TileEntityRBMKSlottedBase implements IRBM
return 0;
}
//set neutrons to slow
//multiply neutron count with rod setting
if(te instanceof TileEntityRBMKControl) {
TileEntityRBMKControl control = (TileEntityRBMKControl)te;
@ -227,7 +229,7 @@ public class TileEntityRBMKRod extends TileEntityRBMKSlottedBase implements IRBM
int hits = 0;
for(int h = 0; h <= limit; h++) {
if(!worldObj.getBlock(x, y, z).isOpaqueCube())
if(!worldObj.getBlock(x, y + h, z).isOpaqueCube())
hits++;
}

View File

@ -30,7 +30,7 @@ public class TileEntityConverterRfHe extends TileEntityLoadedBase implements IEn
}
private long subBuffer;
private boolean recursionBrake = false;;
private boolean recursionBrake = false;
@Untested
@Override

View File

@ -160,17 +160,17 @@ public class TileEntityTurretArty extends TileEntityTurretBaseArtillery implemen
return mode == MODE_CANNON ? 20D : 50D;
}
public int getShellLoaded() {
public ItemStack getShellLoaded() {
for(int i = 1; i < 10; i++) {
if(slots[i] != null) {
if(slots[i].getItem() == ModItems.ammo_arty) {
return slots[i].getItemDamage();
return slots[i];
}
}
}
return -1;
return null;
}
public void conusmeAmmo(Item ammo) {
@ -185,7 +185,7 @@ public class TileEntityTurretArty extends TileEntityTurretBaseArtillery implemen
this.markDirty();
}
public void spawnShell(int type) {
public void spawnShell(ItemStack type) {
Vec3 pos = this.getTurretPos();
Vec3 vec = Vec3.createVectorHelper(this.getBarrelLength(), 0, 0);
@ -196,7 +196,15 @@ public class TileEntityTurretArty extends TileEntityTurretBaseArtillery implemen
proj.setPositionAndRotation(pos.xCoord + vec.xCoord, pos.yCoord + vec.yCoord, pos.zCoord + vec.zCoord, 0.0F, 0.0F);
proj.setThrowableHeading(vec.xCoord, vec.yCoord, vec.zCoord, (float) getV0(), 0.0F);
proj.setTarget((int) tPos.xCoord, (int) tPos.yCoord, (int) tPos.zCoord);
proj.setType(type);
proj.setType(type.getItemDamage());
if(type.getItemDamage() == 8 && type.hasTagCompound()) {
NBTTagCompound cargo = type.stackTagCompound.getCompoundTag("cargo");
if(cargo != null) {
proj.setCargo(ItemStack.loadItemStackFromNBT(cargo));
}
}
if(this.mode != this.MODE_CANNON)
proj.setWhistle(true);
@ -353,9 +361,9 @@ public class TileEntityTurretArty extends TileEntityTurretBaseArtillery implemen
if(timer % delay == 0) {
int conf = this.getShellLoaded();
ItemStack conf = this.getShellLoaded();
if(conf != -1) {
if(conf != null) {
this.spawnShell(conf);
this.conusmeAmmo(ModItems.ammo_arty);
this.worldObj.playSoundEffect(xCoord, yCoord, zCoord, "hbm:turret.jeremy_fire", 25.0F, 1.0F);

View File

@ -68,17 +68,17 @@ public class TileEntityTurretHIMARS extends TileEntityTurretBaseArtillery implem
@Override
public double getBarrelLength() {
return 3D;
return 0.5D;
}
@Override
public double getAcceptableInaccuracy() {
return 0;
return 5D; //they're guided missiles so who gives a shit
}
@Override
public double getHeightOffset() {
return 3D;
return 5D;
}
@Override
@ -303,7 +303,7 @@ public class TileEntityTurretHIMARS extends TileEntityTurretBaseArtillery implem
if(this.hasAmmo() && this.tPos != null) {
this.spawnShell(this.typeLoaded);
this.ammo--;
this.worldObj.playSoundEffect(xCoord, yCoord, zCoord, "hbm:turret.jeremy_fire", 25.0F, 1.0F);
this.worldObj.playSoundEffect(xCoord, yCoord, zCoord, "hbm:weapon.rocketFlame", 25.0F, 1.0F);
}
if(this.mode == this.MODE_MANUAL && !this.targetQueue.isEmpty()) {

View File

@ -10,7 +10,7 @@ achievement.bossMeltdown.desc=Mehr schlecht als recht, aber was will man machen.
achievement.bossMeltdown=3,6 Röntgen
achievement.bossWorm.desc=Der Fabstaff. Mein Arsch. Jetzt fang an zu rechnen.
achievement.bossWorm=Disassembling Balls-O-Tron
achievement.bossUFO.desc=Yo, what do we have here? A huge spacecraft pulling up to the bloockship?
achievement.bossUFO.desc=Yo, what do we have here? A huge spacecraft pulling up to the blockship?
achievement.bossUFO=Ayy Lmao
achievement.c20_5.desc=???
achievement.c20_5=Kapitel [ZWANZIG KOMMA FÜNF]
@ -76,8 +76,8 @@ achievement.space.desc=Scheitere in jeder möglichen Weise und verschwende 90 Mi
achievement.space=Die finale Grenz-ach vergiss es
achievement.tasteofblood.desc=ist nicht Teil des Testprotokolls.
achievement.tasteofblood=Der Geschmack von Blut
achievement.witchtaunter.desc=Diese komischen Kraturen können dir garnichts!
achievement.witchtaunter=Hexen verstpotten
achievement.witchtaunter.desc=Diese komischen Kreaturen können dir garnichts!
achievement.witchtaunter=Hexen verspotten
armor.blastProtection=Explosionsmodifikator: %s
armor.cap=Schadensobergrenze: %s
@ -385,6 +385,7 @@ container.turretArty=Greg
container.turretChekhov=Tschechows Gewehr
container.turretFriendly=Mister Friendly
container.turretFritz=Fritz
container.turretHIMARS=Henry
container.turretHoward=Howard
container.turretJeremy=Jeremy
container.turretMaxwell=Maxwell
@ -752,6 +753,7 @@ item.ammo_9mm_chlorophyte.name=9mm Patrone (Grünalgen)
item.ammo_9mm_du.name=9mm Patrone (DU)
item.ammo_9mm_rocket.name=9mm Rakete
item.ammo_arty.name=16" Artilleriegranate
item.ammo_arty_cargo.name=16" Artilleriegranate (Expresslieferung)
item.ammo_arty_classic.name=16" Artilleriegranate (Das Factorio-Spezial)
item.ammo_arty_he.name=16" Artilleriegranate (HE)
item.ammo_arty_mini_nuke.name=16" Mikroatomgranate
@ -787,6 +789,8 @@ item.ammo_grenade_phosphorus.name=40mm Granate (WP)
item.ammo_grenade_sleek.name=40mm Granate (IF-F&E)
item.ammo_grenade_toxic.name=40mm Granate (Chemisch)
item.ammo_grenade_tracer.name=40mm Übungsgranate
item.ammo_himars_standard.name=M28 gelenkte Artillerierakete
item.ammo_himars_single.name=M39A1 gelenkte Artillerierakete
item.ammo_mirv.name=Mini-MIRV
item.ammo_mirv_high.name=Mini-MIRV (Stark)
item.ammo_mirv_low.name=Mini-MIRV (Schwach)
@ -3175,18 +3179,26 @@ tile.bomber.name=Abgestürtzer Bomber
tile.book_guide.name=Hbm's Nuclear Tech Mod Handbuch [LEGACY]
tile.boxcar.name=Güterwagon
tile.brick_asbestos.name=Asbestziegel
tile.brick_asbestos_stairs.name=Asbestziegeltreppe
tile.brick_compound.name=Verstärkter Verbund
tile.brick_compound_stairs.name=Verbundtreppe
tile.brick_concrete.name=Betonziegel
tile.brick_concrete_stairs.name=Concrete Brick Stairs
tile.brick_concrete_broken.name=Gebrochene Betonziegel
tile.brick_concrete_broken_stairs.name=Gebrochene Betonziegeltreppe
tile.brick_concrete_cracked.name=Rissige Betonziegel
tile.brick_concrete_cracked_stairs.name=Rissige Betonziegeltreppe
tile.brick_concrete_marked.name=Beschriebene Betonziegel
tile.brick_concrete_mossy.name=Bemooste Betonziegel
tile.brick_ducrete.name=Ducrete-Ziegel
tile.brick_concrete_mossy.name=Bemooste Betonziegeltreppe
tile.brick_ducrete.name=Ducreteziegel
tile.brick_ducrete_stairs.name=Ducreteziegeltreppe
tile.brick_dungeon.name=Berzelianitziegel
tile.brick_dungeon_circle.name=Berzelianitkreis
tile.brick_dungeon_flat.name=Berzelianitblock
tile.brick_dungeon_tile.name=Berzelianitfliese
tile.brick_fire.name=Schamottsteinziegel
tile.brick_fire_stairs.name=Schamottsteintreppe
tile.brick_jungle.name=Enargitziegel
tile.brick_jungle_circle.name=Mechanistenzirkel
tile.brick_jungle_cracked.name=Rissige Enargitziegel
@ -3197,7 +3209,16 @@ tile.brick_jungle_mystic.name=Arkane Enargitziegel
tile.brick_jungle_ooze.name=Radioaktive Enargitziegel
tile.brick_jungle_trap.name=Enargit-Falle
tile.brick_light.name=Helle Ziegel
tile.brick_light_stairs.name=Helle Ziegeltreppe
tile.brick_obsidian.name=Obsidianziegel
tile.brick_obsidian_stairs.name=Obsidianziegeltreppe
tile.brick_slab.brick_asbestos.name=Asbestziegelstufe
tile.brick_slab.brick_compound.name=Verbundstufe
tile.brick_slab.brick_fire.name=Schamottsteinstufe
tile.brick_slab.brick_light.name=Helle Ziegelstufe
tile.brick_slab.brick_obsidian.name=Obsidianziegelstufe
tile.brick_slab.reinforced_brick.name=Verstärkte Steinstufe
tile.brick_slab.reinforced_stone.name=Verdichtete Steinstufe
tile.broadcaster_pc.name=Korrupter Sender
tile.burning_earth.name=Brennendes Gras
tile.c4.name=C4
@ -3224,6 +3245,12 @@ tile.cmb_brick_reinforced.name=Verstärkte CMB-Ziegel
tile.compact_launcher.name=Kompakt-Startrampe
tile.concrete.name=Betonfliese
tile.concrete_asbestos.name=Asbestbeton
tile.concrete_asbestos_stairs.name=Asbestbetontreppe
tile.concrete_brick_slab.brick_concrete.name=Betonziegelstufe
tile.concrete_brick_slab.brick_concrete_broken.name=Rissige Betonziegelstufe
tile.concrete_brick_slab.brick_concrete_cracked.name=Gebrochene Betonziegelstufe
tile.concrete_brick_slab.brick_concrete_mossy.name=Bemooste Betonziegelstufe
tile.concrete_brick_slab.brick_ducrete.name=Ducreteziegelstufe
tile.concrete_colored.black.name=Schwarzer Beton
tile.concrete_colored.blue.name=Blauer Beton
tile.concrete_colored.brown.name=Brauner Beton
@ -3241,7 +3268,14 @@ tile.concrete_colored.silver.name=Hellgrauer Beton
tile.concrete_colored.white.name=Weißer Beton
tile.concrete_colored.yellow.name=Gelber Beton
tile.concrete_pillar.name=Stahlbetonsäule
tile.concrete_slab.concrete.name=Betonfliesenstufe
tile.concrete_slab.concrete_asbestos.name=Asbestbetonstufe
tile.concrete_slab.concrete_smooth.name=Betonstufe
tile.concrete_slab.ducrete.name=Ducretefliesenstufe
tile.concrete_slab.ducrete_smooth.name=Ducretestufe
tile.concrete_smooth.name=Beton
tile.concrete_stairs.name=Betonfliesentreppe
tile.concrete_smooth_stairs.name=Betontreppe
tile.concrete_super.name=Super Beton
tile.concrete_super_broken.name=Schimmliger Schutt
tile.conveyor.name=Förderband
@ -3324,8 +3358,10 @@ tile.dfc_stabilizer.name=DFC-Stabilisator
tile.dirt_dead.name=Tote Erde
tile.dirt_oily.name=Ölige Erde
tile.drill_pipe.name=Bohrgestänge
tile.ducrete.name=Ducrete-Fliese
tile.ducrete.name=Ducretefliese
tile.ducrete_stairs.name=Ducretefliesentreppe
tile.ducrete_smooth.name=Ducrete
tile.ducrete_smooth_stairs.name=Ducretetreppe
tile.dummy_block.name=Dummyblock
tile.dummy_port.name=Dummyblock (Stromanschluss)
tile.dungeon_chain.name=Metallkette
@ -3469,6 +3505,7 @@ tile.machine_bat9000.name=Big-Ass Tank 9000
tile.machine_battery.name=Energiespeicherblock
tile.machine_battery_potato.name=Kartoffelbatterieblock
tile.machine_boiler.name=Boiler
tile.machine_boiler.desc=Großer Boiler zum Verdampfen von Wasser oder$Erhitzen von Öl. Benötigt externe Hitzequelle.$Wärmestransferrate: ΔT*0.01 TU/t
tile.machine_boiler_electric_off.name=Elektrischer Boiler
tile.machine_boiler_electric_on.name=Elektrischer Boiler
tile.machine_boiler_off.name=Dampfkessel
@ -3743,6 +3780,7 @@ tile.red_pylon.name=Strommasten
tile.red_pylon_large.name=Hochspannungsmasten
tile.red_wire_coated.name=Geschirmtes rotes Kupferkabel
tile.reinforced_brick.name=Verstärkter Stein
tile.reinforced_brick_stairs.name=Verstärkte Steintreppe
tile.reinforced_ducrete.name=Verstärkter Ducrete
tile.reinforced_glass.name=Verstärktes Glas
tile.reinforced_lamp_off.name=Verstärkte Lampe
@ -3750,6 +3788,7 @@ tile.reinforced_lamp_on.name=Verstärkte Lampe
tile.reinforced_light.name=Verstärkter Glowstone
tile.reinforced_sand.name=Verstärkter Sandstein
tile.reinforced_stone.name=Verdichteter Stein
tile.reinforced_stone_stairs.name=Verdichtete Steintreppe
tile.rejuvinator.name=Regenerationsmaschine
tile.residue.name=Wolkenrückstände
tile.safe.name=Panzerschrank
@ -3835,6 +3874,7 @@ tile.turret_cwis.name=Phalanx Mk-15 CIWS
tile.turret_flamer.name=Flammenwerfergeschütz
tile.turret_friendly.name=Gatlingeschütz "Mister Friendly"
tile.turret_fritz.name=Schwered Flammenwerfergeschütz "Fritz"
tile.turret_himars.name=Raketenartilleriegeschütz "Henry"
tile.turret_heavy.name=Schweres MG-Geschütz
tile.turret_howard.name=Goalkeeper-Zwilling CIWS "Howard"
tile.turret_howard_damaged.name=Goalkeeper-Zwilling CIWS "turret_howard_damaged"

View File

@ -576,6 +576,7 @@ container.turretArty=Greg
container.turretChekhov=Chekhov's Gun
container.turretFriendly=Mister Friendly
container.turretFritz=Fritz
container.turretHIMARS=Henry
container.turretHoward=Howard
container.turretJeremy=Jeremy
container.turretMaxwell=Maxwell
@ -980,6 +981,7 @@ item.ammo_9mm_chlorophyte.name=9mm Round (Chlorophyte)
item.ammo_9mm_du.name=9mm Round (DU)
item.ammo_9mm_rocket.name=9mm Rocket
item.ammo_arty.name=16" Artillery Shell
item.ammo_arty_cargo.name=16" Express Delivery Artillery Shell
item.ammo_arty_classic.name=16" Artillery Shell (The Factorio Special)
item.ammo_arty_he.name=16" High Explosive Artillery Shell
item.ammo_arty_mini_nuke.name=16" Micro Nuclear Artillery Shell
@ -1015,6 +1017,8 @@ item.ammo_grenade_phosphorus.name=40mm Grenade (WP)
item.ammo_grenade_sleek.name=40mm Grenade (IF-R&D)
item.ammo_grenade_toxic.name=40mm Grenade (Chemical)
item.ammo_grenade_tracer.name=40mm Training Grenade
item.ammo_himars_standard.name=M28 Guided Artillery Rocket Pod
item.ammo_himars_single.name=M39A1 Guided Artillery Rocket Pod
item.ammo_mirv.name=Mini MIRV
item.ammo_mirv_high.name=Mini MIRV (High Yield)
item.ammo_mirv_low.name=Mini MIRV (Low Yield)
@ -3612,18 +3616,26 @@ tile.bomber.name=Crashed Bomber
tile.book_guide.name=Hbm's Nuclear Tech Mod Manual [LEGACY]
tile.boxcar.name=Boxcar
tile.brick_asbestos.name=Asbestos Bricks
tile.brick_asbestos_stairs.name=Asbestos Brick Stairs
tile.brick_compound.name=Compound Mesh
tile.brick_compound_stairs.name=Compound Mesh Stairs
tile.brick_concrete.name=Concrete Bricks
tile.brick_concrete_stairs.name=Concrete Brick Stairs
tile.brick_concrete_broken.name=Broken Concrete Bricks
tile.brick_concrete_broken_stairs.name=Broken Concrete Brick Stairs
tile.brick_concrete_cracked.name=Cracked Concrete Bricks
tile.brick_concrete_cracked_stairs.name=Cracked Concrete Brick Stairs
tile.brick_concrete_marked.name=Marked Concrete Bricks
tile.brick_concrete_mossy.name=Mossy Concrete Bricks
tile.brick_concrete_mossy_stairs.name=Mossy Concrete Brick Stairs
tile.brick_ducrete.name=Ducrete Bricks
tile.brick_ducrete_stairs.name=Ducrete Brick Stairs
tile.brick_dungeon.name=Berzelianite Bricks
tile.brick_dungeon_circle.name=Berzelianite Cirlce
tile.brick_dungeon_flat.name=Berzelianite Block
tile.brick_dungeon_tile.name=Berzelianite Tile
tile.brick_fire.name=Firebricks
tile.brick_fire_stairs.name=Firebrick Stairs
tile.brick_jungle.name=Enargite Bricks
tile.brick_jungle_circle.name=Mechanist's Circle
tile.brick_jungle_cracked.name=Cracked Enargite Bricks
@ -3634,7 +3646,16 @@ tile.brick_jungle_mystic.name=Arcane Enargite Bricks
tile.brick_jungle_ooze.name=Radioactive Enargite Bricks
tile.brick_jungle_trap.name=Trapped Enargite Bricks
tile.brick_light.name=Light Bricks
tile.brick_light_stairs.name=Light Bricks Stairs
tile.brick_obsidian.name=Obsidian Bricks
tile.brick_obsidian_stairs.name=Obsidian Brick Stairs
tile.brick_slab.brick_asbestos.name=Asbestos Brick Slab
tile.brick_slab.brick_compound.name=Compound Mesh Slab
tile.brick_slab.brick_fire.name=Firebrick Slab
tile.brick_slab.brick_light.name=Light Brick Slab
tile.brick_slab.brick_obsidian.name=Obsidian Brick Slab
tile.brick_slab.reinforced_brick.name=Reinforced Stone Slab
tile.brick_slab.reinforced_stone.name=Dense Stone Slab
tile.broadcaster_pc.name=Corrupted Broadcaster
tile.burning_earth.name=Burning Grass
tile.c4.name=C-4
@ -3661,6 +3682,12 @@ tile.cmb_brick_reinforced.name=Reinforced CMB Bricks
tile.compact_launcher.name=Compact Launch Pad
tile.concrete.name=Concrete Tile
tile.concrete_asbestos.name=Asbestos Concrete
tile.concrete_asbestos_stairs.name=Asbestos Concrete Stairs
tile.concrete_brick_slab.brick_concrete.name=Concrete Brick Slab
tile.concrete_brick_slab.brick_concrete_broken.name=Broken Concrete Brick Slab
tile.concrete_brick_slab.brick_concrete_cracked.name=Cracked Concrete Brick Slab
tile.concrete_brick_slab.brick_concrete_mossy.name=Mossy Concrete Brick Slab
tile.concrete_brick_slab.brick_ducrete.name=Ducrete Brick Slab
tile.concrete_colored.black.name=Black Concrete
tile.concrete_colored.blue.name=Blue Concrete
tile.concrete_colored.brown.name=Brown Concrete
@ -3678,7 +3705,14 @@ tile.concrete_colored.silver.name=Light Gray Concrete
tile.concrete_colored.white.name=White Concrete
tile.concrete_colored.yellow.name=Yellow Concrete
tile.concrete_pillar.name=Rebar Reinforced Concrete Pillar
tile.concrete_smooth.name=Concrete
tile.concrete_slab.concrete.name=Concrete Tile Slab
tile.concrete_slab.concrete_asbestos.name=Asbestos Concrete Slab
tile.concrete_slab.concrete_smooth.name=Concrete Slab
tile.concrete_slab.ducrete.name=Ducrete Tile Slab
tile.concrete_slab.ducrete_smooth.name=Ducrete Slab
tile.concrete_smooth.name=Concrete Stairs
tile.concrete_smooth_stairs.name=Concrete
tile.concrete_stairs.name=Concrete Tile Stairs
tile.concrete_super.name=Über Concrete
tile.concrete_super_broken.name=Moldy Debris
tile.conveyor.name=Conveyor Belt
@ -3763,7 +3797,9 @@ tile.dirt_dead.name=Dead Dirt
tile.dirt_oily.name=Oily Dirt
tile.drill_pipe.name=Drill Pipe
tile.ducrete.name=Ducrete Tile
tile.ducrete_stairs.name=Ducrete Tile Stairs
tile.ducrete_smooth.name=Ducrete
tile.ducrete_smooth_stairs.name=Ducrete Stairs
tile.dummy_block.name=Dummy Block
tile.dummy_port.name=Dummy Block (Electricity Port)
tile.dungeon_chain.name=Metal Chain
@ -3907,6 +3943,7 @@ tile.machine_bat9000.name=Big-Ass Tank 9000
tile.machine_battery.name=Energy Storage Block
tile.machine_battery_potato.name=Potato Battery Block
tile.machine_boiler.name=Boiler
tile.machine_boiler.desc=Large boiler that can boil water or heat up oil.$Requires external heat source.$Heat transfer rate: ΔT*0.01 TU/t
tile.machine_boiler_electric_off.name=Electric Boiler
tile.machine_boiler_electric_on.name=Electric Boiler
tile.machine_boiler_off.name=Boiler
@ -4184,6 +4221,7 @@ tile.red_pylon.name=Electricity Pole
tile.red_pylon_large.name=Large Electricity Pylon
tile.red_wire_coated.name=Coated Red Copper Cable
tile.reinforced_brick.name=Reinforced Stone
tile.reinforced_brick_stairs.name=Reinforced Stone Stairs
tile.reinforced_ducrete.name=Reinforced Ducrete
tile.reinforced_glass.name=Reinforced Glass
tile.reinforced_lamp_off.name=Reinforced Lamp
@ -4191,6 +4229,7 @@ tile.reinforced_lamp_on.name=Reinforced Lamp
tile.reinforced_light.name=Reinforced Glowstone
tile.reinforced_sand.name=Reinforced Sandstone
tile.reinforced_stone.name=Dense Stone
tile.reinforced_stone_stairs.name=Dense Stone Stairs
tile.rejuvinator.name=Rejuvination Device
tile.residue.name=Cloud Residue
tile.safe.name=Safe
@ -4277,6 +4316,7 @@ tile.turret_flamer.name=Flamethrower Turret
tile.turret_friendly.name=Chaingun Turret "Mister Friendly"
tile.turret_fritz.name=Heavy Flamethrower Turret "Fritz"
tile.turret_heavy.name=Heavy Machine Gun Turret
tile.turret_himars.name=Rocket Artillery Turret "Henry"
tile.turret_howard.name=Goalkeeper Twin Chaingun CIWS "Howard"
tile.turret_howard_damaged.name=Goalkeeper Twin Chaingun CIWS "Methusalem"
tile.turret_jeremy.name=Autocannon Turret "Jeremy"

Binary file not shown.

Before

Width:  |  Height:  |  Size: 311 B

After

Width:  |  Height:  |  Size: 365 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 311 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 365 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.0 KiB

After

Width:  |  Height:  |  Size: 5.3 KiB

View File

@ -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_X4375",
"version":"1.0.27_X4389",
"mcversion": "1.7.10",
"url": "",
"updateUrl": "",