Compare commits

..

2 Commits

Author SHA1 Message Date
Tom Dodd d8bc4b9303 v2o.4.2 2020-09-18 02:35:35 +01:00
Tom Dodd 481c50a476 v2o.4.2 2020-09-18 02:34:47 +01:00
53 changed files with 567 additions and 336 deletions

View File

@ -1,3 +1,18 @@
v2o.4.2
+ Added fission waste products
+ Added extra output slots and tanks to the reprocessor and centrifuge
- Removed GTCE machine recipe support for the reprocessor
+ Added zirconium-molybdenum alloy to be used in MSR component recipes
* Tweaked RTG outputs using new radiation scaling function
* Also tweaked decay hastener and decay generator recipe stats
* Fixed TiC smeltery recipes not being removable via CraftTweaker
* Changed helium-3, boron and lithium isotope fluid registry names to be consistent with other fluid isotopes
* Minor localisation fixes
v2o.4.1 v2o.4.1
* Fixed battery blocks not correctly retaining and removing energy from their multiblocks * Fixed battery blocks not correctly retaining and removing energy from their multiblocks

View File

@ -146,10 +146,10 @@ mods.nuclearcraft.DecayHastener.removeRecipeWithOutput(IIngredient itemOutput);
Fuel Reprocessor: Fuel Reprocessor:
----------------- -----------------
mods.nuclearcraft.FuelReprocessor.addRecipe(IIngredient itemInput, IIngredient itemOutput1, IIngredient itemOutput2, IIngredient itemOutput3, IIngredient itemOutput4, IIngredient itemOutput5, IIngredient itemOutput6, {double timeMultiplier, double powerMultiplier, double processRadiation}); mods.nuclearcraft.FuelReprocessor.addRecipe(IIngredient itemInput, IIngredient itemOutput1, IIngredient itemOutput2, IIngredient itemOutput3, IIngredient itemOutput4, IIngredient itemOutput5, IIngredient itemOutput6, IIngredient itemOutput7, IIngredient itemOutput8, {double timeMultiplier, double powerMultiplier, double processRadiation});
mods.nuclearcraft.FuelReprocessor.removeRecipeWithInput(IIngredient itemInput); mods.nuclearcraft.FuelReprocessor.removeRecipeWithInput(IIngredient itemInput);
mods.nuclearcraft.FuelReprocessor.removeRecipeWithOutput(IIngredient itemOutput1, IIngredient itemOutput2, IIngredient itemOutput3, IIngredient itemOutput4, IIngredient itemOutput5, IIngredient itemOutput6); mods.nuclearcraft.FuelReprocessor.removeRecipeWithOutput(IIngredient itemOutput1, IIngredient itemOutput2, IIngredient itemOutput3, IIngredient itemOutput4, IIngredient itemOutput5, IIngredient itemOutput6, IIngredient itemOutput7, IIngredient itemOutput8);
Alloy Furnace: Alloy Furnace:
@ -272,10 +272,10 @@ mods.nuclearcraft.Extractor.removeRecipeWithOutput(IIngredient itemOutput, ILiqu
Centrifuge: Centrifuge:
----------- -----------
mods.nuclearcraft.Centrifuge.addRecipe(ILiquidStack fluidInput, ILiquidStack fluidOutput1, ILiquidStack fluidOutput2, ILiquidStack fluidOutput3, ILiquidStack fluidOutput4, {double timeMultiplier, double powerMultiplier, double processRadiation}); mods.nuclearcraft.Centrifuge.addRecipe(ILiquidStack fluidInput, ILiquidStack fluidOutput1, ILiquidStack fluidOutput2, ILiquidStack fluidOutput3, ILiquidStack fluidOutput4, ILiquidStack fluidOutput5, ILiquidStack fluidOutput6, {double timeMultiplier, double powerMultiplier, double processRadiation});
mods.nuclearcraft.Centrifuge.removeRecipeWithInput(ILiquidStack fluidInput); mods.nuclearcraft.Centrifuge.removeRecipeWithInput(ILiquidStack fluidInput);
mods.nuclearcraft.Centrifuge.removeRecipeWithOutput(ILiquidStack fluidOutput1, ILiquidStack fluidOutput2, ILiquidStack fluidOutput3, ILiquidStack fluidOutput4); mods.nuclearcraft.Centrifuge.removeRecipeWithOutput(ILiquidStack fluidOutput1, ILiquidStack fluidOutput2, ILiquidStack fluidOutput3, ILiquidStack fluidOutput4, ILiquidStack fluidOutput5, ILiquidStack fluidOutput6);
Rock Crusher: Rock Crusher:

View File

@ -1,7 +1,7 @@
mc_version=1.12.2 mc_version=1.12.2
forge_version=14.23.5.2847 forge_version=14.23.5.2847
mapping_version=stable_39 mapping_version=stable_39
mod_version=2o.4.1 mod_version=2o.4.2
ic2_version=2.8.197-ex112 ic2_version=2.8.197-ex112
jei_version=4.15.0.293 jei_version=4.15.0.293

View File

@ -482,13 +482,13 @@ public class NCConfig {
Property propertyProcessorParticles = config.get(CATEGORY_PROCESSOR, "processor_particles", true, Lang.localise("gui.nc.config.processor_particles.comment")); Property propertyProcessorParticles = config.get(CATEGORY_PROCESSOR, "processor_particles", true, Lang.localise("gui.nc.config.processor_particles.comment"));
propertyProcessorParticles.setLanguageKey("gui.nc.config.processor_particles"); propertyProcessorParticles.setLanguageKey("gui.nc.config.processor_particles");
Property propertyRTGPower = config.get(CATEGORY_GENERATOR, "rtg_power", new int[] {1, 25, 10, 250}, Lang.localise("gui.nc.config.rtg_power.comment"), 1, Integer.MAX_VALUE); Property propertyRTGPower = config.get(CATEGORY_GENERATOR, "rtg_power", new int[] {1, 40, 10, 200}, Lang.localise("gui.nc.config.rtg_power.comment"), 1, Integer.MAX_VALUE);
propertyRTGPower.setLanguageKey("gui.nc.config.rtg_power"); propertyRTGPower.setLanguageKey("gui.nc.config.rtg_power");
Property propertySolarPower = config.get(CATEGORY_GENERATOR, "solar_power", new int[] {5, 20, 80, 320}, Lang.localise("gui.nc.config.solar_power.comment"), 1, Integer.MAX_VALUE); Property propertySolarPower = config.get(CATEGORY_GENERATOR, "solar_power", new int[] {5, 20, 80, 320}, Lang.localise("gui.nc.config.solar_power.comment"), 1, Integer.MAX_VALUE);
propertySolarPower.setLanguageKey("gui.nc.config.solar_power"); propertySolarPower.setLanguageKey("gui.nc.config.solar_power");
Property propertyDecayLifetime = config.get(CATEGORY_GENERATOR, "decay_lifetime", new double[] {62.4D * 1200D, 20.4D * 1200D, 36.6D * 1200D, 39.6D * 1200D, 35.5D * 1200D, 12.8D * 1200D, 52.8D * 1200D, 8.5D * 1200D, 7.2D * 1200D, 65.2D * 1200D}, Lang.localise("gui.nc.config.decay_lifetime.comment"), 1D, 16777215D); Property propertyDecayLifetime = config.get(CATEGORY_GENERATOR, "decay_lifetime", new double[] {12000D / 0.75D, 12000D / 1.2D, 1200D, 12000D / 2.2D, 12000D / 3D, 12000D / 18D, 12000D / 28D, 12000D / 80D, 12000D / 1000D}, Lang.localise("gui.nc.config.decay_lifetime.comment"), 1D, 16777215D);
propertyDecayLifetime.setLanguageKey("gui.nc.config.decay_lifetime"); propertyDecayLifetime.setLanguageKey("gui.nc.config.decay_lifetime");
Property propertyDecayPower = config.get(CATEGORY_GENERATOR, "decay_power", new double[] {4D, 4D, 0.75D, 0.25D, 0.5D, 0.75D, 1D, 1.25D, 1.5D, 2D}, Lang.localise("gui.nc.config.decay_power.comment"), 0D, 32767D); Property propertyDecayPower = config.get(CATEGORY_GENERATOR, "decay_power", new double[] {0.75D, 1.2D, 1D, 2.2D, 3D, 18D, 28D, 80D, 1000D}, Lang.localise("gui.nc.config.decay_power.comment"), 0D, 32767D);
propertyDecayPower.setLanguageKey("gui.nc.config.decay_power"); propertyDecayPower.setLanguageKey("gui.nc.config.decay_power");
Property propertyBatteryCapacity = config.get(CATEGORY_ENERGY_STORAGE, "battery_capacity", new int[] {1600000, 6400000, 25600000, 102400000, 32000000, 128000000, 512000000, 2048000000}, Lang.localise("gui.nc.config.battery_capacity.comment"), 1, Integer.MAX_VALUE); Property propertyBatteryCapacity = config.get(CATEGORY_ENERGY_STORAGE, "battery_capacity", new int[] {1600000, 6400000, 25600000, 102400000, 32000000, 128000000, 512000000, 2048000000}, Lang.localise("gui.nc.config.battery_capacity.comment"), 1, Integer.MAX_VALUE);

View File

@ -11,17 +11,19 @@ public class ContainerFuelReprocessor extends ContainerItemProcessor {
public ContainerFuelReprocessor(EntityPlayer player, TileItemProcessor tileEntity) { public ContainerFuelReprocessor(EntityPlayer player, TileItemProcessor tileEntity) {
super(player, tileEntity, NCRecipes.fuel_reprocessor); super(player, tileEntity, NCRecipes.fuel_reprocessor);
addSlotToContainer(new SlotProcessorInput(tileEntity, recipeHandler, 0, 40, 41)); addSlotToContainer(new SlotProcessorInput(tileEntity, recipeHandler, 0, 30, 41));
addSlotToContainer(new SlotFurnace(player, tileEntity, 1, 96, 31)); addSlotToContainer(new SlotFurnace(player, tileEntity, 1, 86, 31));
addSlotToContainer(new SlotFurnace(player, tileEntity, 2, 116, 31)); addSlotToContainer(new SlotFurnace(player, tileEntity, 2, 106, 31));
addSlotToContainer(new SlotFurnace(player, tileEntity, 3, 136, 31)); addSlotToContainer(new SlotFurnace(player, tileEntity, 3, 126, 31));
addSlotToContainer(new SlotFurnace(player, tileEntity, 4, 96, 51)); addSlotToContainer(new SlotFurnace(player, tileEntity, 4, 146, 31));
addSlotToContainer(new SlotFurnace(player, tileEntity, 5, 116, 51)); addSlotToContainer(new SlotFurnace(player, tileEntity, 5, 86, 51));
addSlotToContainer(new SlotFurnace(player, tileEntity, 6, 136, 51)); addSlotToContainer(new SlotFurnace(player, tileEntity, 6, 106, 51));
addSlotToContainer(new SlotFurnace(player, tileEntity, 7, 126, 51));
addSlotToContainer(new SlotFurnace(player, tileEntity, 8, 146, 51));
addSlotToContainer(new SlotSpecificInput(tileEntity, 7, 132, 76, SPEED_UPGRADE)); addSlotToContainer(new SlotSpecificInput(tileEntity, 9, 132, 76, SPEED_UPGRADE));
addSlotToContainer(new SlotSpecificInput(tileEntity, 8, 152, 76, ENERGY_UPGRADE)); addSlotToContainer(new SlotSpecificInput(tileEntity, 10, 152, 76, ENERGY_UPGRADE));
for (int i = 0; i < 3; i++) { for (int i = 0; i < 3; i++) {
for (int j = 0; j < 9; j++) { for (int j = 0; j < 9; j++) {

View File

@ -922,7 +922,8 @@ public class MetaEnums {
ZIRCALOY("zircaloy", 12), ZIRCALOY("zircaloy", 12),
SILICON_CARBIDE("silicon_carbide", 13), SILICON_CARBIDE("silicon_carbide", 13),
SIC_SIC_CMC("sic_sic_cmc", 14), SIC_SIC_CMC("sic_sic_cmc", 14),
HSLA_STEEL("hsla_steel", 15); HSLA_STEEL("hsla_steel", 15),
ZIRCONIUM_MOLYBDENUM("zirconium_molybdenum", 16);
private final String name; private final String name;
private final int id; private final int id;
@ -1061,7 +1062,13 @@ public class MetaEnums {
RADIUM("radium", 1), RADIUM("radium", 1),
POLONIUM("polonium", 2), POLONIUM("polonium", 2),
TBP("tbp", 3), TBP("tbp", 3),
PROTACTINIUM_233("protactinium_233", 4); PROTACTINIUM_233("protactinium_233", 4),
STRONTIUM_90("strontium_90", 5),
MOLYBDENUM("molybdenum", 6),
RUTHENIUM_106("ruthenium_106", 7),
CAESIUM_137("caesium_137", 8),
PROMETHIUM_147("promethium_147", 9),
EUROPIUM_155("europium_155", 10);
private final String name; private final String name;
private final int id; private final int id;

View File

@ -33,11 +33,13 @@ public class GuiCentrifuge extends GuiFluidProcessor {
} }
public void renderButtonTooltips(int mouseX, int mouseY) { public void renderButtonTooltips(int mouseX, int mouseY) {
drawFluidTooltip(tile.getTanks().get(0), mouseX, mouseY, 50, 41, 16, 16); drawFluidTooltip(tile.getTanks().get(0), mouseX, mouseY, 40, 41, 16, 16);
drawFluidTooltip(tile.getTanks().get(1), mouseX, mouseY, 106, 31, 16, 16); drawFluidTooltip(tile.getTanks().get(1), mouseX, mouseY, 96, 31, 16, 16);
drawFluidTooltip(tile.getTanks().get(2), mouseX, mouseY, 126, 31, 16, 16); drawFluidTooltip(tile.getTanks().get(2), mouseX, mouseY, 116, 31, 16, 16);
drawFluidTooltip(tile.getTanks().get(3), mouseX, mouseY, 106, 51, 16, 16); drawFluidTooltip(tile.getTanks().get(3), mouseX, mouseY, 136, 31, 16, 16);
drawFluidTooltip(tile.getTanks().get(4), mouseX, mouseY, 126, 51, 16, 16); drawFluidTooltip(tile.getTanks().get(4), mouseX, mouseY, 96, 51, 16, 16);
drawFluidTooltip(tile.getTanks().get(5), mouseX, mouseY, 116, 51, 16, 16);
drawFluidTooltip(tile.getTanks().get(6), mouseX, mouseY, 136, 51, 16, 16);
drawTooltip(Lang.localise("gui.nc.container.machine_side_config"), mouseX, mouseY, 27, 75, 18, 18); drawTooltip(Lang.localise("gui.nc.container.machine_side_config"), mouseX, mouseY, 27, 75, 18, 18);
drawTooltip(Lang.localise("gui.nc.container.redstone_control"), mouseX, mouseY, 47, 75, 18, 18); drawTooltip(Lang.localise("gui.nc.container.redstone_control"), mouseX, mouseY, 47, 75, 18, 18);
@ -55,7 +57,7 @@ public class GuiCentrifuge extends GuiFluidProcessor {
drawGradientRect(guiLeft + 8, guiTop + 6, guiLeft + 8 + 16, guiTop + 6 + 86, 0xFFC6C6C6, 0xFF8B8B8B); drawGradientRect(guiLeft + 8, guiTop + 6, guiLeft + 8 + 16, guiTop + 6 + 86, 0xFFC6C6C6, 0xFF8B8B8B);
} }
drawTexturedModalRect(guiLeft + 68, guiTop + 30, 176, 3, getCookProgressScaled(37), 38); drawTexturedModalRect(guiLeft + 58, guiTop + 30, 176, 3, getCookProgressScaled(37), 38);
drawUpgradeRenderers(); drawUpgradeRenderers();
@ -63,11 +65,13 @@ public class GuiCentrifuge extends GuiFluidProcessor {
} }
protected void drawBackgroundExtras() { protected void drawBackgroundExtras() {
GuiFluidRenderer.renderGuiTank(tile.getTanks().get(0), guiLeft + 50, guiTop + 41, zLevel, 16, 16); GuiFluidRenderer.renderGuiTank(tile.getTanks().get(0), guiLeft + 40, guiTop + 41, zLevel, 16, 16);
GuiFluidRenderer.renderGuiTank(tile.getTanks().get(1), guiLeft + 106, guiTop + 31, zLevel, 16, 16); GuiFluidRenderer.renderGuiTank(tile.getTanks().get(1), guiLeft + 96, guiTop + 31, zLevel, 16, 16);
GuiFluidRenderer.renderGuiTank(tile.getTanks().get(2), guiLeft + 126, guiTop + 31, zLevel, 16, 16); GuiFluidRenderer.renderGuiTank(tile.getTanks().get(2), guiLeft + 116, guiTop + 31, zLevel, 16, 16);
GuiFluidRenderer.renderGuiTank(tile.getTanks().get(3), guiLeft + 106, guiTop + 51, zLevel, 16, 16); GuiFluidRenderer.renderGuiTank(tile.getTanks().get(3), guiLeft + 136, guiTop + 31, zLevel, 16, 16);
GuiFluidRenderer.renderGuiTank(tile.getTanks().get(4), guiLeft + 126, guiTop + 51, zLevel, 16, 16); GuiFluidRenderer.renderGuiTank(tile.getTanks().get(4), guiLeft + 96, guiTop + 51, zLevel, 16, 16);
GuiFluidRenderer.renderGuiTank(tile.getTanks().get(5), guiLeft + 116, guiTop + 51, zLevel, 16, 16);
GuiFluidRenderer.renderGuiTank(tile.getTanks().get(6), guiLeft + 136, guiTop + 51, zLevel, 16, 16);
} }
@Override @Override
@ -77,29 +81,31 @@ public class GuiCentrifuge extends GuiFluidProcessor {
} }
public void initButtons() { public void initButtons() {
buttonList.add(new NCButton.EmptyTank(0, guiLeft + 50, guiTop + 41, 16, 16)); buttonList.add(new NCButton.EmptyTank(0, guiLeft + 40, guiTop + 41, 16, 16));
buttonList.add(new NCButton.EmptyTank(1, guiLeft + 106, guiTop + 31, 16, 16)); buttonList.add(new NCButton.EmptyTank(1, guiLeft + 96, guiTop + 31, 16, 16));
buttonList.add(new NCButton.EmptyTank(2, guiLeft + 126, guiTop + 31, 16, 16)); buttonList.add(new NCButton.EmptyTank(2, guiLeft + 116, guiTop + 31, 16, 16));
buttonList.add(new NCButton.EmptyTank(3, guiLeft + 106, guiTop + 51, 16, 16)); buttonList.add(new NCButton.EmptyTank(3, guiLeft + 136, guiTop + 31, 16, 16));
buttonList.add(new NCButton.EmptyTank(4, guiLeft + 126, guiTop + 51, 16, 16)); buttonList.add(new NCButton.EmptyTank(4, guiLeft + 96, guiTop + 51, 16, 16));
buttonList.add(new NCButton.EmptyTank(5, guiLeft + 116, guiTop + 51, 16, 16));
buttonList.add(new NCButton.EmptyTank(6, guiLeft + 136, guiTop + 51, 16, 16));
buttonList.add(new NCButton.MachineConfig(5, guiLeft + 27, guiTop + 75)); buttonList.add(new NCButton.MachineConfig(7, guiLeft + 27, guiTop + 75));
buttonList.add(new NCToggleButton.RedstoneControl(6, guiLeft + 47, guiTop + 75, tile)); buttonList.add(new NCToggleButton.RedstoneControl(8, guiLeft + 47, guiTop + 75, tile));
} }
@Override @Override
protected void actionPerformed(GuiButton guiButton) { protected void actionPerformed(GuiButton guiButton) {
if (tile.getWorld().isRemote) { if (tile.getWorld().isRemote) {
for (int i = 0; i < 5; i++) { for (int i = 0; i < 7; i++) {
if (guiButton.id == i && NCUtil.isModifierKeyDown()) { if (guiButton.id == i && NCUtil.isModifierKeyDown()) {
PacketHandler.instance.sendToServer(new EmptyTankPacket(tile, i)); PacketHandler.instance.sendToServer(new EmptyTankPacket(tile, i));
return; return;
} }
} }
if (guiButton.id == 5) { if (guiButton.id == 7) {
PacketHandler.instance.sendToServer(new OpenSideConfigGuiPacket(tile)); PacketHandler.instance.sendToServer(new OpenSideConfigGuiPacket(tile));
} }
else if (guiButton.id == 6) { else if (guiButton.id == 8) {
tile.setRedstoneControl(!tile.getRedstoneControl()); tile.setRedstoneControl(!tile.getRedstoneControl());
PacketHandler.instance.sendToServer(new ToggleRedstoneControlPacket(tile)); PacketHandler.instance.sendToServer(new ToggleRedstoneControlPacket(tile));
} }
@ -124,11 +130,13 @@ public class GuiCentrifuge extends GuiFluidProcessor {
@Override @Override
public void renderButtonTooltips(int mouseX, int mouseY) { public void renderButtonTooltips(int mouseX, int mouseY) {
drawTooltip(TextFormatting.DARK_AQUA + Lang.localise("gui.nc.container.input_tank_config"), mouseX, mouseY, 49, 40, 18, 18); drawTooltip(TextFormatting.DARK_AQUA + Lang.localise("gui.nc.container.input_tank_config"), mouseX, mouseY, 39, 40, 18, 18);
drawTooltip(TextFormatting.RED + Lang.localise("gui.nc.container.output_tank_config"), mouseX, mouseY, 105, 30, 18, 18); drawTooltip(TextFormatting.RED + Lang.localise("gui.nc.container.output_tank_config"), mouseX, mouseY, 95, 30, 18, 18);
drawTooltip(TextFormatting.RED + Lang.localise("gui.nc.container.output_tank_config"), mouseX, mouseY, 125, 30, 18, 18); drawTooltip(TextFormatting.RED + Lang.localise("gui.nc.container.output_tank_config"), mouseX, mouseY, 115, 30, 18, 18);
drawTooltip(TextFormatting.RED + Lang.localise("gui.nc.container.output_tank_config"), mouseX, mouseY, 105, 50, 18, 18); drawTooltip(TextFormatting.RED + Lang.localise("gui.nc.container.output_tank_config"), mouseX, mouseY, 135, 30, 18, 18);
drawTooltip(TextFormatting.RED + Lang.localise("gui.nc.container.output_tank_config"), mouseX, mouseY, 125, 50, 18, 18); drawTooltip(TextFormatting.RED + Lang.localise("gui.nc.container.output_tank_config"), mouseX, mouseY, 95, 50, 18, 18);
drawTooltip(TextFormatting.RED + Lang.localise("gui.nc.container.output_tank_config"), mouseX, mouseY, 115, 50, 18, 18);
drawTooltip(TextFormatting.RED + Lang.localise("gui.nc.container.output_tank_config"), mouseX, mouseY, 135, 50, 18, 18);
drawTooltip(TextFormatting.DARK_BLUE + Lang.localise("gui.nc.container.upgrade_config"), mouseX, mouseY, 131, 75, 18, 18); drawTooltip(TextFormatting.DARK_BLUE + Lang.localise("gui.nc.container.upgrade_config"), mouseX, mouseY, 131, 75, 18, 18);
drawTooltip(TextFormatting.YELLOW + Lang.localise("gui.nc.container.upgrade_config"), mouseX, mouseY, 151, 75, 18, 18); drawTooltip(TextFormatting.YELLOW + Lang.localise("gui.nc.container.upgrade_config"), mouseX, mouseY, 151, 75, 18, 18);
} }
@ -141,13 +149,15 @@ public class GuiCentrifuge extends GuiFluidProcessor {
@Override @Override
public void initButtons() { public void initButtons() {
buttonList.add(new NCButton.SorptionConfig.FluidInput(0, guiLeft + 49, guiTop + 40)); buttonList.add(new NCButton.SorptionConfig.FluidInput(0, guiLeft + 39, guiTop + 40));
buttonList.add(new NCButton.SorptionConfig.FluidOutputSmall(1, guiLeft + 105, guiTop + 30)); buttonList.add(new NCButton.SorptionConfig.FluidOutputSmall(1, guiLeft + 95, guiTop + 30));
buttonList.add(new NCButton.SorptionConfig.FluidOutputSmall(2, guiLeft + 125, guiTop + 30)); buttonList.add(new NCButton.SorptionConfig.FluidOutputSmall(2, guiLeft + 115, guiTop + 30));
buttonList.add(new NCButton.SorptionConfig.FluidOutputSmall(3, guiLeft + 105, guiTop + 50)); buttonList.add(new NCButton.SorptionConfig.FluidOutputSmall(3, guiLeft + 135, guiTop + 30));
buttonList.add(new NCButton.SorptionConfig.FluidOutputSmall(4, guiLeft + 125, guiTop + 50)); buttonList.add(new NCButton.SorptionConfig.FluidOutputSmall(4, guiLeft + 95, guiTop + 50));
buttonList.add(new NCButton.SorptionConfig.SpeedUpgrade(5, guiLeft + 131, guiTop + 75)); buttonList.add(new NCButton.SorptionConfig.FluidOutputSmall(5, guiLeft + 115, guiTop + 50));
buttonList.add(new NCButton.SorptionConfig.EnergyUpgrade(6, guiLeft + 151, guiTop + 75)); buttonList.add(new NCButton.SorptionConfig.FluidOutputSmall(6, guiLeft + 135, guiTop + 50));
buttonList.add(new NCButton.SorptionConfig.SpeedUpgrade(7, guiLeft + 131, guiTop + 75));
buttonList.add(new NCButton.SorptionConfig.EnergyUpgrade(8, guiLeft + 151, guiTop + 75));
} }
@Override @Override
@ -169,9 +179,15 @@ public class GuiCentrifuge extends GuiFluidProcessor {
FMLCommonHandler.instance().showGuiScreen(new GuiFluidSorptions.Output(this, tile, 4)); FMLCommonHandler.instance().showGuiScreen(new GuiFluidSorptions.Output(this, tile, 4));
} }
else if (guiButton.id == 5) { else if (guiButton.id == 5) {
FMLCommonHandler.instance().showGuiScreen(new GuiItemSorptions.SpeedUpgrade(this, tile, 0)); FMLCommonHandler.instance().showGuiScreen(new GuiFluidSorptions.Output(this, tile, 5));
} }
else if (guiButton.id == 6) { else if (guiButton.id == 6) {
FMLCommonHandler.instance().showGuiScreen(new GuiFluidSorptions.Output(this, tile, 6));
}
else if (guiButton.id == 7) {
FMLCommonHandler.instance().showGuiScreen(new GuiItemSorptions.SpeedUpgrade(this, tile, 0));
}
else if (guiButton.id == 8) {
FMLCommonHandler.instance().showGuiScreen(new GuiItemSorptions.EnergyUpgrade(this, tile, 1)); FMLCommonHandler.instance().showGuiScreen(new GuiItemSorptions.EnergyUpgrade(this, tile, 1));
} }
} }

View File

@ -49,7 +49,7 @@ public class GuiFuelReprocessor extends GuiItemProcessor {
drawGradientRect(guiLeft + 8, guiTop + 6, guiLeft + 8 + 16, guiTop + 6 + 86, 0xFFC6C6C6, 0xFF8B8B8B); drawGradientRect(guiLeft + 8, guiTop + 6, guiLeft + 8 + 16, guiTop + 6 + 86, 0xFFC6C6C6, 0xFF8B8B8B);
} }
drawTexturedModalRect(guiLeft + 58, guiTop + 30, 176, 3, getCookProgressScaled(37), 38); drawTexturedModalRect(guiLeft + 48, guiTop + 30, 176, 3, getCookProgressScaled(37), 38);
drawUpgradeRenderers(); drawUpgradeRenderers();
@ -100,13 +100,15 @@ public class GuiFuelReprocessor extends GuiItemProcessor {
@Override @Override
public void renderButtonTooltips(int mouseX, int mouseY) { public void renderButtonTooltips(int mouseX, int mouseY) {
drawTooltip(TextFormatting.BLUE + Lang.localise("gui.nc.container.input_item_config"), mouseX, mouseY, 39, 40, 18, 18); drawTooltip(TextFormatting.BLUE + Lang.localise("gui.nc.container.input_item_config"), mouseX, mouseY, 29, 40, 18, 18);
drawTooltip(TextFormatting.GOLD + Lang.localise("gui.nc.container.output_item_config"), mouseX, mouseY, 95, 30, 18, 18); drawTooltip(TextFormatting.GOLD + Lang.localise("gui.nc.container.output_item_config"), mouseX, mouseY, 85, 30, 18, 18);
drawTooltip(TextFormatting.GOLD + Lang.localise("gui.nc.container.output_item_config"), mouseX, mouseY, 115, 30, 18, 18); drawTooltip(TextFormatting.GOLD + Lang.localise("gui.nc.container.output_item_config"), mouseX, mouseY, 105, 30, 18, 18);
drawTooltip(TextFormatting.GOLD + Lang.localise("gui.nc.container.output_item_config"), mouseX, mouseY, 135, 30, 18, 18); drawTooltip(TextFormatting.GOLD + Lang.localise("gui.nc.container.output_item_config"), mouseX, mouseY, 125, 30, 18, 18);
drawTooltip(TextFormatting.GOLD + Lang.localise("gui.nc.container.output_item_config"), mouseX, mouseY, 95, 50, 18, 18); drawTooltip(TextFormatting.GOLD + Lang.localise("gui.nc.container.output_item_config"), mouseX, mouseY, 145, 30, 18, 18);
drawTooltip(TextFormatting.GOLD + Lang.localise("gui.nc.container.output_item_config"), mouseX, mouseY, 115, 50, 18, 18); drawTooltip(TextFormatting.GOLD + Lang.localise("gui.nc.container.output_item_config"), mouseX, mouseY, 85, 50, 18, 18);
drawTooltip(TextFormatting.GOLD + Lang.localise("gui.nc.container.output_item_config"), mouseX, mouseY, 135, 50, 18, 18); drawTooltip(TextFormatting.GOLD + Lang.localise("gui.nc.container.output_item_config"), mouseX, mouseY, 105, 50, 18, 18);
drawTooltip(TextFormatting.GOLD + Lang.localise("gui.nc.container.output_item_config"), mouseX, mouseY, 125, 50, 18, 18);
drawTooltip(TextFormatting.GOLD + Lang.localise("gui.nc.container.output_item_config"), mouseX, mouseY, 145, 50, 18, 18);
drawTooltip(TextFormatting.DARK_BLUE + Lang.localise("gui.nc.container.upgrade_config"), mouseX, mouseY, 131, 75, 18, 18); drawTooltip(TextFormatting.DARK_BLUE + Lang.localise("gui.nc.container.upgrade_config"), mouseX, mouseY, 131, 75, 18, 18);
drawTooltip(TextFormatting.YELLOW + Lang.localise("gui.nc.container.upgrade_config"), mouseX, mouseY, 151, 75, 18, 18); drawTooltip(TextFormatting.YELLOW + Lang.localise("gui.nc.container.upgrade_config"), mouseX, mouseY, 151, 75, 18, 18);
} }
@ -119,15 +121,17 @@ public class GuiFuelReprocessor extends GuiItemProcessor {
@Override @Override
public void initButtons() { public void initButtons() {
buttonList.add(new NCButton.SorptionConfig.ItemInput(0, guiLeft + 39, guiTop + 40)); buttonList.add(new NCButton.SorptionConfig.ItemInput(0, guiLeft + 29, guiTop + 40));
buttonList.add(new NCButton.SorptionConfig.ItemOutputSmall(1, guiLeft + 95, guiTop + 30)); buttonList.add(new NCButton.SorptionConfig.ItemOutputSmall(1, guiLeft + 85, guiTop + 30));
buttonList.add(new NCButton.SorptionConfig.ItemOutputSmall(2, guiLeft + 115, guiTop + 30)); buttonList.add(new NCButton.SorptionConfig.ItemOutputSmall(2, guiLeft + 105, guiTop + 30));
buttonList.add(new NCButton.SorptionConfig.ItemOutputSmall(3, guiLeft + 135, guiTop + 30)); buttonList.add(new NCButton.SorptionConfig.ItemOutputSmall(3, guiLeft + 125, guiTop + 30));
buttonList.add(new NCButton.SorptionConfig.ItemOutputSmall(4, guiLeft + 95, guiTop + 50)); buttonList.add(new NCButton.SorptionConfig.ItemOutputSmall(4, guiLeft + 145, guiTop + 30));
buttonList.add(new NCButton.SorptionConfig.ItemOutputSmall(5, guiLeft + 115, guiTop + 50)); buttonList.add(new NCButton.SorptionConfig.ItemOutputSmall(5, guiLeft + 85, guiTop + 50));
buttonList.add(new NCButton.SorptionConfig.ItemOutputSmall(6, guiLeft + 135, guiTop + 50)); buttonList.add(new NCButton.SorptionConfig.ItemOutputSmall(6, guiLeft + 105, guiTop + 50));
buttonList.add(new NCButton.SorptionConfig.SpeedUpgrade(7, guiLeft + 131, guiTop + 75)); buttonList.add(new NCButton.SorptionConfig.ItemOutputSmall(7, guiLeft + 125, guiTop + 50));
buttonList.add(new NCButton.SorptionConfig.EnergyUpgrade(8, guiLeft + 151, guiTop + 75)); buttonList.add(new NCButton.SorptionConfig.ItemOutputSmall(8, guiLeft + 145, guiTop + 50));
buttonList.add(new NCButton.SorptionConfig.SpeedUpgrade(9, guiLeft + 131, guiTop + 75));
buttonList.add(new NCButton.SorptionConfig.EnergyUpgrade(10, guiLeft + 151, guiTop + 75));
} }
@Override @Override
@ -155,10 +159,16 @@ public class GuiFuelReprocessor extends GuiItemProcessor {
FMLCommonHandler.instance().showGuiScreen(new GuiItemSorptions.Output(this, tile, 6)); FMLCommonHandler.instance().showGuiScreen(new GuiItemSorptions.Output(this, tile, 6));
} }
else if (guiButton.id == 7) { else if (guiButton.id == 7) {
FMLCommonHandler.instance().showGuiScreen(new GuiItemSorptions.SpeedUpgrade(this, tile, 7)); FMLCommonHandler.instance().showGuiScreen(new GuiItemSorptions.Output(this, tile, 7));
} }
else if (guiButton.id == 8) { else if (guiButton.id == 8) {
FMLCommonHandler.instance().showGuiScreen(new GuiItemSorptions.EnergyUpgrade(this, tile, 8)); FMLCommonHandler.instance().showGuiScreen(new GuiItemSorptions.Output(this, tile, 8));
}
else if (guiButton.id == 9) {
FMLCommonHandler.instance().showGuiScreen(new GuiItemSorptions.SpeedUpgrade(this, tile, 9));
}
else if (guiButton.id == 10) {
FMLCommonHandler.instance().showGuiScreen(new GuiItemSorptions.EnergyUpgrade(this, tile, 10));
} }
} }
} }

View File

@ -115,6 +115,7 @@ public class OreDictHandler {
OreDictionary.registerOre("ingotSiliconCarbide", new ItemStack(NCItems.alloy, 1, 13)); OreDictionary.registerOre("ingotSiliconCarbide", new ItemStack(NCItems.alloy, 1, 13));
OreDictionary.registerOre("ingotSiCSiCCMC", new ItemStack(NCItems.alloy, 1, 14)); OreDictionary.registerOre("ingotSiCSiCCMC", new ItemStack(NCItems.alloy, 1, 14));
OreDictionary.registerOre("ingotHSLASteel", new ItemStack(NCItems.alloy, 1, 15)); OreDictionary.registerOre("ingotHSLASteel", new ItemStack(NCItems.alloy, 1, 15));
OreDictionary.registerOre("ingotZirconiumMolybdenum", new ItemStack(NCItems.alloy, 1, 16));
OreDictionary.registerOre("dustCalciumSulfate", new ItemStack(NCItems.compound, 1, 0)); OreDictionary.registerOre("dustCalciumSulfate", new ItemStack(NCItems.compound, 1, 0));
OreDictionary.registerOre("dustCrystalBinder", new ItemStack(NCItems.compound, 1, 1)); OreDictionary.registerOre("dustCrystalBinder", new ItemStack(NCItems.compound, 1, 1));
@ -151,6 +152,12 @@ public class OreDictHandler {
OreDictionary.registerOre("dustPolonium", new ItemStack(NCItems.fission_dust, 1, 2)); OreDictionary.registerOre("dustPolonium", new ItemStack(NCItems.fission_dust, 1, 2));
OreDictionary.registerOre("dustTBP", new ItemStack(NCItems.fission_dust, 1, 3)); OreDictionary.registerOre("dustTBP", new ItemStack(NCItems.fission_dust, 1, 3));
OreDictionary.registerOre("dustProtactinium233", new ItemStack(NCItems.fission_dust, 1, 4)); OreDictionary.registerOre("dustProtactinium233", new ItemStack(NCItems.fission_dust, 1, 4));
OreDictionary.registerOre("dustStrontium90", new ItemStack(NCItems.fission_dust, 1, 5));
OreDictionary.registerOre("dustMolybdenum", new ItemStack(NCItems.fission_dust, 1, 6));
OreDictionary.registerOre("dustRuthenium106", new ItemStack(NCItems.fission_dust, 1, 7));
OreDictionary.registerOre("dustCaesium137", new ItemStack(NCItems.fission_dust, 1, 8));
OreDictionary.registerOre("dustPromethium147", new ItemStack(NCItems.fission_dust, 1, 9));
OreDictionary.registerOre("dustEuropium155", new ItemStack(NCItems.fission_dust, 1, 10));
registerIsotopes(NCItems.uranium, "Uranium", 233, 235, 238); registerIsotopes(NCItems.uranium, "Uranium", 233, 235, 238);
registerIsotopes(NCItems.neptunium, "Neptunium", 236, 237); registerIsotopes(NCItems.neptunium, "Neptunium", 236, 237);

View File

@ -90,8 +90,7 @@ public class NCFissionFluids {
addFuelFluids("hecf_251", 0x460215); addFuelFluids("hecf_251", 0x460215);
addFuelFluids("depleted_tbu", 0x1D3826); addFuelFluids("depleted_tbu", 0x1D3826);
// fluidList.add(new FluidFission("depleted_tbu_za", // fluidList.add(new FluidFission("depleted_tbu_za", FluidFission.getZAColor(0x1D3826)));
// FluidFission.getZAColor(0x1D3826)));
addFuelFluids("depleted_leu_233", 0x5C5C53); addFuelFluids("depleted_leu_233", 0x5C5C53);
addFuelFluids("depleted_heu_233", 0x34484B); addFuelFluids("depleted_heu_233", 0x34484B);
@ -130,16 +129,14 @@ public class NCFissionFluids {
private static void addIsotopeFluids(String name, int color) { private static void addIsotopeFluids(String name, int color) {
fluidList.add(new FluidFission(name, color)); fluidList.add(new FluidFission(name, color));
// fluidList.add(new FluidFission(name + "_za", // fluidList.add(new FluidFission(name + "_za", FluidFission.getZAColor(color)));
// FluidFission.getZAColor(color)));
} }
private static void addFuelFluids(String name, int color) { private static void addFuelFluids(String name, int color) {
fluidList.add(new FluidFission(name, color)); fluidList.add(new FluidFission(name, color));
fluidList.add(new FluidFission(name + "_fluoride", FluidFission.getFluorideColor(color))); fluidList.add(new FluidFission(name + "_fluoride", FluidFission.getFluorideColor(color)));
fluidList.add(new FluidFission(name + "_fluoride_flibe", FluidFission.getFLIBEColor(color))); fluidList.add(new FluidFission(name + "_fluoride_flibe", FluidFission.getFLIBEColor(color)));
// fluidList.add(new FluidFission(name + "_za", // fluidList.add(new FluidFission(name + "_za", FluidFission.getZAColor(color)));
// FluidFission.getZAColor(color)));
} }
public static void register() { public static void register() {

View File

@ -26,13 +26,13 @@ public class NCFluids {
addFluidPair(FluidType.GAS, "hydrogen", 0xB37AC4); addFluidPair(FluidType.GAS, "hydrogen", 0xB37AC4);
addFluidPair(FluidType.GAS, "deuterium", 0x9E6FEF); addFluidPair(FluidType.GAS, "deuterium", 0x9E6FEF);
addFluidPair(FluidType.GAS, "tritium", 0x5DBBD6); addFluidPair(FluidType.GAS, "tritium", 0x5DBBD6);
addFluidPair(FluidType.GAS, "helium3", 0xCBBB67); addFluidPair(FluidType.GAS, "helium_3", 0xCBBB67);
addFluidPair(FluidType.GAS, "helium", 0xC57B81); addFluidPair(FluidType.GAS, "helium", 0xC57B81);
addFluidPair(FluidType.MOLTEN, "boron10", 0x7D7D7D); addFluidPair(FluidType.MOLTEN, "boron_10", 0x7D7D7D);
addFluidPair(FluidType.MOLTEN, "boron11", 0x7D7D7D); addFluidPair(FluidType.MOLTEN, "boron_11", 0x7D7D7D);
addFluidPair(FluidType.MOLTEN, "lithium6", 0xEFEFEF); addFluidPair(FluidType.MOLTEN, "lithium_6", 0xEFEFEF);
addFluidPair(FluidType.MOLTEN, "lithium7", 0xEFEFEF); addFluidPair(FluidType.MOLTEN, "lithium_7", 0xEFEFEF);
addFluidPair(FluidType.MOLTEN, "ferroboron", 0x4A4A4A); addFluidPair(FluidType.MOLTEN, "ferroboron", 0x4A4A4A);
addFluidPair(FluidType.MOLTEN, "tough", 0x150F21); addFluidPair(FluidType.MOLTEN, "tough", 0x150F21);
@ -144,6 +144,13 @@ public class NCFluids {
addFluidPair(FluidType.MOLTEN, "alugentum", 0xB5C9CB); addFluidPair(FluidType.MOLTEN, "alugentum", 0xB5C9CB);
addFluidPair(FluidType.MOLTEN, "alumina", 0x919880); addFluidPair(FluidType.MOLTEN, "alumina", 0x919880);
addFluidPair(FluidType.FISSION, "strontium_90", 0xB8BE88);
addFluidPair(FluidType.FISSION, "molybdenum", 0xBCC5E4);
addFluidPair(FluidType.FISSION, "ruthenium_106", 0xA3A3A3);
addFluidPair(FluidType.FISSION, "caesium_137", 0xADADAD);
addFluidPair(FluidType.FISSION, "promethium_147", 0x96C199);
addFluidPair(FluidType.FISSION, "europium_155", 0x74664A);
} }
private static <T extends Fluid, V extends NCBlockFluid> void addFluidPair(FluidType fluidType, Object... fluidArgs) { private static <T extends Fluid, V extends NCBlockFluid> void addFluidPair(FluidType fluidType, Object... fluidArgs) {

View File

@ -121,8 +121,8 @@ public class NCCraftTweaker {
} }
@ZenMethod @ZenMethod
public static void addRecipe(IIngredient input, IIngredient output1, IIngredient output2, IIngredient output3, IIngredient output4, IIngredient output5, IIngredient output6, @Optional(valueDouble = 1D) double timeMultiplier, @Optional(valueDouble = 1D) double powerMultiplier, @Optional double processRadiation) { public static void addRecipe(IIngredient input, IIngredient output1, IIngredient output2, IIngredient output3, IIngredient output4, IIngredient output5, IIngredient output6, IIngredient output7, IIngredient output8, @Optional(valueDouble = 1D) double timeMultiplier, @Optional(valueDouble = 1D) double powerMultiplier, @Optional double processRadiation) {
CraftTweakerAPI.apply(new AddProcessorRecipe(NCRecipes.fuel_reprocessor, Lists.newArrayList(input, output1, output2, output3, output4, output5, output6, timeMultiplier, powerMultiplier, processRadiation))); CraftTweakerAPI.apply(new AddProcessorRecipe(NCRecipes.fuel_reprocessor, Lists.newArrayList(input, output1, output2, output3, output4, output5, output6, output7, output8, timeMultiplier, powerMultiplier, processRadiation)));
} }
@ZenMethod @ZenMethod
@ -131,8 +131,8 @@ public class NCCraftTweaker {
} }
@ZenMethod @ZenMethod
public static void removeRecipeWithOutput(IIngredient output1, IIngredient output2, IIngredient output3, IIngredient output4, IIngredient output5, IIngredient output6) { public static void removeRecipeWithOutput(IIngredient output1, IIngredient output2, IIngredient output3, IIngredient output4, IIngredient output5, IIngredient output6, IIngredient output7, IIngredient output8) {
CraftTweakerAPI.apply(new RemoveProcessorRecipe(NCRecipes.fuel_reprocessor, IngredientSorption.OUTPUT, Lists.newArrayList(output1, output2, output3, output4, output5, output6))); CraftTweakerAPI.apply(new RemoveProcessorRecipe(NCRecipes.fuel_reprocessor, IngredientSorption.OUTPUT, Lists.newArrayList(output1, output2, output3, output4, output5, output6, output7, output8)));
} }
@ZenMethod @ZenMethod
@ -541,8 +541,8 @@ public class NCCraftTweaker {
} }
@ZenMethod @ZenMethod
public static void addRecipe(IIngredient input, IIngredient output1, IIngredient output2, IIngredient output3, IIngredient output4, @Optional(valueDouble = 1D) double timeMultiplier, @Optional(valueDouble = 1D) double powerMultiplier, @Optional double processRadiation) { public static void addRecipe(IIngredient input, IIngredient output1, IIngredient output2, IIngredient output3, IIngredient output4, IIngredient output5, IIngredient output6, @Optional(valueDouble = 1D) double timeMultiplier, @Optional(valueDouble = 1D) double powerMultiplier, @Optional double processRadiation) {
CraftTweakerAPI.apply(new AddProcessorRecipe(NCRecipes.centrifuge, Lists.newArrayList(input, output1, output2, output3, output4, timeMultiplier, powerMultiplier, processRadiation))); CraftTweakerAPI.apply(new AddProcessorRecipe(NCRecipes.centrifuge, Lists.newArrayList(input, output1, output2, output3, output4, output5, output6, timeMultiplier, powerMultiplier, processRadiation)));
} }
@ZenMethod @ZenMethod
@ -551,8 +551,8 @@ public class NCCraftTweaker {
} }
@ZenMethod @ZenMethod
public static void removeRecipeWithOutput(IIngredient output1, IIngredient output2, IIngredient output3, IIngredient output4) { public static void removeRecipeWithOutput(IIngredient output1, IIngredient output2, IIngredient output3, IIngredient output4, IIngredient output5, IIngredient output6) {
CraftTweakerAPI.apply(new RemoveProcessorRecipe(NCRecipes.centrifuge, IngredientSorption.OUTPUT, Lists.newArrayList(output1, output2, output3, output4))); CraftTweakerAPI.apply(new RemoveProcessorRecipe(NCRecipes.centrifuge, IngredientSorption.OUTPUT, Lists.newArrayList(output1, output2, output3, output4, output5, output6)));
} }
@ZenMethod @ZenMethod

View File

@ -36,10 +36,10 @@ public class GTCERecipeHelper {
break; break;
case "decay_hastener": case "decay_hastener":
return; return;
case "fuel_reprocessor": /*case "fuel_reprocessor":
recipeMap = RecipeMaps.CENTRIFUGE_RECIPES; recipeMap = RecipeMaps.CENTRIFUGE_RECIPES;
builder = addStats(recipeMap.recipeBuilder(), recipe, 24, 60); builder = addStats(recipeMap.recipeBuilder(), recipe, 24, 60);
break; break;*/
case "alloy_furnace": case "alloy_furnace":
recipeMap = RecipeMaps.ALLOY_SMELTER_RECIPES; recipeMap = RecipeMaps.ALLOY_SMELTER_RECIPES;
builder = addStats(recipeMap.recipeBuilder(), recipe, 16, 10); builder = addStats(recipeMap.recipeBuilder(), recipe, 16, 10);

View File

@ -85,7 +85,7 @@ public class JEIRecipeWrapper {
public static class FuelReprocessor extends JEIRecipeWrapperProcessor<FuelReprocessor> { public static class FuelReprocessor extends JEIRecipeWrapperProcessor<FuelReprocessor> {
public FuelReprocessor(IGuiHelper guiHelper, IJEIHandler jeiHandler, ProcessorRecipeHandler recipeHandler, ProcessorRecipe recipe) { public FuelReprocessor(IGuiHelper guiHelper, IJEIHandler jeiHandler, ProcessorRecipeHandler recipeHandler, ProcessorRecipe recipe) {
super(guiHelper, jeiHandler, recipeHandler, recipe, 39, 30, 176, 3, 37, 38, 58, 30, 57, 30, 37, 38); super(guiHelper, jeiHandler, recipeHandler, recipe, 29, 30, 176, 3, 37, 38, 48, 30, 47, 30, 37, 38);
} }
@Override @Override
@ -407,7 +407,7 @@ public class JEIRecipeWrapper {
public static class Centrifuge extends JEIRecipeWrapperProcessor<Centrifuge> { public static class Centrifuge extends JEIRecipeWrapperProcessor<Centrifuge> {
public Centrifuge(IGuiHelper guiHelper, IJEIHandler jeiHandler, ProcessorRecipeHandler recipeHandler, ProcessorRecipe recipe) { public Centrifuge(IGuiHelper guiHelper, IJEIHandler jeiHandler, ProcessorRecipeHandler recipeHandler, ProcessorRecipe recipe) {
super(guiHelper, jeiHandler, recipeHandler, recipe, 49, 30, 176, 3, 37, 38, 68, 30, 67, 30, 37, 38); super(guiHelper, jeiHandler, recipeHandler, recipe, 39, 30, 176, 3, 37, 38, 58, 30, 57, 30, 37, 38);
} }
@Override @Override
@ -490,7 +490,7 @@ public class JEIRecipeWrapper {
@Override @Override
protected int getProgressArrowTime() { protected int getProgressArrowTime() {
return (int) (getDecayLifetime() / 80D); return (int) (getDecayLifetime() / 4D);
} }
protected double getDecayLifetime() { protected double getDecayLifetime() {
@ -1020,7 +1020,7 @@ public class JEIRecipeWrapper {
if (mouseX >= 73 - 55 && mouseY >= 34 - 30 && mouseX < 73 - 55 + 37 + 1 && mouseY < 34 - 30 + 18 + 1) { if (mouseX >= 73 - 55 && mouseY >= 34 - 30 && mouseX < 73 - 55 + 37 + 1 && mouseY < 34 - 30 + 18 + 1) {
tooltip.add(TextFormatting.GREEN + COMBO_TIME + " " + TextFormatting.WHITE + UnitHelper.applyTimeUnitShort(getFusionComboTime() / fusion_fuel_use, 3)); tooltip.add(TextFormatting.GREEN + COMBO_TIME + " " + TextFormatting.WHITE + UnitHelper.applyTimeUnitShort(getFusionComboTime() / fusion_fuel_use, 3));
tooltip.add(TextFormatting.LIGHT_PURPLE + COMBO_POWER + " " + TextFormatting.WHITE + UnitHelper.prefix(100D * getFusionComboPower() * fusion_base_power, 5, "RF/t")); tooltip.add(TextFormatting.LIGHT_PURPLE + COMBO_POWER + " " + TextFormatting.WHITE + UnitHelper.prefix(100D * getFusionComboPower() * fusion_base_power, 5, "RF/t"));
double optimalTemp = NCMath.round(R * getFusionComboHeatVariable(), 2); double optimalTemp = R * getFusionComboHeatVariable();
tooltip.add(TextFormatting.YELLOW + COMBO_TEMP + " " + (optimalTemp < 20000000D / 1000D ? TextFormatting.WHITE : TextFormatting.GOLD) + UnitHelper.prefix(optimalTemp, 5, "K", 2)); tooltip.add(TextFormatting.YELLOW + COMBO_TEMP + " " + (optimalTemp < 20000000D / 1000D ? TextFormatting.WHITE : TextFormatting.GOLD) + UnitHelper.prefix(optimalTemp, 5, "K", 2));
} }

View File

@ -63,8 +63,8 @@ public class NCJEI implements IModPlugin {
registry.addRecipeClickArea(GuiDecayHastener.SideConfig.class, 73, 34, 37, 18, JEIHandler.DECAY_HASTENER.getUUID()); registry.addRecipeClickArea(GuiDecayHastener.SideConfig.class, 73, 34, 37, 18, JEIHandler.DECAY_HASTENER.getUUID());
} }
if (register_processor[4]) { if (register_processor[4]) {
registry.addRecipeClickArea(GuiFuelReprocessor.class, 57, 30, 37, 38, JEIHandler.FUEL_REPROCESSOR.getUUID()); registry.addRecipeClickArea(GuiFuelReprocessor.class, 47, 30, 37, 38, JEIHandler.FUEL_REPROCESSOR.getUUID());
registry.addRecipeClickArea(GuiFuelReprocessor.SideConfig.class, 57, 30, 37, 38, JEIHandler.FUEL_REPROCESSOR.getUUID()); registry.addRecipeClickArea(GuiFuelReprocessor.SideConfig.class, 47, 30, 37, 38, JEIHandler.FUEL_REPROCESSOR.getUUID());
} }
if (register_processor[5]) { if (register_processor[5]) {
registry.addRecipeClickArea(GuiAlloyFurnace.class, 83, 34, 37, 18, JEIHandler.ALLOY_FURNACE.getUUID()); registry.addRecipeClickArea(GuiAlloyFurnace.class, 83, 34, 37, 18, JEIHandler.ALLOY_FURNACE.getUUID());
@ -119,8 +119,8 @@ public class NCJEI implements IModPlugin {
registry.addRecipeClickArea(GuiExtractor.SideConfig.class, 59, 34, 37, 18, JEIHandler.EXTRACTOR.getUUID()); registry.addRecipeClickArea(GuiExtractor.SideConfig.class, 59, 34, 37, 18, JEIHandler.EXTRACTOR.getUUID());
} }
if (register_processor[18]) { if (register_processor[18]) {
registry.addRecipeClickArea(GuiCentrifuge.class, 67, 30, 37, 38, JEIHandler.CENTRIFUGE.getUUID()); registry.addRecipeClickArea(GuiCentrifuge.class, 57, 30, 37, 38, JEIHandler.CENTRIFUGE.getUUID());
registry.addRecipeClickArea(GuiCentrifuge.SideConfig.class, 67, 30, 37, 38, JEIHandler.CENTRIFUGE.getUUID()); registry.addRecipeClickArea(GuiCentrifuge.SideConfig.class, 57, 30, 37, 38, JEIHandler.CENTRIFUGE.getUUID());
} }
if (register_processor[19]) { if (register_processor[19]) {
registry.addRecipeClickArea(GuiRockCrusher.class, 55, 34, 37, 18, JEIHandler.ROCK_CRUSHER.getUUID()); registry.addRecipeClickArea(GuiRockCrusher.class, 55, 34, 37, 18, JEIHandler.ROCK_CRUSHER.getUUID());
@ -128,8 +128,7 @@ public class NCJEI implements IModPlugin {
} }
registry.addRecipeClickArea(GuiFissionIrradiator.class, 73, 34, 37, 18, JEIHandler.FISSION_IRRADIATOR.getUUID()); registry.addRecipeClickArea(GuiFissionIrradiator.class, 73, 34, 37, 18, JEIHandler.FISSION_IRRADIATOR.getUUID());
// registry.addRecipeClickArea(GuiPebbleFissionChamber.class, 73, 34, // registry.addRecipeClickArea(GuiPebbleFissionChamber.class, 73, 34, 37, 18, JEIHandler.PEBBLE_FISSION.getUUID());
// 37, 18, JEIHandler.PEBBLE_FISSION.getUUID());
registry.addRecipeClickArea(GuiSolidFissionCell.class, 73, 34, 37, 18, JEIHandler.SOLID_FISSION.getUUID()); registry.addRecipeClickArea(GuiSolidFissionCell.class, 73, 34, 37, 18, JEIHandler.SOLID_FISSION.getUUID());
registry.addRecipeClickArea(GuiSaltFissionVessel.class, 73, 34, 37, 18, JEIHandler.SALT_FISSION.getUUID()); registry.addRecipeClickArea(GuiSaltFissionVessel.class, 73, 34, 37, 18, JEIHandler.SALT_FISSION.getUUID());
registry.addRecipeClickArea(GuiSaltFissionHeater.class, 73, 34, 37, 18, JEIHandler.COOLANT_HEATER.getUUID()); registry.addRecipeClickArea(GuiSaltFissionHeater.class, 73, 34, 37, 18, JEIHandler.COOLANT_HEATER.getUUID());
@ -137,7 +136,7 @@ public class NCJEI implements IModPlugin {
recipeTransferRegistry.addRecipeTransferHandler(ContainerManufactory.class, JEIHandler.MANUFACTORY.getUUID(), 0, 1, 4, 36); recipeTransferRegistry.addRecipeTransferHandler(ContainerManufactory.class, JEIHandler.MANUFACTORY.getUUID(), 0, 1, 4, 36);
recipeTransferRegistry.addRecipeTransferHandler(ContainerSeparator.class, JEIHandler.SEPARATOR.getUUID(), 0, 1, 5, 36); recipeTransferRegistry.addRecipeTransferHandler(ContainerSeparator.class, JEIHandler.SEPARATOR.getUUID(), 0, 1, 5, 36);
recipeTransferRegistry.addRecipeTransferHandler(ContainerDecayHastener.class, JEIHandler.DECAY_HASTENER.getUUID(), 0, 1, 4, 36); recipeTransferRegistry.addRecipeTransferHandler(ContainerDecayHastener.class, JEIHandler.DECAY_HASTENER.getUUID(), 0, 1, 4, 36);
recipeTransferRegistry.addRecipeTransferHandler(ContainerFuelReprocessor.class, JEIHandler.FUEL_REPROCESSOR.getUUID(), 0, 1, 7, 36); recipeTransferRegistry.addRecipeTransferHandler(ContainerFuelReprocessor.class, JEIHandler.FUEL_REPROCESSOR.getUUID(), 0, 1, 9, 36);
recipeTransferRegistry.addRecipeTransferHandler(ContainerAlloyFurnace.class, JEIHandler.ALLOY_FURNACE.getUUID(), 0, 2, 5, 36); recipeTransferRegistry.addRecipeTransferHandler(ContainerAlloyFurnace.class, JEIHandler.ALLOY_FURNACE.getUUID(), 0, 2, 5, 36);
recipeTransferRegistry.addRecipeTransferHandler(ContainerInfuser.class, JEIHandler.INFUSER.getUUID(), 0, 1, 4, 36); recipeTransferRegistry.addRecipeTransferHandler(ContainerInfuser.class, JEIHandler.INFUSER.getUUID(), 0, 1, 4, 36);
recipeTransferRegistry.addRecipeTransferHandler(ContainerMelter.class, JEIHandler.MELTER.getUUID(), 0, 1, 3, 36); recipeTransferRegistry.addRecipeTransferHandler(ContainerMelter.class, JEIHandler.MELTER.getUUID(), 0, 1, 3, 36);

View File

@ -10,7 +10,7 @@ import nc.recipe.IngredientSorption;
public class CentrifugeCategory extends JEICategoryProcessor<JEIRecipeWrapper.Centrifuge> { public class CentrifugeCategory extends JEICategoryProcessor<JEIRecipeWrapper.Centrifuge> {
public CentrifugeCategory(IGuiHelper guiHelper, IJEIHandler handler) { public CentrifugeCategory(IGuiHelper guiHelper, IJEIHandler handler) {
super(guiHelper, handler, "centrifuge", 49, 30, 94, 38); super(guiHelper, handler, "centrifuge", 39, 30, 114, 38);
} }
@Override @Override
@ -18,11 +18,13 @@ public class CentrifugeCategory extends JEICategoryProcessor<JEIRecipeWrapper.Ce
super.setRecipe(recipeLayout, recipeWrapper, ingredients); super.setRecipe(recipeLayout, recipeWrapper, ingredients);
RecipeFluidMapper fluidMapper = new RecipeFluidMapper(); RecipeFluidMapper fluidMapper = new RecipeFluidMapper();
fluidMapper.map(IngredientSorption.INPUT, 0, 0, 50 - backPosX, 41 - backPosY, 16, 16); fluidMapper.map(IngredientSorption.INPUT, 0, 0, 40 - backPosX, 41 - backPosY, 16, 16);
fluidMapper.map(IngredientSorption.OUTPUT, 0, 1, 106 - backPosX, 31 - backPosY, 16, 16); fluidMapper.map(IngredientSorption.OUTPUT, 0, 1, 96 - backPosX, 31 - backPosY, 16, 16);
fluidMapper.map(IngredientSorption.OUTPUT, 1, 2, 126 - backPosX, 31 - backPosY, 16, 16); fluidMapper.map(IngredientSorption.OUTPUT, 1, 2, 116 - backPosX, 31 - backPosY, 16, 16);
fluidMapper.map(IngredientSorption.OUTPUT, 2, 3, 106 - backPosX, 51 - backPosY, 16, 16); fluidMapper.map(IngredientSorption.OUTPUT, 2, 3, 136 - backPosX, 31 - backPosY, 16, 16);
fluidMapper.map(IngredientSorption.OUTPUT, 3, 4, 126 - backPosX, 51 - backPosY, 16, 16); fluidMapper.map(IngredientSorption.OUTPUT, 3, 4, 96 - backPosX, 51 - backPosY, 16, 16);
fluidMapper.map(IngredientSorption.OUTPUT, 4, 5, 116 - backPosX, 51 - backPosY, 16, 16);
fluidMapper.map(IngredientSorption.OUTPUT, 5, 6, 136 - backPosX, 51 - backPosY, 16, 16);
fluidMapper.mapFluidsTo(recipeLayout.getFluidStacks(), ingredients); fluidMapper.mapFluidsTo(recipeLayout.getFluidStacks(), ingredients);
} }
} }

View File

@ -10,7 +10,7 @@ import nc.recipe.IngredientSorption;
public class FuelReprocessorCategory extends JEICategoryProcessor<JEIRecipeWrapper.FuelReprocessor> { public class FuelReprocessorCategory extends JEICategoryProcessor<JEIRecipeWrapper.FuelReprocessor> {
public FuelReprocessorCategory(IGuiHelper guiHelper, IJEIHandler handler) { public FuelReprocessorCategory(IGuiHelper guiHelper, IJEIHandler handler) {
super(guiHelper, handler, "fuel_reprocessor", 39, 30, 114, 38); super(guiHelper, handler, "fuel_reprocessor", 29, 30, 134, 38);
} }
@Override @Override
@ -18,13 +18,15 @@ public class FuelReprocessorCategory extends JEICategoryProcessor<JEIRecipeWrapp
super.setRecipe(recipeLayout, recipeWrapper, ingredients); super.setRecipe(recipeLayout, recipeWrapper, ingredients);
RecipeItemMapper itemMapper = new RecipeItemMapper(); RecipeItemMapper itemMapper = new RecipeItemMapper();
itemMapper.map(IngredientSorption.INPUT, 0, 0, 40 - backPosX, 41 - backPosY); itemMapper.map(IngredientSorption.INPUT, 0, 0, 30 - backPosX, 41 - backPosY);
itemMapper.map(IngredientSorption.OUTPUT, 0, 1, 96 - backPosX, 31 - backPosY); itemMapper.map(IngredientSorption.OUTPUT, 0, 1, 86 - backPosX, 31 - backPosY);
itemMapper.map(IngredientSorption.OUTPUT, 1, 2, 116 - backPosX, 31 - backPosY); itemMapper.map(IngredientSorption.OUTPUT, 1, 2, 106 - backPosX, 31 - backPosY);
itemMapper.map(IngredientSorption.OUTPUT, 2, 3, 136 - backPosX, 31 - backPosY); itemMapper.map(IngredientSorption.OUTPUT, 2, 3, 126 - backPosX, 31 - backPosY);
itemMapper.map(IngredientSorption.OUTPUT, 3, 4, 96 - backPosX, 51 - backPosY); itemMapper.map(IngredientSorption.OUTPUT, 3, 4, 146 - backPosX, 31 - backPosY);
itemMapper.map(IngredientSorption.OUTPUT, 4, 5, 116 - backPosX, 51 - backPosY); itemMapper.map(IngredientSorption.OUTPUT, 4, 5, 86 - backPosX, 51 - backPosY);
itemMapper.map(IngredientSorption.OUTPUT, 5, 6, 136 - backPosX, 51 - backPosY); itemMapper.map(IngredientSorption.OUTPUT, 5, 6, 106 - backPosX, 51 - backPosY);
itemMapper.map(IngredientSorption.OUTPUT, 6, 7, 126 - backPosX, 51 - backPosY);
itemMapper.map(IngredientSorption.OUTPUT, 7, 8, 146 - backPosX, 51 - backPosY);
itemMapper.mapItemsTo(recipeLayout.getItemStacks(), ingredients); itemMapper.mapItemsTo(recipeLayout.getItemStacks(), ingredients);
} }
} }

View File

@ -4,7 +4,9 @@ import static nc.util.FluidStackHelper.*;
import java.util.Locale; import java.util.Locale;
import nc.init.NCItems;
import nc.util.OreDictHelper; import nc.util.OreDictHelper;
import net.minecraft.init.Items;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraftforge.fluids.FluidRegistry; import net.minecraftforge.fluids.FluidRegistry;
import slimeknights.mantle.util.RecipeMatch; import slimeknights.mantle.util.RecipeMatch;
@ -26,6 +28,10 @@ public class TConstructExtras {
registerTableCasting(OreDictHelper.getPrioritisedCraftingStack(ItemStack.EMPTY, "ingotGraphite"), TinkerSmeltery.castIngot, "coal", COAL_DUST_VOLUME); registerTableCasting(OreDictHelper.getPrioritisedCraftingStack(ItemStack.EMPTY, "ingotGraphite"), TinkerSmeltery.castIngot, "coal", COAL_DUST_VOLUME);
registerTableCasting(OreDictHelper.getPrioritisedCraftingStack(ItemStack.EMPTY, "coal"), TinkerSmeltery.castGem, "coal", COAL_DUST_VOLUME); registerTableCasting(OreDictHelper.getPrioritisedCraftingStack(ItemStack.EMPTY, "coal"), TinkerSmeltery.castGem, "coal", COAL_DUST_VOLUME);
registerBasinCasting(OreDictHelper.getPrioritisedCraftingStack(ItemStack.EMPTY, "blockCoal"), null, "coal", COAL_BLOCK_VOLUME); registerBasinCasting(OreDictHelper.getPrioritisedCraftingStack(ItemStack.EMPTY, "blockCoal"), null, "coal", COAL_BLOCK_VOLUME);
TinkerRegistry.registerMelting(new ItemStack(NCItems.ground_cocoa_nibs), FluidRegistry.getFluid("chocolate_liquor"), INGOT_VOLUME);
TinkerRegistry.registerMelting(new ItemStack(Items.SUGAR), FluidRegistry.getFluid("sugar"), INGOT_VOLUME);
TinkerRegistry.registerMelting(new ItemStack(NCItems.gelatin), FluidRegistry.getFluid("gelatin"), INGOT_VOLUME);
} }
private static void registerGemSmelteryRecipes(String name) { private static void registerGemSmelteryRecipes(String name) {

View File

@ -1,21 +1,16 @@
package nc.integration.tconstruct; package nc.integration.tconstruct;
import static nc.util.FluidStackHelper.INGOT_VOLUME;
import org.apache.commons.lang3.tuple.Pair; import org.apache.commons.lang3.tuple.Pair;
import nc.init.NCItems;
import nc.util.StringHelper; import nc.util.StringHelper;
import net.minecraft.init.Items;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.nbt.*; import net.minecraft.nbt.*;
import net.minecraftforge.fluids.*; import net.minecraftforge.fluids.*;
import net.minecraftforge.fml.common.event.FMLInterModComms; import net.minecraftforge.fml.common.event.FMLInterModComms;
import slimeknights.tconstruct.library.TinkerRegistry;
public class TConstructIMC { public class TConstructIMC {
public static void sendIMCs() { public static void init() {
sendTiCSmelteryInfo("thorium", false); sendTiCSmelteryInfo("thorium", false);
sendTiCSmelteryInfo("uranium", false); sendTiCSmelteryInfo("uranium", false);
sendTiCSmelteryInfo("boron", true); sendTiCSmelteryInfo("boron", true);
@ -49,10 +44,6 @@ public class TConstructIMC {
sendTiCAlloyInfo("lead_platinum", 4, fluid("lead", 3), fluid("platinum", 1)); sendTiCAlloyInfo("lead_platinum", 4, fluid("lead", 3), fluid("platinum", 1));
sendTiCAlloyInfo("enderium", 72, fluid("lead_platinum", 72), fluid("ender", 125)); sendTiCAlloyInfo("enderium", 72, fluid("lead_platinum", 72), fluid("ender", 125));
TinkerRegistry.registerMelting(new ItemStack(NCItems.ground_cocoa_nibs), FluidRegistry.getFluid("chocolate_liquor"), INGOT_VOLUME);
TinkerRegistry.registerMelting(new ItemStack(Items.SUGAR), FluidRegistry.getFluid("sugar"), INGOT_VOLUME);
TinkerRegistry.registerMelting(new ItemStack(NCItems.gelatin), FluidRegistry.getFluid("gelatin"), INGOT_VOLUME);
sendTiCSmelteryInfo("cocoa_butter", "cocoaButter", false); sendTiCSmelteryInfo("cocoa_butter", "cocoaButter", false);
sendTiCSmelteryInfo("unsweetened_chocolate", "unsweetenedChocolate", false); sendTiCSmelteryInfo("unsweetened_chocolate", "unsweetenedChocolate", false);
sendTiCSmelteryInfo("dark_chocolate", "darkChocolate", false); sendTiCSmelteryInfo("dark_chocolate", "darkChocolate", false);

View File

@ -47,7 +47,7 @@ public class ConArmMaterials extends ArmorMaterials {
return; return;
} }
TConstructHelper.addMaterialStats(material, new CoreMaterialStats((float) NCMath.round(0.5D * durability, 1), (float) fullSetProtection), new PlatesMaterialStats((float) modifier, (float) NCMath.round(0.25D * modifier * durability, 1), (float) Math.min(5D, NCMath.round(toughness / modifier, 1))), new TrimMaterialStats((float) NCMath.round(0.4D * modifier * fullSetProtection, 1))); TConstructHelper.addMaterialStats(material, new CoreMaterialStats((float) NCMath.roundTo(0.5D * durability, 0.1D), (float) fullSetProtection), new PlatesMaterialStats((float) modifier, (float) NCMath.roundTo(0.25D * modifier * durability, 0.1D), (float) Math.min(5D, NCMath.roundTo(toughness / modifier, 0.1D))), new TrimMaterialStats((float) NCMath.roundTo(0.4D * modifier * fullSetProtection, 0.1D)));
} }
private static void addArmorMaterial(String materialName, int armorNumber, int[] protectionArray) { private static void addArmorMaterial(String materialName, int armorNumber, int[] protectionArray) {

View File

@ -7,7 +7,7 @@ import slimeknights.tconstruct.library.utils.*;
public class ArmorTraitMoldable extends AbstractArmorTraitLeveled implements IArmorTraitNC { public class ArmorTraitMoldable extends AbstractArmorTraitLeveled implements IArmorTraitNC {
public ArmorTraitMoldable(int levels) { public ArmorTraitMoldable(int levels) {
super("moldable_armor", String.valueOf(levels), 0x62230E, 3, 1); super("moldable", String.valueOf(levels), 0x62230E, 3, 1);
} }
@Override @Override

View File

@ -7,10 +7,10 @@ import nc.radiation.RadSources;
import net.minecraft.tileentity.TileEntity; import net.minecraft.tileentity.TileEntity;
public enum RTGType { public enum RTGType {
URANIUM(0, RadSources.URANIUM_238 / 8D), URANIUM(0, RadSources.URANIUM_238),
PLUTONIUM(1, RadSources.PLUTONIUM_238 / 8D), PLUTONIUM(1, RadSources.PLUTONIUM_238),
AMERICIUM(2, RadSources.AMERICIUM_241 / 8D), AMERICIUM(2, RadSources.AMERICIUM_241),
CALIFORNIUM(3, RadSources.CALIFORNIUM_250 / 8D); CALIFORNIUM(3, RadSources.CALIFORNIUM_250);
private int id; private int id;
private double radiation; private double radiation;
@ -25,7 +25,7 @@ public enum RTGType {
} }
public double getRadiation() { public double getRadiation() {
return radiation; return radiation / 8D;
} }
public TileEntity getTile() { public TileEntity getTile() {

View File

@ -763,6 +763,8 @@ public class TurbineLogic extends MultiblockLogic<Turbine, TurbineLogic, ITurbin
protected void bearingFailure() { protected void bearingFailure() {
makeRotorVisible(); makeRotorVisible();
getTurbine().bearingTension = 0D;
Iterator<TileTurbineRotorBearing> bearingIterator = getPartIterator(TileTurbineRotorBearing.class); Iterator<TileTurbineRotorBearing> bearingIterator = getPartIterator(TileTurbineRotorBearing.class);
while (bearingIterator.hasNext()) { while (bearingIterator.hasNext()) {
TileTurbineRotorBearing bearing = bearingIterator.next(); TileTurbineRotorBearing bearing = bearingIterator.next();
@ -781,8 +783,6 @@ public class TurbineLogic extends MultiblockLogic<Turbine, TurbineLogic, ITurbin
stator.onBearingFailure(getTurbine()); stator.onBearingFailure(getTurbine());
} }
getTurbine().bearingTension = 0D;
getTurbine().checkIfMachineIsWhole(); getTurbine().checkIfMachineIsWhole();
if (getTurbine().controller != null) { if (getTurbine().controller != null) {

View File

@ -93,7 +93,6 @@ public class CommonProxy {
MinecraftForge.EVENT_BUS.register(new NCRecipes()); MinecraftForge.EVENT_BUS.register(new NCRecipes());
if (ModCheck.tinkersLoaded()) { if (ModCheck.tinkersLoaded()) {
TConstructIMC.sendIMCs();
TConstructMaterials.init(); TConstructMaterials.init();
} }
@ -133,6 +132,11 @@ public class CommonProxy {
ItemMultitool.registerRightClickLogic(); ItemMultitool.registerRightClickLogic();
if (ModCheck.tinkersLoaded()) {
TConstructExtras.init();
TConstructIMC.init();
}
if (ModCheck.constructsArmoryLoaded()) { if (ModCheck.constructsArmoryLoaded()) {
ConArmMaterials.init(); ConArmMaterials.init();
} }

View File

@ -155,6 +155,11 @@ public class RadSources {
putMaterial(POLONIUM, "Polonium"); putMaterial(POLONIUM, "Polonium");
putMaterial(TBP, "TBP"); putMaterial(TBP, "TBP");
putMaterial(PROTACTINIUM_233, "Protactinium233"); putMaterial(PROTACTINIUM_233, "Protactinium233");
putMaterial(STRONTIUM_90, "Strontium90");
putMaterial(RUTHENIUM_106, "Ruthenium106");
putMaterial(CAESIUM_137, "Caesium137");
putMaterial(PROMETHIUM_147, "Promethium147");
putMaterial(EUROPIUM_155, "Europium155");
putMaterial(THORIUM, "Thorium"); putMaterial(THORIUM, "Thorium");
putMaterial(URANIUM, "Uranium", "Yellorium"); putMaterial(URANIUM, "Uranium", "Yellorium");
@ -252,7 +257,6 @@ public class RadSources {
putFluid(FUSION, "plasma"); putFluid(FUSION, "plasma");
putFluid(TRITIUM, "tritium"); putFluid(TRITIUM, "tritium");
putFluid(CAESIUM_137, "caesium_137");
putFluid(CORIUM, "corium"); putFluid(CORIUM, "corium");
putFluid(THORIUM, "thorium"); putFluid(THORIUM, "thorium");
@ -260,6 +264,17 @@ public class RadSources {
putFluid(PLUTONIUM, "plutonium", "blutonium"); putFluid(PLUTONIUM, "plutonium", "blutonium");
putFluid(URANIUM_238, "cyanite"); putFluid(URANIUM_238, "cyanite");
putFluid(BISMUTH, "bismuth");
putFluid(RADIUM, "radium");
putFluid(POLONIUM, "polonium");
putFluid(PROTACTINIUM_233, "protactinium_233");
putFluid(TBP, "tbp");
putFluid(STRONTIUM_90, "strontium_90");
putFluid(RUTHENIUM_106, "ruthenium_106");
putFluid(CAESIUM_137, "caesium_137");
putFluid(PROMETHIUM_147, "promethium_147");
putFluid(EUROPIUM_155, "europium_155");
putFluid(CAESIUM_137 / 4D, "irradiated_borax_solution"); putFluid(CAESIUM_137 / 4D, "irradiated_borax_solution");
// Custom and Stack Entries // Custom and Stack Entries
@ -439,17 +454,23 @@ public class RadSources {
public static final double NEUTRON = 0.00505D; public static final double NEUTRON = 0.00505D;
public static final double TRITIUM = 0.0115D; public static final double TRITIUM = 0.0115D;
public static final double CAESIUM_137 = 0.033D;
public static final double CORIUM = 0.0000165D; public static final double CORIUM = 0.0000165D;
public static final double BISMUTH = 4.975E-20D;
public static final double RADIUM = 0.000625;
public static final double POLONIUM = 2.64D / 9D;
public static final double THORIUM = 0.0000000000715D; public static final double THORIUM = 0.0000000000715D;
public static final double URANIUM = 0.000000000385D; public static final double URANIUM = 0.000000000385D;
public static final double PLUTONIUM = 0.000042D; public static final double PLUTONIUM = 0.000042D;
public static final double BISMUTH = 4.975E-20D;
public static final double RADIUM = 0.000625;
public static final double POLONIUM = 2.64D / 9D;
public static final double PROTACTINIUM_233 = 13.54 / 9D;
public static final double TBP = getFuelRadiation(THORIUM, 8.5D, PROTACTINIUM_233, 0.5D);
public static final double STRONTIUM_90 = 0.0345D;
public static final double RUTHENIUM_106 = 0.98D;
public static final double CAESIUM_137 = 0.033D;
public static final double PROMETHIUM_147 = 0.38D;
public static final double EUROPIUM_155 = 0.21D;
// Isotopes // Isotopes
public static final double URANIUM_233 = 0.0000063D; public static final double URANIUM_233 = 0.0000063D;
@ -598,7 +619,4 @@ public class RadSources {
public static final double HECf_249_FISSION = (HECf_249 + DEPLETED_HECf_249 + CAESIUM_137) / 64D; public static final double HECf_249_FISSION = (HECf_249 + DEPLETED_HECf_249 + CAESIUM_137) / 64D;
public static final double LECf_251_FISSION = (LECf_251 + DEPLETED_LECf_251 + CAESIUM_137) / 64D; public static final double LECf_251_FISSION = (LECf_251 + DEPLETED_LECf_251 + CAESIUM_137) / 64D;
public static final double HECf_251_FISSION = (HECf_251 + DEPLETED_HECf_251 + CAESIUM_137) / 64D; public static final double HECf_251_FISSION = (HECf_251 + DEPLETED_HECf_251 + CAESIUM_137) / 64D;
public static final double PROTACTINIUM_233 = 13.54 / 9D;
public static final double TBP = getFuelRadiation(THORIUM, 8.5D, PROTACTINIUM_233, 0.5D);
} }

View File

@ -2,10 +2,8 @@ package nc.recipe;
import java.util.List; import java.util.List;
import nc.ModCheck;
import nc.integration.crafttweaker.CTRegistration; import nc.integration.crafttweaker.CTRegistration;
import nc.integration.crafttweaker.CTRegistration.RegistrationInfo; import nc.integration.crafttweaker.CTRegistration.RegistrationInfo;
import nc.integration.tconstruct.TConstructExtras;
import nc.radiation.RadBlockEffects.*; import nc.radiation.RadBlockEffects.*;
import nc.radiation.RadSources; import nc.radiation.RadSources;
import nc.recipe.generator.*; import nc.recipe.generator.*;
@ -114,10 +112,6 @@ public class NCRecipes {
info.recipeInit(); info.recipeInit();
} }
if (ModCheck.tinkersLoaded()) {
TConstructExtras.init();
}
initialized = true; initialized = true;
} }

View File

@ -544,6 +544,14 @@ public class RecipeHelper {
return recipeInfo == null ? null : recipeInfo.getRecipe(); return recipeInfo == null ? null : recipeInfo.getRecipe();
} }
public static double getDecayTimeMultiplier(double baseRads, double radiation, double scaleFactor) {
return radiation > baseRads ? (Math.log1p(baseRads / scaleFactor) / Math.log1p(radiation / scaleFactor)) : (1D + (Math.log1p(scaleFactor / radiation) / Math.log1p(scaleFactor / baseRads) - 1D) * (baseRads / scaleFactor) * (Math.log1p(scaleFactor / baseRads) / Math.log1p(baseRads / scaleFactor)));
}
public static double getDecayPowerMultiplier(double baseRads, double radiation, double scaleFactor) {
return getDecayTimeMultiplier(baseRads, 1D / radiation, scaleFactor);
}
public static InventoryCrafting fakeCrafter(int width, int height) { public static InventoryCrafting fakeCrafter(int width, int height) {
return new FakeCrafting(width, height); return new FakeCrafting(width, height);
} }

View File

@ -4,6 +4,8 @@ import static nc.config.NCConfig.*;
import java.util.*; import java.util.*;
import com.google.common.collect.Lists;
import nc.radiation.RadSources; import nc.radiation.RadSources;
import nc.recipe.ProcessorRecipeHandler; import nc.recipe.ProcessorRecipeHandler;
import nc.util.OreDictHelper; import nc.util.OreDictHelper;
@ -14,21 +16,32 @@ public class DecayGeneratorRecipes extends ProcessorRecipeHandler {
super("decay_generator", 1, 0, 1, 0); super("decay_generator", 1, 0, 1, 0);
} }
// Decay time (minutes) = Sum of natural logs of real decay times (years).
// Ignore if < 1 yr. If decays to lead, add 5 if past thorium.
@Override @Override
public void addRecipes() { public void addRecipes() {
addRecipe("blockThorium", "blockLead", decay_lifetime[0], decay_power[0], RadSources.THORIUM); addDecayRecipes("Thorium", "Lead", decay_lifetime[0], decay_power[0], RadSources.THORIUM);
addRecipe("blockUranium", "blockUranium238", decay_lifetime[1], decay_power[1], RadSources.URANIUM); addDecayRecipes("Uranium", "Uranium238", decay_lifetime[1], decay_power[1], RadSources.URANIUM);
addRecipe("blockUranium238", OreDictHelper.oreExists("blockRadium") ? "blockRadium" : "blockLead", decay_lifetime[3], decay_power[3], RadSources.URANIUM_238); addDecayRecipes("Uranium238", OreDictHelper.oreExists("Radium") ? "Radium" : "Lead", decay_lifetime[2], decay_power[2], RadSources.URANIUM_238);
addRecipe("blockNeptunium237", OreDictHelper.oreExists("blockBismuth") ? "blockBismuth" : "blockLead", decay_lifetime[4], decay_power[4], RadSources.NEPTUNIUM_237); addDecayRecipes("Neptunium237", OreDictHelper.oreExists("Bismuth") ? "Bismuth" : "Lead", decay_lifetime[3], decay_power[3], RadSources.NEPTUNIUM_237);
addRecipe("blockPlutonium242", "blockUranium238", decay_lifetime[5], decay_power[5], RadSources.PLUTONIUM_242); addDecayRecipes("Plutonium242", "Uranium238", decay_lifetime[4], decay_power[4], RadSources.PLUTONIUM_242);
addRecipe("blockAmericium243", "blockLead", decay_lifetime[6], decay_power[6], RadSources.AMERICIUM_243); addDecayRecipes("Americium243", "Lead", decay_lifetime[5], decay_power[5], RadSources.AMERICIUM_243);
addRecipe("blockCurium246", "blockPlutonium242", decay_lifetime[7], decay_power[7], RadSources.CURIUM_246); addDecayRecipes("Curium246", "Plutonium242", decay_lifetime[6], decay_power[6], RadSources.CURIUM_246);
addRecipe("blockBerkelium247", "blockAmericium243", decay_lifetime[8], decay_power[8], RadSources.BERKELIUM_247); addDecayRecipes("Berkelium247", "Americium243", decay_lifetime[7], decay_power[7], RadSources.BERKELIUM_247);
addRecipe("blockCalifornium252", "blockLead", decay_lifetime[9], decay_power[9], RadSources.CALIFORNIUM_252); addDecayRecipes("Californium252", "Lead", decay_lifetime[8], decay_power[8], RadSources.CALIFORNIUM_252);
}
private static final List<String> NON_FISSION = Lists.newArrayList("Lead", "Bismuth", "Thorium");
public void addDecayRecipes(String input, String output, double lifetime, double power, double radiation) {
String inputName = "block" + input;
if (NON_FISSION.contains(output)) {
addRecipe(Lists.newArrayList(inputName, inputName + "Oxide", inputName + "Nitride"), "block" + output, lifetime, power, radiation);
}
else {
for (String type : new String[] {"", "Carbide", "Oxide", "Nitride", "ZA"}) {
addRecipe(inputName + type, "block" + output + type, lifetime, power, radiation);
}
}
} }
@Override @Override

View File

@ -12,22 +12,47 @@ public class FusionRecipes extends ProcessorRecipeHandler {
@Override @Override
public void addRecipes() { public void addRecipes() {
/* addFusionRecipe("hydrogen", BUCKET_VOLUME, "hydrogen", BUCKET_VOLUME, "deuterium", BUCKET_VOLUME/4, "deuterium", BUCKET_VOLUME/4, "deuterium", BUCKET_VOLUME/4, "deuterium", BUCKET_VOLUME/4, 0); addFusionRecipe("hydrogen", BUCKET_VOLUME, "deuterium", BUCKET_VOLUME, "helium3", BUCKET_VOLUME/4, "helium3", BUCKET_VOLUME/4, "helium3", BUCKET_VOLUME/4, "helium3", BUCKET_VOLUME/4, 1); addFusionRecipe("hydrogen", BUCKET_VOLUME, "tritium", BUCKET_VOLUME, "helium3", BUCKET_VOLUME/2, "helium3", BUCKET_VOLUME/2, "neutron", PARTICLE_VOLUME/2, "neutron", PARTICLE_VOLUME/2, 2); addFusionRecipe("hydrogen", BUCKET_VOLUME, "helium3", BUCKET_VOLUME, "helium", BUCKET_VOLUME/4, "helium", BUCKET_VOLUME/4, "helium", BUCKET_VOLUME/4, "helium", BUCKET_VOLUME/4, 3); addFusionRecipe("hydrogen", BUCKET_VOLUME, "lithium6", INGOT_VOLUME, "tritium", BUCKET_VOLUME/2, "tritium", BUCKET_VOLUME/2, "helium", BUCKET_VOLUME/2, "helium", BUCKET_VOLUME/2, 4); addFusionRecipe("hydrogen", BUCKET_VOLUME, "lithium7", INGOT_VOLUME, "helium", BUCKET_VOLUME/2, "helium", BUCKET_VOLUME/2, "helium", BUCKET_VOLUME/2, "helium", BUCKET_VOLUME/2, 5); addFusionRecipe("hydrogen", BUCKET_VOLUME, "boron11", INGOT_VOLUME, "helium", BUCKET_VOLUME*3/4, "helium", BUCKET_VOLUME*3/4, "helium", BUCKET_VOLUME*3/4, "helium", BUCKET_VOLUME*3/4, 6); /*
* addFusionRecipe("hydrogen", BUCKET_VOLUME, "hydrogen", BUCKET_VOLUME, "deuterium", BUCKET_VOLUME/4, "deuterium", BUCKET_VOLUME/4, "deuterium", BUCKET_VOLUME/4, "deuterium", BUCKET_VOLUME/4, 0);
* addFusionRecipe("deuterium", BUCKET_VOLUME, "deuterium", BUCKET_VOLUME, "hydrogen", BUCKET_VOLUME/2, "tritium", BUCKET_VOLUME/2, "helium3", BUCKET_VOLUME/2, "neutron", PARTICLE_VOLUME/2, 7); addFusionRecipe("deuterium", BUCKET_VOLUME, "tritium", BUCKET_VOLUME, "helium", BUCKET_VOLUME/2, "helium", BUCKET_VOLUME/2, "neutron", PARTICLE_VOLUME/2, "neutron", PARTICLE_VOLUME/2, 8); addFusionRecipe("deuterium", BUCKET_VOLUME, "helium3", BUCKET_VOLUME, "hydrogen", BUCKET_VOLUME/2, "hydrogen", BUCKET_VOLUME/2, "helium", BUCKET_VOLUME/2, "helium", BUCKET_VOLUME/2, 9); addFusionRecipe("deuterium", BUCKET_VOLUME, "lithium6", INGOT_VOLUME, "helium", BUCKET_VOLUME/2, "helium", BUCKET_VOLUME/2, "helium", BUCKET_VOLUME/2, "helium", BUCKET_VOLUME/2, 10); addFusionRecipe("deuterium", BUCKET_VOLUME, "lithium7", INGOT_VOLUME, "helium", BUCKET_VOLUME, "helium", BUCKET_VOLUME, "neutron", PARTICLE_VOLUME/2, "neutron", PARTICLE_VOLUME/2, 11); addFusionRecipe("deuterium", BUCKET_VOLUME, "boron11", INGOT_VOLUME, "helium", BUCKET_VOLUME*6/4, "helium", BUCKET_VOLUME*6/4, "neutron", PARTICLE_VOLUME/2, "neutron", PARTICLE_VOLUME/2, 12); addFusionRecipe("hydrogen", BUCKET_VOLUME, "deuterium", BUCKET_VOLUME, "helium_3", BUCKET_VOLUME/4, "helium_3", BUCKET_VOLUME/4, "helium_3", BUCKET_VOLUME/4, "helium_3", BUCKET_VOLUME/4, 1);
* addFusionRecipe("hydrogen", BUCKET_VOLUME, "tritium", BUCKET_VOLUME, "helium_3", BUCKET_VOLUME/2, "helium_3", BUCKET_VOLUME/2, "neutron", PARTICLE_VOLUME/2, "neutron", PARTICLE_VOLUME/2, 2);
* addFusionRecipe("tritium", BUCKET_VOLUME, "tritium", BUCKET_VOLUME, "helium", BUCKET_VOLUME/2, "helium", BUCKET_VOLUME/2, "neutron", PARTICLE_VOLUME, "neutron", PARTICLE_VOLUME, 13); addFusionRecipe("tritium", BUCKET_VOLUME, "helium3", BUCKET_VOLUME, "hydrogen", BUCKET_VOLUME, "helium", BUCKET_VOLUME, "neutron", PARTICLE_VOLUME/2, "neutron", PARTICLE_VOLUME/2, 14); addFusionRecipe("tritium", BUCKET_VOLUME, "lithium6", INGOT_VOLUME, "helium", BUCKET_VOLUME, "helium", BUCKET_VOLUME, "neutron", PARTICLE_VOLUME/2, "neutron", PARTICLE_VOLUME/2, 15); addFusionRecipe("tritium", BUCKET_VOLUME, "lithium7", INGOT_VOLUME, "helium", BUCKET_VOLUME, "helium", BUCKET_VOLUME, "neutron", PARTICLE_VOLUME, "neutron", PARTICLE_VOLUME, 16); addFusionRecipe("tritium", BUCKET_VOLUME, "boron11", INGOT_VOLUME, "helium", BUCKET_VOLUME*6/4, "helium", BUCKET_VOLUME*6/4, "neutron", PARTICLE_VOLUME, "neutron", PARTICLE_VOLUME, 17); addFusionRecipe("hydrogen", BUCKET_VOLUME, "helium_3", BUCKET_VOLUME, "helium", BUCKET_VOLUME/4, "helium", BUCKET_VOLUME/4, "helium", BUCKET_VOLUME/4, "helium", BUCKET_VOLUME/4, 3);
* addFusionRecipe("hydrogen", BUCKET_VOLUME, "lithium_6", INGOT_VOLUME, "tritium", BUCKET_VOLUME/2, "tritium", BUCKET_VOLUME/2, "helium", BUCKET_VOLUME/2, "helium", BUCKET_VOLUME/2, 4);
* addFusionRecipe("helium3", BUCKET_VOLUME, "helium3", BUCKET_VOLUME, "hydrogen", BUCKET_VOLUME, "hydrogen", BUCKET_VOLUME, "helium", BUCKET_VOLUME/2, "helium", BUCKET_VOLUME/2, 18); addFusionRecipe("helium3", BUCKET_VOLUME, "lithium6", INGOT_VOLUME, "hydrogen", BUCKET_VOLUME/2, "hydrogen", BUCKET_VOLUME/2, "helium", BUCKET_VOLUME, "helium", BUCKET_VOLUME, 19); addFusionRecipe("helium3", BUCKET_VOLUME, "lithium7", INGOT_VOLUME, "deuterium", BUCKET_VOLUME/2, "deuterium", BUCKET_VOLUME/2, "helium", BUCKET_VOLUME, "helium", BUCKET_VOLUME, 20); addFusionRecipe("helium3", BUCKET_VOLUME, "boron11", INGOT_VOLUME, "deuterium", BUCKET_VOLUME/2, "deuterium", BUCKET_VOLUME/2, "helium", BUCKET_VOLUME*6/4, "helium", BUCKET_VOLUME*6/4, 21); addFusionRecipe("hydrogen", BUCKET_VOLUME, "lithium_7", INGOT_VOLUME, "helium", BUCKET_VOLUME/2, "helium", BUCKET_VOLUME/2, "helium", BUCKET_VOLUME/2, "helium", BUCKET_VOLUME/2, 5);
* addFusionRecipe("hydrogen", BUCKET_VOLUME, "boron_11", INGOT_VOLUME, "helium", BUCKET_VOLUME*3/4, "helium", BUCKET_VOLUME*3/4, "helium", BUCKET_VOLUME*3/4, "helium", BUCKET_VOLUME*3/4, 6);
* addFusionRecipe("lithium6", INGOT_VOLUME, "lithium6", INGOT_VOLUME, "helium", BUCKET_VOLUME*3/4, "helium", BUCKET_VOLUME*3/4, "helium", BUCKET_VOLUME*3/4, "helium", BUCKET_VOLUME*3/4, 22); addFusionRecipe("lithium6", INGOT_VOLUME, "lithium7", INGOT_VOLUME, "helium", BUCKET_VOLUME*6/4, "helium", BUCKET_VOLUME*6/4, "neutron", PARTICLE_VOLUME/2, "neutron", PARTICLE_VOLUME/2, 23); addFusionRecipe("lithium6", INGOT_VOLUME, "boron11", INGOT_VOLUME, "helium", BUCKET_VOLUME*2, "helium", BUCKET_VOLUME*2, "neutron", PARTICLE_VOLUME/2, "neutron", PARTICLE_VOLUME/2, 24);
* addFusionRecipe("deuterium", BUCKET_VOLUME, "deuterium", BUCKET_VOLUME, "hydrogen", BUCKET_VOLUME/2, "tritium", BUCKET_VOLUME/2, "helium_3", BUCKET_VOLUME/2, "neutron", PARTICLE_VOLUME/2, 7);
* addFusionRecipe("lithium7", INGOT_VOLUME, "lithium7", INGOT_VOLUME, "helium", BUCKET_VOLUME*6/4, "helium", BUCKET_VOLUME*6/4, "neutron", PARTICLE_VOLUME, "neutron", PARTICLE_VOLUME, 25); addFusionRecipe("lithium7", INGOT_VOLUME, "boron11", INGOT_VOLUME, "helium", BUCKET_VOLUME*2, "helium", BUCKET_VOLUME*2, "neutron", PARTICLE_VOLUME, "neutron", PARTICLE_VOLUME, 26); addFusionRecipe("deuterium", BUCKET_VOLUME, "tritium", BUCKET_VOLUME, "helium", BUCKET_VOLUME/2, "helium", BUCKET_VOLUME/2, "neutron", PARTICLE_VOLUME/2, "neutron", PARTICLE_VOLUME/2, 8);
* addFusionRecipe("deuterium", BUCKET_VOLUME, "helium_3", BUCKET_VOLUME, "hydrogen", BUCKET_VOLUME/2, "hydrogen", BUCKET_VOLUME/2, "helium", BUCKET_VOLUME/2, "helium", BUCKET_VOLUME/2, 9);
* addFusionRecipe("boron11", INGOT_VOLUME, "boron11", INGOT_VOLUME, "helium", BUCKET_VOLUME*10/4, "helium", BUCKET_VOLUME*10/4, "neutron", PARTICLE_VOLUME, "neutron", PARTICLE_VOLUME, 27); */ addFusionRecipe("deuterium", BUCKET_VOLUME, "lithium_6", INGOT_VOLUME, "helium", BUCKET_VOLUME/2, "helium", BUCKET_VOLUME/2, "helium", BUCKET_VOLUME/2, "helium", BUCKET_VOLUME/2, 10);
addFusionRecipe("deuterium", BUCKET_VOLUME, "lithium_7", INGOT_VOLUME, "helium", BUCKET_VOLUME, "helium", BUCKET_VOLUME, "neutron", PARTICLE_VOLUME/2, "neutron", PARTICLE_VOLUME/2, 11);
addFusionRecipe("deuterium", BUCKET_VOLUME, "boron_11", INGOT_VOLUME, "helium", BUCKET_VOLUME*6/4, "helium", BUCKET_VOLUME*6/4, "neutron", PARTICLE_VOLUME/2, "neutron", PARTICLE_VOLUME/2, 12);
addFusionRecipe("tritium", BUCKET_VOLUME, "tritium", BUCKET_VOLUME, "helium", BUCKET_VOLUME/2, "helium", BUCKET_VOLUME/2, "neutron", PARTICLE_VOLUME, "neutron", PARTICLE_VOLUME, 13);
addFusionRecipe("tritium", BUCKET_VOLUME, "helium_3", BUCKET_VOLUME, "hydrogen", BUCKET_VOLUME, "helium", BUCKET_VOLUME, "neutron", PARTICLE_VOLUME/2, "neutron", PARTICLE_VOLUME/2, 14);
addFusionRecipe("tritium", BUCKET_VOLUME, "lithium_6", INGOT_VOLUME, "helium", BUCKET_VOLUME, "helium", BUCKET_VOLUME, "neutron", PARTICLE_VOLUME/2, "neutron", PARTICLE_VOLUME/2, 15);
addFusionRecipe("tritium", BUCKET_VOLUME, "lithium_7", INGOT_VOLUME, "helium", BUCKET_VOLUME, "helium", BUCKET_VOLUME, "neutron", PARTICLE_VOLUME, "neutron", PARTICLE_VOLUME, 16);
addFusionRecipe("tritium", BUCKET_VOLUME, "boron_11", INGOT_VOLUME, "helium", BUCKET_VOLUME*6/4, "helium", BUCKET_VOLUME*6/4, "neutron", PARTICLE_VOLUME, "neutron", PARTICLE_VOLUME, 17);
addFusionRecipe("helium_3", BUCKET_VOLUME, "helium_3", BUCKET_VOLUME, "hydrogen", BUCKET_VOLUME, "hydrogen", BUCKET_VOLUME, "helium", BUCKET_VOLUME/2, "helium", BUCKET_VOLUME/2, 18);
addFusionRecipe("helium_3", BUCKET_VOLUME, "lithium_6", INGOT_VOLUME, "hydrogen", BUCKET_VOLUME/2, "hydrogen", BUCKET_VOLUME/2, "helium", BUCKET_VOLUME, "helium", BUCKET_VOLUME, 19);
addFusionRecipe("helium_3", BUCKET_VOLUME, "lithium_7", INGOT_VOLUME, "deuterium", BUCKET_VOLUME/2, "deuterium", BUCKET_VOLUME/2, "helium", BUCKET_VOLUME, "helium", BUCKET_VOLUME, 20);
addFusionRecipe("helium_3", BUCKET_VOLUME, "boron_11", INGOT_VOLUME, "deuterium", BUCKET_VOLUME/2, "deuterium", BUCKET_VOLUME/2, "helium", BUCKET_VOLUME*6/4, "helium", BUCKET_VOLUME*6/4, 21);
addFusionRecipe("lithium_6", INGOT_VOLUME, "lithium_6", INGOT_VOLUME, "helium", BUCKET_VOLUME*3/4, "helium", BUCKET_VOLUME*3/4, "helium", BUCKET_VOLUME*3/4, "helium", BUCKET_VOLUME*3/4, 22);
addFusionRecipe("lithium_6", INGOT_VOLUME, "lithium_7", INGOT_VOLUME, "helium", BUCKET_VOLUME*6/4, "helium", BUCKET_VOLUME*6/4, "neutron", PARTICLE_VOLUME/2, "neutron", PARTICLE_VOLUME/2, 23);
addFusionRecipe("lithium_6", INGOT_VOLUME, "boron_11", INGOT_VOLUME, "helium", BUCKET_VOLUME*2, "helium", BUCKET_VOLUME*2, "neutron", PARTICLE_VOLUME/2, "neutron", PARTICLE_VOLUME/2, 24);
addFusionRecipe("lithium_7", INGOT_VOLUME, "lithium_7", INGOT_VOLUME, "helium", BUCKET_VOLUME*6/4, "helium", BUCKET_VOLUME*6/4, "neutron", PARTICLE_VOLUME, "neutron", PARTICLE_VOLUME, 25);
addFusionRecipe("lithium_7", INGOT_VOLUME, "boron_11", INGOT_VOLUME, "helium", BUCKET_VOLUME*2, "helium", BUCKET_VOLUME*2, "neutron", PARTICLE_VOLUME, "neutron", PARTICLE_VOLUME, 26);
addFusionRecipe("boron_11", INGOT_VOLUME, "boron_11", INGOT_VOLUME, "helium", BUCKET_VOLUME*10/4, "helium", BUCKET_VOLUME*10/4, "neutron", PARTICLE_VOLUME, "neutron", PARTICLE_VOLUME, 27);
*/
} }
/* public void addFusionRecipe(String in1, int amountIn1, String in2, int amountIn2, String out1, int amountOut1, String out2, int amountOut2, String out3, int amountOut3, String out4, int amountOut4, int combo) { addRecipe(fluidStack(in1, amountIn1), fluidStack(in2, amountIn2), fluidStack(out1, amountOut1), fluidStack(out2, amountOut2), fluidStack(out3, amountOut3), fluidStack(out4, amountOut4), fusion_fuel_time[combo], fusion_power[combo], fusion_heat_variable[combo], fusion_radiation[combo]); } */ /*public void addFusionRecipe(String in1, int amountIn1, String in2, int amountIn2, String out1, int amountOut1, String out2, int amountOut2, String out3, int amountOut3, String out4, int amountOut4, int combo) {
addRecipe(fluidStack(in1, amountIn1), fluidStack(in2, amountIn2), fluidStack(out1, amountOut1), fluidStack(out2, amountOut2), fluidStack(out3, amountOut3), fluidStack(out4, amountOut4), fusion_fuel_time[combo], fusion_power[combo], fusion_heat_variable[combo], fusion_radiation[combo]);
}*/
@Override @Override
public List fixExtras(List extras) { public List fixExtras(List extras) {

View File

@ -43,6 +43,7 @@ public class AlloyFurnaceRecipes extends ProcessorRecipeHandler {
addAlloyIngotIngotRecipes("Zirconium", 7, "Tin", 1, "Zircaloy", 8, 4D, 1D); addAlloyIngotIngotRecipes("Zirconium", 7, "Tin", 1, "Zircaloy", 8, 4D, 1D);
addRecipe(SILICON, metalList("Graphite"), oreStack("ingotSiliconCarbide", 2), 2D, 2D); addRecipe(SILICON, metalList("Graphite"), oreStack("ingotSiliconCarbide", 2), 2D, 2D);
addAlloyIngotIngotRecipes("Iron", 15, "CarbonManganese", 1, "HSLASteel", 16, 8D, 2D); addAlloyIngotIngotRecipes("Iron", 15, "CarbonManganese", 1, "HSLASteel", 16, 8D, 2D);
addAlloyIngotIngotRecipes("Zirconium", 1, "Molybdenum", 15, "ZirconiumMolybdenum", 16, 8D, 2D);
// Tinkers' Construct // Tinkers' Construct
addAlloyIngotIngotRecipes("Aluminum", 3, "Copper", 1, "AluminumBrass", 4, 1D, 1D); addAlloyIngotIngotRecipes("Aluminum", 3, "Copper", 1, "AluminumBrass", 4, 1D, 1D);

View File

@ -10,14 +10,14 @@ import nc.recipe.ProcessorRecipeHandler;
public class CentrifugeRecipes extends ProcessorRecipeHandler { public class CentrifugeRecipes extends ProcessorRecipeHandler {
public CentrifugeRecipes() { public CentrifugeRecipes() {
super("centrifuge", 0, 1, 0, 4); super("centrifuge", 0, 1, 0, 6);
} }
@Override @Override
public void addRecipes() { public void addRecipes() {
addRecipe(fluidStack("boron", NUGGET_VOLUME * 12), fluidStack("boron11", INGOT_VOLUME), fluidStack("boron10", NUGGET_VOLUME * 3), emptyFluidStack(), emptyFluidStack(), 4D / 3D, 1D); addRecipe(fluidStack("boron", NUGGET_VOLUME * 12), fluidStack("boron_11", INGOT_VOLUME), fluidStack("boron_10", NUGGET_VOLUME * 3), emptyFluidStack(), emptyFluidStack(), emptyFluidStack(), emptyFluidStack(), 4D / 3D, 1D);
addRecipe(fluidStack("lithium", NUGGET_VOLUME * 10), fluidStack("lithium7", INGOT_VOLUME), fluidStack("lithium6", NUGGET_VOLUME), emptyFluidStack(), emptyFluidStack(), 10D / 9D, 1D); addRecipe(fluidStack("lithium", NUGGET_VOLUME * 10), fluidStack("lithium_7", INGOT_VOLUME), fluidStack("lithium_6", NUGGET_VOLUME), emptyFluidStack(), emptyFluidStack(), emptyFluidStack(), emptyFluidStack(), 10D / 9D, 1D);
addRecipe(fluidStack("redstone_ethanol", BUCKET_VOLUME / 2), fluidStack("ethanol", BUCKET_VOLUME / 2), fluidStack("redstone", REDSTONE_DUST_VOLUME * 4), emptyFluidStack(), emptyFluidStack(), 1D, 0.5D); addRecipe(fluidStack("redstone_ethanol", BUCKET_VOLUME / 2), fluidStack("ethanol", BUCKET_VOLUME / 2), fluidStack("redstone", REDSTONE_DUST_VOLUME * 4), emptyFluidStack(), emptyFluidStack(), emptyFluidStack(), emptyFluidStack(), 1D, 0.5D);
addCoolantNAKRecipe("iron", INGOT_VOLUME); addCoolantNAKRecipe("iron", INGOT_VOLUME);
addCoolantNAKRecipe("redstone", REDSTONE_DUST_VOLUME * 2); addCoolantNAKRecipe("redstone", REDSTONE_DUST_VOLUME * 2);
@ -53,13 +53,13 @@ public class CentrifugeRecipes extends ProcessorRecipeHandler {
// Fission Materials // Fission Materials
addRecipe(fluidStack("uranium", NUGGET_VOLUME * 10), fluidStack("uranium_238", INGOT_VOLUME), fluidStack("uranium_235", NUGGET_VOLUME), emptyFluidStack(), emptyFluidStack(), 10D / 9D, 1D); addRecipe(fluidStack("uranium", NUGGET_VOLUME * 10), fluidStack("uranium_238", INGOT_VOLUME), fluidStack("uranium_235", NUGGET_VOLUME), emptyFluidStack(), emptyFluidStack(), emptyFluidStack(), emptyFluidStack(), 10D / 9D, 1D);
addFissionFuelIsotopeRecipes("u", "uranium", 238, 233, 235); addFissionFuelIsotopeRecipes("u", "uranium", 238, 233, 235);
addFissionFuelIsotopeRecipes("n", "neptunium", 237, 236); addFissionFuelIsotopeRecipes("n", "neptunium", 237, 236);
addFissionFuelIsotopeRecipes("p", "plutonium", 242, 239, 241); addFissionFuelIsotopeRecipes("p", "plutonium", 242, 239, 241);
for (int fissile : new int[] {239, 241}) { for (int fissile : new int[] {239, 241}) {
addRecipe(fluidStack("mix_" + fissile, INGOT_VOLUME), fluidStack("uranium_238", NUGGET_VOLUME * 8), fluidStack("plutonium_" + fissile, NUGGET_VOLUME), emptyFluidStack(), emptyFluidStack(), 1D, 1D); addRecipe(fluidStack("mix_" + fissile, INGOT_VOLUME), fluidStack("uranium_238", NUGGET_VOLUME * 8), fluidStack("plutonium_" + fissile, NUGGET_VOLUME), emptyFluidStack(), emptyFluidStack(), emptyFluidStack(), emptyFluidStack(), 1D, 1D);
} }
addFissionFuelIsotopeRecipes("a", "americium", 243, 242); addFissionFuelIsotopeRecipes("a", "americium", 243, 242);
addFissionFuelIsotopeRecipes("cm", "curium", 246, 243, 245, 247); addFissionFuelIsotopeRecipes("cm", "curium", 246, 243, 245, 247);
@ -70,63 +70,63 @@ public class CentrifugeRecipes extends ProcessorRecipeHandler {
// Fuel Reprocessing // Fuel Reprocessing
addReprocessingRecipe("tbu", "uranium_233", 1, "uranium_238", 5, "neptunium_236", 1, "neptunium_237", 1); addReprocessingRecipe("tbu", "uranium_233", 1, "uranium_238", 5, "neptunium_236", 1, "neptunium_237", 1, "strontium_90", "caesium_137", 0.5D, 50);
addReprocessingRecipe("leu_233", "uranium_238", 5, "plutonium_241", 1, "plutonium_242", 1, "americium_243", 1); addReprocessingRecipe("leu_233", "uranium_238", 5, "plutonium_241", 1, "plutonium_242", 1, "americium_243", 1, "strontium_90", "caesium_137", 0.5D, 50);
addReprocessingRecipe("heu_233", "uranium_235", 1, "uranium_238", 2, "plutonium_242", 3, "americium_243", 1); addReprocessingRecipe("heu_233", "uranium_235", 1, "uranium_238", 2, "plutonium_242", 3, "americium_243", 1, "strontium_90", "caesium_137", 1.5D, 50);
addReprocessingRecipe("leu_235", "uranium_238", 4, "plutonium_239", 1, "plutonium_242", 2, "americium_243", 1); addReprocessingRecipe("leu_235", "uranium_238", 4, "plutonium_239", 1, "plutonium_242", 2, "americium_243", 1, "molybdenum", "caesium_137", 0.5D, 50);
addReprocessingRecipe("heu_235", "uranium_238", 3, "neptunium_236", 1, "plutonium_242", 2, "americium_243", 1); addReprocessingRecipe("heu_235", "uranium_238", 3, "neptunium_236", 1, "plutonium_242", 2, "americium_243", 1, "molybdenum", "caesium_137", 1.5D, 50);
addReprocessingRecipe("len_236", "uranium_238", 4, "neptunium_237", 1, "plutonium_241", 1, "plutonium_242", 2); addReprocessingRecipe("len_236", "uranium_238", 4, "neptunium_237", 1, "plutonium_241", 1, "plutonium_242", 2, "molybdenum", "caesium_137", 0.5D, 50);
addReprocessingRecipe("hen_236", "uranium_238", 4, "plutonium_238", 1, "plutonium_241", 1, "plutonium_242", 1); addReprocessingRecipe("hen_236", "uranium_238", 4, "plutonium_238", 1, "plutonium_241", 1, "plutonium_242", 1, "molybdenum", "caesium_137", 1.5D, 50);
addReprocessingRecipe("lep_239", "plutonium_242", 5, "americium_242", 1, "americium_243", 1, "curium_246", 1); addReprocessingRecipe("lep_239", "plutonium_242", 5, "americium_242", 1, "americium_243", 1, "curium_246", 1, "strontium_90", "promethium_147", 0.5D, 50);
addReprocessingRecipe("hep_239", "plutonium_241", 1, "americium_242", 1, "americium_243", 4, "curium_243", 1); addReprocessingRecipe("hep_239", "plutonium_241", 1, "americium_242", 1, "americium_243", 4, "curium_243", 1, "strontium_90", "promethium_147", 1.5D, 50);
addReprocessingRecipe("lep_241", "plutonium_242", 5, "americium_243", 1, "curium_246", 1, "berkelium_247", 1); addReprocessingRecipe("lep_241", "plutonium_242", 5, "americium_243", 1, "curium_246", 1, "berkelium_247", 1, "strontium_90", "promethium_147", 0.5D, 50);
addReprocessingRecipe("hep_241", "americium_241", 1, "americium_242", 1, "americium_243", 3, "curium_246", 2); addReprocessingRecipe("hep_241", "americium_241", 1, "americium_242", 1, "americium_243", 3, "curium_246", 2, "strontium_90", "promethium_147", 1.5D, 50);
addReprocessingRecipe("mix_239", "uranium_238", 4, "plutonium_241", 1, "plutonium_242", 2, "americium_243", 1); addReprocessingRecipe("mix_239", "uranium_238", 4, "plutonium_241", 1, "plutonium_242", 2, "americium_243", 1, "strontium_90", "promethium_147", 0.5D, 50);
addReprocessingRecipe("mix_241", "uranium_238", 3, "plutonium_241", 1, "plutonium_242", 3, "americium_243", 1); addReprocessingRecipe("mix_241", "uranium_238", 3, "plutonium_241", 1, "plutonium_242", 3, "americium_243", 1, "strontium_90", "promethium_147", 0.5D, 50);
addReprocessingRecipe("lea_242", "americium_243", 3, "curium_245", 1, "curium_246", 3, "berkelium_248", 1); addReprocessingRecipe("lea_242", "americium_243", 3, "curium_245", 1, "curium_246", 3, "berkelium_248", 1, "molybdenum", "promethium_147", 0.5D, 50);
addReprocessingRecipe("hea_242", "americium_243", 3, "curium_243", 1, "curium_246", 2, "berkelium_247", 1); addReprocessingRecipe("hea_242", "americium_243", 3, "curium_243", 1, "curium_246", 2, "berkelium_247", 1, "molybdenum", "promethium_147", 1.5D, 50);
addReprocessingRecipe("lecm_243", "curium_246", 4, "curium_247", 1, "berkelium_247", 2, "berkelium_248", 1); addReprocessingRecipe("lecm_243", "curium_246", 4, "curium_247", 1, "berkelium_247", 2, "berkelium_248", 1, "molybdenum", "promethium_147", 0.5D, 50);
addReprocessingRecipe("hecm_243", "curium_245", 1, "curium_246", 3, "berkelium_247", 2, "berkelium_248", 1); addReprocessingRecipe("hecm_243", "curium_245", 1, "curium_246", 3, "berkelium_247", 2, "berkelium_248", 1, "molybdenum", "promethium_147", 1.5D, 50);
addReprocessingRecipe("lecm_245", "curium_246", 4, "curium_247", 1, "berkelium_247", 2, "californium_249", 1); addReprocessingRecipe("lecm_245", "curium_246", 4, "curium_247", 1, "berkelium_247", 2, "californium_249", 1, "molybdenum", "europium_155", 0.5D, 60);
addReprocessingRecipe("hecm_245", "curium_246", 3, "curium_247", 1, "berkelium_247", 2, "californium_249", 1); addReprocessingRecipe("hecm_245", "curium_246", 3, "curium_247", 1, "berkelium_247", 2, "californium_249", 1, "molybdenum", "europium_155", 1.5D, 60);
addReprocessingRecipe("lecm_247", "curium_246", 5, "berkelium_247", 1, "berkelium_248", 1, "californium_249", 1); addReprocessingRecipe("lecm_247", "curium_246", 5, "berkelium_247", 1, "berkelium_248", 1, "californium_249", 1, "molybdenum", "europium_155", 0.5D, 60);
addReprocessingRecipe("hecm_247", "berkelium_247", 4, "berkelium_248", 1, "californium_249", 1, "californium_251", 1); addReprocessingRecipe("hecm_247", "berkelium_247", 4, "berkelium_248", 1, "californium_249", 1, "californium_251", 1, "molybdenum", "europium_155", 1.5D, 60);
addReprocessingRecipe("leb_248", "berkelium_247", 5, "berkelium_248", 1, "californium_249", 1, "californium_251", 1); addReprocessingRecipe("leb_248", "berkelium_247", 5, "berkelium_248", 1, "californium_249", 1, "californium_251", 1, "ruthenium_106", "promethium_147", 0.5D, 60);
addReprocessingRecipe("heb_248", "berkelium_248", 1, "californium_249", 1, "californium_251", 2, "californium_252", 3); addReprocessingRecipe("heb_248", "berkelium_248", 1, "californium_249", 1, "californium_251", 2, "californium_252", 3, "ruthenium_106", "promethium_147", 1.5D, 60);
addReprocessingRecipe("lecf_249", "californium_252", 2, "californium_252", 2, "californium_252", 2, "californium_252", 2); addReprocessingRecipe("lecf_249", "californium_252", 2, "californium_252", 2, "californium_252", 2, "californium_252", 2, "ruthenium_106", "promethium_147", 0.5D, 60);
addReprocessingRecipe("hecf_249", "californium_250", 1, "californium_252", 2, "californium_252", 2, "californium_252", 2); addReprocessingRecipe("hecf_249", "californium_250", 1, "californium_252", 2, "californium_252", 2, "californium_252", 2, "ruthenium_106", "promethium_147", 1.5D, 60);
addReprocessingRecipe("lecf_251", "californium_252", 2, "californium_252", 2, "californium_252", 2, "californium_252", 2); addReprocessingRecipe("lecf_251", "californium_252", 2, "californium_252", 2, "californium_252", 2, "californium_252", 2, "ruthenium_106", "europium_155", 0.5D, 60);
addReprocessingRecipe("hecf_251", "californium_252", 2, "californium_252", 2, "californium_252", 2, "californium_252", 1); addReprocessingRecipe("hecf_251", "californium_252", 2, "californium_252", 2, "californium_252", 2, "californium_252", 1, "ruthenium_106", "europium_155", 1.5D, 60);
} }
public void addCoolantNAKRecipe(String name, int amount) { public void addCoolantNAKRecipe(String name, int amount) {
addRecipe(fluidStack(name + "_nak", INGOT_VOLUME), fluidStack(name, amount), fluidStack("nak", INGOT_VOLUME), emptyFluidStack(), emptyFluidStack(), 0.5D, 1D); addRecipe(fluidStack(name + "_nak", INGOT_VOLUME), fluidStack(name, amount), fluidStack("nak", INGOT_VOLUME), emptyFluidStack(), emptyFluidStack(), emptyFluidStack(), emptyFluidStack(), 0.5D, 1D);
} }
public void addFissionFuelIsotopeRecipes(String suffix, String element, int fertile, int... fissiles) { public void addFissionFuelIsotopeRecipes(String suffix, String element, int fertile, int... fissiles) {
for (int fissile : fissiles) { for (int fissile : fissiles) {
addRecipe(fluidStack("le" + suffix + "_" + fissile, INGOT_VOLUME), fluidStack(element + "_" + fertile, NUGGET_VOLUME * 8), fluidStack(element + "_" + fissile, NUGGET_VOLUME), emptyFluidStack(), emptyFluidStack(), 1D, 1D); addRecipe(fluidStack("le" + suffix + "_" + fissile, INGOT_VOLUME), fluidStack(element + "_" + fertile, NUGGET_VOLUME * 8), fluidStack(element + "_" + fissile, NUGGET_VOLUME), emptyFluidStack(), emptyFluidStack(), emptyFluidStack(), emptyFluidStack(), 1D, 1D);
addRecipe(fluidStack("he" + suffix + "_" + fissile, INGOT_VOLUME), fluidStack(element + "_" + fertile, NUGGET_VOLUME * 6), fluidStack(element + "_" + fissile, NUGGET_VOLUME * 3), emptyFluidStack(), emptyFluidStack(), 1D, 1D); addRecipe(fluidStack("he" + suffix + "_" + fissile, INGOT_VOLUME), fluidStack(element + "_" + fertile, NUGGET_VOLUME * 6), fluidStack(element + "_" + fissile, NUGGET_VOLUME * 3), emptyFluidStack(), emptyFluidStack(), emptyFluidStack(), emptyFluidStack(), 1D, 1D);
} }
} }
public void addFissionFLIBERecipes() { public void addFissionFLIBERecipes() {
for (String element : FISSION_FLUID) { for (String element : FISSION_FLUID) {
addRecipe(fluidStack(element + "_fluoride_flibe", INGOT_VOLUME / 2), fluidStack(element + "_fluoride", INGOT_VOLUME / 2), fluidStack("flibe", INGOT_VOLUME / 2), emptyFluidStack(), emptyFluidStack(), 0.5D, 1D); addRecipe(fluidStack(element + "_fluoride_flibe", INGOT_VOLUME / 2), fluidStack(element + "_fluoride", INGOT_VOLUME / 2), fluidStack("flibe", INGOT_VOLUME / 2), emptyFluidStack(), emptyFluidStack(), emptyFluidStack(), emptyFluidStack(), 0.5D, 1D);
addRecipe(fluidStack("depleted_" + element + "_fluoride_flibe", INGOT_VOLUME / 2), fluidStack("depleted_" + element + "_fluoride", INGOT_VOLUME / 2), fluidStack("flibe", INGOT_VOLUME / 2), emptyFluidStack(), emptyFluidStack(), 0.5D, 1D); addRecipe(fluidStack("depleted_" + element + "_fluoride_flibe", INGOT_VOLUME / 2), fluidStack("depleted_" + element + "_fluoride", INGOT_VOLUME / 2), fluidStack("flibe", INGOT_VOLUME / 2), emptyFluidStack(), emptyFluidStack(), emptyFluidStack(), emptyFluidStack(), 0.5D, 1D);
} }
} }
public void addReprocessingRecipe(String fuel, String out1, int n1, String out2, int n2, String out3, int n3, String out4, int n4) { public void addReprocessingRecipe(String fuel, String out1, int n1, String out2, int n2, String out3, int n3, String out4, int n4, String waste1, String waste2, double w, int r) {
addRecipe(fluidStack("depleted_" + fuel, INGOT_VOLUME), fluidStack(out1, NUGGET_VOLUME * n1), fluidStack(out2, NUGGET_VOLUME * n2), fluidStack(out3, NUGGET_VOLUME * n3), fluidStack(out4, NUGGET_VOLUME * n4), 1D, 1D); addRecipe(fluidStack("depleted_" + fuel, INGOT_VOLUME), fluidStack(out1, NUGGET_VOLUME * n1), fluidStack(out2, NUGGET_VOLUME * n2), chanceFluidStack(waste1, NUGGET_VOLUME, (int) (w * r), NUGGET_VOLUME), fluidStack(out3, NUGGET_VOLUME * n3), fluidStack(out4, NUGGET_VOLUME * n4), chanceFluidStack(waste2, NUGGET_VOLUME, (int) (w * (100 - r)), NUGGET_VOLUME), 1D, 1D);
} }
@Override @Override

View File

@ -7,7 +7,7 @@ import java.util.*;
import com.google.common.collect.Lists; import com.google.common.collect.Lists;
import nc.radiation.RadSources; import nc.radiation.RadSources;
import nc.recipe.ProcessorRecipeHandler; import nc.recipe.*;
import nc.util.*; import nc.util.*;
public class DecayHastenerRecipes extends ProcessorRecipeHandler { public class DecayHastenerRecipes extends ProcessorRecipeHandler {
@ -27,6 +27,12 @@ public class DecayHastenerRecipes extends ProcessorRecipeHandler {
addDecayRecipes("TBP", "TBU", RadSources.TBP); addDecayRecipes("TBP", "TBU", RadSources.TBP);
addDecayRecipes("Protactinium233", "Uranium233", RadSources.PROTACTINIUM_233); addDecayRecipes("Protactinium233", "Uranium233", RadSources.PROTACTINIUM_233);
addDecayRecipes("Strontium90", "Zirconium", RadSources.STRONTIUM_90);
addDecayRecipes("Ruthenium106", "Palladium", RadSources.RUTHENIUM_106);
addDecayRecipes("Caesium137", "Barium", RadSources.CAESIUM_137);
addDecayRecipes("Promethium147", "Neodymium", RadSources.PROMETHIUM_147);
addDecayRecipes("Europium155", "Gadolinium", RadSources.EUROPIUM_155);
addDecayRecipes("Uranium233", "Bismuth", RadSources.URANIUM_233); addDecayRecipes("Uranium233", "Bismuth", RadSources.URANIUM_233);
addDecayRecipes("Uranium235", "Lead", RadSources.URANIUM_235); addDecayRecipes("Uranium235", "Lead", RadSources.URANIUM_235);
addDecayRecipes("Uranium238", "Radium", RadSources.URANIUM_238); addDecayRecipes("Uranium238", "Radium", RadSources.URANIUM_238);
@ -57,12 +63,12 @@ public class DecayHastenerRecipes extends ProcessorRecipeHandler {
addDecayRecipes("Californium252", "Thorium", RadSources.CALIFORNIUM_252); addDecayRecipes("Californium252", "Thorium", RadSources.CALIFORNIUM_252);
} }
private static final List<String> DUSTS = Lists.newArrayList("Lead", "Bismuth", "Radium", "Polonium", "Thorium", "TBP"); private static final List<String> NON_FISSION = Lists.newArrayList("Lead", "Bismuth", "Radium", "Polonium", "Thorium", "TBP");
public void addDecayRecipes(String input, String output, double radiation) { public void addDecayRecipes(String input, String output, double radiation) {
String inputName = (OreDictHelper.oreExists("ingot" + input) ? "ingot" : "dust") + input; String inputName = (OreDictHelper.oreExists("ingot" + input) ? "ingot" : "dust") + input;
double timeMult = NCMath.roundTo(Z * (radiation >= 1D ? F / Math.log1p(Math.log1p(radiation)) : Math.log1p(Math.log1p(1D / radiation)) / F), 5D / processor_time[2]); double timeMult = NCMath.roundTo(RecipeHelper.getDecayTimeMultiplier(1E-6D, radiation, 3.16E-7D), 5D / processor_time[2]);
if (DUSTS.contains(output)) { if (NON_FISSION.contains(output)) {
addRecipe(Lists.newArrayList(inputName, inputName + "Oxide", inputName + "Nitride"), "dust" + output, timeMult, 1D, radiation); addRecipe(Lists.newArrayList(inputName, inputName + "Oxide", inputName + "Nitride"), "dust" + output, timeMult, 1D, radiation);
} }
else { else {
@ -72,8 +78,6 @@ public class DecayHastenerRecipes extends ProcessorRecipeHandler {
} }
} }
private static final double F = Math.log1p(Math.log(2D)), Z = 0.1674477985420331D;
@Override @Override
public List fixExtras(List extras) { public List fixExtras(List extras) {
List fixed = new ArrayList(3); List fixed = new ArrayList(3);

View File

@ -19,7 +19,7 @@ public class ExtractorRecipes extends ProcessorRecipeHandler {
@Override @Override
public void addRecipes() { public void addRecipes() {
addRecipe(Lists.newArrayList("turfMoon", RegistryHelper.getBlock("advancedrocketry:moonturf"), RegistryHelper.getBlock("advancedrocketry:moonturf_dark")), Blocks.GRAVEL, fluidStack("helium3", 250), 0.5D, 1.5D); addRecipe(Lists.newArrayList("turfMoon", RegistryHelper.getBlock("advancedrocketry:moonturf"), RegistryHelper.getBlock("advancedrocketry:moonturf_dark")), Blocks.GRAVEL, fluidStack("helium_3", 250), 0.5D, 1.5D);
// addRecipe(new ItemStack(NCBlocks.cooler, 1, 1), new ItemStack(NCBlocks.cooler, 1, 0), fluidStack("water", BUCKET_VOLUME), 1D, 1D); // addRecipe(new ItemStack(NCBlocks.cooler, 1, 1), new ItemStack(NCBlocks.cooler, 1, 0), fluidStack("water", BUCKET_VOLUME), 1D, 1D);
// addRecipe(new ItemStack(NCBlocks.cooler, 1, 8), new ItemStack(NCBlocks.cooler, 1, 0), fluidStack("liquid_helium", BUCKET_VOLUME), 1D, 1D); // addRecipe(new ItemStack(NCBlocks.cooler, 1, 8), new ItemStack(NCBlocks.cooler, 1, 0), fluidStack("liquid_helium", BUCKET_VOLUME), 1D, 1D);

View File

@ -8,58 +8,58 @@ import nc.util.*;
public class FuelReprocessorRecipes extends ProcessorRecipeHandler { public class FuelReprocessorRecipes extends ProcessorRecipeHandler {
public FuelReprocessorRecipes() { public FuelReprocessorRecipes() {
super("fuel_reprocessor", 1, 0, 6, 0); super("fuel_reprocessor", 1, 0, 8, 0);
} }
@Override @Override
public void addRecipes() { public void addRecipes() {
addReprocessingRecipes("TBU", "Uranium233", 1, "Uranium238", 5, "Neptunium236", 1, "Neptunium237", 1); addReprocessingRecipes("TBU", "Uranium233", 1, "Uranium238", 5, "Neptunium236", 1, "Neptunium237", 1, "Strontium90", "Caesium137", 0.5D, 50);
addReprocessingRecipes("LEU233", "Uranium238", 5, "Plutonium241", 1, "Plutonium242", 1, "Americium243", 1); addReprocessingRecipes("LEU233", "Uranium238", 5, "Plutonium241", 1, "Plutonium242", 1, "Americium243", 1, "Strontium90", "Caesium137", 0.5D, 50);
addReprocessingRecipes("HEU233", "Uranium235", 1, "Uranium238", 2, "Plutonium242", 3, "Americium243", 1); addReprocessingRecipes("HEU233", "Uranium235", 1, "Uranium238", 2, "Plutonium242", 3, "Americium243", 1, "Strontium90", "Caesium137", 1.5D, 50);
addReprocessingRecipes("LEU235", "Uranium238", 4, "Plutonium239", 1, "Plutonium242", 2, "Americium243", 1); addReprocessingRecipes("LEU235", "Uranium238", 4, "Plutonium239", 1, "Plutonium242", 2, "Americium243", 1, "Molybdenum", "Caesium137", 0.5D, 50);
addReprocessingRecipes("HEU235", "Uranium238", 3, "Neptunium236", 1, "Plutonium242", 2, "Americium243", 1); addReprocessingRecipes("HEU235", "Uranium238", 3, "Neptunium236", 1, "Plutonium242", 2, "Americium243", 1, "Molybdenum", "Caesium137", 1.5D, 50);
addReprocessingRecipes("LEN236", "Uranium238", 4, "Neptunium237", 1, "Plutonium241", 1, "Plutonium242", 2); addReprocessingRecipes("LEN236", "Uranium238", 4, "Neptunium237", 1, "Plutonium241", 1, "Plutonium242", 2, "Molybdenum", "Caesium137", 0.5D, 50);
addReprocessingRecipes("HEN236", "Uranium238", 4, "Plutonium238", 1, "Plutonium241", 1, "Plutonium242", 1); addReprocessingRecipes("HEN236", "Uranium238", 4, "Plutonium238", 1, "Plutonium241", 1, "Plutonium242", 1, "Molybdenum", "Caesium137", 1.5D, 50);
addReprocessingRecipes("LEP239", "Plutonium242", 5, "Americium242", 1, "Americium243", 1, "Curium246", 1); addReprocessingRecipes("LEP239", "Plutonium242", 5, "Americium242", 1, "Americium243", 1, "Curium246", 1, "Strontium90", "Promethium147", 0.5D, 50);
addReprocessingRecipes("HEP239", "Plutonium241", 1, "Americium242", 1, "Americium243", 4, "Curium243", 1); addReprocessingRecipes("HEP239", "Plutonium241", 1, "Americium242", 1, "Americium243", 4, "Curium243", 1, "Strontium90", "Promethium147", 1.5D, 50);
addReprocessingRecipes("LEP241", "Plutonium242", 5, "Americium243", 1, "Curium246", 1, "Berkelium247", 1); addReprocessingRecipes("LEP241", "Plutonium242", 5, "Americium243", 1, "Curium246", 1, "Berkelium247", 1, "Strontium90", "Promethium147", 0.5D, 50);
addReprocessingRecipes("HEP241", "Americium241", 1, "Americium242", 1, "Americium243", 3, "Curium246", 2); addReprocessingRecipes("HEP241", "Americium241", 1, "Americium242", 1, "Americium243", 3, "Curium246", 2, "Strontium90", "Promethium147", 1.5D, 50);
addReprocessingRecipes("MIX239", "Uranium238", 4, "Plutonium241", 1, "Plutonium242", 2, "Americium243", 1); addReprocessingRecipes("MIX239", "Uranium238", 4, "Plutonium241", 1, "Plutonium242", 2, "Americium243", 1, "Strontium90", "Promethium147", 0.5D, 50);
addReprocessingRecipes("MIX241", "Uranium238", 3, "Plutonium241", 1, "Plutonium242", 3, "Americium243", 1); addReprocessingRecipes("MIX241", "Uranium238", 3, "Plutonium241", 1, "Plutonium242", 3, "Americium243", 1, "Strontium90", "Promethium147", 0.5D, 50);
addReprocessingRecipes("LEA242", "Americium243", 3, "Curium245", 1, "Curium246", 3, "Berkelium248", 1); addReprocessingRecipes("LEA242", "Americium243", 3, "Curium245", 1, "Curium246", 3, "Berkelium248", 1, "Molybdenum", "Promethium147", 0.5D, 50);
addReprocessingRecipes("HEA242", "Americium243", 3, "Curium243", 1, "Curium246", 2, "Berkelium247", 1); addReprocessingRecipes("HEA242", "Americium243", 3, "Curium243", 1, "Curium246", 2, "Berkelium247", 1, "Molybdenum", "Promethium147", 1.5D, 50);
addReprocessingRecipes("LECm243", "Curium246", 4, "Curium247", 1, "Berkelium247", 2, "Berkelium248", 1); addReprocessingRecipes("LECm243", "Curium246", 4, "Curium247", 1, "Berkelium247", 2, "Berkelium248", 1, "Molybdenum", "Promethium147", 0.5D, 50);
addReprocessingRecipes("HECm243", "Curium245", 1, "Curium246", 3, "Berkelium247", 2, "Berkelium248", 1); addReprocessingRecipes("HECm243", "Curium245", 1, "Curium246", 3, "Berkelium247", 2, "Berkelium248", 1, "Molybdenum", "Promethium147", 1.5D, 50);
addReprocessingRecipes("LECm245", "Curium246", 4, "Curium247", 1, "Berkelium247", 2, "Californium249", 1); addReprocessingRecipes("LECm245", "Curium246", 4, "Curium247", 1, "Berkelium247", 2, "Californium249", 1, "Molybdenum", "Europium155", 0.5D, 60);
addReprocessingRecipes("HECm245", "Curium246", 3, "Curium247", 1, "Berkelium247", 2, "Californium249", 1); addReprocessingRecipes("HECm245", "Curium246", 3, "Curium247", 1, "Berkelium247", 2, "Californium249", 1, "Molybdenum", "Europium155", 1.5D, 60);
addReprocessingRecipes("LECm247", "Curium246", 5, "Berkelium247", 1, "Berkelium248", 1, "Californium249", 1); addReprocessingRecipes("LECm247", "Curium246", 5, "Berkelium247", 1, "Berkelium248", 1, "Californium249", 1, "Molybdenum", "Europium155", 0.5D, 60);
addReprocessingRecipes("HECm247", "Berkelium247", 4, "Berkelium248", 1, "Californium249", 1, "Californium251", 1); addReprocessingRecipes("HECm247", "Berkelium247", 4, "Berkelium248", 1, "Californium249", 1, "Californium251", 1, "Molybdenum", "Europium155", 1.5D, 60);
addReprocessingRecipes("LEB248", "Berkelium247", 5, "Berkelium248", 1, "Californium249", 1, "Californium251", 1); addReprocessingRecipes("LEB248", "Berkelium247", 5, "Berkelium248", 1, "Californium249", 1, "Californium251", 1, "Ruthenium106", "Promethium147", 0.5D, 60);
addReprocessingRecipes("HEB248", "Berkelium248", 1, "Californium249", 1, "Californium251", 2, "Californium252", 3); addReprocessingRecipes("HEB248", "Berkelium248", 1, "Californium249", 1, "Californium251", 2, "Californium252", 3, "Ruthenium106", "Promethium147", 1.5D, 60);
addReprocessingRecipes("LECf249", "Californium252", 2, "Californium252", 2, "Californium252", 2, "Californium252", 2); addReprocessingRecipes("LECf249", "Californium252", 2, "Californium252", 2, "Californium252", 2, "Californium252", 2, "Ruthenium106", "Promethium147", 0.5D, 60);
addReprocessingRecipes("HECf249", "Californium250", 1, "Californium252", 2, "Californium252", 2, "Californium252", 2); addReprocessingRecipes("HECf249", "Californium250", 1, "Californium252", 2, "Californium252", 2, "Californium252", 2, "Ruthenium106", "Promethium147", 1.5D, 60);
addReprocessingRecipes("LECf251", "Californium252", 2, "Californium252", 2, "Californium252", 2, "Californium252", 2); addReprocessingRecipes("LECf251", "Californium252", 2, "Californium252", 2, "Californium252", 2, "Californium252", 2, "Ruthenium106", "Europium155", 0.5D, 60);
addReprocessingRecipes("HECf251", "Californium252", 2, "Californium252", 2, "Californium252", 2, "Californium252", 1); addReprocessingRecipes("HECf251", "Californium252", 2, "Californium252", 2, "Californium252", 2, "Californium252", 1, "Ruthenium106", "Europium155", 1.5D, 60);
// IC2 // IC2
addRecipe("depletedFuelIC2U", RegistryHelper.itemStackFromRegistry("ic2:nuclear:2", 2), RegistryHelper.itemStackFromRegistry("ic2:nuclear:2", 1), emptyItemStack(), RegistryHelper.itemStackFromRegistry("ic2:nuclear:2", 1), RegistryHelper.itemStackFromRegistry("ic2:nuclear:7", 1), emptyItemStack(), 1D, 1D); addRecipe("depletedFuelIC2U", RegistryHelper.itemStackFromRegistry("ic2:nuclear:2", 2), RegistryHelper.itemStackFromRegistry("ic2:nuclear:2", 1), RegistryHelper.itemStackFromRegistry("ic2:nuclear:2", 1), RegistryHelper.itemStackFromRegistry("ic2:nuclear:7", 1), emptyItemStack(), emptyItemStack(), emptyItemStack(), emptyItemStack(), 1D, 1D);
addRecipe("depletedFuelIC2MOX", RegistryHelper.itemStackFromRegistry("ic2:nuclear:7", 7), RegistryHelper.itemStackFromRegistry("ic2:nuclear:7", 7), emptyItemStack(), RegistryHelper.itemStackFromRegistry("ic2:nuclear:7", 7), RegistryHelper.itemStackFromRegistry("ic2:nuclear:7", 7), emptyItemStack(), 1D, 1D); addRecipe("depletedFuelIC2MOX", RegistryHelper.itemStackFromRegistry("ic2:nuclear:7", 7), RegistryHelper.itemStackFromRegistry("ic2:nuclear:7", 7), RegistryHelper.itemStackFromRegistry("ic2:nuclear:7", 7), RegistryHelper.itemStackFromRegistry("ic2:nuclear:7", 7), emptyItemStack(), emptyItemStack(), emptyItemStack(), emptyItemStack(), 1D, 1D);
} }
public void addReprocessingRecipes(String fuel, String out1, int n1, String out2, int n2, String out3, int n3, String out4, int n4) { public void addReprocessingRecipes(String fuel, String out1, int n1, String out2, int n2, String out3, int n3, String out4, int n4, String waste1, String waste2, double w, int r) {
int extraReturn = 9 - n1 - n2 - n3 - n4; int extraReturn = 9 - n1 - n2 - n3 - n4;
addRecipe(oreStack("ingotDepleted" + fuel + "TRISO", 9), oreStack("ingot" + out1 + "Carbide", n1), oreStack("ingot" + out2 + "Carbide", n2), oreStack("dustGraphite", extraReturn + 2), oreStack("ingot" + out3 + "Carbide", n3), oreStack("ingot" + out4 + "Carbide", n4), oreStack(OreDictHelper.oreExists("dustSiliconCarbide") ? "dustSiliconCarbide" : "ingotSiliconCarbide", 1), 1D, 1D); addRecipe(oreStack("ingotDepleted" + fuel + "TRISO", 9), oreStack("ingot" + out1 + "Carbide", n1), oreStack("ingot" + out2 + "Carbide", n2), chanceOreStack("dust" + waste1, 1, (int) (w * r)), oreStack("dustGraphite", extraReturn + 2), oreStack("ingot" + out3 + "Carbide", n3), oreStack("ingot" + out4 + "Carbide", n4), chanceOreStack("dust" + waste2, 1, (int) (w * (100 - r))), oreStack(OreDictHelper.oreExists("dustSiliconCarbide") ? "dustSiliconCarbide" : "ingotSiliconCarbide", 1), 1D, 1D);
addRecipe(oreStack("ingotDepleted" + fuel + "Oxide", 9), oreStack("ingot" + out1 + "Oxide", n1), oreStack("ingot" + out2 + "Oxide", n2), emptyItemStack(), oreStack("ingot" + out3 + "Oxide", n3), oreStack("ingot" + out4 + "Oxide", n4), emptyItemStack(), 1D, 1D); addRecipe(oreStack("ingotDepleted" + fuel + "Oxide", 9), oreStack("ingot" + out1 + "Oxide", n1), oreStack("ingot" + out2 + "Oxide", n2), chanceOreStack("dust" + waste1, 1, (int) (w * r)), emptyItemStack(), oreStack("ingot" + out3 + "Oxide", n3), oreStack("ingot" + out4 + "Oxide", n4), chanceOreStack("dust" + waste2, 1, (int) (w * (100 - r))), emptyItemStack(), 1D, 1D);
addRecipe(oreStack("ingotDepleted" + fuel + "Nitride", 9), oreStack("ingot" + out1 + "Nitride", n1), oreStack("ingot" + out2 + "Nitride", n2), emptyItemStack(), oreStack("ingot" + out3 + "Nitride", n3), oreStack("ingot" + out4 + "Nitride", n4), emptyItemStack(), 1D, 1D); addRecipe(oreStack("ingotDepleted" + fuel + "Nitride", 9), oreStack("ingot" + out1 + "Nitride", n1), oreStack("ingot" + out2 + "Nitride", n2), chanceOreStack("dust" + waste1, 1, (int) (w * r)), emptyItemStack(), oreStack("ingot" + out3 + "Nitride", n3), oreStack("ingot" + out4 + "Nitride", n4), chanceOreStack("dust" + waste2, 1, (int) (w * (100 - r))), emptyItemStack(), 1D, 1D);
addRecipe(oreStack("ingotDepleted" + fuel + "ZA", 9), oreStack("ingot" + out1 + "ZA", n1), oreStack("ingot" + out2 + "ZA", n2), oreStack("dustZirconium", extraReturn), oreStack("ingot" + out3 + "ZA", n3), oreStack("ingot" + out4 + "ZA", n4), emptyItemStack(), 1D, 1D); addRecipe(oreStack("ingotDepleted" + fuel + "ZA", 9), oreStack("ingot" + out1 + "ZA", n1), oreStack("ingot" + out2 + "ZA", n2), chanceOreStack("dust" + waste1, 1, (int) (w * r)), oreStack("dustZirconium", extraReturn), oreStack("ingot" + out3 + "ZA", n3), oreStack("ingot" + out4 + "ZA", n4), chanceOreStack("dust" + waste2, 1, (int) (w * (100 - r))), emptyItemStack(), 1D, 1D);
} }
@Override @Override

View File

@ -34,15 +34,15 @@ public class MelterRecipes extends ProcessorRecipeHandler {
addRecipe(Lists.newArrayList("ingotSilicon", "itemSilicon"), fluidStack("silicon", INGOT_VOLUME), 1D, 1D); addRecipe(Lists.newArrayList("ingotSilicon", "itemSilicon"), fluidStack("silicon", INGOT_VOLUME), 1D, 1D);
addIngotMeltingRecipes("boron10"); addIngotMeltingRecipes("boron_10");
addIngotMeltingRecipes("boron11"); addIngotMeltingRecipes("boron_11");
addIngotMeltingRecipes("lithium6"); addIngotMeltingRecipes("lithium_6");
addIngotMeltingRecipes("lithium7"); addIngotMeltingRecipes("lithium_7");
addIngotMeltingRecipes("hardCarbon", "hard_carbon"); addIngotMeltingRecipes("HardCarbon", "hard_carbon");
addIngotMeltingRecipes("manganeseDioxide", "manganese_dioxide"); addIngotMeltingRecipes("ManganeseDioxide", "manganese_dioxide");
addIngotMeltingRecipes("alugentum"); addIngotMeltingRecipes("alugentum");
addIngotMeltingRecipes("leadPlatinum", "lead_platinum"); addIngotMeltingRecipes("LeadPlatinum", "lead_platinum");
addRecipe("blockQuartz", fluidStack("quartz", GEM_VOLUME * 4), 4D, 1D); addRecipe("blockQuartz", fluidStack("quartz", GEM_VOLUME * 4), 4D, 1D);
addRecipe("blockLapis", fluidStack("lapis", GEM_BLOCK_VOLUME), 9D, 1D); addRecipe("blockLapis", fluidStack("lapis", GEM_BLOCK_VOLUME), 9D, 1D);
@ -88,25 +88,25 @@ public class MelterRecipes extends ProcessorRecipeHandler {
addRecipe("blockGraphite", fluidStack("coal", COAL_BLOCK_VOLUME), 4.5D, 1D); addRecipe("blockGraphite", fluidStack("coal", COAL_BLOCK_VOLUME), 4.5D, 1D);
// EnderIO // EnderIO
addIngotMeltingRecipes("electricalSteel", "electrical_steel"); addIngotMeltingRecipes("ElectricalSteel", "electrical_steel");
addIngotMeltingRecipes("energeticAlloy", "energetic_alloy"); addIngotMeltingRecipes("EnergeticAlloy", "energetic_alloy");
addIngotMeltingRecipes("vibrantAlloy", "vibrant_alloy"); addIngotMeltingRecipes("VibrantAlloy", "vibrant_alloy");
addIngotMeltingRecipes("redstoneAlloy", "redstone_alloy"); addIngotMeltingRecipes("RedstoneAlloy", "redstone_alloy");
addIngotMeltingRecipes("conductiveIron", "conductive_iron"); addIngotMeltingRecipes("ConductiveIron", "conductive_iron");
addIngotMeltingRecipes("pulsatingIron", "pulsating_iron"); addIngotMeltingRecipes("PulsatingIron", "pulsating_iron");
addIngotMeltingRecipes("darkSteel", "dark_steel"); addIngotMeltingRecipes("DarkSteel", "dark_steel");
addIngotMeltingRecipes("soularium", "soularium"); addIngotMeltingRecipes("Soularium", "soularium");
addIngotMeltingRecipes("endSteel", "end_steel"); addIngotMeltingRecipes("EndSteel", "end_steel");
addIngotMeltingRecipes("constructionAlloy", "construction_alloy"); addIngotMeltingRecipes("ConstructionAlloy", "construction_alloy");
// Endergy // Endergy
addIngotMeltingRecipes("crudeSteel", "crude_steel"); addIngotMeltingRecipes("CrudeSteel", "crude_steel");
addIngotMeltingRecipes("crystallineAlloy", "crystalline_alloy"); addIngotMeltingRecipes("CrystallineAlloy", "crystalline_alloy");
addIngotMeltingRecipes("melodicAlloy", "melodic_alloy"); addIngotMeltingRecipes("MelodicAlloy", "melodic_alloy");
addIngotMeltingRecipes("stellarAlloy", "stellar_alloy"); addIngotMeltingRecipes("StellarAlloy", "stellar_alloy");
addIngotMeltingRecipes("crystallinePinkSlime", "crystalline_pink_slime"); addIngotMeltingRecipes("CrystallinePinkSlime", "crystalline_pink_slime");
addIngotMeltingRecipes("energeticSilver", "energetic_silver"); addIngotMeltingRecipes("EnergeticSilver", "energetic_silver");
addIngotMeltingRecipes("vividAlloy", "vivid_alloy"); addIngotMeltingRecipes("VividAlloy", "vivid_alloy");
// Mekanism // Mekanism
addRecipe(Lists.newArrayList("itemSalt", "dustSalt"), fluidStack("brine", 15), 0.25D, 0.5D); addRecipe(Lists.newArrayList("itemSalt", "dustSalt"), fluidStack("brine", 15), 0.25D, 0.5D);
@ -121,8 +121,8 @@ public class MelterRecipes extends ProcessorRecipeHandler {
addIngotMeltingRecipes("elementium"); addIngotMeltingRecipes("elementium");
// PlusTiC - Mekanism // PlusTiC - Mekanism
addIngotMeltingRecipes("refinedObsidian", "refinedobsidian"); addIngotMeltingRecipes("RefinedObsidian", "refinedobsidian");
addIngotMeltingRecipes("refinedGlowstone", "refinedglowstone"); addIngotMeltingRecipes("RefinedGlowstone", "refinedglowstone");
// PlusTiC - Psi // PlusTiC - Psi
addIngotMeltingRecipes("psi"); addIngotMeltingRecipes("psi");
@ -156,10 +156,16 @@ public class MelterRecipes extends ProcessorRecipeHandler {
// Fission Materials // Fission Materials
addFissionMeltingRecipes(); addFissionMeltingRecipes();
addIngotMeltingRecipes("Strontium90", "strontium_90");
addIngotMeltingRecipes("Molybdenum", "molybdenum");
addIngotMeltingRecipes("Ruthenium106", "ruthenium_106");
addIngotMeltingRecipes("Caesium137", "caesium_137");
addIngotMeltingRecipes("Promethium147", "promethium_147");
addIngotMeltingRecipes("Europium155", "europium_155");
} }
public void addIngotMeltingRecipes(String oreName, String fluidName) { public void addIngotMeltingRecipes(String oreName, String fluidName) {
oreName = StringHelper.capitalize(oreName);
addRecipe("ore" + oreName, fluidStack(fluidName, INGOT_ORE_VOLUME), 1.25D, 1.5D); addRecipe("ore" + oreName, fluidStack(fluidName, INGOT_ORE_VOLUME), 1.25D, 1.5D);
addRecipe(Lists.newArrayList("ingot" + oreName, "dust" + oreName), fluidStack(fluidName, INGOT_VOLUME), 1D, 1D); addRecipe(Lists.newArrayList("ingot" + oreName, "dust" + oreName), fluidStack(fluidName, INGOT_VOLUME), 1D, 1D);
addRecipe(Lists.newArrayList("nugget" + oreName, "tinyDust" + oreName), fluidStack(fluidName, NUGGET_VOLUME), 1D / 9D, 1D); addRecipe(Lists.newArrayList("nugget" + oreName, "tinyDust" + oreName), fluidStack(fluidName, NUGGET_VOLUME), 1D / 9D, 1D);
@ -167,14 +173,17 @@ public class MelterRecipes extends ProcessorRecipeHandler {
} }
public void addIngotMeltingRecipes(String name) { public void addIngotMeltingRecipes(String name) {
addIngotMeltingRecipes(name, name); addIngotMeltingRecipes(StringHelper.capitalize(name), name);
}
public void addGemMeltingRecipes(String oreName, String fluidName) {
addRecipe("ore" + oreName, fluidStack(fluidName, GEM_ORE_VOLUME), 1.25D, 1.5D);
addRecipe(Lists.newArrayList("gem" + oreName, "dust" + oreName), fluidStack(fluidName, GEM_VOLUME), 1D, 1D);
addRecipe(Lists.newArrayList("nugget" + oreName, "tinyDust" + oreName), fluidStack(fluidName, GEM_NUGGET_VOLUME), 1D / 9D, 1D);
} }
public void addGemMeltingRecipes(String name) { public void addGemMeltingRecipes(String name) {
String oreName = StringHelper.capitalize(name); addGemMeltingRecipes(StringHelper.capitalize(name), name);
addRecipe("ore" + oreName, fluidStack(name, GEM_ORE_VOLUME), 1.25D, 1.5D);
addRecipe(Lists.newArrayList("gem" + oreName, "dust" + oreName), fluidStack(name, GEM_VOLUME), 1D, 1D);
addRecipe(Lists.newArrayList("nugget" + oreName, "tinyDust" + oreName), fluidStack(name, GEM_NUGGET_VOLUME), 1D / 9D, 1D);
} }
public void addFissionMeltingRecipes() { public void addFissionMeltingRecipes() {

View File

@ -18,8 +18,8 @@ public class SaltMixerRecipes extends ProcessorRecipeHandler {
addRecipe(fluidStack("lif", INGOT_VOLUME), fluidStack("bef2", INGOT_VOLUME / 2), fluidStack("flibe", INGOT_VOLUME / 2), 0.5D, 1D); addRecipe(fluidStack("lif", INGOT_VOLUME), fluidStack("bef2", INGOT_VOLUME / 2), fluidStack("flibe", INGOT_VOLUME / 2), 0.5D, 1D);
addRecipe(fluidStack("sodium", INGOT_VOLUME / 2), fluidStack("potassium", INGOT_VOLUME * 2), fluidStack("nak", INGOT_VOLUME), 1D, 1D); addRecipe(fluidStack("sodium", INGOT_VOLUME / 2), fluidStack("potassium", INGOT_VOLUME * 2), fluidStack("nak", INGOT_VOLUME), 1D, 1D);
addRecipe(fluidStack("boron11", INGOT_VOLUME), fluidStack("boron10", NUGGET_VOLUME * 3), fluidStack("boron", NUGGET_VOLUME * 12), 4D / 3D, 1D); addRecipe(fluidStack("boron_11", INGOT_VOLUME), fluidStack("boron_10", NUGGET_VOLUME * 3), fluidStack("boron", NUGGET_VOLUME * 12), 4D / 3D, 1D);
addRecipe(fluidStack("lithium7", INGOT_VOLUME), fluidStack("lithium6", NUGGET_VOLUME), fluidStack("lithium", NUGGET_VOLUME * 10), 10D / 9D, 1D); addRecipe(fluidStack("lithium_7", INGOT_VOLUME), fluidStack("lithium_6", NUGGET_VOLUME), fluidStack("lithium", NUGGET_VOLUME * 10), 10D / 9D, 1D);
addRecipe(fluidStack("steel", INGOT_VOLUME / 2), fluidStack("boron", INGOT_VOLUME / 2), fluidStack("ferroboron", INGOT_VOLUME), 1D, 1D); addRecipe(fluidStack("steel", INGOT_VOLUME / 2), fluidStack("boron", INGOT_VOLUME / 2), fluidStack("ferroboron", INGOT_VOLUME), 1D, 1D);
addRecipe(fluidStack("ferroboron", INGOT_VOLUME / 2), fluidStack("lithium", INGOT_VOLUME / 2), fluidStack("tough", INGOT_VOLUME), 1D, 1D); addRecipe(fluidStack("ferroboron", INGOT_VOLUME / 2), fluidStack("lithium", INGOT_VOLUME / 2), fluidStack("tough", INGOT_VOLUME), 1D, 1D);

View File

@ -270,8 +270,8 @@ public class CraftingRecipeHandler {
addShapedOreRecipe(new ItemStack(NCBlocks.solid_fission_sink2, 1, 14), new Object[] {" E ", "ESE", " E ", 'S', "emptyHeatSink", 'E', "ingotEnderium"}); addShapedOreRecipe(new ItemStack(NCBlocks.solid_fission_sink2, 1, 14), new Object[] {" E ", "ESE", " E ", 'S', "emptyHeatSink", 'E', "ingotEnderium"});
addShapedOreRecipe(new ItemStack(NCBlocks.solid_fission_sink2, 1, 15), new Object[] {" C ", "CSC", " C ", 'S', "emptyHeatSink", 'C', "dustCryotheum"}); addShapedOreRecipe(new ItemStack(NCBlocks.solid_fission_sink2, 1, 15), new Object[] {" C ", "CSC", " C ", 'S', "emptyHeatSink", 'C', "dustCryotheum"});
addShapedOreRecipe(NCBlocks.salt_fission_controller, new Object[] {"PEP", "HFH", "PEP", 'P', "plateElite", 'E', "ingotExtreme", 'H', "ingotHardCarbon", 'F', "steelFrame"}); addShapedOreRecipe(NCBlocks.salt_fission_controller, new Object[] {"PMP", "EFE", "PMP", 'P', "plateElite", 'E', "ingotExtreme", 'M', "ingotZirconiumMolybdenum", 'F', "steelFrame"});
addShapedOreRecipe(new ItemStack(NCBlocks.salt_fission_vessel, 4), new Object[] {"PEP", "ZFZ", "PEP", 'P', "plateElite", 'E', "ingotExtreme", 'Z', "ingotZircaloy", 'F', "steelFrame"}); addShapedOreRecipe(new ItemStack(NCBlocks.salt_fission_vessel, 4), new Object[] {"PMP", "ZFZ", "PMP", 'P', "plateElite", 'M', "ingotZirconiumMolybdenum", 'Z', "ingotZircaloy", 'F', "steelFrame"});
addShapedOreRecipe(new ItemStack(NCBlocks.salt_fission_heater, 8, 0), new Object[] {"PEP", "TFT", "PEP", 'P', "plateElite", 'E', "ingotExtreme", 'T', "ingotThermoconducting", 'F', "steelFrame"}); addShapedOreRecipe(new ItemStack(NCBlocks.salt_fission_heater, 8, 0), new Object[] {"PEP", "TFT", "PEP", 'P', "plateElite", 'E', "ingotExtreme", 'T', "ingotThermoconducting", 'F', "steelFrame"});
addShapedOreRecipe(new ItemStack(NCBlocks.salt_fission_heater, 1, 1), new Object[] {" I ", "IHI", " I ", 'H', new ItemStack(NCBlocks.salt_fission_heater, 1, 0), 'I', "ingotIron"}); addShapedOreRecipe(new ItemStack(NCBlocks.salt_fission_heater, 1, 1), new Object[] {" I ", "IHI", " I ", 'H', new ItemStack(NCBlocks.salt_fission_heater, 1, 0), 'I', "ingotIron"});
addShapedOreRecipe(new ItemStack(NCBlocks.salt_fission_heater, 1, 2), new Object[] {"RRR", "RHR", "RRR", 'H', new ItemStack(NCBlocks.salt_fission_heater, 1, 0), 'R', "dustRedstone"}); addShapedOreRecipe(new ItemStack(NCBlocks.salt_fission_heater, 1, 2), new Object[] {"RRR", "RHR", "RRR", 'H', new ItemStack(NCBlocks.salt_fission_heater, 1, 0), 'R', "dustRedstone"});

View File

@ -30,7 +30,7 @@ public class TileProcessor {
public static class FuelReprocessor extends TileItemProcessor { public static class FuelReprocessor extends TileItemProcessor {
public FuelReprocessor() { public FuelReprocessor() {
super("fuel_reprocessor", 1, 6, defaultItemSorptions(1, 6, true), processor_time[3], processor_power[3], false, NCRecipes.fuel_reprocessor, 4, 12); super("fuel_reprocessor", 1, 8, defaultItemSorptions(1, 8, true), processor_time[3], processor_power[3], false, NCRecipes.fuel_reprocessor, 4, 12);
} }
} }
@ -128,7 +128,7 @@ public class TileProcessor {
public static class Centrifuge extends TileFluidProcessor { public static class Centrifuge extends TileFluidProcessor {
public Centrifuge() { public Centrifuge() {
super("centrifuge", 1, 4, defaultItemSorptions(true), defaultTankCapacities(16000, 1, 4), defaultTankSorptions(1, 4), NCRecipes.centrifuge_valid_fluids, processor_time[17], processor_power[17], false, NCRecipes.centrifuge, 18, 12); super("centrifuge", 1, 6, defaultItemSorptions(true), defaultTankCapacities(16000, 1, 6), defaultTankSorptions(1, 6), NCRecipes.centrifuge_valid_fluids, processor_time[17], processor_power[17], false, NCRecipes.centrifuge, 18, 12);
} }
} }

View File

@ -83,10 +83,6 @@ public class NCMath {
return out; return out;
} }
public static double round(double value, int decimal) {
return roundTo(value, Math.pow(10D, -decimal));
}
public static int kroneckerDelta(int... indices) { public static int kroneckerDelta(int... indices) {
for (int i = 0; i < indices.length; i++) { for (int i = 0; i < indices.length; i++) {
if (indices[i] != indices[(i + 1) % indices.length]) { if (indices[i] != indices[(i + 1) % indices.length]) {

View File

@ -32,10 +32,10 @@
"fluid": "tritium" "fluid": "tritium"
} }
}, },
"fluid_helium3": { "fluid_helium_3": {
"model": "forge:fluid", "model": "forge:fluid",
"custom": { "custom": {
"fluid": "helium3" "fluid": "helium_3"
} }
}, },
"fluid_helium": { "fluid_helium": {
@ -140,16 +140,16 @@
"fluid": "lithium" "fluid": "lithium"
} }
}, },
"fluid_lithium6": { "fluid_lithium_6": {
"model": "forge:fluid", "model": "forge:fluid",
"custom": { "custom": {
"fluid": "lithium6" "fluid": "lithium_6"
} }
}, },
"fluid_lithium7": { "fluid_lithium_7": {
"model": "forge:fluid", "model": "forge:fluid",
"custom": { "custom": {
"fluid": "lithium7" "fluid": "lithium_7"
} }
}, },
"fluid_boron": { "fluid_boron": {
@ -158,16 +158,16 @@
"fluid": "boron" "fluid": "boron"
} }
}, },
"fluid_boron10": { "fluid_boron_10": {
"model": "forge:fluid", "model": "forge:fluid",
"custom": { "custom": {
"fluid": "boron10" "fluid": "boron_10"
} }
}, },
"fluid_boron11": { "fluid_boron_11": {
"model": "forge:fluid", "model": "forge:fluid",
"custom": { "custom": {
"fluid": "boron11" "fluid": "boron_11"
} }
}, },
"fluid_ferroboron": { "fluid_ferroboron": {
@ -589,6 +589,42 @@
"custom": { "custom": {
"fluid": "silver" "fluid": "silver"
} }
},
"fluid_strontium_90": {
"model": "forge:fluid",
"custom": {
"fluid": "strontium_90"
}
},
"fluid_molybdenum": {
"model": "forge:fluid",
"custom": {
"fluid": "molybdenum"
}
},
"fluid_ruthenium_106": {
"model": "forge:fluid",
"custom": {
"fluid": "ruthenium_106"
}
},
"fluid_caesium_137": {
"model": "forge:fluid",
"custom": {
"fluid": "caesium_137"
}
},
"fluid_promethium_147": {
"model": "forge:fluid",
"custom": {
"fluid": "promethium_147"
}
},
"fluid_europium_155": {
"model": "forge:fluid",
"custom": {
"fluid": "europium_155"
}
} }
} }
} }

View File

@ -85,6 +85,11 @@
"textures": { "textures": {
"layer0": "nuclearcraft:items/alloy/hsla_steel" "layer0": "nuclearcraft:items/alloy/hsla_steel"
} }
},
"zirconium_molybdenum": {
"textures": {
"layer0": "nuclearcraft:items/alloy/zirconium_molybdenum"
}
} }
} }
} }

View File

@ -30,6 +30,36 @@
"textures": { "textures": {
"layer0": "nuclearcraft:items/fission_dust/protactinium_233" "layer0": "nuclearcraft:items/fission_dust/protactinium_233"
} }
},
"strontium_90": {
"textures": {
"layer0": "nuclearcraft:items/fission_dust/strontium_90"
}
},
"molybdenum": {
"textures": {
"layer0": "nuclearcraft:items/fission_dust/molybdenum"
}
},
"ruthenium_106": {
"textures": {
"layer0": "nuclearcraft:items/fission_dust/ruthenium_106"
}
},
"caesium_137": {
"textures": {
"layer0": "nuclearcraft:items/fission_dust/caesium_137"
}
},
"promethium_147": {
"textures": {
"layer0": "nuclearcraft:items/fission_dust/promethium_147"
}
},
"europium_155": {
"textures": {
"layer0": "nuclearcraft:items/fission_dust/europium_155"
}
} }
} }
} }

View File

@ -436,8 +436,8 @@ fluid.deuterium=Deuterium
tile.nuclearcraft.fluid_tritium.name=Tritium tile.nuclearcraft.fluid_tritium.name=Tritium
fluid.tritium=Tritium fluid.tritium=Tritium
tile.nuclearcraft.fluid_helium3.name=Helium-3 tile.nuclearcraft.fluid_helium_3.name=Helium-3
fluid.helium3=Helium-3 fluid.helium_3=Helium-3
tile.nuclearcraft.fluid_helium.name=Helium tile.nuclearcraft.fluid_helium.name=Helium
fluid.helium=Helium fluid.helium=Helium
@ -488,17 +488,17 @@ tile.nuclearcraft.fluid_plasma.name=Plasma
tile.nuclearcraft.fluid_plasma.desc=Produced in active fusion reactors. May cause an explosion and fire when coming into contact with an unpowered fusion electromagnet. tile.nuclearcraft.fluid_plasma.desc=Produced in active fusion reactors. May cause an explosion and fire when coming into contact with an unpowered fusion electromagnet.
fluid.plasma=Plasma fluid.plasma=Plasma
tile.nuclearcraft.fluid_lithium6.name=Molten Lithium-6 tile.nuclearcraft.fluid_lithium_6.name=Molten Lithium-6
fluid.lithium6=Molten Lithium-6 fluid.lithium_6=Molten Lithium-6
tile.nuclearcraft.fluid_lithium7.name=Molten Lithium-7 tile.nuclearcraft.fluid_lithium_7.name=Molten Lithium-7
fluid.lithium7=Molten Lithium-7 fluid.lithium_7=Molten Lithium-7
tile.nuclearcraft.fluid_boron10.name=Molten Boron-10 tile.nuclearcraft.fluid_boron_10.name=Molten Boron-10
fluid.boron10=Molten Boron-10 fluid.boron_10=Molten Boron-10
tile.nuclearcraft.fluid_boron11.name=Molten Boron-11 tile.nuclearcraft.fluid_boron_11.name=Molten Boron-11
fluid.boron11=Molten Boron-11 fluid.boron_11=Molten Boron-11
tile.nuclearcraft.fluid_ferroboron.name=Molten Ferroboron tile.nuclearcraft.fluid_ferroboron.name=Molten Ferroboron
fluid.ferroboron=Molten Ferroboron fluid.ferroboron=Molten Ferroboron
@ -697,6 +697,24 @@ fluid.alugentum=Molten Alugentum
tile.nuclearcraft.fluid_alumina.name=Molten Alumina tile.nuclearcraft.fluid_alumina.name=Molten Alumina
fluid.alumina=Molten Alumina fluid.alumina=Molten Alumina
tile.nuclearcraft.fluid_strontium_90.name=Molten Strontium-90
fluid.strontium_90=Molten Strontium-90
tile.nuclearcraft.fluid_molybdenum.name=Molten Molybdenum
fluid.molybdenum=Molten Molybdenum
tile.nuclearcraft.fluid_ruthenium_106.name=Molten Ruthenium-106
fluid.ruthenium_106=Molten Ruthenium-106
tile.nuclearcraft.fluid_caesium_137.name=Molten Caesium-137
fluid.caesium_137=Molten Caesium-137
tile.nuclearcraft.fluid_promethium_147.name=Molten Promethium-147
fluid.promethium_147=Molten Promethium-147
tile.nuclearcraft.fluid_europium_155.name=Molten Europium-155
fluid.europium_155=Molten Europium-155
tile.nuclearcraft.fluid_thorium.name=Molten Thorium tile.nuclearcraft.fluid_thorium.name=Molten Thorium
fluid.thorium=Molten Thorium fluid.thorium=Molten Thorium
tile.nuclearcraft.fluid_uranium.name=Molten Uranium tile.nuclearcraft.fluid_uranium.name=Molten Uranium
@ -1559,21 +1577,22 @@ item.nuclearcraft.gem_dust.arsenic.name=Crushed Arsenic
item.nuclearcraft.gem_dust.end_stone.name=Crushed End Stone item.nuclearcraft.gem_dust.end_stone.name=Crushed End Stone
item.nuclearcraft.alloy.bronze.name=Bronze Ingot item.nuclearcraft.alloy.bronze.name=Bronze Ingot
item.nuclearcraft.alloy.tough.name=Tough Alloy item.nuclearcraft.alloy.tough.name=Tough Alloy Ingot
item.nuclearcraft.alloy.hard_carbon.name=Hard Carbon Alloy item.nuclearcraft.alloy.hard_carbon.name=Hard Carbon Alloy Ingot
item.nuclearcraft.alloy.magnesium_diboride.name=Magnesium Diboride Alloy item.nuclearcraft.alloy.magnesium_diboride.name=Magnesium Diboride Alloy Ingot
item.nuclearcraft.alloy.lithium_manganese_dioxide.name=Lithium Manganese Dioxide Alloy item.nuclearcraft.alloy.lithium_manganese_dioxide.name=Lithium Manganese Dioxide Alloy Ingot
item.nuclearcraft.alloy.steel.name=Steel Ingot item.nuclearcraft.alloy.steel.name=Steel Ingot
item.nuclearcraft.alloy.ferroboron.name=Ferroboron Alloy item.nuclearcraft.alloy.ferroboron.name=Ferroboron Alloy Ingot
item.nuclearcraft.alloy.shibuichi.name=Shibuichi Alloy item.nuclearcraft.alloy.shibuichi.name=Shibuichi Alloy Ingot
item.nuclearcraft.alloy.tin_silver.name=Tin Silver Alloy item.nuclearcraft.alloy.tin_silver.name=Tin Silver Alloy Ingot
item.nuclearcraft.alloy.lead_platinum.name=Lead Platinum Alloy item.nuclearcraft.alloy.lead_platinum.name=Lead Platinum Alloy Ingot
item.nuclearcraft.alloy.extreme.name=Extreme Alloy item.nuclearcraft.alloy.extreme.name=Extreme Alloy Ingot
item.nuclearcraft.alloy.thermoconducting.name=Thermoconducting Alloy item.nuclearcraft.alloy.thermoconducting.name=Thermoconducting Alloy Ingot
item.nuclearcraft.alloy.zircaloy.name=Zircaloy Ingot item.nuclearcraft.alloy.zircaloy.name=Zircaloy Ingot
item.nuclearcraft.alloy.silicon_carbide.name=Silicon Carbide Ingot item.nuclearcraft.alloy.silicon_carbide.name=Silicon Carbide Ingot
item.nuclearcraft.alloy.sic_sic_cmc.name=SiC-SiC Ceramic Matrix Composite item.nuclearcraft.alloy.sic_sic_cmc.name=SiC-SiC Ceramic Matrix Composite Ingot
item.nuclearcraft.alloy.hsla_steel.name=HSLA Steel Ingot item.nuclearcraft.alloy.hsla_steel.name=HSLA Steel Ingot
item.nuclearcraft.alloy.zirconium_molybdenum.name=Zirconium-Molybdenum Alloy Ingot
item.nuclearcraft.compound.calcium_sulfate.name=Calcium Sulfate item.nuclearcraft.compound.calcium_sulfate.name=Calcium Sulfate
item.nuclearcraft.compound.crystal_binder.name=Crystal Binder item.nuclearcraft.compound.crystal_binder.name=Crystal Binder
@ -1616,6 +1635,12 @@ item.nuclearcraft.fission_dust.radium.name=Radium Dust
item.nuclearcraft.fission_dust.polonium.name=Polonium Dust item.nuclearcraft.fission_dust.polonium.name=Polonium Dust
item.nuclearcraft.fission_dust.tbp.name=Protactinium-Enriched Thorium Dust item.nuclearcraft.fission_dust.tbp.name=Protactinium-Enriched Thorium Dust
item.nuclearcraft.fission_dust.protactinium_233.name=Protactinium-233 Dust item.nuclearcraft.fission_dust.protactinium_233.name=Protactinium-233 Dust
item.nuclearcraft.fission_dust.strontium_90.name=Strontium-90 Dust
item.nuclearcraft.fission_dust.molybdenum.name=Molybdenum Dust
item.nuclearcraft.fission_dust.ruthenium_106.name=Ruthenium-106 Dust
item.nuclearcraft.fission_dust.caesium_137.name=Caesium-137 Dust
item.nuclearcraft.fission_dust.promethium_147.name=Promethium-147 Dust
item.nuclearcraft.fission_dust.europium_155.name=Europium-155 Dust
item.nuclearcraft.uranium.233.name=Uranium-233 item.nuclearcraft.uranium.233.name=Uranium-233
item.nuclearcraft.uranium.233_c.name=Uranium-233 Carbide item.nuclearcraft.uranium.233_c.name=Uranium-233 Carbide
@ -2385,9 +2410,9 @@ gui.nc.config.rtg_power.comment=RF/t generated. Order: Uranium, Plutonium, Ameri
gui.nc.config.solar_power=Solar Panel Power Gen gui.nc.config.solar_power=Solar Panel Power Gen
gui.nc.config.solar_power.comment=RF/t generated. Order: Basic, Advanced, DU, Elite. gui.nc.config.solar_power.comment=RF/t generated. Order: Basic, Advanced, DU, Elite.
gui.nc.config.decay_lifetime=Decay Generator Mean Lifetimes gui.nc.config.decay_lifetime=Decay Generator Mean Lifetimes
gui.nc.config.decay_lifetime.comment=Mean lifetimes of adjacent radioactive blocks in ticks. Order: Thorium, Uranium, Depleted Thorium, Depleted Uranium, Depleted Neptunium, Depleted Plutonium, Depleted Americium, Depleted Curium, Depleted Berkelium, Depleted Californium. gui.nc.config.decay_lifetime.comment=Mean lifetimes of adjacent radioactive blocks in ticks. Order: Thorium, Uranium, Uranium-238, Neptunium-237, Plutonium-242, Americium-243, Curium-246, Berkelium-247, Californium-252.
gui.nc.config.decay_power=Decay Generator Power Gen gui.nc.config.decay_power=Decay Generator Power Gen
gui.nc.config.decay_power.comment=RF/t generated by adjacent radioactive blocks. Order: Thorium, Uranium, Depleted Thorium, Depleted Uranium, Depleted Neptunium, Depleted Plutonium, Depleted Americium, Depleted Curium, Depleted Berkelium, Depleted Californium. gui.nc.config.decay_power.comment=RF/t generated by adjacent radioactive blocks. Order: Thorium, Uranium, Uranium-238, Neptunium-237, Plutonium-242, Americium-243, Curium-246, Berkelium-247, Californium-252.
gui.nc.config.generator_rf_per_eu=RF Use per EU Emitted gui.nc.config.generator_rf_per_eu=RF Use per EU Emitted
gui.nc.config.generator_rf_per_eu.comment=The RF used per EU emitted for generators. gui.nc.config.generator_rf_per_eu.comment=The RF used per EU emitted for generators.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.8 KiB

After

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.2 KiB

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 822 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 327 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 383 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 385 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 347 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 341 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 370 B

View File

@ -1,3 +1,5 @@
New turbine penalty: "So perhaps there should be a second part of the penalty, i.e. like the fission one as Quantum suggests, with the leniency based on how small the turbine can be given that minimum number of rows"
Adjacent MSR vessels with same filter form bundle to share flux, shared criticality factor is sum of single vessel criticality factors Adjacent MSR vessels with same filter form bundle to share flux, shared criticality factor is sum of single vessel criticality factors
Take number of available open faces of vessel bundle into account when calculating the heat multiplier (and efficiency) Take number of available open faces of vessel bundle into account when calculating the heat multiplier (and efficiency)