diff --git a/src/main/java/com/hbm/blocks/generic/BlockRadResistant.java b/src/main/java/com/hbm/blocks/generic/BlockRadResistant.java index 571621723..ff067431e 100644 --- a/src/main/java/com/hbm/blocks/generic/BlockRadResistant.java +++ b/src/main/java/com/hbm/blocks/generic/BlockRadResistant.java @@ -15,13 +15,13 @@ public class BlockRadResistant extends Block implements IRadResistantBlock { @Override public void onBlockAdded(World world, int x, int y, int z) { - ChunkRadiationHandlerNT.markChunkForRebuild(world, x, y, z); + //ChunkRadiationHandlerNT.markChunkForRebuild(world, x, y, z); super.onBlockAdded(world, x, y, z); } @Override public void breakBlock(World world, int x, int y, int z, Block b, int meta) { - ChunkRadiationHandlerNT.markChunkForRebuild(world, x, y, z); + //ChunkRadiationHandlerNT.markChunkForRebuild(world, x, y, z); super.breakBlock(world, x, y, z, b, meta); } diff --git a/src/main/java/com/hbm/config/WorldConfig.java b/src/main/java/com/hbm/config/WorldConfig.java index 5944049ed..4aed781be 100644 --- a/src/main/java/com/hbm/config/WorldConfig.java +++ b/src/main/java/com/hbm/config/WorldConfig.java @@ -35,6 +35,9 @@ public class WorldConfig { public static int aluminiumClusterSpawn = 3; public static int copperClusterSpawn = 4; public static int alexandriteSpawn = 100; + + public static int hematiteSpawn = 2; + public static int malachiteSpawn = 1; public static int netherUraniumuSpawn = 8; public static int netherTungstenSpawn = 10; @@ -120,6 +123,9 @@ public class WorldConfig { aluminiumClusterSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.C02_aluminiumClusterSpawn", "Amount of aluminium cluster veins per chunk", 3); copperClusterSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.C03_copperClusterSpawn", "Amount of copper cluster veins per chunk", 4); + hematiteSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.L00_hematiteSpawn", "Amount of hematite block veins per chunk", 2); + malachiteSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.L01_malachiteSpawn", "Amount of malachite block veins per chunk", 1); + netherUraniumuSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.N00_uraniumSpawnrate", "Amount of nether uranium per chunk", 8); netherTungstenSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.N01_tungstenSpawnrate", "Amount of nether tungsten per chunk", 10); netherSulfurSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.N02_sulfurSpawnrate", "Amount of nether sulfur per chunk", 26); diff --git a/src/main/java/com/hbm/crafting/ConsumableRecipes.java b/src/main/java/com/hbm/crafting/ConsumableRecipes.java index e59e6111b..b7e4b508e 100644 --- a/src/main/java/com/hbm/crafting/ConsumableRecipes.java +++ b/src/main/java/com/hbm/crafting/ConsumableRecipes.java @@ -196,6 +196,7 @@ public class ConsumableRecipes { CraftingManager.addRecipeAuto(new ItemStack(ModItems.black_diamond, 1), new Object[] { "NIN", "IGI", "NIN", 'N', AU198.nugget(), 'I', ModItems.ink, 'G', VOLCANIC.gem() }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.protection_charm, 1), new Object[] { " M ", "MDM", " M ", 'M', ModItems.fragment_meteorite, 'D', DIAMOND.gem() }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.meteor_charm, 1), new Object[] { " M ", "MDM", " M ", 'M', ModItems.fragment_meteorite, 'D', VOLCANIC.gem() }); + CraftingManager.addRecipeAuto(new ItemStack(ModItems.neutrino_lens, 1), new Object[] { "PSP", "SCS", "PSP", 'P', ANY_PLASTIC.ingot(), 'S', STAR.ingot(), 'C', KEY_CIRCUIT_BISMUTH }); //Stealth boy CraftingManager.addRecipeAuto(new ItemStack(ModItems.stealth_boy, 1), new Object[] { " B", "LI", "LC", 'B', Blocks.stone_button, 'L', Items.leather, 'I', STEEL.ingot(), 'C', ModItems.circuit_red_copper }); diff --git a/src/main/java/com/hbm/entity/missile/EntityCarrier.java b/src/main/java/com/hbm/entity/missile/EntityCarrier.java index 9f1d6934a..bb6ad4eae 100644 --- a/src/main/java/com/hbm/entity/missile/EntityCarrier.java +++ b/src/main/java/com/hbm/entity/missile/EntityCarrier.java @@ -1,6 +1,7 @@ package com.hbm.entity.missile; import com.hbm.explosion.ExplosionLarge; +import com.hbm.items.ISatChip; import com.hbm.items.ModItems; import com.hbm.items.machine.ItemSatChip; import com.hbm.main.MainRegistry; @@ -103,9 +104,9 @@ public class EntityCarrier extends EntityThrowable { ((EntityPlayer)p).triggerAchievement(MainRegistry.achFOEQ); } - if(payload.getItem() instanceof ItemSatChip) { + if(payload.getItem() instanceof ISatChip) { - int freq = ItemSatChip.getFreq(payload); + int freq = ISatChip.getFreqS(payload); Satellite.orbit(worldObj, Satellite.getIDFromItem(payload.getItem()), freq, posX, posY, posZ); } diff --git a/src/main/java/com/hbm/entity/missile/EntitySoyuz.java b/src/main/java/com/hbm/entity/missile/EntitySoyuz.java index deeae56b9..4561fd73d 100644 --- a/src/main/java/com/hbm/entity/missile/EntitySoyuz.java +++ b/src/main/java/com/hbm/entity/missile/EntitySoyuz.java @@ -3,8 +3,8 @@ package com.hbm.entity.missile; import java.util.List; import com.hbm.explosion.ExplosionLarge; +import com.hbm.items.ISatChip; import com.hbm.items.ModItems; -import com.hbm.items.machine.ItemSatChip; import com.hbm.lib.ModDamageSource; import com.hbm.main.MainRegistry; import com.hbm.saveddata.satellites.Satellite; @@ -112,9 +112,9 @@ public class EntitySoyuz extends Entity { ((EntityPlayer)p).triggerAchievement(MainRegistry.achFOEQ); } - if(load.getItem() instanceof ItemSatChip) { + if(load.getItem() instanceof ISatChip) { - int freq = ItemSatChip.getFreq(load); + int freq = ISatChip.getFreqS(load); Satellite.orbit(worldObj, Satellite.getIDFromItem(load.getItem()), freq, posX, posY, posZ); } diff --git a/src/main/java/com/hbm/entity/projectile/EntityArtilleryRocket.java b/src/main/java/com/hbm/entity/projectile/EntityArtilleryRocket.java index e17f5059b..e88879b95 100644 --- a/src/main/java/com/hbm/entity/projectile/EntityArtilleryRocket.java +++ b/src/main/java/com/hbm/entity/projectile/EntityArtilleryRocket.java @@ -191,6 +191,8 @@ public class EntityArtilleryRocket extends EntityThrowableInterp implements IChu nbt.setDouble("targetX", this.lastTargetPos.xCoord); nbt.setDouble("targetY", this.lastTargetPos.yCoord); nbt.setDouble("targetZ", this.lastTargetPos.zCoord); + + nbt.setInteger("type", this.dataWatcher.getWatchableObjectInt(10)); } @Override @@ -198,6 +200,8 @@ public class EntityArtilleryRocket extends EntityThrowableInterp implements IChu super.readEntityFromNBT(nbt); this.lastTargetPos = Vec3.createVectorHelper(nbt.getDouble("targetX"), nbt.getDouble("targetY"), nbt.getDouble("targetZ")); + + this.dataWatcher.updateObject(10, nbt.getInteger("type")); } @Override diff --git a/src/main/java/com/hbm/handler/radiation/ChunkRadiationManager.java b/src/main/java/com/hbm/handler/radiation/ChunkRadiationManager.java index a678428fa..f1063672a 100644 --- a/src/main/java/com/hbm/handler/radiation/ChunkRadiationManager.java +++ b/src/main/java/com/hbm/handler/radiation/ChunkRadiationManager.java @@ -12,7 +12,7 @@ import net.minecraftforge.event.world.WorldEvent; public class ChunkRadiationManager { - public static ChunkRadiationHandler proxy = new ChunkRadiationHandlerNT(); //new ChunkRadiationHandlerSimple(); + public static ChunkRadiationHandler proxy = /*new ChunkRadiationHandlerNT();*/ new ChunkRadiationHandlerSimple(); @SubscribeEvent public void onWorldLoad(WorldEvent.Load event) { diff --git a/src/main/java/com/hbm/inventory/container/ContainerStorageDrum.java b/src/main/java/com/hbm/inventory/container/ContainerStorageDrum.java index 18d7e2d8d..4bf7c3e41 100644 --- a/src/main/java/com/hbm/inventory/container/ContainerStorageDrum.java +++ b/src/main/java/com/hbm/inventory/container/ContainerStorageDrum.java @@ -21,7 +21,7 @@ public class ContainerStorageDrum extends Container { for(int i = 0; i < 6; i++) { if(i + j > 1 && i + j < 9 && 5 - i + j > 1 && i + 5 - j > 1) { - this.addSlotToContainer(new Slot(drum, index, 35 + i * 18, 18 + j * 18)); + this.addSlotToContainer(new Slot(drum, index, 35 + i * 18, 24 + j * 18)); index++; } } @@ -29,12 +29,12 @@ public class ContainerStorageDrum extends Container { for(int i = 0; i < 3; i++) { for(int j = 0; j < 9; j++) { - this.addSlotToContainer(new Slot(invPlayer, j + i * 9 + 9, 8 + j * 18, 140 + i * 18)); + this.addSlotToContainer(new Slot(invPlayer, j + i * 9 + 9, 8 + j * 18, 152 + i * 18)); } } for(int i = 0; i < 9; i++) { - this.addSlotToContainer(new Slot(invPlayer, i, 8 + i * 18, 198)); + this.addSlotToContainer(new Slot(invPlayer, i, 8 + i * 18, 210)); } } diff --git a/src/main/java/com/hbm/inventory/container/ContainerWasteDrum.java b/src/main/java/com/hbm/inventory/container/ContainerWasteDrum.java index 639f21d81..5eaca2b85 100644 --- a/src/main/java/com/hbm/inventory/container/ContainerWasteDrum.java +++ b/src/main/java/com/hbm/inventory/container/ContainerWasteDrum.java @@ -16,30 +16,30 @@ public class ContainerWasteDrum extends Container { public ContainerWasteDrum(InventoryPlayer invPlayer, TileEntityWasteDrum tedf) { drum = tedf; - this.addSlotToContainer(new Slot(tedf, 0, 71, 18)); - this.addSlotToContainer(new Slot(tedf, 1, 89, 18)); - this.addSlotToContainer(new Slot(tedf, 2, 53, 36)); - this.addSlotToContainer(new Slot(tedf, 3, 71, 36)); - this.addSlotToContainer(new Slot(tedf, 4, 89, 36)); - this.addSlotToContainer(new Slot(tedf, 5, 107, 36)); - this.addSlotToContainer(new Slot(tedf, 6, 53, 54)); - this.addSlotToContainer(new Slot(tedf, 7, 71, 54)); - this.addSlotToContainer(new Slot(tedf, 8, 89, 54)); - this.addSlotToContainer(new Slot(tedf, 9, 107, 54)); - this.addSlotToContainer(new Slot(tedf, 10, 71, 72)); - this.addSlotToContainer(new Slot(tedf, 11, 89, 72)); + this.addSlotToContainer(new Slot(tedf, 0, 71, 21)); + this.addSlotToContainer(new Slot(tedf, 1, 89, 21)); + this.addSlotToContainer(new Slot(tedf, 2, 53, 39)); + this.addSlotToContainer(new Slot(tedf, 3, 71, 39)); + this.addSlotToContainer(new Slot(tedf, 4, 89, 39)); + this.addSlotToContainer(new Slot(tedf, 5, 107, 39)); + this.addSlotToContainer(new Slot(tedf, 6, 53, 57)); + this.addSlotToContainer(new Slot(tedf, 7, 71, 57)); + this.addSlotToContainer(new Slot(tedf, 8, 89, 57)); + this.addSlotToContainer(new Slot(tedf, 9, 107, 57)); + this.addSlotToContainer(new Slot(tedf, 10, 71, 75)); + this.addSlotToContainer(new Slot(tedf, 11, 89, 75)); for(int i = 0; i < 3; i++) { for(int j = 0; j < 9; j++) { - this.addSlotToContainer(new Slot(invPlayer, j + i * 9 + 9, 8 + j * 18, 84 + i * 18 + 20)); + this.addSlotToContainer(new Slot(invPlayer, j + i * 9 + 9, 8 + j * 18, 84 + i * 18 + 23)); } } for(int i = 0; i < 9; i++) { - this.addSlotToContainer(new Slot(invPlayer, i, 8 + i * 18, 142 + 20)); + this.addSlotToContainer(new Slot(invPlayer, i, 8 + i * 18, 142 + 23)); } } diff --git a/src/main/java/com/hbm/inventory/gui/GUIScreenSatCoord.java b/src/main/java/com/hbm/inventory/gui/GUIScreenSatCoord.java index 1525757e7..1fc68ab2a 100644 --- a/src/main/java/com/hbm/inventory/gui/GUIScreenSatCoord.java +++ b/src/main/java/com/hbm/inventory/gui/GUIScreenSatCoord.java @@ -4,6 +4,7 @@ import org.apache.commons.lang3.math.NumberUtils; import org.lwjgl.input.Keyboard; import org.lwjgl.opengl.GL11; +import com.hbm.items.ISatChip; import com.hbm.items.tool.ItemSatInterface; import com.hbm.lib.RefStrings; import com.hbm.packet.PacketDispatcher; @@ -85,7 +86,7 @@ public class GUIScreenSatCoord extends GuiScreen { (int)Double.parseDouble(xField.getText()), (int)Double.parseDouble(yField.getText()), (int)Double.parseDouble(zField.getText()), - ItemSatInterface.getFreq(player.getHeldItem()))); + ISatChip.getFreqS(player.getHeldItem()))); this.mc.thePlayer.closeScreen(); } @@ -98,7 +99,7 @@ public class GUIScreenSatCoord extends GuiScreen { (int)Double.parseDouble(xField.getText()), 0, (int)Double.parseDouble(zField.getText()), - ItemSatInterface.getFreq(player.getHeldItem()))); + ISatChip.getFreqS(player.getHeldItem()))); this.mc.thePlayer.closeScreen(); } diff --git a/src/main/java/com/hbm/inventory/gui/GUIScreenSatInterface.java b/src/main/java/com/hbm/inventory/gui/GUIScreenSatInterface.java index fd4aad4ed..a533c74fb 100644 --- a/src/main/java/com/hbm/inventory/gui/GUIScreenSatInterface.java +++ b/src/main/java/com/hbm/inventory/gui/GUIScreenSatInterface.java @@ -7,6 +7,7 @@ import org.lwjgl.opengl.GL11; import com.hbm.entity.missile.EntityMissileBaseAdvanced; import com.hbm.inventory.recipes.MachineRecipes; +import com.hbm.items.ISatChip; import com.hbm.items.tool.ItemSatInterface; import com.hbm.lib.RefStrings; import com.hbm.packet.PacketDispatcher; @@ -55,7 +56,7 @@ public class GUIScreenSatInterface extends GuiScreen { int x = this.x - guiLeft + i - 8 - 100; int z = this.z - guiTop + j - 8 - 100; - PacketDispatcher.wrapper.sendToServer(new SatLaserPacket(x, z, ItemSatInterface.getFreq(player.getHeldItem()))); + PacketDispatcher.wrapper.sendToServer(new SatLaserPacket(x, z, ISatChip.getFreqS(player.getHeldItem()))); } } } diff --git a/src/main/java/com/hbm/inventory/gui/GUIStorageDrum.java b/src/main/java/com/hbm/inventory/gui/GUIStorageDrum.java index f986aefab..d22fb9012 100644 --- a/src/main/java/com/hbm/inventory/gui/GUIStorageDrum.java +++ b/src/main/java/com/hbm/inventory/gui/GUIStorageDrum.java @@ -21,15 +21,15 @@ public class GUIStorageDrum extends GuiInfoContainer { drum = tedf; this.xSize = 176; - this.ySize = 222; + this.ySize = 234; } @Override public void drawScreen(int mouseX, int mouseY, float f) { super.drawScreen(mouseX, mouseY, f); - drum.tanks[0].renderTankInfo(this, mouseX, mouseY, guiLeft + 16, guiTop + 17, 9, 108); - drum.tanks[1].renderTankInfo(this, mouseX, mouseY, guiLeft + 151, guiTop + 17, 9, 108); + drum.tanks[0].renderTankInfo(this, mouseX, mouseY, guiLeft + 16, guiTop + 23, 9, 108); + drum.tanks[1].renderTankInfo(this, mouseX, mouseY, guiLeft + 151, guiTop + 23, 9, 108); } @Override @@ -46,8 +46,8 @@ public class GUIStorageDrum extends GuiInfoContainer { drawTexturedModalRect(guiLeft, guiTop, 0, 0, xSize, ySize); int liquid = drum.tanks[0].getFill() * 106 / drum.tanks[0].getMaxFill(); - drawTexturedModalRect(guiLeft + 17, guiTop + 124 - liquid, 176, 106 - liquid, 7, liquid); + drawTexturedModalRect(guiLeft + 17, guiTop + 130 - liquid, 176, 106 - liquid, 7, liquid); int gas = drum.tanks[1].getFill() * 106 / drum.tanks[1].getMaxFill(); - drawTexturedModalRect(guiLeft + 152, guiTop + 124 - gas, 183, 106 - gas, 7, gas); + drawTexturedModalRect(guiLeft + 152, guiTop + 130 - gas, 183, 106 - gas, 7, gas); } } diff --git a/src/main/java/com/hbm/inventory/gui/GUIWasteDrum.java b/src/main/java/com/hbm/inventory/gui/GUIWasteDrum.java index dc9ae9131..38089a3e2 100644 --- a/src/main/java/com/hbm/inventory/gui/GUIWasteDrum.java +++ b/src/main/java/com/hbm/inventory/gui/GUIWasteDrum.java @@ -21,7 +21,7 @@ public class GUIWasteDrum extends GuiInfoContainer { diFurnace = tedf; this.xSize = 176; - this.ySize = 186; + this.ySize = 189; } @Override @@ -39,7 +39,7 @@ public class GUIWasteDrum extends GuiInfoContainer { String name = this.diFurnace.hasCustomInventoryName() ? this.diFurnace.getInventoryName() : I18n.format(this.diFurnace.getInventoryName()); this.fontRendererObj.drawString(name, this.xSize / 2 - this.fontRendererObj.getStringWidth(name) / 2, 6, 4210752); - this.fontRendererObj.drawString(I18n.format("container.inventory"), 8, this.ySize - 96 + 2, 4210752); + this.fontRendererObj.drawString(I18n.format("container.inventory"), 8, this.ySize - 96 + 5, 4210752); } @Override diff --git a/src/main/java/com/hbm/inventory/recipes/AssemblerRecipes.java b/src/main/java/com/hbm/inventory/recipes/AssemblerRecipes.java index 09494b862..e359d112e 100644 --- a/src/main/java/com/hbm/inventory/recipes/AssemblerRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/AssemblerRecipes.java @@ -196,8 +196,8 @@ public class AssemblerRecipes { makeRecipe(new ComparableStack(ModItems.warhead_thermo_endo, 1), new AStack[] {new ComparableStack(ModBlocks.therm_endo, 2), new OreDictStack(TI.plate(), 12), new OreDictStack(STEEL.plate(), 6), },300); makeRecipe(new ComparableStack(ModItems.warhead_thermo_exo, 1), new AStack[] {new ComparableStack(ModBlocks.therm_exo, 2), new OreDictStack(TI.plate(), 12), new OreDictStack(STEEL.plate(), 6), },300); makeRecipe(new ComparableStack(ModItems.fuel_tank_small, 1), new AStack[] {new ComparableStack(ModItems.canister_full, 4, Fluids.KEROSENE.getID()), new OreDictStack(TI.plate(), 6), new OreDictStack(STEEL.plate(), 2), },100); - makeRecipe(new ComparableStack(ModItems.fuel_tank_medium, 1), new AStack[] {new ComparableStack(ModItems.fuel_tank_small, 3), new OreDictStack(TI.plate(), 4), new OreDictStack(STEEL.plate(), 2), },150); - makeRecipe(new ComparableStack(ModItems.fuel_tank_large, 1), new AStack[] {new ComparableStack(ModItems.fuel_tank_medium, 3), new OreDictStack(TI.plate(), 4), new OreDictStack(STEEL.plate(), 2), },200); + makeRecipe(new ComparableStack(ModItems.fuel_tank_medium, 1), new AStack[] {new ComparableStack(ModItems.canister_full, 12, Fluids.KEROSENE.getID()), new OreDictStack(TI.plate(), 12), new OreDictStack(STEEL.plate(), 4), },150); + makeRecipe(new ComparableStack(ModItems.fuel_tank_large, 1), new AStack[] {new ComparableStack(ModItems.canister_full, 36, Fluids.KEROSENE.getID()), new OreDictStack(TI.plate(), 24), new OreDictStack(STEEL.plate(), 8), },200); makeRecipe(new ComparableStack(ModItems.thruster_small, 1), new AStack[] {new OreDictStack(STEEL.plate(), 2), new ComparableStack(ModItems.hull_small_steel, 2), new ComparableStack(ModItems.wire_aluminium, 4), },100); makeRecipe(new ComparableStack(ModItems.thruster_medium, 1), new AStack[] {new ComparableStack(ModItems.thruster_small, 1), new OreDictStack(STEEL.plate(), 2), new ComparableStack(ModItems.hull_small_steel, 1), new ComparableStack(ModItems.hull_big_steel, 1), new ComparableStack(ModItems.wire_copper, 4), },150); makeRecipe(new ComparableStack(ModItems.thruster_large, 1), new AStack[] {new ComparableStack(ModItems.thruster_medium, 1), new OreDictStack(STEEL.plate(), 4), new ComparableStack(ModItems.hull_big_steel, 2), new ComparableStack(ModItems.wire_red_copper, 4), },200); diff --git a/src/main/java/com/hbm/inventory/recipes/BlastFurnaceRecipes.java b/src/main/java/com/hbm/inventory/recipes/BlastFurnaceRecipes.java index 88ebcd006..3b4d9eb0c 100644 --- a/src/main/java/com/hbm/inventory/recipes/BlastFurnaceRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/BlastFurnaceRecipes.java @@ -64,8 +64,9 @@ public class BlastFurnaceRecipes { addRecipe(ModItems.meteorite_sword_hardened, CO, new ItemStack(ModItems.meteorite_sword_alloyed)); addRecipe(ModBlocks.block_meteor, CO, new ItemStack(ModItems.ingot_meteorite)); - if(GeneralConfig.enableLBSMSimpleChemsitry) + if(GeneralConfig.enableLBSM && GeneralConfig.enableLBSMSimpleChemsitry) { addRecipe(ModItems.canister_empty, COAL, new ItemStack(ModItems.canister_full, 1, Fluids.OIL.getID())); + } if(!IMCBlastFurnace.buffer.isEmpty()) { blastFurnaceRecipes.addAll(IMCBlastFurnace.buffer); diff --git a/src/main/java/com/hbm/items/ISatChip.java b/src/main/java/com/hbm/items/ISatChip.java new file mode 100644 index 000000000..2d1aed641 --- /dev/null +++ b/src/main/java/com/hbm/items/ISatChip.java @@ -0,0 +1,36 @@ +package com.hbm.items; + +import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NBTTagCompound; + +public interface ISatChip { + + public static int getFreqS(ItemStack stack) { + if(stack != null && stack.getItem() instanceof ISatChip) { + return ((ISatChip) stack.getItem()).getFreq(stack); + } + + return 0; + } + + public static void setFreqS(ItemStack stack, int freq) { + if(stack != null && stack.getItem() instanceof ISatChip) { + ((ISatChip) stack.getItem()).setFreq(stack, freq); + } + } + + public default int getFreq(ItemStack stack) { + if(stack.stackTagCompound == null) { + stack.stackTagCompound = new NBTTagCompound(); + return 0; + } + return stack.stackTagCompound.getInteger("freq"); + } + + public default void setFreq(ItemStack stack, int freq) { + if(stack.stackTagCompound == null) { + stack.stackTagCompound = new NBTTagCompound(); + } + stack.stackTagCompound.setInteger("freq", freq); + } +} diff --git a/src/main/java/com/hbm/items/ModItems.java b/src/main/java/com/hbm/items/ModItems.java index ac60a74f1..c28d40be2 100644 --- a/src/main/java/com/hbm/items/ModItems.java +++ b/src/main/java/com/hbm/items/ModItems.java @@ -2291,6 +2291,7 @@ public class ModItems { public static Item v1; public static Item protection_charm; public static Item meteor_charm; + public static Item neutrino_lens; public static Item hazmat_helmet; public static Item hazmat_plate; @@ -3528,6 +3529,7 @@ public class ModItems { v1 = new ItemModV1().setUnlocalizedName("v1").setTextureName(RefStrings.MODID + ":v1"); protection_charm = new ItemModCharm().setUnlocalizedName("protection_charm").setTextureName(RefStrings.MODID + ":protection_charm"); meteor_charm = new ItemModCharm().setUnlocalizedName("meteor_charm").setTextureName(RefStrings.MODID + ":meteor_charm"); + neutrino_lens = new ItemModLens().setUnlocalizedName("neutrino_lens").setTextureName(RefStrings.MODID + ":neutrino_lens"); cap_nuka = new Item().setUnlocalizedName("cap_nuka").setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":cap_nuka"); cap_quantum = new Item().setUnlocalizedName("cap_quantum").setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":cap_quantum"); @@ -7824,6 +7826,7 @@ public class ModItems { GameRegistry.registerItem(v1, v1.getUnlocalizedName()); GameRegistry.registerItem(protection_charm, protection_charm.getUnlocalizedName()); GameRegistry.registerItem(meteor_charm, meteor_charm.getUnlocalizedName()); + GameRegistry.registerItem(neutrino_lens, neutrino_lens.getUnlocalizedName()); //Chaos GameRegistry.registerItem(chocolate_milk, chocolate_milk.getUnlocalizedName()); diff --git a/src/main/java/com/hbm/items/armor/ItemModLens.java b/src/main/java/com/hbm/items/armor/ItemModLens.java new file mode 100644 index 000000000..2cba7bcef --- /dev/null +++ b/src/main/java/com/hbm/items/armor/ItemModLens.java @@ -0,0 +1,112 @@ +package com.hbm.items.armor; + +import java.util.List; + +import com.hbm.blocks.ModBlocks; +import com.hbm.handler.ArmorModHandler; +import com.hbm.items.ISatChip; +import com.hbm.packet.AuxParticlePacketNT; +import com.hbm.packet.PacketDispatcher; +import com.hbm.saveddata.SatelliteSavedData; +import com.hbm.saveddata.satellites.Satellite; +import com.hbm.saveddata.satellites.SatelliteScanner; + +import net.minecraft.block.Block; +import net.minecraft.entity.EntityLivingBase; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.entity.player.EntityPlayerMP; +import net.minecraft.init.Blocks; +import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.util.EnumChatFormatting; +import net.minecraft.world.World; +import net.minecraft.world.chunk.Chunk; + +public class ItemModLens extends ItemArmorMod implements ISatChip { + + public ItemModLens() { + super(ArmorModHandler.extra, true, false, false, false); + } + + @Override + public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean bool) { + list.add(EnumChatFormatting.AQUA + "Satellite Frequency: " + this.getFreq(itemstack)); + list.add(""); + + super.addInformation(itemstack, player, list, bool); + } + + @Override + public void modUpdate(EntityLivingBase entity, ItemStack armor) { + World world = entity.worldObj; + if(world.isRemote) return; + if(!(entity instanceof EntityPlayerMP)) return; + + EntityPlayerMP player = (EntityPlayerMP) entity; + + int freq = this.getFreq(armor); + Satellite sat = SatelliteSavedData.getData(world).getSatFromFreq(freq); + if(!(sat instanceof SatelliteScanner)) return; + + int x = (int) Math.floor(player.posX); + int y = (int) Math.floor(player.posY); + int z = (int) Math.floor(player.posZ); + int range = 3; + + int cX = x >> 4; + int cZ = z >> 4; + + int height = Math.max(Math.min(y + 10, 255), 64); + int seg = (int) (world.getTotalWorldTime() % height); + + int hits = 0; + + for(int chunkX = cX - range; chunkX <= cX + range; chunkX++) { + for(int chunkZ = cZ - range; chunkZ <= cZ + range; chunkZ++) { + Chunk c = world.getChunkFromChunkCoords(chunkX, chunkZ); + + for(int ix = 0; ix < 16; ix++) { + for(int iz = 0; iz < 16; iz++) { + + Block b = c.getBlock(ix, seg, iz); + int aX = (chunkX << 4) + ix; + int aZ = (chunkZ << 4) + iz; + + if(addIf(ModBlocks.ore_alexandrite, b, 1, aX, seg, aZ, "Alexandrite", 0x00ffff, player)) hits++; + if(addIf(ModBlocks.ore_oil, b, 300, aX, seg, aZ, "Oil", 0xa0a0a0, player)) hits++; + if(addIf(ModBlocks.ore_bedrock_oil, b, 300, aX, seg, aZ, "Bedrock Oil", 0xa0a0a0, player)) hits++; + if(addIf(ModBlocks.ore_coltan, b, 5, aX, seg, aZ, "Coltan", 0xa0a000, player)) hits++; + if(addIf(ModBlocks.ore_bedrock_coltan, b, 1, aX, seg, aZ, "Bedrock Coltan", 0xa0a000, player)) hits++; + if(addIf(ModBlocks.stone_gneiss, b, 5000, aX, seg, aZ, "Schist", 0x8080ff, player)) hits++; + if(addIf(ModBlocks.ore_australium, b, 1000, aX, seg, aZ, "Australium", 0xffff00, player)) hits++; + if(addIf(Blocks.end_portal_frame, b, 1, aX, seg, aZ, "End Portal", 0x40b080, player)) hits++; + if(addIf(ModBlocks.volcano_core, b, 1, aX, seg, aZ, "Volcano Core", 0xff4000, player)) hits++; + if(addIf(ModBlocks.pink_log, b, 1, aX, seg, aZ, "Pink Log", 0xff00ff, player)) hits++; + if(addIf(ModBlocks.bobblehead, b, 1, aX, seg, aZ, "A Treasure!", 0xff0000, player)) hits++; + if(addIf(ModBlocks.deco_loot, b, 1, aX, seg, aZ, null, 0x800000, player)) hits++; + if(addIf(ModBlocks.crate_ammo, b, 1, aX, seg, aZ, null, 0x800000, player)) hits++; + if(addIf(ModBlocks.crate_can, b, 1, aX, seg, aZ, null, 0x800000, player)) hits++; + + if(hits > 100) return; + } + } + } + } + } + + private boolean addIf(Block target, Block b, int chance, int x, int y, int z, String label, int color, EntityPlayerMP player) { + + if(target == b && player.getRNG().nextInt(chance) == 0) { + NBTTagCompound data = new NBTTagCompound(); + data.setString("type", "marker"); + data.setInteger("color", color); + data.setInteger("expires", 15_000); + data.setDouble("dist", 300D); + if(label != null) data.setString("label", label); + PacketDispatcher.wrapper.sendTo(new AuxParticlePacketNT(data, x, y, z), player); + return true; + } + + return false; + } +} diff --git a/src/main/java/com/hbm/items/machine/ItemSatChip.java b/src/main/java/com/hbm/items/machine/ItemSatChip.java index 6138b9c49..b02dd36fa 100644 --- a/src/main/java/com/hbm/items/machine/ItemSatChip.java +++ b/src/main/java/com/hbm/items/machine/ItemSatChip.java @@ -2,14 +2,14 @@ package com.hbm.items.machine; import java.util.List; +import com.hbm.items.ISatChip; import com.hbm.items.ModItems; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; -import net.minecraft.nbt.NBTTagCompound; -public class ItemSatChip extends Item { +public class ItemSatChip extends Item implements ISatChip { @Override public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean bool) @@ -46,20 +46,4 @@ public class ItemSatChip extends Item { if(this == ModItems.sat_scanner) list.add("Creates a topdown map of underground ores."); } - - public static int getFreq(ItemStack stack) { - if(stack.stackTagCompound == null) { - stack.stackTagCompound = new NBTTagCompound(); - return 0; - } - return stack.stackTagCompound.getInteger("freq"); - } - - public static void setFreq(ItemStack stack, int i) { - if(stack.stackTagCompound == null) { - stack.stackTagCompound = new NBTTagCompound(); - } - stack.stackTagCompound.setInteger("freq", i); - } - } diff --git a/src/main/java/com/hbm/items/tool/ItemSatDesignator.java b/src/main/java/com/hbm/items/tool/ItemSatDesignator.java index 2c0e5612d..6902bce05 100644 --- a/src/main/java/com/hbm/items/tool/ItemSatDesignator.java +++ b/src/main/java/com/hbm/items/tool/ItemSatDesignator.java @@ -1,6 +1,5 @@ package com.hbm.items.tool; -import com.hbm.blocks.bomb.LaunchPad; import com.hbm.items.machine.ItemSatChip; import com.hbm.lib.Library; import com.hbm.saveddata.SatelliteSavedData; @@ -9,8 +8,6 @@ import com.hbm.saveddata.satellites.Satellite.Interfaces; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.util.ChatComponentText; import net.minecraft.util.MovingObjectPosition; import net.minecraft.world.World; import net.minecraftforge.common.util.ForgeDirection; diff --git a/src/main/java/com/hbm/lib/HbmWorldGen.java b/src/main/java/com/hbm/lib/HbmWorldGen.java index d1f20b3b6..b554481b1 100644 --- a/src/main/java/com/hbm/lib/HbmWorldGen.java +++ b/src/main/java/com/hbm/lib/HbmWorldGen.java @@ -2,6 +2,7 @@ package com.hbm.lib; import java.util.Random; +import com.hbm.blocks.BlockEnums.EnumStoneType; import com.hbm.blocks.ModBlocks; import com.hbm.blocks.generic.BlockMotherOfAllOres; import com.hbm.blocks.generic.BlockNTMFlower.EnumFlowerType; @@ -45,8 +46,10 @@ import net.minecraft.tileentity.TileEntitySkull; import net.minecraft.util.WeightedRandomChestContent; import net.minecraft.world.World; import net.minecraft.world.biome.BiomeGenBase; +import net.minecraft.world.biome.BiomeGenBeach; import net.minecraft.world.biome.BiomeGenForest; import net.minecraft.world.biome.BiomeGenJungle; +import net.minecraft.world.biome.BiomeGenRiver; import net.minecraft.world.chunk.IChunkProvider; import net.minecraft.world.gen.feature.WorldGenMinable; import cpw.mods.fml.common.IWorldGenerator; @@ -81,6 +84,12 @@ public class HbmWorldGen implements IWorldGenerator { if(biome instanceof BiomeGenJungle && rand.nextInt(8) == 0) { DungeonToolbox.generateFlowers(world, rand, i, j, ModBlocks.plant_flower, EnumFlowerType.TOBACCO.ordinal()); } + if(biome instanceof BiomeGenRiver && rand.nextInt(4) == 0) { + DungeonToolbox.generateFlowers(world, rand, i, j, ModBlocks.reeds, 0); + } + if(biome instanceof BiomeGenBeach && rand.nextInt(8) == 0) { + DungeonToolbox.generateFlowers(world, rand, i, j, ModBlocks.reeds, 0); + } if(rand.nextInt(64) == 0) { DungeonToolbox.generateFlowers(world, rand, i, j, ModBlocks.plant_flower, EnumFlowerType.WEED.ordinal()); @@ -137,6 +146,9 @@ public class HbmWorldGen implements IWorldGenerator { DungeonToolbox.generateOre(world, rand, i, j, WorldConfig.aluminiumClusterSpawn, 6, 15, 35, ModBlocks.cluster_aluminium); DungeonToolbox.generateOre(world, rand, i, j, WorldConfig.copperClusterSpawn, 6, 15, 20, ModBlocks.cluster_copper); + DungeonToolbox.generateOre(world, rand, i, j, WorldConfig.hematiteSpawn, 10, 4, 80, ModBlocks.stone_resource, EnumStoneType.HEMATITE.ordinal()); + DungeonToolbox.generateOre(world, rand, i, j, WorldConfig.malachiteSpawn, 10, 4, 40, ModBlocks.stone_resource, EnumStoneType.MALACHITE.ordinal()); + for(int k = 0; k < WorldConfig.randomSpawn; k++) { BlockMotherOfAllOres.shuffleOverride(rand); DungeonToolbox.generateOre(world, rand, i, j, 1, 10, 4, 30, ModBlocks.ore_random); diff --git a/src/main/java/com/hbm/lib/RefStrings.java b/src/main/java/com/hbm/lib/RefStrings.java index 391461779..00d7f12a7 100644 --- a/src/main/java/com/hbm/lib/RefStrings.java +++ b/src/main/java/com/hbm/lib/RefStrings.java @@ -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 (4395)"; + public static final String VERSION = "1.0.27 BETA (4403)"; //HBM's Beta Naming Convention: //V T (X) //V -> next release version diff --git a/src/main/java/com/hbm/main/ClientProxy.java b/src/main/java/com/hbm/main/ClientProxy.java index e64cc42dd..2e16fe3e9 100644 --- a/src/main/java/com/hbm/main/ClientProxy.java +++ b/src/main/java/com/hbm/main/ClientProxy.java @@ -78,6 +78,8 @@ import com.hbm.render.tileentity.*; import com.hbm.render.util.MissilePart; import com.hbm.render.util.RenderInfoSystem; import com.hbm.render.util.RenderInfoSystem.InfoEntry; +import com.hbm.render.util.RenderOverhead; +import com.hbm.render.util.RenderOverhead.Marker; import com.hbm.sound.AudioWrapper; import com.hbm.sound.AudioWrapperClient; import com.hbm.sound.AudioWrapperClientStartStop; @@ -95,6 +97,7 @@ import com.hbm.tileentity.machine.storage.*; import com.hbm.tileentity.network.*; import com.hbm.tileentity.turret.*; import com.hbm.util.BobMathUtil; +import com.hbm.util.fauxpointtwelve.BlockPos; import cpw.mods.fml.client.registry.ClientRegistry; import cpw.mods.fml.client.registry.RenderingRegistry; @@ -1778,6 +1781,15 @@ public class ClientProxy extends ServerProxy { ParticleGasFlame text = new ParticleGasFlame(world, x, y, z, mX, mY, mZ, scale > 0 ? scale : 6.5F); Minecraft.getMinecraft().effectRenderer.addEffect(text); } + + if("marker".equals(type)) { + int color = data.getInteger("color"); + String label = data.getString("label"); + int expires = data.getInteger("expires"); + double dist = data.getDouble("dist"); + + RenderOverhead.queuedMarkers.put(new BlockPos(x, y, z), new Marker(color).setDist(dist).setExpire(expires > 0 ? System.currentTimeMillis() + expires : 0).withLabel(label.isEmpty() ? null : label)); + } } private HashMap vanished = new HashMap(); diff --git a/src/main/java/com/hbm/main/ModEventHandlerClient.java b/src/main/java/com/hbm/main/ModEventHandlerClient.java index 9f713ec5c..f4948f0a9 100644 --- a/src/main/java/com/hbm/main/ModEventHandlerClient.java +++ b/src/main/java/com/hbm/main/ModEventHandlerClient.java @@ -902,14 +902,18 @@ public class ModEventHandlerClient { GL11.glPopMatrix(); - RenderOverhead.renderMarkers(event.partialTicks); - - if(ArmorFSB.hasFSBArmor(player)) { - ItemStack plate = player.inventory.armorInventory[2]; - ArmorFSB chestplate = (ArmorFSB) plate.getItem(); - - if(chestplate.thermal && HbmPlayerProps.getData(player).enableHUD) - RenderOverhead.renderThermalSight(event.partialTicks); + boolean hudOn = HbmPlayerProps.getData(player).enableHUD; + + if(hudOn) { + RenderOverhead.renderMarkers(event.partialTicks); + + if(ArmorFSB.hasFSBArmor(player)) { + ItemStack plate = player.inventory.armorInventory[2]; + ArmorFSB chestplate = (ArmorFSB) plate.getItem(); + + if(chestplate.thermal) + RenderOverhead.renderThermalSight(event.partialTicks); + } } } diff --git a/src/main/java/com/hbm/packet/SatCoordPacket.java b/src/main/java/com/hbm/packet/SatCoordPacket.java index 2710a7756..0d165165d 100644 --- a/src/main/java/com/hbm/packet/SatCoordPacket.java +++ b/src/main/java/com/hbm/packet/SatCoordPacket.java @@ -1,5 +1,6 @@ package com.hbm.packet; +import com.hbm.items.ISatChip; import com.hbm.items.tool.ItemSatInterface; import com.hbm.saveddata.SatelliteSavedData; import com.hbm.saveddata.satellites.Satellite; @@ -55,7 +56,7 @@ public class SatCoordPacket implements IMessage { if(p.getHeldItem() != null && p.getHeldItem().getItem() instanceof ItemSatInterface) { - int freq = ItemSatInterface.getFreq(p.getHeldItem()); + int freq = ISatChip.getFreqS(p.getHeldItem()); if(freq == m.freq) { Satellite sat = SatelliteSavedData.getData(p.worldObj).getSatFromFreq(m.freq); diff --git a/src/main/java/com/hbm/packet/SatLaserPacket.java b/src/main/java/com/hbm/packet/SatLaserPacket.java index d5e6ad749..1dc430a7b 100644 --- a/src/main/java/com/hbm/packet/SatLaserPacket.java +++ b/src/main/java/com/hbm/packet/SatLaserPacket.java @@ -1,5 +1,6 @@ package com.hbm.packet; +import com.hbm.items.ISatChip; import com.hbm.items.tool.ItemSatInterface; import com.hbm.saveddata.SatelliteSavedData; import com.hbm.saveddata.satellites.Satellite; @@ -54,7 +55,7 @@ public class SatLaserPacket implements IMessage { if(p.getHeldItem() != null && p.getHeldItem().getItem() instanceof ItemSatInterface) { - int freq = ItemSatInterface.getFreq(p.getHeldItem()); + int freq = ISatChip.getFreqS(p.getHeldItem()); if(freq == m.freq) { Satellite sat = SatelliteSavedData.getData(p.worldObj).getSatFromFreq(m.freq); diff --git a/src/main/java/com/hbm/render/util/RenderOverhead.java b/src/main/java/com/hbm/render/util/RenderOverhead.java index 637b4cfb5..4c3759a32 100644 --- a/src/main/java/com/hbm/render/util/RenderOverhead.java +++ b/src/main/java/com/hbm/render/util/RenderOverhead.java @@ -1,12 +1,14 @@ package com.hbm.render.util; +import java.util.ArrayList; import java.util.HashMap; +import java.util.Iterator; +import java.util.List; import java.util.Map.Entry; import org.lwjgl.opengl.GL11; -import com.hbm.util.Tuple.Pair; -import com.hbm.util.Tuple.Triplet; +import com.hbm.util.fauxpointtwelve.BlockPos; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.FontRenderer; @@ -23,6 +25,7 @@ import net.minecraft.entity.item.EntityXPOrb; import net.minecraft.entity.monster.IMob; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.util.AxisAlignedBB; +import net.minecraft.util.Vec3; public class RenderOverhead { @@ -42,11 +45,11 @@ public class RenderOverhead { } } - protected static boolean shouldRenderTag(EntityLivingBase p_110813_1_) { + public static boolean shouldRenderTag(EntityLivingBase p_110813_1_) { return Minecraft.isGuiEnabled() && p_110813_1_ != RenderManager.instance.livingPlayer && !p_110813_1_.isInvisibleToPlayer(Minecraft.getMinecraft().thePlayer) && p_110813_1_.riddenByEntity == null; } - protected static void drawTagAware(EntityLivingBase entity, double x, double y, double z, String string, boolean depthTest) { + public static void drawTagAware(EntityLivingBase entity, double x, double y, double z, String string, boolean depthTest) { if(entity.isPlayerSleeping()) { drawTag(entity, string, x, y - 1.5D, z, 64, depthTest); } else { @@ -54,16 +57,18 @@ public class RenderOverhead { } } - protected static void drawTag(Entity entity, String name, double x, double y, double z, int dist, boolean depthTest) { - - double distsq = entity.getDistanceSqToEntity(RenderManager.instance.livingPlayer); + public static void drawTag(Entity entity, String name, double x, double y, double z, int dist, boolean depthTest) { + drawTag(entity.height + 0.75F, entity.getDistanceSqToEntity(RenderManager.instance.livingPlayer), name, x, y, z, dist, depthTest, -1, 553648127); + } + + public static void drawTag(float offset, double distsq, String name, double x, double y, double z, int dist, boolean depthTest, int color, int shadowColor) { if(distsq <= (double) (dist * dist)) { FontRenderer fontrenderer = Minecraft.getMinecraft().fontRenderer; float f = 1.6F; float scale = 0.016666668F * f; GL11.glPushMatrix(); - GL11.glTranslatef((float) x + 0.0F, (float) y + entity.height + 0.75F, (float) z); + GL11.glTranslatef((float) x + 0.0F, (float) y + offset, (float) z); GL11.glNormal3f(0.0F, 1.0F, 0.0F); GL11.glRotatef(-RenderManager.instance.playerViewY, 0.0F, 1.0F, 0.0F); GL11.glRotatef(RenderManager.instance.playerViewX, 1.0F, 0.0F, 0.0F); @@ -92,10 +97,10 @@ public class RenderOverhead { tessellator.addVertex((double) (center + 1), (double) (-1 + heightOffset), 0.0D); tessellator.draw(); GL11.glEnable(GL11.GL_TEXTURE_2D); - fontrenderer.drawString(name, -fontrenderer.getStringWidth(name) / 2, heightOffset, 553648127); + fontrenderer.drawString(name, -fontrenderer.getStringWidth(name) / 2, heightOffset, shadowColor); GL11.glEnable(GL11.GL_DEPTH_TEST); GL11.glDepthMask(true); - fontrenderer.drawString(name, -fontrenderer.getStringWidth(name) / 2, heightOffset, -1); + fontrenderer.drawString(name, -fontrenderer.getStringWidth(name) / 2, heightOffset, color); GL11.glEnable(GL11.GL_LIGHTING); GL11.glDisable(GL11.GL_BLEND); GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); @@ -103,86 +108,6 @@ public class RenderOverhead { } } - public static final HashMap, Pair> markers = new HashMap(); - - public static void renderMarkers(float partialTicks) { - - if(markers.isEmpty()) - return; - - EntityPlayer player = Minecraft.getMinecraft().thePlayer; - double x = player.prevPosX + (player.posX - player.prevPosX) * partialTicks; - double y = player.prevPosY + (player.posY - player.prevPosY) * partialTicks; - double z = player.prevPosZ + (player.posZ - player.prevPosZ) * partialTicks; - - GL11.glPushMatrix(); - GL11.glDisable(GL11.GL_COLOR_MATERIAL); - GL11.glDisable(GL11.GL_TEXTURE_2D); - GL11.glDisable(GL11.GL_LIGHTING); - GL11.glEnable(GL11.GL_POINT_SMOOTH); - GL11.glEnable(GL11.GL_BLEND); - GL11.glDisable(GL11.GL_DEPTH_TEST); - GL11.glBlendFunc(GL11.GL_SRC_ALPHA,GL11.GL_ONE_MINUS_SRC_ALPHA); - - Tessellator tess = Tessellator.instance; - tess.startDrawing(GL11.GL_LINES); - - for(Entry, Pair> entry : markers.entrySet()) { - Triplet pos = entry.getKey(); - Pair pars = entry.getValue(); - - int pX = pos.getX(); - int pY = pos.getY(); - int pZ = pos.getZ(); - - int color = pars.getValue(); - double[] bounds = pars.getKey(); - double minX = bounds[0]; - double minY = bounds[1]; - double minZ = bounds[2]; - double maxX = bounds[3]; - double maxY = bounds[4]; - double maxZ = bounds[5]; - - tess.setColorOpaque_I(color); - tess.addVertex(pX + minX - x, pY + maxY - y, pZ + minZ - z); - tess.addVertex(pX + minX - x, pY + minY - y, pZ + minZ - z); - tess.addVertex(pX + minX - x, pY + maxY - y, pZ + minZ - z); - tess.addVertex(pX + maxX - x, pY + maxY - y, pZ + minZ - z); - tess.addVertex(pX + maxX - x, pY + maxY - y, pZ + minZ - z); - tess.addVertex(pX + maxX - x, pY + minY - y, pZ + minZ - z); - tess.addVertex(pX + minX - x, pY + minY - y, pZ + minZ - z); - tess.addVertex(pX + maxX - x, pY + minY - y, pZ + minZ - z); - tess.addVertex(pX + maxX - x, pY + minY - y, pZ + minZ - z); - tess.addVertex(pX + maxX - x, pY + minY - y, pZ + maxZ - z); - tess.addVertex(pX + maxX - x, pY + maxY - y, pZ + maxZ - z); - tess.addVertex(pX + maxX - x, pY + maxY - y, pZ + minZ - z); - tess.addVertex(pX + maxX - x, pY + maxY - y, pZ + maxZ - z); - tess.addVertex(pX + maxX - x, pY + minY - y, pZ + maxZ - z); - tess.addVertex(pX + minX - x, pY + maxY - y, pZ + minZ - z); - tess.addVertex(pX + minX - x, pY + maxY - y, pZ + maxZ - z); - tess.addVertex(pX + minX - x, pY + maxY - y, pZ + maxZ - z); - tess.addVertex(pX + minX - x, pY + minY - y, pZ + maxZ - z); - tess.addVertex(pX + minX - x, pY + maxY - y, pZ + maxZ - z); - tess.addVertex(pX + maxX - x, pY + maxY - y, pZ + maxZ - z); - tess.addVertex(pX + minX - x, pY + minY - y, pZ + maxZ - z); - tess.addVertex(pX + maxX - x, pY + minY - y, pZ + maxZ - z); - tess.addVertex(pX + minX - x, pY + minY - y, pZ + minZ - z); - tess.addVertex(pX + minX - x, pY + minY - y, pZ + maxZ - z); - } - - tess.draw(); - - tess.setColorOpaque_F(1F, 1F, 1F); - - GL11.glEnable(GL11.GL_COLOR_MATERIAL); - GL11.glEnable(GL11.GL_TEXTURE_2D); - GL11.glDisable(GL11.GL_POINT_SMOOTH); - GL11.glDisable(GL11.GL_BLEND); - GL11.glEnable(GL11.GL_DEPTH_TEST); - GL11.glPopMatrix(); - } - public static void renderThermalSight(float partialTicks) { EntityPlayer player = Minecraft.getMinecraft().thePlayer; @@ -268,4 +193,177 @@ public class RenderOverhead { GL11.glEnable(GL11.GL_DEPTH_TEST); GL11.glPopMatrix(); } + + public static final HashMap queuedMarkers = new HashMap(); + private static final HashMap markers = new HashMap(); + + public static void renderMarkers(float partialTicks) { + + markers.putAll(queuedMarkers); + queuedMarkers.clear(); + + if(markers.isEmpty()) + return; + + EntityPlayer player = Minecraft.getMinecraft().thePlayer; + double x = player.prevPosX + (player.posX - player.prevPosX) * partialTicks; + double y = player.prevPosY + (player.posY - player.prevPosY) * partialTicks; + double z = player.prevPosZ + (player.posZ - player.prevPosZ) * partialTicks; + + GL11.glPushMatrix(); + GL11.glDisable(GL11.GL_COLOR_MATERIAL); + GL11.glDisable(GL11.GL_TEXTURE_2D); + GL11.glDisable(GL11.GL_LIGHTING); + GL11.glEnable(GL11.GL_POINT_SMOOTH); + GL11.glEnable(GL11.GL_BLEND); + GL11.glDisable(GL11.GL_DEPTH_TEST); + GL11.glBlendFunc(GL11.GL_SRC_ALPHA,GL11.GL_ONE_MINUS_SRC_ALPHA); + + Tessellator tess = Tessellator.instance; + tess.startDrawing(GL11.GL_LINES); + + Iterator> it = markers.entrySet().iterator(); + List> tagList = new ArrayList(); + while(it.hasNext()) { + Entry entry = it.next(); + BlockPos pos = entry.getKey(); + Marker marker = entry.getValue(); + + int pX = pos.getX(); + int pY = pos.getY(); + int pZ = pos.getZ(); + + double minX = marker.minX; + double minY = marker.minY; + double minZ = marker.minZ; + double maxX = marker.maxX; + double maxY = marker.maxY; + double maxZ = marker.maxZ; + + tess.setColorOpaque_I(marker.color); + tess.addVertex(pX + minX - x, pY + maxY - y, pZ + minZ - z); + tess.addVertex(pX + minX - x, pY + minY - y, pZ + minZ - z); + tess.addVertex(pX + minX - x, pY + maxY - y, pZ + minZ - z); + tess.addVertex(pX + maxX - x, pY + maxY - y, pZ + minZ - z); + tess.addVertex(pX + maxX - x, pY + maxY - y, pZ + minZ - z); + tess.addVertex(pX + maxX - x, pY + minY - y, pZ + minZ - z); + tess.addVertex(pX + minX - x, pY + minY - y, pZ + minZ - z); + tess.addVertex(pX + maxX - x, pY + minY - y, pZ + minZ - z); + tess.addVertex(pX + maxX - x, pY + minY - y, pZ + minZ - z); + tess.addVertex(pX + maxX - x, pY + minY - y, pZ + maxZ - z); + tess.addVertex(pX + maxX - x, pY + maxY - y, pZ + maxZ - z); + tess.addVertex(pX + maxX - x, pY + maxY - y, pZ + minZ - z); + tess.addVertex(pX + maxX - x, pY + maxY - y, pZ + maxZ - z); + tess.addVertex(pX + maxX - x, pY + minY - y, pZ + maxZ - z); + tess.addVertex(pX + minX - x, pY + maxY - y, pZ + minZ - z); + tess.addVertex(pX + minX - x, pY + maxY - y, pZ + maxZ - z); + tess.addVertex(pX + minX - x, pY + maxY - y, pZ + maxZ - z); + tess.addVertex(pX + minX - x, pY + minY - y, pZ + maxZ - z); + tess.addVertex(pX + minX - x, pY + maxY - y, pZ + maxZ - z); + tess.addVertex(pX + maxX - x, pY + maxY - y, pZ + maxZ - z); + tess.addVertex(pX + minX - x, pY + minY - y, pZ + maxZ - z); + tess.addVertex(pX + maxX - x, pY + minY - y, pZ + maxZ - z); + tess.addVertex(pX + minX - x, pY + minY - y, pZ + minZ - z); + tess.addVertex(pX + minX - x, pY + minY - y, pZ + maxZ - z); + + tagList.add(entry); + + if(marker.expire > 0 && System.currentTimeMillis() > marker.expire) { + it.remove(); + } else if(marker.maxDist > 0) { + double aX = pX + (maxX - minX) / 2D; + double aY = pY + (maxY - minY) / 2D; + double aZ = pZ + (maxZ - minZ) / 2D; + Vec3 vec = Vec3.createVectorHelper(x - aX, y - aY, z - aZ); + if(vec.lengthVector() > marker.maxDist) { + it.remove(); + } + } + } + + tess.draw(); + + tess.setColorOpaque_F(1F, 1F, 1F); + + GL11.glEnable(GL11.GL_COLOR_MATERIAL); + GL11.glEnable(GL11.GL_TEXTURE_2D); + GL11.glDisable(GL11.GL_POINT_SMOOTH); + GL11.glDisable(GL11.GL_BLEND); + GL11.glEnable(GL11.GL_DEPTH_TEST); + + for(Entry entry : tagList) { + + BlockPos pos = entry.getKey(); + Marker marker = entry.getValue(); + + int pX = pos.getX(); + int pY = pos.getY(); + int pZ = pos.getZ(); + + double minX = marker.minX; + double minY = marker.minY; + double minZ = marker.minZ; + double maxX = marker.maxX; + double maxY = marker.maxY; + double maxZ = marker.maxZ; + + double aX = pX + (maxX - minX) / 2D; + double aY = pY + (maxY - minY) / 2D; + double aZ = pZ + (maxZ - minZ) / 2D; + Vec3 vec = Vec3.createVectorHelper(aX - x, aY - y, aZ - z); + double len = vec.xCoord * vec.xCoord + vec.yCoord * vec.yCoord + vec.zCoord * vec.zCoord; + double sqrt = Math.sqrt(len); + double mult = Math.min(sqrt, 16D); + vec.xCoord *= mult / sqrt; + vec.yCoord *= mult / sqrt; + vec.zCoord *= mult / sqrt; + Vec3 look = player.getLookVec(); + Vec3 diff = vec.normalize(); + String label = marker.label; + if(label == null) { + label = ""; + } + + if(Math.abs(look.xCoord - diff.xCoord) + Math.abs(look.yCoord - diff.yCoord) + Math.abs(look.zCoord - diff.zCoord) < 0.15) { + label += (!label.isEmpty() ? " " : "") + ((int) sqrt) + "m"; + } + + if(!label.isEmpty()) drawTag(1F, len, label, vec.xCoord, vec.yCoord, vec.zCoord, 100, true, marker.color, marker.color); + } + GL11.glPopMatrix(); + } + + public static class Marker { + double minX = 0; + double minY = 0; + double minZ = 0; + double maxX = 1; + double maxY = 1; + double maxZ = 1; + + int color; + String label; + + long expire; + double maxDist; + + public Marker(int color) { + this.color = color; + } + + public Marker setExpire(long expire) { + this.expire = expire; + return this; + } + + public Marker setDist(double maxDist) { + this.maxDist = maxDist; + return this; + } + + public Marker withLabel(String label) { + this.label = label; + return this; + } + } } diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityAMSBase.java b/src/main/java/com/hbm/tileentity/machine/TileEntityAMSBase.java index ac27f077c..3eaa5b1c9 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityAMSBase.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityAMSBase.java @@ -1,7 +1,5 @@ package com.hbm.tileentity.machine; -import java.util.ArrayList; -import java.util.List; import java.util.Random; import com.hbm.interfaces.IFluidAcceptor; @@ -9,11 +7,10 @@ import com.hbm.interfaces.IFluidContainer; import com.hbm.inventory.fluid.FluidType; import com.hbm.inventory.fluid.Fluids; import com.hbm.inventory.fluid.tank.FluidTank; +import com.hbm.items.ISatChip; import com.hbm.items.ModItems; import com.hbm.items.machine.ItemCatalyst; -import com.hbm.items.machine.ItemSatChip; import com.hbm.items.special.ItemAMSCore; -import com.hbm.lib.Library; import com.hbm.packet.AuxElectricityPacket; import com.hbm.packet.AuxGaugePacket; import com.hbm.packet.PacketDispatcher; @@ -454,9 +451,9 @@ public class TileEntityAMSBase extends TileEntity implements ISidedInventory, IF } data.markDirty(); - int i1 = ItemSatChip.getFreq(slots[13]); - int i2 = ItemSatChip.getFreq(slots[14]); - int i3 = ItemSatChip.getFreq(slots[15]); + int i1 = ISatChip.getFreqS(slots[13]); + int i2 = ISatChip.getFreqS(slots[14]); + int i3 = ISatChip.getFreqS(slots[15]); if(data.getSatFromFreq(i1) != null && data.getSatFromFreq(i2) != null && data.getSatFromFreq(i3) != null && data.getSatFromFreq(i1) instanceof SatelliteResonator && data.getSatFromFreq(i2) instanceof SatelliteResonator && data.getSatFromFreq(i3) instanceof SatelliteResonator && diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityFoundryChannel.java b/src/main/java/com/hbm/tileentity/machine/TileEntityFoundryChannel.java index f783d8c57..dd09a8a59 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityFoundryChannel.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityFoundryChannel.java @@ -6,7 +6,6 @@ import java.util.List; import com.hbm.blocks.ModBlocks; import com.hbm.inventory.material.MaterialShapes; -import com.hbm.inventory.material.Mats; import com.hbm.inventory.material.Mats.MaterialStack; import api.hbm.block.ICrucibleAcceptor; diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityFoundryOutlet.java b/src/main/java/com/hbm/tileentity/machine/TileEntityFoundryOutlet.java index 9508cdf01..5712bf806 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityFoundryOutlet.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityFoundryOutlet.java @@ -32,7 +32,7 @@ public class TileEntityFoundryOutlet extends TileEntityFoundryBase { if(worldObj.isRemote) { boolean isClosed = isClosed(); if(this.lastClosed != isClosed || this.filter != this.lastFilter) { - this.filter = lastFilter; + this.lastFilter = this.filter; this.lastClosed = isClosed; worldObj.markBlockForUpdate(xCoord, yCoord, zCoord); } diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineSatDock.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineSatDock.java index 497525462..dfafe55b4 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineSatDock.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineSatDock.java @@ -2,6 +2,7 @@ package com.hbm.tileentity.machine; import com.hbm.entity.missile.EntityMinerRocket; import com.hbm.explosion.ExplosionNukeSmall; +import com.hbm.items.ISatChip; import com.hbm.items.machine.ItemSatChip; import com.hbm.saveddata.SatelliteSavedData; import com.hbm.saveddata.satellites.Satellite; @@ -203,7 +204,7 @@ public class TileEntityMachineSatDock extends TileEntity implements ISidedInvent data.markDirty(); if(data != null && slots[15] != null) { - int freq = ItemSatChip.getFreq(slots[15]); + int freq = ISatChip.getFreqS(slots[15]); Satellite sat = data.getSatFromFreq(freq); @@ -238,7 +239,7 @@ public class TileEntityMachineSatDock extends TileEntity implements ISidedInvent EntityMinerRocket rocket = (EntityMinerRocket)e; - if(slots[15] != null && ItemSatChip.getFreq(slots[15]) != rocket.getDataWatcher().getWatchableObjectInt(17)) { + if(slots[15] != null && ISatChip.getFreqS(slots[15]) != rocket.getDataWatcher().getWatchableObjectInt(17)) { rocket.setDead(); ExplosionNukeSmall.explode(worldObj, xCoord + 0.5, yCoord + 0.5, zCoord + 0.5, ExplosionNukeSmall.tots); break; diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineSatLinker.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineSatLinker.java index 0aa7e64e1..3a384304f 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineSatLinker.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineSatLinker.java @@ -1,5 +1,6 @@ package com.hbm.tileentity.machine; +import com.hbm.items.ISatChip; import com.hbm.items.machine.ItemSatChip; import net.minecraft.entity.player.EntityPlayer; @@ -174,12 +175,12 @@ public class TileEntityMachineSatLinker extends TileEntity implements ISidedInve if(!worldObj.isRemote) { - if(slots[0] != null && slots[1] != null && slots[0].getItem() instanceof ItemSatChip && slots[1].getItem() instanceof ItemSatChip) { - ItemSatChip.setFreq(slots[1], ItemSatChip.getFreq(slots[0])); + if(slots[0] != null && slots[1] != null && slots[0].getItem() instanceof ISatChip && slots[1].getItem() instanceof ISatChip) { + ISatChip.setFreqS(slots[1], ISatChip.getFreqS(slots[0])); } - if(slots[2] != null && slots[2].getItem() instanceof ItemSatChip) { - ItemSatChip.setFreq(slots[2], worldObj.rand.nextInt(100000)); + if(slots[2] != null && slots[2].getItem() instanceof ISatChip) { + ISatChip.setFreqS(slots[2], worldObj.rand.nextInt(100000)); } } } diff --git a/src/main/java/com/hbm/tileentity/machine/rbmk/RBMKDials.java b/src/main/java/com/hbm/tileentity/machine/rbmk/RBMKDials.java index 2d8f005e0..1d07892ff 100644 --- a/src/main/java/com/hbm/tileentity/machine/rbmk/RBMKDials.java +++ b/src/main/java/com/hbm/tileentity/machine/rbmk/RBMKDials.java @@ -28,7 +28,7 @@ public class RBMKDials { public static final String KEY_REASIM_MOD = "dialReasimOutputMod"; public static final String KEY_REASIM_BOILERS = "dialReasimBoilers"; public static final String KEY_REASIM_BOILER_SPEED = "dialReasimBoilerSpeed"; - public static final String KEY_DISABLE_MELTDOWNS = "dialEnableMeltdowns"; + public static final String KEY_DISABLE_MELTDOWNS = "dialDisableMeltdowns"; public static void createDials(World world) { GameRules rules = world.getGameRules(); diff --git a/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKRod.java b/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKRod.java index 3f17d439b..953a7564f 100644 --- a/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKRod.java +++ b/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKRod.java @@ -64,7 +64,6 @@ public class TileEntityRBMKRod extends TileEntityRBMKSlottedBase implements IRBM ItemRBMKRod rod = ((ItemRBMKRod)slots[0].getItem()); double fluxIn = fluxFromType(rod.nType); - //System.out.println(fluxIn + " - " + this.fluxFast + " - " + this.fluxSlow); double fluxOut = rod.burn(worldObj, slots[0], fluxIn); NType rType = rod.rType; diff --git a/src/main/java/com/hbm/util/ContaminationUtil.java b/src/main/java/com/hbm/util/ContaminationUtil.java index 1710ff5cf..a88cd03ec 100644 --- a/src/main/java/com/hbm/util/ContaminationUtil.java +++ b/src/main/java/com/hbm/util/ContaminationUtil.java @@ -218,7 +218,7 @@ public class ContaminationUtil { public static void printDiagnosticData(EntityPlayer player) { double digamma = ((int)(HbmLivingProps.getDigamma(player) * 100)) / 100D; - double halflife = ((int)((1D - Math.pow(0.5, digamma)) * 100)) / 100D; + double halflife = ((int)((1D - Math.pow(0.5, digamma)) * 10000)) / 100D; player.addChatMessage(new ChatComponentText("===== Ϝ ").appendSibling(new ChatComponentTranslation("digamma.title")).appendSibling(new ChatComponentText(" Ϝ =====")).setChatStyle(new ChatStyle().setColor(EnumChatFormatting.DARK_PURPLE))); player.addChatMessage(new ChatComponentTranslation("digamma.playerDigamma").appendSibling(new ChatComponentText(EnumChatFormatting.RED + " " + digamma + " DRX")).setChatStyle(new ChatStyle().setColor(EnumChatFormatting.LIGHT_PURPLE))); diff --git a/src/main/resources/assets/hbm/lang/de_DE.lang b/src/main/resources/assets/hbm/lang/de_DE.lang index 486d6d9eb..dd9ec4ae1 100644 --- a/src/main/resources/assets/hbm/lang/de_DE.lang +++ b/src/main/resources/assets/hbm/lang/de_DE.lang @@ -2206,6 +2206,7 @@ item.multitool_silk.name=Power Fist (Behutsamkeitsklaue) item.multitool_sky.name=Power Fist (Crack the Sky) item.mysteryshovel.name=Brüchiger Spaten item.n2_charge.name=Große Sprengladung +item.neutrino_lens.name=Neutrinolinse item.neutron_reflector.name=Neutronenreflektor item.niter.name=Salpeter item.nossy_hat.name=Fabulöser Hut @@ -3242,6 +3243,7 @@ tile.block_schrabidium_fuel.name=Schrabidiumkernbrennstoffblock tile.block_schraranium.name=Schraraniumblock tile.block_scrap.name=Schrottblock tile.block_semtex.name=Semtexblock +tile.block_slag.name=Schlackeblock tile.block_smore.name=S'moreblock tile.block_solinium.name=Soliniumblock tile.block_starmetal.name=§9Sternenmetallblock§r @@ -3825,6 +3827,7 @@ tile.plant_flower.foxglove.name=Roter Fingerhut tile.plant_flower.nightshade.name=Schwarze Tollkirsche tile.plant_flower.tobacco.name=Tabakpflanze tile.plant_flower.weed.name=Hanf +tile.plant_reeds.name=Schilf tile.plasma.name=Plasma tile.plasma_heater.name=Plasmaerhitzer tile.pole_satellite_receiver.name=Satellitenschüssel diff --git a/src/main/resources/assets/hbm/lang/en_US.lang b/src/main/resources/assets/hbm/lang/en_US.lang index d3ddb8eed..adcadbee4 100644 --- a/src/main/resources/assets/hbm/lang/en_US.lang +++ b/src/main/resources/assets/hbm/lang/en_US.lang @@ -2545,6 +2545,7 @@ item.multitool_silk.name=Power Fist (Silk Touch Claw) item.multitool_sky.name=Power Fist (Crack the Sky) item.mysteryshovel.name=Brittle Spade item.n2_charge.name=Large Explosive Charge +item.neutrino_lens.name=Neutrino Lens item.neutron_reflector.name=Neutron Reflector item.niter.name=Niter item.nossy_hat.name=Fabulous Hat @@ -3721,6 +3722,7 @@ tile.block_schrabidium_fuel.name=Block of Schrabidium Fuel tile.block_schraranium.name=Block of Schraranium tile.block_scrap.name=Block of Scrap tile.block_semtex.name=Block of Semtex +tile.block_slag.name=Block of Slag tile.block_smore.name=Block of S'more tile.block_solinium.name=Block of Solinium tile.block_starmetal.name=§9Block of Starmetal§r @@ -4309,6 +4311,7 @@ tile.plant_flower.foxglove.name=Foxglove tile.plant_flower.nightshade.name=Deadly Nightshade tile.plant_flower.tobacco.name=Tobacco Plant tile.plant_flower.weed.name=Hemp +tile.plant_reeds.name=Reeds tile.plasma.name=Plasma tile.plasma_heater.name=Plasma Heater tile.pole_satellite_receiver.name=Satellite Dish diff --git a/src/main/resources/assets/hbm/textures/blocks/stone_limestone.png b/src/main/resources/assets/hbm/textures/blocks/stone_limestone.png new file mode 100644 index 000000000..b93d2fc20 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/blocks/stone_limestone.png differ diff --git a/src/main/resources/assets/hbm/textures/gui/gui_waste_drum.png b/src/main/resources/assets/hbm/textures/gui/gui_waste_drum.png index e7a1b2fde..c3fb8c62e 100644 Binary files a/src/main/resources/assets/hbm/textures/gui/gui_waste_drum.png and b/src/main/resources/assets/hbm/textures/gui/gui_waste_drum.png differ diff --git a/src/main/resources/assets/hbm/textures/gui/machine/gui_laser_miner.png b/src/main/resources/assets/hbm/textures/gui/machine/gui_laser_miner.png index 6afcec92c..f3b78d9ba 100644 Binary files a/src/main/resources/assets/hbm/textures/gui/machine/gui_laser_miner.png and b/src/main/resources/assets/hbm/textures/gui/machine/gui_laser_miner.png differ diff --git a/src/main/resources/assets/hbm/textures/gui/machine/gui_radar.png b/src/main/resources/assets/hbm/textures/gui/machine/gui_radar.png index fdb717ce1..2c8bca392 100644 Binary files a/src/main/resources/assets/hbm/textures/gui/machine/gui_radar.png and b/src/main/resources/assets/hbm/textures/gui/machine/gui_radar.png differ diff --git a/src/main/resources/assets/hbm/textures/gui/processing/gui_drum.png b/src/main/resources/assets/hbm/textures/gui/processing/gui_drum.png index 512d7d38b..86e8e3d51 100644 Binary files a/src/main/resources/assets/hbm/textures/gui/processing/gui_drum.png and b/src/main/resources/assets/hbm/textures/gui/processing/gui_drum.png differ diff --git a/src/main/resources/assets/hbm/textures/gui/processing/gui_silex.png b/src/main/resources/assets/hbm/textures/gui/processing/gui_silex.png index 7f92facaf..3e3c18711 100644 Binary files a/src/main/resources/assets/hbm/textures/gui/processing/gui_silex.png and b/src/main/resources/assets/hbm/textures/gui/processing/gui_silex.png differ diff --git a/src/main/resources/assets/hbm/textures/gui/weapon/fleijaSchematic.png b/src/main/resources/assets/hbm/textures/gui/weapon/fleijaSchematic.png index 39f88f564..36bf31340 100644 Binary files a/src/main/resources/assets/hbm/textures/gui/weapon/fleijaSchematic.png and b/src/main/resources/assets/hbm/textures/gui/weapon/fleijaSchematic.png differ diff --git a/src/main/resources/assets/hbm/textures/gui/weapon/fstbmbSchematic.png b/src/main/resources/assets/hbm/textures/gui/weapon/fstbmbSchematic.png index e21aa322c..e8d2bf219 100644 Binary files a/src/main/resources/assets/hbm/textures/gui/weapon/fstbmbSchematic.png and b/src/main/resources/assets/hbm/textures/gui/weapon/fstbmbSchematic.png differ diff --git a/src/main/resources/assets/hbm/textures/gui/weapon/gunBombSchematic.png b/src/main/resources/assets/hbm/textures/gui/weapon/gunBombSchematic.png index a9de70f91..165b30763 100644 Binary files a/src/main/resources/assets/hbm/textures/gui/weapon/gunBombSchematic.png and b/src/main/resources/assets/hbm/textures/gui/weapon/gunBombSchematic.png differ diff --git a/src/main/resources/assets/hbm/textures/gui/weapon/n2Schematic.png b/src/main/resources/assets/hbm/textures/gui/weapon/n2Schematic.png deleted file mode 100644 index 844979862..000000000 Binary files a/src/main/resources/assets/hbm/textures/gui/weapon/n2Schematic.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/gui/weapon/n2schematic.png b/src/main/resources/assets/hbm/textures/gui/weapon/n2schematic.png new file mode 100644 index 000000000..1e50ed8cd Binary files /dev/null and b/src/main/resources/assets/hbm/textures/gui/weapon/n2schematic.png differ diff --git a/src/main/resources/assets/hbm/textures/items/ingot_calcium.png b/src/main/resources/assets/hbm/textures/items/ingot_calcium.png new file mode 100644 index 000000000..d24285870 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/ingot_calcium.png differ diff --git a/src/main/resources/assets/hbm/textures/items/neutrino_lens.png b/src/main/resources/assets/hbm/textures/items/neutrino_lens.png new file mode 100644 index 000000000..b6f3f442d Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/neutrino_lens.png differ diff --git a/src/main/resources/assets/hbm/textures/items/neutrino_lens_alt.png b/src/main/resources/assets/hbm/textures/items/neutrino_lens_alt.png new file mode 100644 index 000000000..3ff28b36d Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/neutrino_lens_alt.png differ diff --git a/src/main/resources/assets/hbm/textures/items/powder_calcium.png b/src/main/resources/assets/hbm/textures/items/powder_calcium.png new file mode 100644 index 000000000..f633babaa Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/powder_calcium.png differ diff --git a/src/main/resources/assets/hbm/textures/models/dornier_base.png b/src/main/resources/assets/hbm/textures/models/dornier_base.png index c9e00bf01..3bdbb4a92 100644 Binary files a/src/main/resources/assets/hbm/textures/models/dornier_base.png and b/src/main/resources/assets/hbm/textures/models/dornier_base.png differ diff --git a/src/main/resources/assets/hbm/textures/models/machines/combination_oven.png b/src/main/resources/assets/hbm/textures/models/machines/combination_oven.png new file mode 100644 index 000000000..5d966161d Binary files /dev/null and b/src/main/resources/assets/hbm/textures/models/machines/combination_oven.png differ diff --git a/src/main/resources/mcmod.info b/src/main/resources/mcmod.info index cd14c9428..d56ac255e 100755 --- a/src/main/resources/mcmod.info +++ b/src/main/resources/mcmod.info @@ -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_X4395", + "version":"1.0.27_X4403", "mcversion": "1.7.10", "url": "", "updateUrl": "",