Merge remote-tracking branch 'HbmMods/master' into structures
@ -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);
|
||||
}
|
||||
|
||||
|
||||
@ -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);
|
||||
|
||||
@ -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 });
|
||||
|
||||
@ -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);
|
||||
}
|
||||
|
||||
@ -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);
|
||||
}
|
||||
|
||||
@ -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
|
||||
|
||||
@ -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) {
|
||||
|
||||
@ -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));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -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));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -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();
|
||||
}
|
||||
|
||||
@ -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())));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -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);
|
||||
}
|
||||
}
|
||||
|
||||
@ -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
|
||||
|
||||
@ -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);
|
||||
|
||||
@ -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);
|
||||
|
||||
36
src/main/java/com/hbm/items/ISatChip.java
Normal file
@ -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);
|
||||
}
|
||||
}
|
||||
@ -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());
|
||||
|
||||
112
src/main/java/com/hbm/items/armor/ItemModLens.java
Normal file
@ -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;
|
||||
}
|
||||
}
|
||||
@ -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);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -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;
|
||||
|
||||
@ -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);
|
||||
|
||||
@ -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
|
||||
|
||||
@ -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<Integer, Long> vanished = new HashMap();
|
||||
|
||||
@ -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);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -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);
|
||||
|
||||
@ -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);
|
||||
|
||||
@ -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<Triplet<Integer, Integer, Integer>, Pair<double[], Integer>> 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<Triplet<Integer, Integer, Integer>, Pair<double[], Integer>> entry : markers.entrySet()) {
|
||||
Triplet<Integer, Integer, Integer> pos = entry.getKey();
|
||||
Pair<double[], Integer> 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<BlockPos, Marker> queuedMarkers = new HashMap();
|
||||
private static final HashMap<BlockPos, Marker> 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<Entry<BlockPos, Marker>> it = markers.entrySet().iterator();
|
||||
List<Entry<BlockPos, Marker>> tagList = new ArrayList();
|
||||
while(it.hasNext()) {
|
||||
Entry<BlockPos, Marker> 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<BlockPos, Marker> 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;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -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 &&
|
||||
|
||||
@ -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;
|
||||
|
||||
@ -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);
|
||||
}
|
||||
|
||||
@ -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;
|
||||
|
||||
@ -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));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -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();
|
||||
|
||||
@ -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;
|
||||
|
||||
|
||||
@ -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)));
|
||||
|
||||
@ -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
|
||||
|
||||
@ -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
|
||||
|
||||
|
After Width: | Height: | Size: 235 B |
|
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 3.2 KiB After Width: | Height: | Size: 3.0 KiB |
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 21 KiB |
|
Before Width: | Height: | Size: 5.7 KiB After Width: | Height: | Size: 59 KiB |
|
Before Width: | Height: | Size: 3.3 KiB After Width: | Height: | Size: 7.4 KiB |
|
Before Width: | Height: | Size: 3.5 KiB After Width: | Height: | Size: 16 KiB |
|
Before Width: | Height: | Size: 9.6 KiB After Width: | Height: | Size: 9.9 KiB |
|
Before Width: | Height: | Size: 3.3 KiB After Width: | Height: | Size: 8.7 KiB |
|
Before Width: | Height: | Size: 2.2 KiB |
|
After Width: | Height: | Size: 13 KiB |
BIN
src/main/resources/assets/hbm/textures/items/ingot_calcium.png
Normal file
|
After Width: | Height: | Size: 295 B |
BIN
src/main/resources/assets/hbm/textures/items/neutrino_lens.png
Normal file
|
After Width: | Height: | Size: 341 B |
|
After Width: | Height: | Size: 355 B |
BIN
src/main/resources/assets/hbm/textures/items/powder_calcium.png
Normal file
|
After Width: | Height: | Size: 259 B |
|
Before Width: | Height: | Size: 27 KiB After Width: | Height: | Size: 17 KiB |
|
After Width: | Height: | Size: 4.3 KiB |
@ -3,7 +3,7 @@
|
||||
"modid": "hbm",
|
||||
"name": "Hbm's Nuclear Tech",
|
||||
"description": "A mod that adds weapons, nuclear themed stuff and machines",
|
||||
"version":"1.0.27_X4395",
|
||||
"version":"1.0.27_X4403",
|
||||
"mcversion": "1.7.10",
|
||||
"url": "",
|
||||
"updateUrl": "",
|
||||
|
||||