mirror of
https://github.com/HbmMods/Hbm-s-Nuclear-Tech-GIT.git
synced 2026-01-25 10:32:49 +00:00
sodalite, heatable heavy water, sodium
This commit is contained in:
parent
05f45e8a76
commit
ae44c8a2a4
50
changelog
50
changelog
@ -1,33 +1,27 @@
|
|||||||
## Added
|
## Added
|
||||||
* Analysis tool
|
* PWR
|
||||||
* A more universal version of the power net analyzer
|
* The successor to the old large nuclear reactor
|
||||||
* Currently only works on fluid networks though
|
* Has some design similarities with the RBMK, but in 3D
|
||||||
* In addition to seeing links and subscribers, the analysis tool also displays subscriber positions as well as a log (up to 50 entries) of what block received how much fluid
|
* Relatively easy to build and safe to operate
|
||||||
* This should finally give more insight in the bug that rarely causes fluids to disappear
|
* Does not use any tile entity rendering and all math is pre-calculated when the reactor is assembled, making this one even more performant than the old large reactor
|
||||||
* Leadburster
|
* Sodalite
|
||||||
* A 40mm launcher grenade that doesn't explode, instead it attaches itself to a block and starts firing bullets
|
* A gem that can be extracted from fluorite ore
|
||||||
* Fires in circles for 2 seconds before it self-destructs
|
* Can be heated in the combination oven to make sodium dust and chlorine
|
||||||
* Congo lake
|
|
||||||
* A 40mm pump-action grenade launcher with a capacity of 4 rounds
|
|
||||||
* Lantern
|
|
||||||
* Cheap and fancy illumination
|
|
||||||
* Will blind glyphids in a small radius
|
|
||||||
* Glyphids don't actually have eyes, just don't think about it too much
|
|
||||||
* Ashpit
|
|
||||||
* An optional part that can be placed under fireboxes and heating ovens
|
|
||||||
* Collects ashes, producing one ash pile for every 10 furnace operations worth of fuel
|
|
||||||
* Ash comes in different types like wood (from planks, logs and saplings), coal (coal, lignite and coke) and generic (everything else)
|
|
||||||
* Ashes can be used as dyes, for making industrial fertilizer, as low-efficiency furnace fuel or for carbon in the crucible
|
|
||||||
* Coal ashes can also be centrifuged, returning the flammable content as unburned coal dust as well as a small amount of boron
|
|
||||||
|
|
||||||
## Changed
|
## Changed
|
||||||
* Updated polish and chinese localization
|
* Bedrock fluorite ore now yields actual ore instead of fluorite directly
|
||||||
* Flechettes now get stuck in blocks for a few seconds
|
* Blocks that fall from fallout effects no longer drop items when falling on small blocks, preventing issues like gas blocks being dropped
|
||||||
* NBT kits now display the amount of items in a stack
|
* Bullets no longer need primers to be crafted, primers no longer exist at all
|
||||||
* Removed the special nuclear meteorite
|
* The automatic buzzsaw can now use wood oil, ethanol, fish oil and heavy oil to run
|
||||||
|
* Fluorite ore is now centrifugable
|
||||||
|
* Fluorite crystals now centrifuge into slightly less fluorite but also yield sodalite
|
||||||
|
|
||||||
## Fixed
|
## Fixed
|
||||||
* Fixed thermos crashing config hitting before the config is saved, resulting in an empty config the first time the server is launched
|
* Fixed FEnSU's IO limit not working properly
|
||||||
* Fixed heating oven not visually connecting to exhaust pipes
|
* Fixed overflow caused by uncapped Spk values of DFC beams, they are now capped at 9,200,000 Spk
|
||||||
* Fixed loot blocks not correctly rendering items that require multiple render passes
|
* Fixed smooth lighting not working on connected textures
|
||||||
* Fixed special meteorites spawning in worldgen
|
* Fixed the Thermos preventer not working on Crucible type servers
|
||||||
|
* Fixed pollution save files not working correctly on certain Thermos forks
|
||||||
|
* Fixed blast furnace output overstacking
|
||||||
|
* Fixed potential crash caused by centrifuges trying to create a recipe using non-registered items
|
||||||
|
* Fixed chemplant GUI crashing when too many upgrades are applied to a short duration recipe
|
||||||
|
|||||||
@ -5,16 +5,25 @@ import java.util.List;
|
|||||||
import java.util.Locale;
|
import java.util.Locale;
|
||||||
|
|
||||||
import com.hbm.blocks.ILookOverlay;
|
import com.hbm.blocks.ILookOverlay;
|
||||||
|
import com.hbm.blocks.ITooltipProvider;
|
||||||
|
import com.hbm.inventory.fluid.FluidType;
|
||||||
|
import com.hbm.items.machine.IItemFluidIdentifier;
|
||||||
import com.hbm.tileentity.machine.TileEntityMachineAutosaw;
|
import com.hbm.tileentity.machine.TileEntityMachineAutosaw;
|
||||||
import com.hbm.util.I18nUtil;
|
import com.hbm.util.I18nUtil;
|
||||||
|
|
||||||
import net.minecraft.block.BlockContainer;
|
import net.minecraft.block.BlockContainer;
|
||||||
import net.minecraft.block.material.Material;
|
import net.minecraft.block.material.Material;
|
||||||
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.tileentity.TileEntity;
|
import net.minecraft.tileentity.TileEntity;
|
||||||
|
import net.minecraft.util.ChatComponentText;
|
||||||
|
import net.minecraft.util.ChatComponentTranslation;
|
||||||
|
import net.minecraft.util.ChatStyle;
|
||||||
|
import net.minecraft.util.EnumChatFormatting;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
import net.minecraftforge.client.event.RenderGameOverlayEvent.Pre;
|
import net.minecraftforge.client.event.RenderGameOverlayEvent.Pre;
|
||||||
|
|
||||||
public class MachineAutosaw extends BlockContainer implements ILookOverlay {
|
public class MachineAutosaw extends BlockContainer implements ILookOverlay, ITooltipProvider {
|
||||||
|
|
||||||
public MachineAutosaw() {
|
public MachineAutosaw() {
|
||||||
super(Material.iron);
|
super(Material.iron);
|
||||||
@ -39,6 +48,30 @@ public class MachineAutosaw extends BlockContainer implements ILookOverlay {
|
|||||||
public boolean renderAsNormalBlock() {
|
public boolean renderAsNormalBlock() {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int side, float hitX, float hitY, float hitZ) {
|
||||||
|
|
||||||
|
if(!world.isRemote && !player.isSneaking()) {
|
||||||
|
|
||||||
|
if(player.getHeldItem() != null && player.getHeldItem().getItem() instanceof IItemFluidIdentifier) {
|
||||||
|
|
||||||
|
TileEntityMachineAutosaw saw = (TileEntityMachineAutosaw) world.getTileEntity(x, y, z);
|
||||||
|
|
||||||
|
FluidType type = ((IItemFluidIdentifier) player.getHeldItem().getItem()).getType(world, x, y, z, player.getHeldItem());
|
||||||
|
if(saw.acceptedFuels.contains(type)) {
|
||||||
|
saw.tank.setTankType(type);
|
||||||
|
saw.markDirty();
|
||||||
|
player.addChatComponentMessage(new ChatComponentText("Changed type to ").setChatStyle(new ChatStyle().setColor(EnumChatFormatting.YELLOW)).appendSibling(new ChatComponentTranslation("hbmfluid." + type.getName().toLowerCase(Locale.US))).appendSibling(new ChatComponentText("!")));
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void printHook(Pre event, World world, int x, int y, int z) {
|
public void printHook(Pre event, World world, int x, int y, int z) {
|
||||||
@ -55,4 +88,9 @@ public class MachineAutosaw extends BlockContainer implements ILookOverlay {
|
|||||||
|
|
||||||
ILookOverlay.printGeneric(event, I18nUtil.resolveKey(getUnlocalizedName() + ".name"), 0xffff00, 0x404000, text);
|
ILookOverlay.printGeneric(event, I18nUtil.resolveKey(getUnlocalizedName() + ".name"), 0xffff00, 0x404000, text);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean ext) {
|
||||||
|
this.addStandardInfo(stack, player, list, ext);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -212,6 +212,7 @@ public class OreDictManager {
|
|||||||
public static final DictFrame CINNABAR = new DictFrame("Cinnabar");
|
public static final DictFrame CINNABAR = new DictFrame("Cinnabar");
|
||||||
public static final DictFrame BORAX = new DictFrame("Borax");
|
public static final DictFrame BORAX = new DictFrame("Borax");
|
||||||
public static final DictFrame CHLOROCALCITE = new DictFrame("Chlorocalcite");
|
public static final DictFrame CHLOROCALCITE = new DictFrame("Chlorocalcite");
|
||||||
|
public static final DictFrame SODALITE = new DictFrame("Sodalite");
|
||||||
public static final DictFrame VOLCANIC = new DictFrame("Volcanic");
|
public static final DictFrame VOLCANIC = new DictFrame("Volcanic");
|
||||||
public static final DictFrame HEMATITE = new DictFrame("Hematite");
|
public static final DictFrame HEMATITE = new DictFrame("Hematite");
|
||||||
public static final DictFrame MALACHITE = new DictFrame("Malachite");
|
public static final DictFrame MALACHITE = new DictFrame("Malachite");
|
||||||
@ -221,6 +222,8 @@ public class OreDictManager {
|
|||||||
*/
|
*/
|
||||||
/** LITHIUM */
|
/** LITHIUM */
|
||||||
public static final DictFrame LI = new DictFrame("Lithium");
|
public static final DictFrame LI = new DictFrame("Lithium");
|
||||||
|
/** SODIUM */
|
||||||
|
public static final DictFrame NA = new DictFrame("Sodium");
|
||||||
/*
|
/*
|
||||||
* PHOSPHORUS
|
* PHOSPHORUS
|
||||||
*/
|
*/
|
||||||
@ -395,6 +398,7 @@ public class OreDictManager {
|
|||||||
CINNABAR .crystal(cinnebar) .gem(cinnebar) .ore(ore_cinnebar, ore_depth_cinnebar);
|
CINNABAR .crystal(cinnebar) .gem(cinnebar) .ore(ore_cinnebar, ore_depth_cinnebar);
|
||||||
BORAX .dust(powder_borax) .ore(ore_depth_borax);
|
BORAX .dust(powder_borax) .ore(ore_depth_borax);
|
||||||
CHLOROCALCITE .dust(powder_chlorocalcite);
|
CHLOROCALCITE .dust(powder_chlorocalcite);
|
||||||
|
SODALITE .gem(gem_sodalite);
|
||||||
VOLCANIC .gem(gem_volcanic) .ore(basalt_gem);
|
VOLCANIC .gem(gem_volcanic) .ore(basalt_gem);
|
||||||
HEMATITE .ore(fromOne(stone_resource, EnumStoneType.HEMATITE));
|
HEMATITE .ore(fromOne(stone_resource, EnumStoneType.HEMATITE));
|
||||||
MALACHITE .ore(fromOne(stone_resource, EnumStoneType.MALACHITE));
|
MALACHITE .ore(fromOne(stone_resource, EnumStoneType.MALACHITE));
|
||||||
@ -404,6 +408,7 @@ public class OreDictManager {
|
|||||||
* HAZARDS, MISC
|
* HAZARDS, MISC
|
||||||
*/
|
*/
|
||||||
LI .hydro(1F) .ingot(lithium) .dustSmall(powder_lithium_tiny) .dust(powder_lithium) .block(block_lithium) .ore(ore_gneiss_lithium, ore_meteor_lithium);
|
LI .hydro(1F) .ingot(lithium) .dustSmall(powder_lithium_tiny) .dust(powder_lithium) .block(block_lithium) .ore(ore_gneiss_lithium, ore_meteor_lithium);
|
||||||
|
NA .hydro(1F) .dust(powder_sodium);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* PHOSPHORUS
|
* PHOSPHORUS
|
||||||
|
|||||||
@ -156,6 +156,7 @@ public class Fluids {
|
|||||||
public static FluidType SMOKE_LEADED;
|
public static FluidType SMOKE_LEADED;
|
||||||
public static FluidType SMOKE_POISON;
|
public static FluidType SMOKE_POISON;
|
||||||
public static FluidType HELIUM4;
|
public static FluidType HELIUM4;
|
||||||
|
public static FluidType HEAVYWATER_HOT;
|
||||||
|
|
||||||
private static final HashMap<Integer, FluidType> idMapping = new HashMap();
|
private static final HashMap<Integer, FluidType> idMapping = new HashMap();
|
||||||
private static final HashMap<String, FluidType> nameMapping = new HashMap();
|
private static final HashMap<String, FluidType> nameMapping = new HashMap();
|
||||||
@ -311,7 +312,8 @@ public class Fluids {
|
|||||||
SMOKE = new FluidType("SMOKE", 0x808080, 0, 0, 0, EnumSymbol.NONE).addTraits(GASEOUS, NOID, NOCON);
|
SMOKE = new FluidType("SMOKE", 0x808080, 0, 0, 0, EnumSymbol.NONE).addTraits(GASEOUS, NOID, NOCON);
|
||||||
SMOKE_LEADED = new FluidType("SMOKE_LEADED", 0x808080, 0, 0, 0, EnumSymbol.NONE).addTraits(GASEOUS, NOID, NOCON);
|
SMOKE_LEADED = new FluidType("SMOKE_LEADED", 0x808080, 0, 0, 0, EnumSymbol.NONE).addTraits(GASEOUS, NOID, NOCON);
|
||||||
SMOKE_POISON = new FluidType("SMOKE_POISON", 0x808080, 0, 0, 0, EnumSymbol.NONE).addTraits(GASEOUS, NOID, NOCON);
|
SMOKE_POISON = new FluidType("SMOKE_POISON", 0x808080, 0, 0, 0, EnumSymbol.NONE).addTraits(GASEOUS, NOID, NOCON);
|
||||||
HELIUM4 = new FluidType(123,"HELIUM4", 0xE54B0A, 0, 0, 0, EnumSymbol.ASPHYXIANT).addTraits(GASEOUS);
|
HELIUM4 = new FluidType("HELIUM4", 0xE54B0A, 0, 0, 0, EnumSymbol.ASPHYXIANT).addTraits(GASEOUS);
|
||||||
|
HEAVYWATER_HOT = new FluidType(124, "HEAVYWATER_HOT",0x4D007B, 1, 0, 0, EnumSymbol.NONE).setTemp(600).addTraits(LIQUID);
|
||||||
|
|
||||||
// ^ ^ ^ ^ ^ ^ ^ ^
|
// ^ ^ ^ ^ ^ ^ ^ ^
|
||||||
//ADD NEW FLUIDS HERE
|
//ADD NEW FLUIDS HERE
|
||||||
@ -323,6 +325,7 @@ public class Fluids {
|
|||||||
//vanilla
|
//vanilla
|
||||||
metaOrder.add(WATER);
|
metaOrder.add(WATER);
|
||||||
metaOrder.add(HEAVYWATER);
|
metaOrder.add(HEAVYWATER);
|
||||||
|
metaOrder.add(HEAVYWATER_HOT);
|
||||||
metaOrder.add(LAVA);
|
metaOrder.add(LAVA);
|
||||||
//steams
|
//steams
|
||||||
metaOrder.add(STEAM);
|
metaOrder.add(STEAM);
|
||||||
@ -499,6 +502,9 @@ public class Fluids {
|
|||||||
BLOOD.addTraits(new FT_Heatable().setEff(HeatingType.HEATEXCHANGER, 1.0D).addStep(500, 1, BLOOD_HOT, 1));
|
BLOOD.addTraits(new FT_Heatable().setEff(HeatingType.HEATEXCHANGER, 1.0D).addStep(500, 1, BLOOD_HOT, 1));
|
||||||
BLOOD_HOT.addTraits(new FT_Coolable(BLOOD, 1, 1, 500).setEff(CoolingType.HEATEXCHANGER, 1.0D));
|
BLOOD_HOT.addTraits(new FT_Coolable(BLOOD, 1, 1, 500).setEff(CoolingType.HEATEXCHANGER, 1.0D));
|
||||||
|
|
||||||
|
HEAVYWATER.addTraits(new FT_Heatable().setEff(HeatingType.PWR, 1.0D).addStep(300, 1, HEAVYWATER_HOT, 1), new FT_PWRModerator(1.25D));
|
||||||
|
HEAVYWATER_HOT.addTraits(new FT_Coolable(HEAVYWATER, 1, 1, 300).setEff(CoolingType.HEATEXCHANGER, 1.0D));
|
||||||
|
|
||||||
if(idMapping.size() != metaOrder.size()) {
|
if(idMapping.size() != metaOrder.size()) {
|
||||||
throw new IllegalStateException("A severe error has occoured during NTM's fluid registering process! The MetaOrder and Mappings are inconsistent! Mapping size: " + idMapping.size()+ " / MetaOrder size: " + metaOrder.size());
|
throw new IllegalStateException("A severe error has occoured during NTM's fluid registering process! The MetaOrder and Mappings are inconsistent! Mapping size: " + idMapping.size()+ " / MetaOrder size: " + metaOrder.size());
|
||||||
}
|
}
|
||||||
|
|||||||
@ -0,0 +1,43 @@
|
|||||||
|
package com.hbm.inventory.fluid.trait;
|
||||||
|
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import com.google.gson.JsonObject;
|
||||||
|
import com.google.gson.stream.JsonWriter;
|
||||||
|
|
||||||
|
import net.minecraft.util.EnumChatFormatting;
|
||||||
|
|
||||||
|
public class FT_PWRModerator extends FluidTrait {
|
||||||
|
|
||||||
|
private double multiplier;
|
||||||
|
|
||||||
|
public FT_PWRModerator(double mulitplier) {
|
||||||
|
this.multiplier = mulitplier;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getMultiplier() {
|
||||||
|
return multiplier;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void addInfo(List<String> info) {
|
||||||
|
info.add(EnumChatFormatting.BLUE + "[PWR Flux Multiplier]");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void addInfoHidden(List<String> info) {
|
||||||
|
int mult = (int) (multiplier * 100 - 100);
|
||||||
|
info.add(EnumChatFormatting.BLUE + "Core flux " + (mult >= 0 ? "+" : "") + mult + "%");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void serializeJSON(JsonWriter writer) throws IOException {
|
||||||
|
writer.name("multiplier").value(multiplier);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void deserializeJSON(JsonObject obj) {
|
||||||
|
this.multiplier = obj.get("multiplier").getAsDouble();
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -24,6 +24,7 @@ public abstract class FluidTrait {
|
|||||||
traitNameMap.put("poison", FT_Poison.class); // x
|
traitNameMap.put("poison", FT_Poison.class); // x
|
||||||
traitNameMap.put("toxin", FT_Toxin.class); // x
|
traitNameMap.put("toxin", FT_Toxin.class); // x
|
||||||
traitNameMap.put("ventradiation", FT_VentRadiation.class); // x
|
traitNameMap.put("ventradiation", FT_VentRadiation.class); // x
|
||||||
|
traitNameMap.put("pwrmoderator", FT_PWRModerator.class); // x
|
||||||
|
|
||||||
traitNameMap.put("gaseous", FT_Gaseous.class);
|
traitNameMap.put("gaseous", FT_Gaseous.class);
|
||||||
traitNameMap.put("gaseous_art", FT_Gaseous_ART.class);
|
traitNameMap.put("gaseous_art", FT_Gaseous_ART.class);
|
||||||
|
|||||||
@ -320,6 +320,12 @@ public class CentrifugeRecipes extends SerializableRecipe {
|
|||||||
new ItemStack(ModItems.powder_emerald, 1),
|
new ItemStack(ModItems.powder_emerald, 1),
|
||||||
new ItemStack(Blocks.gravel, 1) });
|
new ItemStack(Blocks.gravel, 1) });
|
||||||
|
|
||||||
|
recipes.put(new OreDictStack(F.ore()), new ItemStack[] {
|
||||||
|
new ItemStack(ModItems.fluorite, 3),
|
||||||
|
new ItemStack(ModItems.fluorite, 3),
|
||||||
|
new ItemStack(ModItems.gem_sodalite, 1),
|
||||||
|
new ItemStack(Blocks.gravel, 1) });
|
||||||
|
|
||||||
recipes.put(new OreDictStack(REDSTONE.ore()), new ItemStack[] {
|
recipes.put(new OreDictStack(REDSTONE.ore()), new ItemStack[] {
|
||||||
new ItemStack(Items.redstone, 3),
|
new ItemStack(Items.redstone, 3),
|
||||||
new ItemStack(Items.redstone, 3),
|
new ItemStack(Items.redstone, 3),
|
||||||
@ -457,7 +463,7 @@ public class CentrifugeRecipes extends SerializableRecipe {
|
|||||||
recipes.put(new ComparableStack(ModItems.crystal_copper), new ItemStack[] { new ItemStack(ModItems.powder_copper, 2), new ItemStack(ModItems.powder_copper, 2), new ItemStack(ModItems.sulfur, 1), new ItemStack(ModItems.powder_cobalt_tiny, 1) });
|
recipes.put(new ComparableStack(ModItems.crystal_copper), new ItemStack[] { new ItemStack(ModItems.powder_copper, 2), new ItemStack(ModItems.powder_copper, 2), new ItemStack(ModItems.sulfur, 1), new ItemStack(ModItems.powder_cobalt_tiny, 1) });
|
||||||
recipes.put(new ComparableStack(ModItems.crystal_tungsten), new ItemStack[] { new ItemStack(ModItems.powder_tungsten, 2), new ItemStack(ModItems.powder_tungsten, 2), new ItemStack(ModItems.powder_iron, 1), new ItemStack(ModItems.powder_lithium_tiny, 1) });
|
recipes.put(new ComparableStack(ModItems.crystal_tungsten), new ItemStack[] { new ItemStack(ModItems.powder_tungsten, 2), new ItemStack(ModItems.powder_tungsten, 2), new ItemStack(ModItems.powder_iron, 1), new ItemStack(ModItems.powder_lithium_tiny, 1) });
|
||||||
recipes.put(new ComparableStack(ModItems.crystal_aluminium), new ItemStack[] { new ItemStack(ModItems.powder_aluminium, 2), new ItemStack(ModItems.powder_aluminium, 2), new ItemStack(ModItems.powder_iron, 1), new ItemStack(ModItems.powder_lithium_tiny, 1) });
|
recipes.put(new ComparableStack(ModItems.crystal_aluminium), new ItemStack[] { new ItemStack(ModItems.powder_aluminium, 2), new ItemStack(ModItems.powder_aluminium, 2), new ItemStack(ModItems.powder_iron, 1), new ItemStack(ModItems.powder_lithium_tiny, 1) });
|
||||||
recipes.put(new ComparableStack(ModItems.crystal_fluorite), new ItemStack[] { new ItemStack(ModItems.fluorite, 3), new ItemStack(ModItems.fluorite, 3), new ItemStack(ModItems.fluorite, 3), new ItemStack(ModItems.powder_lithium_tiny, 1) });
|
recipes.put(new ComparableStack(ModItems.crystal_fluorite), new ItemStack[] { new ItemStack(ModItems.fluorite, 4), new ItemStack(ModItems.fluorite, 4), new ItemStack(ModItems.gem_sodalite, 2), new ItemStack(ModItems.powder_lithium_tiny, 1) });
|
||||||
recipes.put(new ComparableStack(ModItems.crystal_beryllium), new ItemStack[] { new ItemStack(ModItems.powder_beryllium, 2), new ItemStack(ModItems.powder_beryllium, 2), new ItemStack(ModItems.powder_quartz, 1), new ItemStack(ModItems.powder_lithium_tiny, 1) });
|
recipes.put(new ComparableStack(ModItems.crystal_beryllium), new ItemStack[] { new ItemStack(ModItems.powder_beryllium, 2), new ItemStack(ModItems.powder_beryllium, 2), new ItemStack(ModItems.powder_quartz, 1), new ItemStack(ModItems.powder_lithium_tiny, 1) });
|
||||||
recipes.put(new ComparableStack(ModItems.crystal_lead), new ItemStack[] { new ItemStack(ModItems.powder_lead, 2), new ItemStack(ModItems.powder_lead, 2), new ItemStack(ModItems.powder_gold, 1), new ItemStack(ModItems.powder_lithium_tiny, 1) });
|
recipes.put(new ComparableStack(ModItems.crystal_lead), new ItemStack[] { new ItemStack(ModItems.powder_lead, 2), new ItemStack(ModItems.powder_lead, 2), new ItemStack(ModItems.powder_gold, 1), new ItemStack(ModItems.powder_lithium_tiny, 1) });
|
||||||
recipes.put(new ComparableStack(ModItems.crystal_schraranium), new ItemStack[] { new ItemStack(ModItems.nugget_schrabidium, 2), new ItemStack(ModItems.nugget_schrabidium, 2), new ItemStack(ModItems.nugget_uranium, 2), new ItemStack(ModItems.nugget_plutonium, 2) });
|
recipes.put(new ComparableStack(ModItems.crystal_schraranium), new ItemStack[] { new ItemStack(ModItems.nugget_schrabidium, 2), new ItemStack(ModItems.nugget_schrabidium, 2), new ItemStack(ModItems.nugget_uranium, 2), new ItemStack(ModItems.nugget_plutonium, 2) });
|
||||||
|
|||||||
@ -43,9 +43,10 @@ public class CombinationRecipes extends SerializableRecipe {
|
|||||||
recipes.put(LIGNITE.dust(), new Pair(DictFrame.fromOne(ModItems.coke, EnumCokeType.LIGNITE), new FluidStack(Fluids.COALCREOSOTE, 50)));
|
recipes.put(LIGNITE.dust(), new Pair(DictFrame.fromOne(ModItems.coke, EnumCokeType.LIGNITE), new FluidStack(Fluids.COALCREOSOTE, 50)));
|
||||||
recipes.put(new ComparableStack(DictFrame.fromOne(ModItems.briquette, EnumBriquetteType.LIGNITE)), new Pair(DictFrame.fromOne(ModItems.coke, EnumCokeType.LIGNITE), new FluidStack(Fluids.COALCREOSOTE, 100)));
|
recipes.put(new ComparableStack(DictFrame.fromOne(ModItems.briquette, EnumBriquetteType.LIGNITE)), new Pair(DictFrame.fromOne(ModItems.coke, EnumCokeType.LIGNITE), new FluidStack(Fluids.COALCREOSOTE, 100)));
|
||||||
|
|
||||||
recipes.put(CINNABAR.crystal(), new Pair(new ItemStack(ModItems.sulfur), new FluidStack(Fluids.MERCURY, 100)));
|
|
||||||
//recipes.put(CHLOROCALCITE.dust(), new Pair(new ItemStack(ModItems.powder_calcium), new FluidStack(Fluids.CHLORINE, 250)));
|
//recipes.put(CHLOROCALCITE.dust(), new Pair(new ItemStack(ModItems.powder_calcium), new FluidStack(Fluids.CHLORINE, 250)));
|
||||||
recipes.put(new ComparableStack(Items.glowstone_dust), new Pair(new ItemStack(ModItems.sulfur), new FluidStack(Fluids.CHLORINE, 100)));
|
recipes.put(CINNABAR.crystal(), new Pair(new ItemStack(ModItems.sulfur), new FluidStack(Fluids.MERCURY, 100)));
|
||||||
|
recipes.put(new ComparableStack(Items.glowstone_dust), new Pair(new ItemStack(ModItems.sulfur), new FluidStack(Fluids.CHLORINE, 100)));
|
||||||
|
recipes.put(SODALITE.gem(), new Pair(new ItemStack(ModItems.powder_sodium), new FluidStack(Fluids.CHLORINE, 100)));
|
||||||
recipes.put(new ComparableStack(DictFrame.fromOne(ModBlocks.stone_resource, EnumStoneType.BAUXITE)), new Pair(new ItemStack(ModItems.ingot_aluminium, 2), new FluidStack(Fluids.REDMUD, 250)));
|
recipes.put(new ComparableStack(DictFrame.fromOne(ModBlocks.stone_resource, EnumStoneType.BAUXITE)), new Pair(new ItemStack(ModItems.ingot_aluminium, 2), new FluidStack(Fluids.REDMUD, 250)));
|
||||||
|
|
||||||
recipes.put(KEY_LOG, new Pair(new ItemStack(Items.coal, 1 ,1), new FluidStack(Fluids.WOODOIL, 250)));
|
recipes.put(KEY_LOG, new Pair(new ItemStack(Items.coal, 1 ,1), new FluidStack(Fluids.WOODOIL, 250)));
|
||||||
|
|||||||
@ -11,6 +11,7 @@ import com.google.gson.stream.JsonWriter;
|
|||||||
import com.hbm.inventory.RecipesCommon.ComparableStack;
|
import com.hbm.inventory.RecipesCommon.ComparableStack;
|
||||||
import com.hbm.inventory.recipes.loader.SerializableRecipe;
|
import com.hbm.inventory.recipes.loader.SerializableRecipe;
|
||||||
import com.hbm.items.ModItems;
|
import com.hbm.items.ModItems;
|
||||||
|
import com.hbm.items.machine.ItemPWRFuel.EnumPWRFuel;
|
||||||
|
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
|
|
||||||
@ -37,6 +38,8 @@ public class FuelPoolRecipes extends SerializableRecipe {
|
|||||||
recipes.put(new ComparableStack(ModItems.waste_plate_sa326, 1, 1), new ItemStack(ModItems.waste_plate_sa326));
|
recipes.put(new ComparableStack(ModItems.waste_plate_sa326, 1, 1), new ItemStack(ModItems.waste_plate_sa326));
|
||||||
recipes.put(new ComparableStack(ModItems.waste_plate_ra226be, 1, 1), new ItemStack(ModItems.waste_plate_ra226be));
|
recipes.put(new ComparableStack(ModItems.waste_plate_ra226be, 1, 1), new ItemStack(ModItems.waste_plate_ra226be));
|
||||||
recipes.put(new ComparableStack(ModItems.waste_plate_pu238be, 1, 1), new ItemStack(ModItems.waste_plate_pu238be));
|
recipes.put(new ComparableStack(ModItems.waste_plate_pu238be, 1, 1), new ItemStack(ModItems.waste_plate_pu238be));
|
||||||
|
|
||||||
|
for(EnumPWRFuel pwr : EnumPWRFuel.values()) recipes.put(new ComparableStack(ModItems.pwr_fuel_hot, 1, pwr.ordinal()), new ItemStack(ModItems.pwr_fuel_depleted, 1, pwr.ordinal()));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@ -415,7 +415,8 @@ public class ModItems {
|
|||||||
public static Item crystal_cinnebar;
|
public static Item crystal_cinnebar;
|
||||||
public static Item crystal_trixite;
|
public static Item crystal_trixite;
|
||||||
public static Item crystal_osmiridium;
|
public static Item crystal_osmiridium;
|
||||||
|
|
||||||
|
public static Item gem_sodalite;
|
||||||
public static Item gem_tantalium;
|
public static Item gem_tantalium;
|
||||||
public static Item gem_volcanic;
|
public static Item gem_volcanic;
|
||||||
public static Item gem_alexandrite;
|
public static Item gem_alexandrite;
|
||||||
@ -481,6 +482,7 @@ public class ModItems {
|
|||||||
public static Item powder_steel;
|
public static Item powder_steel;
|
||||||
public static Item powder_lithium;
|
public static Item powder_lithium;
|
||||||
public static Item powder_zirconium;
|
public static Item powder_zirconium;
|
||||||
|
public static Item powder_sodium;
|
||||||
public static Item redstone_depleted;
|
public static Item redstone_depleted;
|
||||||
|
|
||||||
public static Item powder_australium;
|
public static Item powder_australium;
|
||||||
@ -2828,6 +2830,7 @@ public class ModItems {
|
|||||||
crystal_cinnebar = new Item().setUnlocalizedName("crystal_cinnebar").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":crystal_cinnebar");
|
crystal_cinnebar = new Item().setUnlocalizedName("crystal_cinnebar").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":crystal_cinnebar");
|
||||||
crystal_trixite = new Item().setUnlocalizedName("crystal_trixite").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":crystal_trixite");
|
crystal_trixite = new Item().setUnlocalizedName("crystal_trixite").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":crystal_trixite");
|
||||||
crystal_osmiridium = new Item().setUnlocalizedName("crystal_osmiridium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":crystal_osmiridium");
|
crystal_osmiridium = new Item().setUnlocalizedName("crystal_osmiridium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":crystal_osmiridium");
|
||||||
|
gem_sodalite = new ItemCustomLore().setUnlocalizedName("gem_sodalite").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":gem_sodalite");
|
||||||
gem_tantalium = new ItemCustomLore().setUnlocalizedName("gem_tantalium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":gem_tantalium");
|
gem_tantalium = new ItemCustomLore().setUnlocalizedName("gem_tantalium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":gem_tantalium");
|
||||||
gem_volcanic = new ItemCustomLore().setRarity(EnumRarity.uncommon).setUnlocalizedName("gem_volcanic").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":gem_volcanic");
|
gem_volcanic = new ItemCustomLore().setRarity(EnumRarity.uncommon).setUnlocalizedName("gem_volcanic").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":gem_volcanic");
|
||||||
gem_alexandrite = new ItemAlexandrite().setUnlocalizedName("gem_alexandrite").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":gem_alexandrite");
|
gem_alexandrite = new ItemAlexandrite().setUnlocalizedName("gem_alexandrite").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":gem_alexandrite");
|
||||||
@ -2877,6 +2880,7 @@ public class ModItems {
|
|||||||
powder_steel = new Item().setUnlocalizedName("powder_steel").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_steel");
|
powder_steel = new Item().setUnlocalizedName("powder_steel").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_steel");
|
||||||
powder_lithium = new Item().setUnlocalizedName("powder_lithium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_lithium");
|
powder_lithium = new Item().setUnlocalizedName("powder_lithium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_lithium");
|
||||||
powder_zirconium = new Item().setUnlocalizedName("powder_zirconium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_zirconium");
|
powder_zirconium = new Item().setUnlocalizedName("powder_zirconium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_zirconium");
|
||||||
|
powder_sodium = new Item().setUnlocalizedName("powder_sodium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_sodium");
|
||||||
redstone_depleted = new Item().setUnlocalizedName("redstone_depleted").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":redstone_depleted");
|
redstone_depleted = new Item().setUnlocalizedName("redstone_depleted").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":redstone_depleted");
|
||||||
powder_power = new ItemCustomLore().setRarity(EnumRarity.uncommon).setUnlocalizedName("powder_power").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_energy_alt");
|
powder_power = new ItemCustomLore().setRarity(EnumRarity.uncommon).setUnlocalizedName("powder_power").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_energy_alt");
|
||||||
powder_iodine = new ItemCustomLore().setRarity(EnumRarity.epic).setUnlocalizedName("powder_iodine").setCreativeTab(null).setTextureName(RefStrings.MODID + ":powder_iodine");
|
powder_iodine = new ItemCustomLore().setRarity(EnumRarity.epic).setUnlocalizedName("powder_iodine").setCreativeTab(null).setTextureName(RefStrings.MODID + ":powder_iodine");
|
||||||
@ -5764,6 +5768,7 @@ public class ModItems {
|
|||||||
GameRegistry.registerItem(powder_lithium, powder_lithium.getUnlocalizedName());
|
GameRegistry.registerItem(powder_lithium, powder_lithium.getUnlocalizedName());
|
||||||
GameRegistry.registerItem(powder_lithium_tiny, powder_lithium_tiny.getUnlocalizedName());
|
GameRegistry.registerItem(powder_lithium_tiny, powder_lithium_tiny.getUnlocalizedName());
|
||||||
GameRegistry.registerItem(powder_zirconium, powder_zirconium.getUnlocalizedName());
|
GameRegistry.registerItem(powder_zirconium, powder_zirconium.getUnlocalizedName());
|
||||||
|
GameRegistry.registerItem(powder_sodium, powder_sodium.getUnlocalizedName());
|
||||||
GameRegistry.registerItem(powder_lignite, powder_lignite.getUnlocalizedName());
|
GameRegistry.registerItem(powder_lignite, powder_lignite.getUnlocalizedName());
|
||||||
GameRegistry.registerItem(powder_iodine, powder_iodine.getUnlocalizedName());
|
GameRegistry.registerItem(powder_iodine, powder_iodine.getUnlocalizedName());
|
||||||
GameRegistry.registerItem(powder_thorium, powder_thorium.getUnlocalizedName());
|
GameRegistry.registerItem(powder_thorium, powder_thorium.getUnlocalizedName());
|
||||||
@ -5871,6 +5876,7 @@ public class ModItems {
|
|||||||
GameRegistry.registerItem(crystal_cinnebar, crystal_cinnebar.getUnlocalizedName());
|
GameRegistry.registerItem(crystal_cinnebar, crystal_cinnebar.getUnlocalizedName());
|
||||||
GameRegistry.registerItem(crystal_trixite, crystal_trixite.getUnlocalizedName());
|
GameRegistry.registerItem(crystal_trixite, crystal_trixite.getUnlocalizedName());
|
||||||
GameRegistry.registerItem(crystal_osmiridium, crystal_osmiridium.getUnlocalizedName());
|
GameRegistry.registerItem(crystal_osmiridium, crystal_osmiridium.getUnlocalizedName());
|
||||||
|
GameRegistry.registerItem(gem_sodalite, gem_sodalite.getUnlocalizedName());
|
||||||
GameRegistry.registerItem(gem_tantalium, gem_tantalium.getUnlocalizedName());
|
GameRegistry.registerItem(gem_tantalium, gem_tantalium.getUnlocalizedName());
|
||||||
GameRegistry.registerItem(gem_volcanic, gem_volcanic.getUnlocalizedName());
|
GameRegistry.registerItem(gem_volcanic, gem_volcanic.getUnlocalizedName());
|
||||||
GameRegistry.registerItem(gem_alexandrite, gem_alexandrite.getUnlocalizedName());
|
GameRegistry.registerItem(gem_alexandrite, gem_alexandrite.getUnlocalizedName());
|
||||||
|
|||||||
@ -95,7 +95,8 @@ public class ItemBedrockOre extends ItemEnumMulti {
|
|||||||
GOLD("Gold", 0xF9D738, B_LEAD, B_COPPER, B_BISMUTH), //occurs with copper, lead and rare bismuthide
|
GOLD("Gold", 0xF9D738, B_LEAD, B_COPPER, B_BISMUTH), //occurs with copper, lead and rare bismuthide
|
||||||
URANIUM("Uranium", 0x868D82, B_LEAD, B_RADIUM, B_POLONIUM), //uranium and its decay products
|
URANIUM("Uranium", 0x868D82, B_LEAD, B_RADIUM, B_POLONIUM), //uranium and its decay products
|
||||||
THORIUM("Thorium", 0x7D401D, B_SILICON, B_URANIUM, B_TECHNETIUM), //thorium occours with uraninite and decay products
|
THORIUM("Thorium", 0x7D401D, B_SILICON, B_URANIUM, B_TECHNETIUM), //thorium occours with uraninite and decay products
|
||||||
CHLOROCALCITE("Chlorocalcite", 0xCDE036, B_LITHIUM, B_SILICON, B_SILICON); //i guess?
|
CHLOROCALCITE("Chlorocalcite", 0xCDE036, B_LITHIUM, B_SILICON, B_SILICON), //i guess?
|
||||||
|
FLUORITE("Fluorite", 0xF6F3E7, B_SILICON, B_LITHIUM, B_ALUMINIUM); //different silicon-bearing gemstones, generic lithium, aluminium from sodium compound trailings
|
||||||
|
|
||||||
public String oreName;
|
public String oreName;
|
||||||
public int color;
|
public int color;
|
||||||
|
|||||||
@ -129,7 +129,7 @@ public class TileEntityCoreEmitter extends TileEntityMachineBase implements IEne
|
|||||||
|
|
||||||
Block b = worldObj.getBlock(x, y, z);
|
Block b = worldObj.getBlock(x, y, z);
|
||||||
|
|
||||||
if(b != Blocks.air) {
|
if(!b.isAir(worldObj, x, y, z)) {
|
||||||
|
|
||||||
if(b.getMaterial().isLiquid()) {
|
if(b.getMaterial().isLiquid()) {
|
||||||
worldObj.playSoundEffect(x + 0.5, y + 0.5, z + 0.5, "random.fizz", 1.0F, 1.0F);
|
worldObj.playSoundEffect(x + 0.5, y + 0.5, z + 0.5, "random.fizz", 1.0F, 1.0F);
|
||||||
|
|||||||
@ -19,7 +19,6 @@ import li.cil.oc.api.machine.Context;
|
|||||||
import li.cil.oc.api.network.SimpleComponent;
|
import li.cil.oc.api.network.SimpleComponent;
|
||||||
import net.minecraft.client.gui.GuiScreen;
|
import net.minecraft.client.gui.GuiScreen;
|
||||||
import net.minecraft.entity.player.EntityPlayer;
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
import net.minecraft.init.Blocks;
|
|
||||||
import net.minecraft.inventory.Container;
|
import net.minecraft.inventory.Container;
|
||||||
import net.minecraft.nbt.NBTTagCompound;
|
import net.minecraft.nbt.NBTTagCompound;
|
||||||
import net.minecraft.tileentity.TileEntity;
|
import net.minecraft.tileentity.TileEntity;
|
||||||
@ -97,7 +96,7 @@ public class TileEntityCoreInjector extends TileEntityMachineBase implements IFl
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(worldObj.getBlock(x, y, z) != Blocks.air)
|
if(!worldObj.getBlock(x, y, z).isAir(worldObj, x, y, z))
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -17,7 +17,6 @@ import li.cil.oc.api.machine.Context;
|
|||||||
import li.cil.oc.api.network.SimpleComponent;
|
import li.cil.oc.api.network.SimpleComponent;
|
||||||
import net.minecraft.client.gui.GuiScreen;
|
import net.minecraft.client.gui.GuiScreen;
|
||||||
import net.minecraft.entity.player.EntityPlayer;
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
import net.minecraft.init.Blocks;
|
|
||||||
import net.minecraft.inventory.Container;
|
import net.minecraft.inventory.Container;
|
||||||
import net.minecraft.nbt.NBTTagCompound;
|
import net.minecraft.nbt.NBTTagCompound;
|
||||||
import net.minecraft.tileentity.TileEntity;
|
import net.minecraft.tileentity.TileEntity;
|
||||||
@ -86,7 +85,7 @@ public class TileEntityCoreStabilizer extends TileEntityMachineBase implements I
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(worldObj.getBlock(x, y, z) != Blocks.air)
|
if(!worldObj.getBlock(x, y, z).isAir(worldObj, x, y, z))
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,9 +1,11 @@
|
|||||||
package com.hbm.tileentity.machine;
|
package com.hbm.tileentity.machine;
|
||||||
|
|
||||||
|
import java.util.HashSet;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import com.hbm.blocks.ModBlocks;
|
import com.hbm.blocks.ModBlocks;
|
||||||
import com.hbm.blocks.generic.BlockTallPlant.EnumTallFlower;
|
import com.hbm.blocks.generic.BlockTallPlant.EnumTallFlower;
|
||||||
|
import com.hbm.inventory.fluid.FluidType;
|
||||||
import com.hbm.inventory.fluid.Fluids;
|
import com.hbm.inventory.fluid.Fluids;
|
||||||
import com.hbm.inventory.fluid.tank.FluidTank;
|
import com.hbm.inventory.fluid.tank.FluidTank;
|
||||||
import com.hbm.lib.ModDamageSource;
|
import com.hbm.lib.ModDamageSource;
|
||||||
@ -29,6 +31,15 @@ import net.minecraft.util.Vec3;
|
|||||||
|
|
||||||
public class TileEntityMachineAutosaw extends TileEntityLoadedBase implements INBTPacketReceiver, IFluidStandardReceiver {
|
public class TileEntityMachineAutosaw extends TileEntityLoadedBase implements INBTPacketReceiver, IFluidStandardReceiver {
|
||||||
|
|
||||||
|
public static final HashSet<FluidType> acceptedFuels = new HashSet();
|
||||||
|
|
||||||
|
static {
|
||||||
|
acceptedFuels.add(Fluids.WOODOIL);
|
||||||
|
acceptedFuels.add(Fluids.ETHANOL);
|
||||||
|
acceptedFuels.add(Fluids.FISHOIL);
|
||||||
|
acceptedFuels.add(Fluids.HEAVYOIL);
|
||||||
|
}
|
||||||
|
|
||||||
public FluidTank tank;
|
public FluidTank tank;
|
||||||
|
|
||||||
public boolean isOn;
|
public boolean isOn;
|
||||||
|
|||||||
@ -11,6 +11,7 @@ import com.hbm.inventory.container.ContainerPWR;
|
|||||||
import com.hbm.inventory.fluid.Fluids;
|
import com.hbm.inventory.fluid.Fluids;
|
||||||
import com.hbm.inventory.fluid.tank.FluidTank;
|
import com.hbm.inventory.fluid.tank.FluidTank;
|
||||||
import com.hbm.inventory.fluid.trait.FT_Heatable;
|
import com.hbm.inventory.fluid.trait.FT_Heatable;
|
||||||
|
import com.hbm.inventory.fluid.trait.FT_PWRModerator;
|
||||||
import com.hbm.inventory.fluid.trait.FT_Heatable.HeatingStep;
|
import com.hbm.inventory.fluid.trait.FT_Heatable.HeatingStep;
|
||||||
import com.hbm.inventory.fluid.trait.FT_Heatable.HeatingType;
|
import com.hbm.inventory.fluid.trait.FT_Heatable.HeatingType;
|
||||||
import com.hbm.inventory.gui.GUIPWR;
|
import com.hbm.inventory.gui.GUIPWR;
|
||||||
@ -221,6 +222,10 @@ public class TileEntityPWRController extends TileEntityMachineBase implements IG
|
|||||||
|
|
||||||
this.flux = newFlux;
|
this.flux = newFlux;
|
||||||
|
|
||||||
|
if(tanks[0].getTankType().hasTrait(FT_PWRModerator.class)) {
|
||||||
|
this.flux *= tanks[0].getTankType().getTrait(FT_PWRModerator.class).getMultiplier();
|
||||||
|
}
|
||||||
|
|
||||||
NBTTagCompound data = new NBTTagCompound();
|
NBTTagCompound data = new NBTTagCompound();
|
||||||
tanks[0].writeToNBT(data, "t0");
|
tanks[0].writeToNBT(data, "t0");
|
||||||
tanks[1].writeToNBT(data, "t1");
|
tanks[1].writeToNBT(data, "t1");
|
||||||
@ -291,7 +296,7 @@ public class TileEntityPWRController extends TileEntityMachineBase implements IG
|
|||||||
double coolingEff = (double) this.channelCount / (double) this.rodCount * 0.1D; //10% cooling if numbers match
|
double coolingEff = (double) this.channelCount / (double) this.rodCount * 0.1D; //10% cooling if numbers match
|
||||||
if(coolingEff > 1D) coolingEff = 1D;
|
if(coolingEff > 1D) coolingEff = 1D;
|
||||||
|
|
||||||
int heatToUse = (int) (this.hullHeat * coolingEff);
|
int heatToUse = (int) (this.hullHeat * coolingEff * trait.getEfficiency(HeatingType.PWR));
|
||||||
HeatingStep step = trait.getFirstStep();
|
HeatingStep step = trait.getFirstStep();
|
||||||
int coolCycles = tanks[0].getFill() / step.amountReq;
|
int coolCycles = tanks[0].getFill() / step.amountReq;
|
||||||
int hotCycles = (tanks[1].getMaxFill() - tanks[1].getFill()) / step.amountProduced;
|
int hotCycles = (tanks[1].getMaxFill() - tanks[1].getFill()) / step.amountProduced;
|
||||||
|
|||||||
@ -36,9 +36,9 @@ public class BedrockOre {
|
|||||||
registerBedrockOre(weightedOres, new BedrockOreDefinition(EnumBedrockOre.GOLD, 1), WorldConfig.bedrockGoldSpawn);
|
registerBedrockOre(weightedOres, new BedrockOreDefinition(EnumBedrockOre.GOLD, 1), WorldConfig.bedrockGoldSpawn);
|
||||||
registerBedrockOre(weightedOres, new BedrockOreDefinition(EnumBedrockOre.URANIUM, 4, new FluidStack(Fluids.SULFURIC_ACID, 500)), WorldConfig.bedrockUraniumSpawn);
|
registerBedrockOre(weightedOres, new BedrockOreDefinition(EnumBedrockOre.URANIUM, 4, new FluidStack(Fluids.SULFURIC_ACID, 500)), WorldConfig.bedrockUraniumSpawn);
|
||||||
registerBedrockOre(weightedOres, new BedrockOreDefinition(EnumBedrockOre.THORIUM, 4, new FluidStack(Fluids.SULFURIC_ACID, 500)), WorldConfig.bedrockThoriumSpawn);
|
registerBedrockOre(weightedOres, new BedrockOreDefinition(EnumBedrockOre.THORIUM, 4, new FluidStack(Fluids.SULFURIC_ACID, 500)), WorldConfig.bedrockThoriumSpawn);
|
||||||
|
registerBedrockOre(weightedOres, new BedrockOreDefinition(EnumBedrockOre.FLUORITE, 1), WorldConfig.bedrockFluoriteSpawn);
|
||||||
registerBedrockOre(weightedOres, new BedrockOreDefinition(new ItemStack(Items.coal, 4), 1, 0x202020), WorldConfig.bedrockCoalSpawn);
|
registerBedrockOre(weightedOres, new BedrockOreDefinition(new ItemStack(Items.coal, 4), 1, 0x202020), WorldConfig.bedrockCoalSpawn);
|
||||||
registerBedrockOre(weightedOres, new BedrockOreDefinition(new ItemStack(ModItems.niter, 4), 2, 0x808080, new FluidStack(Fluids.ACID, 500)), WorldConfig.bedrockNiterSpawn);
|
registerBedrockOre(weightedOres, new BedrockOreDefinition(new ItemStack(ModItems.niter, 4), 2, 0x808080, new FluidStack(Fluids.ACID, 500)), WorldConfig.bedrockNiterSpawn);
|
||||||
registerBedrockOre(weightedOres, new BedrockOreDefinition(new ItemStack(ModItems.fluorite, 4), 1, 0xd0d0d0), WorldConfig.bedrockFluoriteSpawn);
|
|
||||||
registerBedrockOre(weightedOres, new BedrockOreDefinition(new ItemStack(Items.redstone, 4), 1, 0xd01010), WorldConfig.bedrockRedstoneSpawn);
|
registerBedrockOre(weightedOres, new BedrockOreDefinition(new ItemStack(Items.redstone, 4), 1, 0xd01010), WorldConfig.bedrockRedstoneSpawn);
|
||||||
|
|
||||||
registerBedrockOre(weightedOresNether, new BedrockOreDefinition(new ItemStack(Items.glowstone_dust, 4), 1, 0xF9FF4D), WorldConfig.bedrockGlowstoneSpawn);
|
registerBedrockOre(weightedOresNether, new BedrockOreDefinition(new ItemStack(Items.glowstone_dust, 4), 1, 0xF9FF4D), WorldConfig.bedrockGlowstoneSpawn);
|
||||||
|
|||||||
@ -3959,6 +3959,7 @@ tile.machine_assembler.name=Fertigungsmaschine
|
|||||||
tile.machine_assemfac.name=Fertigungsfabrik
|
tile.machine_assemfac.name=Fertigungsfabrik
|
||||||
tile.machine_autocrafter.name=Automatische Werkbank
|
tile.machine_autocrafter.name=Automatische Werkbank
|
||||||
tile.machine_autosaw.name=Automatische Kreissäge
|
tile.machine_autosaw.name=Automatische Kreissäge
|
||||||
|
tile.machine_autosaw.desc=Schneidet Pflanzen nieder, pflanzt Bäume nach$Akzeptiert:$-Holzöl$-Ethanol$-Fischöl$-Schweröl
|
||||||
tile.machine_bat9000.name=Big-Ass Tank 9000
|
tile.machine_bat9000.name=Big-Ass Tank 9000
|
||||||
tile.machine_battery.name=Energiespeicherblock
|
tile.machine_battery.name=Energiespeicherblock
|
||||||
tile.machine_battery_potato.name=Kartoffelbatterieblock
|
tile.machine_battery_potato.name=Kartoffelbatterieblock
|
||||||
|
|||||||
@ -4891,6 +4891,7 @@ tile.machine_assembler.name=Assembly Machine
|
|||||||
tile.machine_assemfac.name=Assembly Factory
|
tile.machine_assemfac.name=Assembly Factory
|
||||||
tile.machine_autocrafter.name=Automatic Crafting Table
|
tile.machine_autocrafter.name=Automatic Crafting Table
|
||||||
tile.machine_autosaw.name=Automatic Buzz Saw
|
tile.machine_autosaw.name=Automatic Buzz Saw
|
||||||
|
tile.machine_autosaw.desc=Cuts down nearby plants, re-plants trees$Accepts:$-Wood oil$-Ethanol$-Fish oil$-Heavy oil
|
||||||
tile.machine_bat9000.name=Big-Ass Tank 9000
|
tile.machine_bat9000.name=Big-Ass Tank 9000
|
||||||
tile.machine_battery.name=Energy Storage Block
|
tile.machine_battery.name=Energy Storage Block
|
||||||
tile.machine_battery_potato.name=Potato Battery Block
|
tile.machine_battery_potato.name=Potato Battery Block
|
||||||
|
|||||||
Binary file not shown.
|
After Width: | Height: | Size: 464 B |
BIN
src/main/resources/assets/hbm/textures/items/gem_sodalite.png
Normal file
BIN
src/main/resources/assets/hbm/textures/items/gem_sodalite.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 504 B |
BIN
src/main/resources/assets/hbm/textures/items/powder_sodium.png
Normal file
BIN
src/main/resources/assets/hbm/textures/items/powder_sodium.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 488 B |
Loading…
x
Reference in New Issue
Block a user