Add missing scripts

This commit is contained in:
SwitchyJuice 2022-11-01 19:09:22 +01:00
parent 5dfd7f1986
commit 0fa4d182fd
29 changed files with 3458 additions and 1 deletions

108
index.toml generated
View file

@ -1370,3 +1370,111 @@ hash = "eee9b234a7a5681740a36962b6c3a6e3e7659b56bbdd2a09beaa89ca8ec49e79"
[[files]] [[files]]
file = "resources/nuclearcraft/addons/MoarRealisticRadiation-1.3.6.zip" file = "resources/nuclearcraft/addons/MoarRealisticRadiation-1.3.6.zip"
hash = "fd5dde9613ee1d7f6c65d061c3b6ad91bc3e279135cadcc3f88683d49e95cfc1" hash = "fd5dde9613ee1d7f6c65d061c3b6ad91bc3e279135cadcc3f88683d49e95cfc1"
[[files]]
file = "scripts/Actually_Addons.zs"
hash = "757ecca75f7d879ee89e37188c8de65db7eb3ec215f4293a02850461b240f006"
[[files]]
file = "scripts/Advanced_Chimneys.zs"
hash = "685693bb776bc68995154c4498fdd250419897b65154b45be125cb25f906fdd2"
[[files]]
file = "scripts/Advanced_Generators.zs"
hash = "c867e13ed9df375c26a21a4667757f7dfd6533df2a4edeb88d531438ecefba20"
[[files]]
file = "scripts/ExNihilo&Compressum.zs"
hash = "3c1740c575a6fc042e23a59f171649d99d4b5214e5206cfb200f46469ec06076"
[[files]]
file = "scripts/GalacticCraft.zs"
hash = "a08cff47f6f957d735126e82bb575ef20fc6bf0ad7fefd6f2f957a8f60dd8f99"
[[files]]
file = "scripts/Immersive_Engineering.zs"
hash = "e85b723eae92dea704e0cdb54130a344af44d0a24f5eacad4de8725ad7a6a90f"
[[files]]
file = "scripts/Industrial_Craft_2.zs"
hash = "c5a4e8a5d66e76bbc4c49c7739a92efc0287c044ca761b0a659de1b7b830779c"
[[files]]
file = "scripts/Mekanism.zs"
hash = "3c8fd01c466cdae40f0bbd4df87f33089598dde62a9fe3c067c13fefd1fd2b23"
[[files]]
file = "scripts/Misc.zs"
hash = "39bdbb3a5d5b83a8a441e8f307a3fef172cbc544c1b5d4ea5b046a0b95070028"
[[files]]
file = "scripts/RFTools.zs"
hash = "80ec2105c24b368c502ab917e99f7c57b0166ee544fe9c2c868fc67b7f385557"
[[files]]
file = "scripts/Thermal_Expansion.zs"
hash = "2e4fb5a9f7aa7c41442b781337747b40463457e5b0e7c5540d9a101a6e85e04f"
[[files]]
file = "scripts/gear.zs"
hash = "e7f3a5fcaf5a12711f7aedf65191fc9fde14dec782128eecb1832ee28ac03114"
[[files]]
file = "scripts/nc_script_addons/DONT_PUT_YOUR_SCRIPTS_IN_HERE"
hash = "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
[[files]]
file = "scripts/nc_script_addons/MoarFuels/.DS_Store"
hash = "d65165279105ca6773180500688df4bdc69a2c7b771752f0a46ef120b7fd8ec3"
[[files]]
file = "scripts/nc_script_addons/MoarFuels/preload_mf.zs"
hash = "b3ee073d0e0e9df9f3f1f8220fde9a916ca0b17ad9ad2219d01c98befc76ce73"
[[files]]
file = "scripts/nc_script_addons/MoarFuels/super_fuels_cores.zs"
hash = "cb97fef7a47938fe0d89d46e6de64927f83568ee39bc8fcfe0a269ef45265e0b"
[[files]]
file = "scripts/nc_script_addons/MoarFuels/super_fuels_crazy.zs"
hash = "c63b15d9aa37c1145968bdd356824143fd1a9fa9ae65d09d4eea92f97d91fc17"
[[files]]
file = "scripts/nc_script_addons/MoarFuels/super_fuels_gen.zs"
hash = "2ed94c034021ba2a55fe2614dfe20e6917c839ffaedd9e26a5dc9e6275808d48"
[[files]]
file = "scripts/nc_script_addons/MoarFuels/super_fuels_rec.zs"
hash = "5a91804c69059970baf666e41599ab1ff56409a9c54363161a31e78a367bdba4"
[[files]]
file = "scripts/nc_script_addons/MoarFuels/super_fuels_res.zs"
hash = "dec72113804f07b9c790ba3063b3a6c16020abcdd8cd818fe21a842aa87b944e"
[[files]]
file = "scripts/nc_script_addons/MoarFuels/superstable_isle_gen.zs"
hash = "062b0ba03d380c0ac6311e9f1079308a484e7d96f7f2c49d189c89f4271a9c6b"
[[files]]
file = "scripts/nc_script_addons/MoarFuels/superstable_isle_rec.zs"
hash = "a8bb42d5d67b75ba8009c90aec72b0f1500309e9a9ffef6fc330bb871c7135de"
[[files]]
file = "scripts/nc_script_addons/MoarFuels/wg_cores.zs"
hash = "c2f455cc16ed69ea51444624a0f43e5f874872680dee42abd76e32c3ffeacb15"
[[files]]
file = "scripts/nc_script_addons/MoarRealisticRadiation/rad_changes.zs"
hash = "99912e5df913a4d472b2b930a55bb07b3de9d3466ac113a9cf6cfab8ee7c1046"
[[files]]
file = "scripts/nc_script_addons/MoarRealisticRadiation/rad_nco.zs"
hash = "ee23d236da3b8ea5864f56036c701d89b9e26bab292dac72406f9a72fa7b7d73"
[[files]]
file = "scripts/nc_script_addons/MoarRealisticRadiation/rad_preload.zs"
hash = "b4aea7892748ecfa5cf775fb0a18f0909795c0b025666ecaea88bb3a923b4194"
[[files]]
file = "scripts/nc_script_addons/MoarRealisticRadiation/rad_qmd.zs"
hash = "a07879875ad20ae8e285c3cb39beeee648bd080ec12985b76583ad707a3de3ee"

View file

@ -6,7 +6,7 @@ pack-format = "packwiz:1.1.0"
[index] [index]
file = "index.toml" file = "index.toml"
hash-format = "sha256" hash-format = "sha256"
hash = "e5abb0011b8b99392f7b4469ce9849ae680fd3c5a0411838a491f724fc7a7ae9" hash = "cad267e44e2b7d3fcdf3564bd499eff5cd661141b6c7ab51dc5d783c3693259c"
[versions] [versions]
forge = "14.23.5.2860" forge = "14.23.5.2860"

View file

@ -0,0 +1,7 @@
#Iron Casing
recipes.remove(<actuallyadditions:block_misc:9>);
recipes.addShaped("Iron Casing", <actuallyadditions:block_misc:9>, [
[<ore:blockSheetmetalIron>, <ore:gearAluminum>, <ore:blockSheetmetalIron>],
[<forestry:thermionic_tubes:6>, <forestry:hardened_machine>, <forestry:thermionic_tubes:6>],
[<ore:blockSheetmetalIron>, <ore:plateTin>, <ore:blockSheetmetalIron>]
]);

View file

@ -0,0 +1,28 @@
import crafttweaker.item.IItemStack;
var items as IItemStack[] = loadedMods["adchimneys"].items;
function changeRecipe(item as IItemStack) as bool {
// do not apply function to these items
if (item.definition.id == <adchimneys:smoker>.definition.id) return false;
if (item.damage != 0) return false;
var pump as IItemStack = item.definition.makeStack(2);
var vent as IItemStack = item.definition.makeStack(1);
recipes.remove(pump);
recipes.addShaped(
pump,
[
[vent, <minecraft:repeater>, vent],
[<minecraft:repeater>, <ore:blockCoal>, <minecraft:repeater>],
[vent, <galacticraftcore:air_fan>, vent]
]
);
return true;
}
for i, item in items {
changeRecipe(item);
}

View file

@ -0,0 +1,7 @@
#Control Circuit
recipes.remove(<advgenerators:controller>);
recipes.addShaped("Control Circuit", <advgenerators:controller>, [
[<ore:dustRedstone>, <minecraft:iron_ingot>, <ore:dustRedstone>],
[<minecraft:iron_ingot>, <ore:itemSilicon>, <minecraft:iron_ingot>],
[<ore:dustRedstone>, <minecraft:iron_ingot>, <ore:dustRedstone>]
]);

View file

@ -0,0 +1,20 @@
import mods.jei.JEI.removeAndHide as rh;
# Duplicate compressed blocks
rh(<excompressum:compressed_block:2>);
rh(<excompressum:compressed_block:3>);
rh(<excompressum:compressed_block:4>);
rh(<excompressum:compressed_block:1>);
rh(<excompressum:compressed_block:9>);
# Crucibles
rh(<excompressum:wooden_crucible>);
rh(<excompressum:wooden_crucible:1>);
rh(<excompressum:wooden_crucible:2>);
rh(<excompressum:wooden_crucible:3>);
rh(<excompressum:wooden_crucible:4>);
rh(<excompressum:wooden_crucible:5>);
rh(<exnihilocreatio:block_crucible>);
rh(<exnihilocreatio:block_crucible_wood>);
rh(<exnihilocreatio:block_crucible:1>);

1
scripts/GalacticCraft.zs Normal file
View file

@ -0,0 +1 @@
#Circuit Fabricator

View file

@ -0,0 +1,14 @@
#Heavy Engineering Block
recipes.remove(<immersiveengineering:metal_decoration0:5>);
recipes.addShaped("Heavy Engineering Block", <immersiveengineering:metal_decoration0:5>*2, [
[<ore:plateUranium>, <ore:scaffoldingSteel>, <ore:plateUranium>],
[<immersiveengineering:material:9>, <immersiveengineering:material:27>, <immersiveengineering:material:9>],
[<ore:plateUranium>, <ore:scaffoldingSteel>, <ore:plateUranium>]
]);
#Iron Mechanical Component
recipes.remove(<immersiveengineering:material:9>);
recipes.addShaped("Iron Mechanical Component", <immersiveengineering:material:9>, [
[<ore:plateSteel>, <ore:gearTin>, <ore:plateSteel>],
[<ore:gearAluminum>, <ore:ingotCopper>, <ore:gearAluminum>],
[<ore:plateSteel>, <ore:gearTin>, <ore:plateSteel>]
]);

View file

@ -0,0 +1,20 @@
#Basic Machine Casing
recipes.remove(<ic2:resource:12>);
recipes.addShaped("Basic Machine Casing", <ic2:resource:12>*2, [
[<ore:plateAluminum>, <ore:plateIron>, <ore:plateAluminum>],
[<ore:plateIron>, <ore:blockSheetmetalIron>, <ore:plateIron>],
[<ore:plateAluminum>, <ore:plateIron>, <ore:plateAluminum>]
]);
#Basic Machine Casing 2
recipes.remove(<ic2:resource:12>);
recipes.addShaped("Basic Machine Casing 2", <ic2:resource:12>*2, [
[<ore:plateAluminum>, <ore:plateTin>, <ore:plateAluminum>],
[<ore:plateTin>, <ore:blockSheetmetalIron>, <ore:plateTin>],
[<ore:plateAluminum>, <ore:plateTin>, <ore:plateAluminum>]
]);
#Reinforced Stone
recipes.addShaped("Reinforced Stone", <ic2:resource:11>*16, [
[<tconstruct:soil>, <ore:stoneAndesitePolished>, <tconstruct:soil>],
[<ore:stoneAndesitePolished>, <ore:obsidian>, <ore:stoneAndesitePolished>],
[<tconstruct:soil>, <ore:stoneAndesitePolished>, <tconstruct:soil>]
]);

34
scripts/Mekanism.zs Normal file
View file

@ -0,0 +1,34 @@
import mods.jei.JEI.removeAndHide as rh;
# Steel Casing
recipes.remove(<mekanism:basicblock:8>);
recipes.addShaped("Steel Casing", <mekanism:basicblock:8> * 2, [
[<ore:ingotOsmium>, <ore:blockOsmium>, <ore:ingotOsmium>],
[<immersiveengineering:material:9>, <immersiveengineering:stone_decoration:2>, <immersiveengineering:material:9>],
[<ore:ingotOsmium>, <ore:blockOsmium>, <ore:ingotOsmium>]
]);
# Metalurgic Infuser
recipes.remove(<mekanism:machineblock:8>);
recipes.addShaped("Metalurgic Infuser", <mekanism:machineblock:8>, [
[<ore:gearSilver>, <ore:ingotOsmium>, <ore:gearSilver>],
[<minecraft:furnace>, <mekanism:basicblock:8>, <minecraft:furnace>],
[<minecraft:furnace>,<mekanism:basicblock2:5>, <minecraft:furnace>]
]);
# Removing unused ores & Walkietalkie
rh(<mekanism:oreblock:1>);
rh(<mekanism:oreblock:2>);
rh(<mekanism:walkietalkie>);
# Factories
recipes.remove(<mekanism:machineblock:5>);
recipes.remove(<mekanism:machineblock:6>);
recipes.remove(<mekanism:machineblock:7>);
#SuperHeating Element
recipes.remove(<mekanism:basicblock2:5>);
recipes.addShaped("SuperHeating Element", <mekanism:basicblock2:5>, [
[<ore:plateUranium>, <ore:ingotCopper>, <ore:plateUranium>],
[<ore:ingotCopper>, <mekanism:basicblock:8>, <ore:ingotCopper>],
[<ore:plateUranium>,<immersiveengineering:metal_decoration0:1>, <ore:plateUranium>]
]);

7
scripts/Misc.zs Normal file
View file

@ -0,0 +1,7 @@
# Furnace
recipes.remove(<minecraft:furnace>);
recipes.addShapedMirrored("Furnace", <minecraft:furnace>, [
[<ore:compressed1xCobblestone>, <ore:cobblestone>, <ore:compressed1xCobblestone>],
[<ore:cobblestone>, null, <ore:cobblestone>],
[<ore:compressed1xCobblestone>, <ore:cobblestone>, <ore:compressed1xCobblestone>]
]);

7
scripts/RFTools.zs Normal file
View file

@ -0,0 +1,7 @@
#Machine Frame
recipes.remove(<rftools:machine_frame>);
recipes.addShaped("Machine Frame", <rftools:machine_frame>, [
[<industrialforegoing:plastic>,<ic2:reactor_heat_vent>, <industrialforegoing:plastic>],
[<ore:gearAluminum>, <teslacorelib:machine_case>, <ore:gearAluminum>],
[<ore:plateIron>, <advgenerators:controller>, <ore:plateIron>]
]);

View file

@ -0,0 +1,10 @@
import crafttweaker.item.IItemStack;
#modloaded thermalexpansion
#MachineFrame
recipes.remove(<thermalexpansion:frame>);
mods.forestry.ThermionicFabricator.addCast(<thermalexpansion:frame> * 2,
[[<ore:blockSheetmetalSteel>, <ic2:resource:13>, <ore:blockSheetmetalSteel>],
[<immersiveengineering:metal_decoration0:5>, <thermalexpansion:frame:64>, <actuallyadditions:block_misc:9>],
[<ore:blockSheetmetalSteel>, <teslacorelib:machine_case>, <ore:blockSheetmetalSteel>]],
<liquid:glass> * 10000);

58
scripts/gear.zs Normal file
View file

@ -0,0 +1,58 @@
import crafttweaker.item.IItemStack as IItemStack;
import mods.jei.JEI.removeAndHide as rh;
rh(<forestry:gear_tin>);
rh(<forestry:gear_bronze>);
rh(<forestry:gear_copper>);
rh(<appliedenergistics2:material:40>);
val gearsToRemove = [
<appliedenergistics2:material:40>,
<thermalfoundation:material:22>,
<thermalfoundation:material:23>,
<thermalfoundation:material:24>,
<thermalfoundation:material:25>,
<thermalfoundation:material:26>,
<thermalfoundation:material:27>,
<thermalfoundation:material:256>,
<thermalfoundation:material:257>,
<thermalfoundation:material:258>,
<thermalfoundation:material:259>,
<thermalfoundation:material:260>,
<thermalfoundation:material:261>,
<thermalfoundation:material:262>,
<thermalfoundation:material:263>,
<thermalfoundation:material:264>,
<thermalfoundation:material:288>,
<thermalfoundation:material:289>,
<thermalfoundation:material:290>,
<thermalfoundation:material:291>,
<thermalfoundation:material:292>,
<thermalfoundation:material:293>,
<thermalfoundation:material:294>,
<thermalfoundation:material:295>,
] as IItemStack[];
for items in gearsToRemove {
recipes.remove(items);
}
recipes.addShaped("TE Wooden Gear",
<thermalfoundation:material:22>,
[[null, <ore:plankWood>, null],
[<ore:plankWood>, null, <ore:plankWood>],
[null, <ore:plankWood>, null]]);
recipes.addShaped("TE Stone Gear Direct",
<thermalfoundation:material:23>,
[[<ore:plankWood>, <ore:cobblestone>, <ore:plankWood>],
[<ore:cobblestone>, null, <ore:cobblestone>],
[<ore:plankWood>, <ore:cobblestone>, <ore:plankWood>]]);
recipes.addShaped("TE Stone Gear Wood",
<thermalfoundation:material:23>,
[[null, <ore:cobblestone>, null],
[<ore:cobblestone>, <ore:gearWood>, <ore:cobblestone>],
[null, <ore:cobblestone>, null]]);

Binary file not shown.

View file

@ -0,0 +1,9 @@
#priority 10
import crafttweaker.oredict.IOreDict;
import crafttweaker.oredict.IOreDictEntry;
import mods.nuclearcraft.Enricher;
oreDict.QuantumTraverseYouNeedToLearnHowToChillOut;
<ore:QuantumTraverseYouNeedToLearnHowToChillOut>.add(<nuclearcraft:supercold_ice>);

View file

@ -0,0 +1,220 @@
/*
Copyright Bob Bartsch, 2021
This code is governed by the
Creative Commons AttributionNonCommercial License
https://creativecommons.org/licenses/by-nc/3.0/
(Meaning: credit me if you modify and/or redistribute
this code. Also, you may not sell this code.)
*/
#modloaded trinity
import crafttweaker.item.IIngredient;
import crafttweaker.item.IItemStack;
import crafttweaker.liquid.ILiquidStack;
import crafttweaker.oredict.IOreDict;
import crafttweaker.oredict.IOreDictEntry;
import mods.nuclearcraft.FuelReprocessor;
import mods.nuclearcraft.SolidFission;
import mods.nuclearcraft.Assembler;
import mods.nuclearcraft.DecayHastener;
/* -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- Subcritical Spheres -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- */
//oreDic
var oreDictList = ["ingotU233Sphere","ingotU235Sphere","ingotP239Sphere","ingotA242Sphere","ingotCm247Sphere","ingotB248Sphere","ingotCf249Sphere","ingotCf251Sphere","ingotDepletedU233Sphere","ingotDepletedU235Sphere","ingotDepletedP239Sphere","ingotDepletedA242Sphere","ingotDepletedCm247Sphere","ingotDepletedB248Sphere","ingotDepletedCf249Sphere","ingotDepletedCf251Sphere","ingotPlutonium236"] as string[];
for entry in oreDictList {
oreDict.entry;
}
var realOreDictList = [<ore:ingotDepletedU233Sphere>,<ore:ingotDepletedU235Sphere>,<ore:ingotDepletedP239Sphere>,<ore:ingotDepletedA242Sphere>,<ore:ingotDepletedCm247Sphere>,<ore:ingotDepletedB248Sphere>,<ore:ingotDepletedCf249Sphere>,<ore:ingotDepletedCf251Sphere>] as IOreDictEntry[];
val realOreDictList2 = [<ore:ingotU233Sphere>,<ore:ingotU235Sphere>,<ore:ingotP239Sphere>,<ore:ingotA242Sphere>,<ore:ingotCm247Sphere>,<ore:ingotB248Sphere>,<ore:ingotCf249Sphere>,<ore:ingotCf251Sphere>] as IOreDictEntry[];
val fuelList = [<contenttweaker:u233sphere>,<contenttweaker:u235sphere>,<contenttweaker:p239sphere>,<contenttweaker:a242sphere>,<contenttweaker:cm247sphere>,<contenttweaker:b248sphere>,<contenttweaker:cf249sphere>,<contenttweaker:cf251sphere>] as IItemStack[];
val pitList = [<trinity:u233_pit>,<trinity:u235_pit>,<trinity:pu239_pit>,<trinity:am242_pit>,<trinity:cm247_pit>,<trinity:bk248_pit>,<trinity:cf249_pit>,<trinity:cf251_pit>] as IItemStack[];
val dFuelList = [<contenttweaker:du233sphere>,<contenttweaker:du235sphere>,<contenttweaker:dp239sphere>,<contenttweaker:da242sphere>,<contenttweaker:dcm247sphere>,<contenttweaker:db248sphere>,<contenttweaker:dcf249sphere>,<contenttweaker:dcf251sphere>] as IItemStack[];
// time, heat, criticality, fisProd1 chance, fisProd2 chance
val intStats = [[2666,1728,16,200,200],[4800,960,20,200,200],[4572,1008,20,200,200],[1476,3210,13,200,200],[2150,2144,15,80,80],[2166,2128,13,80,80],[1066,4320,12,80,80],[2000,2304,14,80,80]] as int[][];
// efficiency, process radiation, depleted radiation, starter radiation
var doubleStats = [[1.3,2.36E-04,1.51E-02,5.56E-06],[1.2,1.15E-04,7.37E-03,1.26E-09],[1.4,1.58E-03,1.01E-01,3.69E-05],[1.55,1.36E-03,8.67E-02,1.21E-04],[1.75,6.88E-04,4.40E-02,5.70E-08],[1.85,7.52E-03,3.83E-01,9.88E-02],[1.95,4.16E-02,2.66E+00,2.53E-03],[2.00,5.17E-02,3.31E+00,9.88E-04]] as double[][];
var fuelDF = [0.065,0.065,0.075,0.08,0.085,0.090,0.10,0.10] as double[];
//MoarRealisticRadiation Compatability
if (oreDict has "QuantumTraverseIHaveHadEnoughOfYourSpaghettiCodeAndAbsurdNames") {
doubleStats = [[1.3,2.28E-04,1.51E-02,5.56E-06],[1.2,1.67E-04,7.37E-03,1.26E-09],[1.4,7.98E-04,1.01E-01,3.69E-05],[1.55,7.03E-04,8.67E-02,1.21E-04],[1.75,8.79E-04,4.40E-02,5.70E-08],[1.85,5.76E-03,3.83E-01,9.88E-02],[1.95,1.05E-02,2.66E+00,2.53E-03],[2.00,2.74E-02,3.31E+00,9.88E-04]] as double[][];
}
val reprocessing = [[<ore:ingotUranium235>,<ore:ingotUranium238>,<ore:ingotNeptunium236>,<ore:ingotNeptunium237>,<ore:dustStrontium90>,<ore:dustCaesium137>],[<ore:ingotUranium238>,<ore:ingotNeptunium236>,<ore:ingotNeptunium237>,<ore:ingotPlutonium239>,<ore:dustMolybdenum>,<ore:dustCaesium137>],[<ore:ingotPlutonium241>,<ore:ingotPlutonium242>,<ore:ingotAmericium242>,<ore:ingotAmericium243>,<ore:dustStrontium90>,<ore:dustPromethium147>],[<ore:ingotAmericium243>,<ore:ingotCurium243>,<ore:ingotCurium245>,<ore:ingotCurium246>,<ore:dustStrontium90>,<ore:dustPromethium147>],[<ore:ingotBerkelium247>,<ore:ingotBerkelium248>,<ore:ingotCalifornium249>,<ore:ingotCalifornium251>,<ore:dustMolybdenum>,<ore:dustEuropium155>],[<ore:ingotBerkelium248>,<ore:ingotCalifornium249>,<ore:ingotCalifornium251>,<ore:ingotCalifornium252>,<ore:dustRuthenium106>,<ore:dustPromethium147>],[<ore:ingotCalifornium250>,<ore:ingotCalifornium251>,<ore:ingotCalifornium252>,<contenttweaker:californium53>,<ore:dustRuthenium106>,<ore:dustPromethium147>],[<ore:ingotCalifornium252>,<ore:ingotCalifornium252>,<contenttweaker:californium53>,<contenttweaker:californium54>,<ore:dustRuthenium106>,<ore:dustEuropium155>]] as IIngredient[][];
for i,entry in realOreDictList {
realOreDictList2[i].add(fuelList[i]);
entry.add(dFuelList[i]);
mods.nuclearcraft.Assembler.addRecipe(pitList[i], null, null, null, fuelList[i]*9);
mods.nuclearcraft.SolidFission.addRecipe(fuelList[i], dFuelList[i], intStats[i][0], intStats[i][1], doubleStats[i][0], intStats[i][2], fuelDF[i], true, doubleStats[i][1]);
val actProd = mods.nuclearcraft.ChanceItemIngredient.create(reprocessing[i][1], 50);
var fisProd1 = mods.nuclearcraft.ChanceItemIngredient.create(reprocessing[i][4]*2, intStats[i][3]);
if(intStats[i][3]!=200){
fisProd1 = mods.nuclearcraft.ChanceItemIngredient.create(reprocessing[i][4]*3, intStats[i][3]);
}
val fisProd2 = mods.nuclearcraft.ChanceItemIngredient.create(reprocessing[i][5]*2, intStats[i][4]);
mods.nuclearcraft.FuelReprocessor.addRecipe(dFuelList[i]*9, reprocessing[i][0], actProd, fisProd1, <ore:dustBeryllium>.amount(4), reprocessing[i][2], reprocessing[i][3], fisProd2, null);
mods.nuclearcraft.Radiation.setRadiationLevel(dFuelList[i], doubleStats[i][2]);
mods.nuclearcraft.Radiation.setRadiationLevel(fuelList[i], doubleStats[i][3]);
}
// Np-237 Stuff
<ore:ingotN237Sphere>.add(<contenttweaker:n237sphere>);
<ore:ingotDepletedN237Sphere>.add(<contenttweaker:dn237sphere>);
<ore:ingotPlutonium236>.add(<contenttweaker:plutonium236>);
mods.nuclearcraft.Assembler.addRecipe(<trinity:np237_pit>, null, null, null, <contenttweaker:n237sphere>*9);
if (oreDict has "QuantumTraverseIHaveHadEnoughOfYourSpaghettiCodeAndAbsurdNames") {
mods.nuclearcraft.FissionIrradiator.addRecipe(<contenttweaker:n237sphere>, <contenttweaker:dn237sphere>, 283968, 2.03, 1.05, 3.16E-05);
}else{
mods.nuclearcraft.FissionIrradiator.addRecipe(<contenttweaker:n237sphere>, <contenttweaker:dn237sphere>, 283968, 2.03, 1.05, 6.52E-04);
}
val actProd = mods.nuclearcraft.ChanceItemIngredient.create(<ore:ingotPlutonium238>*2, 75);
var fisProd1 = mods.nuclearcraft.ChanceItemIngredient.create(<ore:dustMolybdenum>, 25);
var fisProd2 = mods.nuclearcraft.ChanceItemIngredient.create(<ore:dustCaesium137>, 25);
mods.nuclearcraft.FuelReprocessor.addRecipe(<contenttweaker:dn237sphere>*9, <contenttweaker:plutonium236>, <ore:ingotNeptunium237>*3, fisProd1, <ore:dustBeryllium>.amount(4), actProd, <ore:ingotPlutonium239>*2, fisProd2, null);
mods.nuclearcraft.Radiation.setRadiationLevel(<contenttweaker:dn237sphere>, 4.17E-02);
mods.nuclearcraft.Radiation.setRadiationLevel(<contenttweaker:n237sphere>, 4.15E-07);
/* -=-=-=-=-=-=-=-=-=- PBP Fuels -=-=-=-=-=-=-=-=-=- */
val graphite = <ore:ingotGraphite>|<ore:dustGraphite>;
val zirconium = <ore:ingotZirconium>|<ore:dustZirconium>;
//does all liquid stuff except isotope mixing & separation
function superMelt(item as IItemStack, array as ILiquidStack[], prod as ILiquidStack[], doub as double[], integs as int[], selfPriming as bool){
//array is molten, fluoride, FLiBe, dFLiBe, dF, dMolten
//prod is 4 actinides, 2 fission products
//doub is time, efficiency, radiation
//integs is heat, criticality, fission product1 chance, fission product2 chance
//basic melter
mods.nuclearcraft.Melter.addRecipe(item, array[0]*144);
mods.nuclearcraft.IngotFormer.addRecipe(array[0]*144, item);
//fuel making
mods.nuclearcraft.ChemicalReactor.addRecipe(array[0]*72, <fluid:fluorine>*500, array[1]*72, null);
mods.nuclearcraft.Electrolyzer.addRecipe(array[1]*72, array[0]*72, <fluid:fluorine>*500, null, null);
mods.nuclearcraft.SaltMixer.addRecipe(array[1]*72, <fluid:flibe>*72, array[2]*72);
mods.nuclearcraft.Centrifuge.addRecipe(array[2]*72, array[1]*72, <fluid:flibe>*72, null, null, null, null);
//MSR recipe
mods.nuclearcraft.SaltFission.addRecipe(array[2], array[3], doub[0], integs[0], doub[1], integs[1], 0.075, selfPriming, doub[2]);
//reprocessing
mods.nuclearcraft.Centrifuge.addRecipe(array[3]*72, array[4]*72, <fluid:flibe>*72, null, null, null, null);
mods.nuclearcraft.Electrolyzer.addRecipe(array[4]*72, array[5]*72, <fluid:fluorine>*500, null, null);
val fissProd1 = mods.nuclearcraft.ChanceFluidIngredient.create(prod[4]*16, integs[2], 16);
val fissProd2 = mods.nuclearcraft.ChanceFluidIngredient.create(prod[5]*16, integs[3], 16);
mods.nuclearcraft.Centrifuge.addRecipe(array[5]*144, prod[0], prod[1], fissProd1, prod[2], prod[3], fissProd2);
}
val pbpFuels = [<contenttweaker:pbp_fuel>,<contenttweaker:pbp_fuel_carbide>,<contenttweaker:pbp_fuel_oxide>,<contenttweaker:pbp_fuel_nitride>,<contenttweaker:pbp_fuel_zirconium>] as IItemStack[];
val dpbpFuels = [<contenttweaker:dpbp_fuel_triso>,<contenttweaker:dpbp_fuel_oxide>,<contenttweaker:dpbp_fuel_nitride>,<contenttweaker:dpbp_fuel_zirconium>] as IIngredient[];
val dpbpFuels2 = [<contenttweaker:dpbp_fuel_triso>,<contenttweaker:dpbp_fuel_oxide>,<contenttweaker:dpbp_fuel_nitride>,<contenttweaker:dpbp_fuel_zirconium>] as IItemStack[];
val eff = 1.25;
val stats = [[2200,262,73],[2750,210,91],[1760,328,62],[1981,291,66]] as int[][];
var burnrad = 1.23E-02;
val pebble = <contenttweaker:pbp_fuel_triso>;
val fuelN2 = <contenttweaker:pbp_fuel>;
// MRR Compat
if (oreDict has "QuantumTraverseIHaveHadEnoughOfYourSpaghettiCodeAndAbsurdNames") {
burnrad = 3.56E-04;
}
val fluidFuelNames= [<fluid:pbp>,<fluid:pbp_fluoride>,<fluid:pbp_fluoride_flibe>,<fluid:depleted_pbp_fluoride_flibe>,<fluid:depleted_pbp_fluoride>,<fluid:depleted_pbp>] as ILiquidStack[];
val fluidProd= [<fluid:neptunium_237>*16,<fluid:plutonium_238>*16,<fluid:plutonium_239>*32,<fluid:plutonium_242>*64,<fluid:strontium_90>,<fluid:promethium_147>] as ILiquidStack[];
val moltenTimes = 19.09722222;
val fisProdChance = [25,25] as int[];
val ddecayRad=1.28E-02;
oreDict.ingotPBP;
<ore:ingotPBP>.add(<contenttweaker:pbp_fuel>);
var pu236rad=3.50E-01;
var pu236decay=<ore:dustLead>;
if (oreDict has "QuantumTraverseIHaveHadEnoughOfYourSpaghettiCodeAndAbsurdNames") {
pu236rad=1.11E-03;
}
if (loadedMods has "qmd") {
pu236decay=<ore:ingotUranium232>;
}
mods.nuclearcraft.FissionIrradiator.addRecipe(<ore:ingotPlutonium236>, <ore:ingotPBP>, 75692, 0.0, 0.0, 3.50E-01);
mods.nuclearcraft.DecayHastener.addRecipe(<ore:ingotPlutonium236>, <ore:dustLead>,1.0,1.0,3.50E-01);
oreDictList = ["ingotPBPAll","ingotDepletedPBPAll"] as string[];
for entry in oreDictList {
oreDict.entry;
}
realOreDictList = [<ore:ingotPBPAll>,<ore:ingotDepletedPBPAll>] as IOreDictEntry[];
//non-base recipes
for i,item in pbpFuels{
mods.nuclearcraft.Radiation.setRadiationLevel(item, 7.75E-01);
realOreDictList[0].add(item);
}
mods.nuclearcraft.AlloyFurnace.addRecipe(pbpFuels[0], graphite, pbpFuels[1]);
mods.nuclearcraft.Infuser.addRecipe(pbpFuels[0], <fluid:oxygen>*1000, pbpFuels[2]);
mods.nuclearcraft.Infuser.addRecipe(pbpFuels[0], <fluid:nitrogen>*1000, pbpFuels[3]);
mods.nuclearcraft.AlloyFurnace.addRecipe(pbpFuels[0], zirconium, pbpFuels[4]);
furnace.addRecipe(fuelN2, pbpFuels[3]);
furnace.addRecipe(fuelN2, pbpFuels[2]);
mods.nuclearcraft.Separator.addRecipe(pbpFuels[1], pbpFuels[0], <nuclearcraft:dust:8>);
mods.nuclearcraft.Separator.addRecipe(pbpFuels[4], pbpFuels[0], <nuclearcraft:dust:10>);
//pebbles
mods.nuclearcraft.Assembler.addRecipe(pbpFuels[1]*9, <ore:dustGraphite>, <nuclearcraft:part:15>, <nuclearcraft:alloy:13>, pebble*9);
if (oreDict has "QuantumTraverseWhyCanISteamMyCrabs") {
mods.nuclearcraft.SolidFission.addRecipe(pebble, dpbpFuels[0], stats[3][0], stats[3][1], eff, stats[3][2], 0.075, false, burnrad);
}else{
mods.nuclearcraft.PebbleFission.addRecipe(pebble, dpbpFuels[0], stats[0][0], stats[0][1], eff, stats[2][2], 0.075, false, burnrad);
}
mods.nuclearcraft.Radiation.setRadiationLevel(pebble, 7.75E-01);
realOreDictList[0].add(pebble);
//oxide
mods.nuclearcraft.SolidFission.addRecipe(pbpFuels[2], dpbpFuels[1], stats[0][0], stats[0][1], eff, stats[0][2], 0.075, false, burnrad);
//nitride
mods.nuclearcraft.SolidFission.addRecipe(pbpFuels[3], dpbpFuels[2], stats[1][0], stats[1][1], eff, stats[1][2], 0.075, false, burnrad);
//zirconium
mods.nuclearcraft.SolidFission.addRecipe(pbpFuels[4], dpbpFuels[3], stats[2][0], stats[2][1], eff, stats[2][2], 0.075, false, burnrad);
//melting time
superMelt(pbpFuels[0], fluidFuelNames, fluidProd, [moltenTimes, eff, burnrad] as double[], [stats[0][1],stats[0][2], fisProdChance[0], fisProdChance[1]] as int[], false);
fisProd1 = mods.nuclearcraft.ChanceItemIngredient.create(<ore:dustStrontium90>, 25);
fisProd2 = mods.nuclearcraft.ChanceItemIngredient.create(<ore:dustPromethium147>, 25);
//reprocessing
//triso
mods.nuclearcraft.FuelReprocessor.addRecipe(dpbpFuels[0] * 9, <nuclearcraft:neptunium:6>, <nuclearcraft:plutonium:1>, fisProd1, <ore:dustGraphite>.amount(3), <nuclearcraft:plutonium:6> * 2, <nuclearcraft:plutonium:16>*4, fisProd2, <nuclearcraft:alloy:13>);
//oxide
mods.nuclearcraft.FuelReprocessor.addRecipe(dpbpFuels[1] * 9, <nuclearcraft:neptunium:7>, <nuclearcraft:plutonium:2>, fisProd1, null, <nuclearcraft:plutonium:7> * 2, <nuclearcraft:plutonium:17>*4, fisProd2, null);
//nitride
mods.nuclearcraft.FuelReprocessor.addRecipe(dpbpFuels[2] * 9, <nuclearcraft:neptunium:8>, <nuclearcraft:plutonium:3>, fisProd1, null, <nuclearcraft:plutonium:8> * 2, <nuclearcraft:plutonium:18>*4, fisProd2, null);
//zirc
mods.nuclearcraft.FuelReprocessor.addRecipe(dpbpFuels[3] * 9, <nuclearcraft:neptunium:9>, <nuclearcraft:plutonium:4>, fisProd1, <nuclearcraft:dust:10>, <nuclearcraft:plutonium:9> * 2, <nuclearcraft:plutonium:19>*4, fisProd2, null);
for j,item in dpbpFuels{
mods.nuclearcraft.Radiation.setRadiationLevel(item, ddecayRad);
realOreDictList[1].add(dpbpFuels2[j]);
}

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,379 @@
/*
Copyright Bob Bartsch, 2021
This code is governed by the
Creative Commons AttributionNonCommercial License
https://creativecommons.org/licenses/by-nc/3.0/
(Meaning: credit me if you modify and/or redistribute
this code. Also, you may not sell this code.)
*/
// imports
#loader contenttweaker
import mods.contenttweaker.CreativeTab;
import mods.contenttweaker.VanillaFactory;
import mods.contenttweaker.Item;
import mods.contenttweaker.Fluid;
import mods.contenttweaker.Color;
import mods.contenttweaker.Block;
val zsTab = VanillaFactory.createCreativeTab("moar_fuels", <item:nuclearcraft:fuel_californium:3>);
zsTab.register();
// isotopes generation
val IsoNames= [["californium53","californium53carbide","californium53oxide","californium53nitride","californium53zirconium"],["californium54","californium54carbide","californium54oxide","californium54nitride","californium54zirconium"],["einsteinium54","einsteinium54carbide","einsteinium54oxide","einsteinium54nitride","einsteinium54zirconium"],["einsteinium55","einsteinium55carbide","einsteinium55oxide","einsteinium55nitride","einsteinium55zirconium"],["fermium57","fermium57carbide","fermium57oxide","fermium57nitride","fermium57zirconium"]] as string[][];
for i,array in IsoNames{
for item in array{
var temp = VanillaFactory.createItem(item);
temp.creativeTab = <creativetab:moar_fuels>;
temp.register();
}
}
// fuels generation
var FuelNames= ["californium_fuel","californium_fuel_carbide","californium_fuel_triso","californium_fuel_oxide","californium_fuel_nitride","californium_fuel_zirconium","einsteinium_fuel","einsteinium_fuel_carbide","einsteinium_fuel_triso","einsteinium_fuel_oxide","einsteinium_fuel_nitride","einsteinium_fuel_zirconium","fermium_fuel","fermium_fuel_carbide","fermium_fuel_triso","fermium_fuel_oxide","fermium_fuel_nitride","fermium_fuel_zirconium","hcalifornium_fuel","hcalifornium_fuel_carbide","hcalifornium_fuel_triso","hcalifornium_fuel_oxide","hcalifornium_fuel_nitride","hcalifornium_fuel_zirconium","heinsteinium_fuel","heinsteinium_fuel_carbide","heinsteinium_fuel_triso","heinsteinium_fuel_oxide","heinsteinium_fuel_nitride","heinsteinium_fuel_zirconium","rplutonium_fuel","rplutonium_fuel_carbide","rplutonium_fuel_triso","rplutonium_fuel_oxide","rplutonium_fuel_nitride","rplutonium_fuel_zirconium","ramericium_fuel","ramericium_fuel_carbide","ramericium_fuel_triso","ramericium_fuel_oxide","ramericium_fuel_nitride","ramericium_fuel_zirconium","rcalifornium_fuel","rcalifornium_fuel_carbide","rcalifornium_fuel_triso","rcalifornium_fuel_oxide","rcalifornium_fuel_nitride","rcalifornium_fuel_zirconium"] as string[];
for item in FuelNames{
var temp = VanillaFactory.createItem(item);
temp.creativeTab = <creativetab:moar_fuels>;
temp.register();
}
FuelNames=["dcalifornium_fuel_triso","dcalifornium_fuel_oxide","dcalifornium_fuel_nitride","dcalifornium_fuel_zirconium","deinsteinium_fuel_triso","deinsteinium_fuel_oxide","deinsteinium_fuel_nitride","deinsteinium_fuel_zirconium","dfermium_fuel_triso","dfermium_fuel_oxide","dfermium_fuel_nitride","dfermium_fuel_zirconium","dhcalifornium_fuel_triso","dhcalifornium_fuel_oxide","dhcalifornium_fuel_nitride","dhcalifornium_fuel_zirconium","dheinsteinium_fuel_triso","dheinsteinium_fuel_oxide","dheinsteinium_fuel_nitride","dheinsteinium_fuel_zirconium","drplutonium_fuel_triso","drplutonium_fuel_oxide","drplutonium_fuel_nitride","drplutonium_fuel_zirconium","dramericium_fuel_triso","dramericium_fuel_oxide","dramericium_fuel_nitride","dramericium_fuel_zirconium","drcalifornium_fuel_triso","drcalifornium_fuel_oxide","drcalifornium_fuel_nitride","drcalifornium_fuel_zirconium","curium_244","curium_250"];
for item in FuelNames{
var temp = VanillaFactory.createItem(item);
temp.creativeTab = <creativetab:moar_fuels>;
temp.register();
}
FuelNames=["cbc","cbcf"];
val fuelEnds = ["_tr","_ox","_ni","_za"] as string[];
for iso in FuelNames{
//items
var temp = VanillaFactory.createItem(iso);
temp.creativeTab = <creativetab:moar_fuels>;
temp.register();
temp = VanillaFactory.createItem(iso~"_c");
temp.creativeTab = <creativetab:moar_fuels>;
temp.register();
for ender in fuelEnds{
temp = VanillaFactory.createItem(iso~ender);
temp.creativeTab = <creativetab:moar_fuels>;
temp.register();
temp = VanillaFactory.createItem("d_"~iso~ender);
temp.creativeTab = <creativetab:moar_fuels>;
temp.register();
}
}
//liquid fuels & isotopes
var liquidsNamed= ["californium_253","californium_254","einsteinium_254","einsteinium_255","fermium_257","curium_244"] as string[];
var colorsNamed= ["4A000B","4A000B","001A4F","001A4F","4F004A","800080","800080","AAAAAA","382B0A","4A000B"] as string[];
for i,name in liquidsNamed{
var zsFluid = VanillaFactory.createFluid(name, Color.fromHex(colorsNamed[i]));
zsFluid.setDensity(4000);
zsFluid.setViscosity(1000);
zsFluid.setTemperature(400);
zsFluid.register();
}
liquidsNamed = ["lecf_253","hecf_253","lee_254","hee_254","mix_257","cbc","cbcf","rep_238","rea_241","rec_250"] as string[];
for i,name in liquidsNamed{
var zsFluid = VanillaFactory.createFluid(name, Color.fromHex(colorsNamed[i]));
zsFluid.setDensity(4000);
zsFluid.setViscosity(1000);
zsFluid.setTemperature(400);
zsFluid.register();
zsFluid = VanillaFactory.createFluid(name~"_fluoride", Color.fromHex(colorsNamed[i]));
zsFluid.setDensity(4000);
zsFluid.setViscosity(1000);
zsFluid.setTemperature(400);
zsFluid.register();
zsFluid = VanillaFactory.createFluid(name~"_fluoride_flibe", Color.fromHex(colorsNamed[i]));
zsFluid.setDensity(4000);
zsFluid.setViscosity(1000);
zsFluid.setTemperature(400);
zsFluid.register();
zsFluid = VanillaFactory.createFluid("depleted_"~name, Color.fromHex(colorsNamed[i]));
zsFluid.setDensity(4000);
zsFluid.setViscosity(1000);
zsFluid.setTemperature(400);
zsFluid.register();
zsFluid = VanillaFactory.createFluid("depleted_"~name~"_fluoride", Color.fromHex(colorsNamed[i]));
zsFluid.setDensity(4000);
zsFluid.setViscosity(1000);
zsFluid.setTemperature(400);
zsFluid.register();
zsFluid = VanillaFactory.createFluid("depleted_"~name~"_fluoride_flibe", Color.fromHex(colorsNamed[i]));
zsFluid.setDensity(4000);
zsFluid.setViscosity(1000);
zsFluid.setTemperature(400);
zsFluid.register();
}
//RTG & CANDU stuff
val itemNames=["gemgermanium","si_ge","uranium_oxide","pre_candu","candu","thorium_oxide","dcandu","pre_aneel","aneel","daneel"] as string[];
for item in itemNames{
var temp = VanillaFactory.createItem(item);
temp.creativeTab = <creativetab:moar_fuels>;
temp.register();
}
var rtgNames = ["rtg_sr","rtg_sr_done","rtg_ru","rtg_ru_done","rtg_cs","rtg_cs_done","rtg_pm","rtg_pm_done","rtg_eu","rtg_eu_done","rtg_po","rtg_po_done","rtg_ra","rtg_ra_done","rtg_pu","rtg_pu_done","rtg_am","rtg_am_done","rtg_cf","rtg_cf_done"] as string[];
for item in rtgNames{
var zsBlock = VanillaFactory.createBlock(item, <blockmaterial:rock>);
zsBlock.setBlockHardness(2.0);
zsBlock.setBlockResistance(5.0);
zsBlock.setToolClass("pickaxe");
zsBlock.setToolLevel(0);
zsBlock.setBlockSoundType(<soundtype:stone>);
zsBlock.creativeTab = <creativetab:moar_fuels>;
zsBlock.register();
}
// Crazy High Enrichment Stuff
val enrich= ["me","vhe","xe","se","ue","wg","ip"] as string[];
//val enrich= ["xe","ue","ip"] as string[];
val isos= ["u_233","u_235","n_236","p_239","p_241","a_242","cm_243","cm_245","cm_247","b_248","cf_249","cf_251","cf_253","e_254"] as string[];
colorsNamed= ["008000","008000","009999","AAAAAA","AAAAAA","382B0A","800080","800080","800080","86592D","4A000B","4A000B","4A000B","001A4F"] as string[];
for enr in enrich{
for i,iso in isos{
//items
var temp = VanillaFactory.createItem(enr~iso);
temp.creativeTab = <creativetab:moar_fuels>;
temp.register();
temp = VanillaFactory.createItem(enr~iso~"_c");
temp.creativeTab = <creativetab:moar_fuels>;
temp.register();
for ender in fuelEnds{
temp = VanillaFactory.createItem(enr~iso~ender);
temp.creativeTab = <creativetab:moar_fuels>;
temp.register();
temp = VanillaFactory.createItem("d_"~enr~iso~ender);
temp.creativeTab = <creativetab:moar_fuels>;
temp.register();
}
//fluids
var zsFluid = VanillaFactory.createFluid(enr~iso, Color.fromHex(colorsNamed[i]));
zsFluid.setDensity(4000);
zsFluid.setViscosity(1000);
zsFluid.setTemperature(400);
zsFluid.register();
zsFluid = VanillaFactory.createFluid(enr~iso~"_fluoride", Color.fromHex(colorsNamed[i]));
zsFluid.setDensity(4000);
zsFluid.setViscosity(1000);
zsFluid.setTemperature(400);
zsFluid.register();
zsFluid = VanillaFactory.createFluid(enr~iso~"_fluoride_flibe", Color.fromHex(colorsNamed[i]));
zsFluid.setDensity(4000);
zsFluid.setViscosity(1000);
zsFluid.setTemperature(400);
zsFluid.register();
zsFluid = VanillaFactory.createFluid("depleted_"~enr~iso, Color.fromHex(colorsNamed[i]));
zsFluid.setDensity(4000);
zsFluid.setViscosity(1000);
zsFluid.setTemperature(400);
zsFluid.register();
zsFluid = VanillaFactory.createFluid("depleted_"~enr~iso~"_fluoride", Color.fromHex(colorsNamed[i]));
zsFluid.setDensity(4000);
zsFluid.setViscosity(1000);
zsFluid.setTemperature(400);
zsFluid.register();
zsFluid = VanillaFactory.createFluid("depleted_"~enr~iso~"_fluoride_flibe", Color.fromHex(colorsNamed[i]));
zsFluid.setDensity(4000);
zsFluid.setViscosity(1000);
zsFluid.setTemperature(400);
zsFluid.register();
}
}
//special QMD additions
if(loadedMods has "qmd"){
val IsoNames2= [["thorium229","thorium229carbide","thorium229oxide","thorium229nitride","thorium229zirconium"],["mendelevium58","mendelevium58carbide","mendelevium58oxide","mendelevium58nitride","mendelevium58zirconium"],["flerovium98","flerovium98carbide","flerovium98oxide","flerovium98nitride","flerovium98zirconium"],["darmstadtium294","darmstadtium294carbide","darmstadtium294oxide","darmstadtium294nitride","darmstadtium294zirconium"]] as string[][];
for i,array in IsoNames2{
for item in array{
var temp = VanillaFactory.createItem(item);
temp.creativeTab = <creativetab:moar_fuels>;
temp.register();
}
}
FuelNames= ["protactinium_fuel","protactinium_fuel_carbide","protactinium_fuel_triso","protactinium_fuel_oxide","protactinium_fuel_nitride","protactinium_fuel_zirconium","hprotactinium_fuel","hprotactinium_fuel_carbide","hprotactinium_fuel_triso","hprotactinium_fuel_oxide","hprotactinium_fuel_nitride","hprotactinium_fuel_zirconium","mendelevium_fuel","mendelevium_fuel_carbide","mendelevium_fuel_triso","mendelevium_fuel_oxide","mendelevium_fuel_nitride","mendelevium_fuel_zirconium","flerovium_fuel","flerovium_fuel_carbide","flerovium_fuel_triso","flerovium_fuel_oxide","flerovium_fuel_nitride","flerovium_fuel_zirconium","darmstadtium_fuel","darmstadtium_fuel_carbide","darmstadtium_fuel_triso","darmstadtium_fuel_oxide","darmstadtium_fuel_nitride","darmstadtium_fuel_zirconium","ubu_fuel","ubu_fuel_carbide","ubu_fuel_triso","ubu_fuel_oxide","ubu_fuel_nitride","ubu_fuel_zirconium"] as string[];
for item in FuelNames{
var temp = VanillaFactory.createItem(item);
temp.creativeTab = <creativetab:moar_fuels>;
temp.register();
}
FuelNames= ["dprotactinium_fuel_triso","dprotactinium_fuel_oxide","dprotactinium_fuel_nitride","dprotactinium_fuel_zirconium","dhprotactinium_fuel_triso","dhprotactinium_fuel_oxide","dhprotactinium_fuel_nitride","dhprotactinium_fuel_zirconium","dmendelevium_fuel_triso","dmendelevium_fuel_oxide","dmendelevium_fuel_nitride","dmendelevium_fuel_zirconium","dflerovium_fuel_triso","dflerovium_fuel_oxide","dflerovium_fuel_nitride","dflerovium_fuel_zirconium","ddarmstadtium_fuel_triso","ddarmstadtium_fuel_oxide","ddarmstadtium_fuel_nitride","ddarmstadtium_fuel_zirconium","dubu_fuel_triso","dubu_fuel_oxide","dubu_fuel_nitride","dubu_fuel_zirconium","uranium_232"/*,"th_pellet_slow","th_pellet_fast","pa_pellet_slow","pa_pellet_fast"*/] as string[];
for item in FuelNames{
var temp = VanillaFactory.createItem(item);
temp.creativeTab = <creativetab:moar_fuels>;
temp.register();
}
FuelNames=["pbu","luf"];
for iso in FuelNames{
//items
var temp = VanillaFactory.createItem(iso);
temp.creativeTab = <creativetab:moar_fuels>;
temp.register();
temp = VanillaFactory.createItem(iso~"_c");
temp.creativeTab = <creativetab:moar_fuels>;
temp.register();
for ender in fuelEnds{
temp = VanillaFactory.createItem(iso~ender);
temp.creativeTab = <creativetab:moar_fuels>;
temp.register();
temp = VanillaFactory.createItem("d_"~iso~ender);
temp.creativeTab = <creativetab:moar_fuels>;
temp.register();
}
}
var temp = VanillaFactory.createItem("mysterymix");
temp.creativeTab = <creativetab:moar_fuels>;
temp.register();
temp = VanillaFactory.createItem("actinium");
temp.creativeTab = <creativetab:moar_fuels>;
temp.register();
temp = VanillaFactory.createItem("purethorium229");
temp.creativeTab = <creativetab:moar_fuels>;
temp.register();
//liquid fuels & isotopes
var liquidsNamed= ["uranium_234"] as string[];
val colorsNamed= ["008000","ff8080","00b33c","8B4000","BBA100","E6E600","353233","423A3C"] as string[];
for i,name in liquidsNamed{
var zsFluid = VanillaFactory.createFluid(name, Color.fromHex(colorsNamed[i]));
zsFluid.setDensity(4000);
zsFluid.setViscosity(1000);
zsFluid.setTemperature(400);
zsFluid.register();
}
liquidsNamed = ["ubu","pbu","luf","mix_258","mix_298","mix_294","lam_231","eam_231"] as string[];
for i,name in liquidsNamed{
var zsFluid = VanillaFactory.createFluid(name, Color.fromHex(colorsNamed[i]));
zsFluid.setDensity(4000);
zsFluid.setViscosity(1000);
zsFluid.setTemperature(400);
zsFluid.register();
zsFluid = VanillaFactory.createFluid(name~"_fluoride", Color.fromHex(colorsNamed[i]));
zsFluid.setDensity(4000);
zsFluid.setViscosity(1000);
zsFluid.setTemperature(400);
zsFluid.register();
zsFluid = VanillaFactory.createFluid(name~"_fluoride_flibe", Color.fromHex(colorsNamed[i]));
zsFluid.setDensity(4000);
zsFluid.setViscosity(1000);
zsFluid.setTemperature(400);
zsFluid.register();
zsFluid = VanillaFactory.createFluid("depleted_"~name, Color.fromHex(colorsNamed[i]));
zsFluid.setDensity(4000);
zsFluid.setViscosity(1000);
zsFluid.setTemperature(400);
zsFluid.register();
zsFluid = VanillaFactory.createFluid("depleted_"~name~"_fluoride", Color.fromHex(colorsNamed[i]));
zsFluid.setDensity(4000);
zsFluid.setViscosity(1000);
zsFluid.setTemperature(400);
zsFluid.register();
zsFluid = VanillaFactory.createFluid("depleted_"~name~"_fluoride_flibe", Color.fromHex(colorsNamed[i]));
zsFluid.setDensity(4000);
zsFluid.setViscosity(1000);
zsFluid.setTemperature(400);
zsFluid.register();
}
//RTG stuff
rtgNames = ["rtg_co","rtg_co_done","rtg_ac","rtg_ac_done"];
for item in rtgNames{
var zsBlock = VanillaFactory.createBlock(item, <blockmaterial:rock>);
zsBlock.setBlockHardness(2.0);
zsBlock.setBlockResistance(5.0);
zsBlock.setToolClass("pickaxe");
zsBlock.setToolLevel(0);
zsBlock.setBlockSoundType(<soundtype:stone>);
zsBlock.creativeTab = <creativetab:moar_fuels>;
zsBlock.register();
}
}
//special Trinity additions
if(loadedMods has "trinity"){
val triNames = ["u233sphere","u235sphere","n237sphere","p239sphere","a242sphere","cm247sphere","b248sphere","cf249sphere","cf251sphere","du233sphere","du235sphere","dn237sphere","dp239sphere","da242sphere","dcm247sphere","db248sphere","dcf249sphere","dcf251sphere","plutonium236","pbp_fuel","pbp_fuel_carbide","pbp_fuel_triso","pbp_fuel_oxide","pbp_fuel_nitride","pbp_fuel_zirconium","dpbp_fuel_triso","dpbp_fuel_oxide","dpbp_fuel_nitride","dpbp_fuel_zirconium"] as string[];
for item in triNames{
var temp = VanillaFactory.createItem(item);
temp.creativeTab = <creativetab:moar_fuels>;
temp.register();
}
var liquidsNamed = ["pbp"] as string[];
var colorsNamed= ["cccccc"] as string[];
for i,name in liquidsNamed{
var zsFluid = VanillaFactory.createFluid(name, Color.fromHex(colorsNamed[i]));
zsFluid.setDensity(4000);
zsFluid.setViscosity(1000);
zsFluid.setTemperature(400);
zsFluid.register();
zsFluid = VanillaFactory.createFluid(name~"_fluoride", Color.fromHex(colorsNamed[i]));
zsFluid.setDensity(4000);
zsFluid.setViscosity(1000);
zsFluid.setTemperature(400);
zsFluid.register();
zsFluid = VanillaFactory.createFluid(name~"_fluoride_flibe", Color.fromHex(colorsNamed[i]));
zsFluid.setDensity(4000);
zsFluid.setViscosity(1000);
zsFluid.setTemperature(400);
zsFluid.register();
zsFluid = VanillaFactory.createFluid("depleted_"~name, Color.fromHex(colorsNamed[i]));
zsFluid.setDensity(4000);
zsFluid.setViscosity(1000);
zsFluid.setTemperature(400);
zsFluid.register();
zsFluid = VanillaFactory.createFluid("depleted_"~name~"_fluoride", Color.fromHex(colorsNamed[i]));
zsFluid.setDensity(4000);
zsFluid.setViscosity(1000);
zsFluid.setTemperature(400);
zsFluid.register();
zsFluid = VanillaFactory.createFluid("depleted_"~name~"_fluoride_flibe", Color.fromHex(colorsNamed[i]));
zsFluid.setDensity(4000);
zsFluid.setViscosity(1000);
zsFluid.setTemperature(400);
zsFluid.register();
}
}

View file

@ -0,0 +1,809 @@
/*
Copyright Bob Bartsch, 2021
This code is governed by the
Creative Commons AttributionNonCommercial License
https://creativecommons.org/licenses/by-nc/3.0/
(Meaning: credit me if you modify and/or redistribute
this code. Also, you may not sell this code.)
*/
// imports
import crafttweaker.item.IIngredient;
import crafttweaker.item.IItemStack;
import crafttweaker.oredict.IOreDict;
import crafttweaker.oredict.IOreDictEntry;
import crafttweaker.liquid.ILiquidStack;
import mods.nuclearcraft.AlloyFurnace;
import mods.nuclearcraft.Assembler;
import mods.nuclearcraft.DecayHastener;
import mods.nuclearcraft.Infuser;
import mods.nuclearcraft.Separator;
import mods.nuclearcraft.FuelReprocessor;
/* import mods.nuclearcraft.FissionIrradiator; */
import mods.nuclearcraft.PebbleFission;
import mods.nuclearcraft.SolidFission;
import mods.nuclearcraft.RockCrusher;
import mods.nuclearcraft.Melter;
import mods.nuclearcraft.IngotFormer;
import mods.nuclearcraft.ChemicalReactor;
import mods.nuclearcraft.SaltMixer;
import mods.nuclearcraft.Electrolyzer;
import mods.nuclearcraft.Centrifuge;
import mods.nuclearcraft.SaltFission;
// this is a separate/extra multiplier beyond NC's base multiplier
// (meaning this only affects MoarFuels' fuels, while NC's config
// affects both NC's & MoarFuels' fuels)
// only accepts an integer value
val lifetimeMultiplier = 1;
// isotopes recipes
val IsoNames= [[<contenttweaker:californium53>,<contenttweaker:californium53carbide>,<contenttweaker:californium53oxide>,<contenttweaker:californium53nitride>,<contenttweaker:californium53zirconium>],[<contenttweaker:californium54>,<contenttweaker:californium54carbide>,<contenttweaker:californium54oxide>,<contenttweaker:californium54nitride>,<contenttweaker:californium54zirconium>],[<contenttweaker:einsteinium54>,<contenttweaker:einsteinium54carbide>,<contenttweaker:einsteinium54oxide>,<contenttweaker:einsteinium54nitride>,<contenttweaker:einsteinium54zirconium>],[<contenttweaker:einsteinium55>,<contenttweaker:einsteinium55carbide>,<contenttweaker:einsteinium55oxide>,<contenttweaker:einsteinium55nitride>,<contenttweaker:einsteinium55zirconium>],[<contenttweaker:fermium57>,<contenttweaker:fermium57carbide>,<contenttweaker:fermium57oxide>,<contenttweaker:fermium57nitride>,<contenttweaker:fermium57zirconium>]] as IIngredient[][];
val IsoNames2= [[<contenttweaker:californium53>,<contenttweaker:californium53carbide>,<contenttweaker:californium53oxide>,<contenttweaker:californium53nitride>,<contenttweaker:californium53zirconium>],[<contenttweaker:californium54>,<contenttweaker:californium54carbide>,<contenttweaker:californium54oxide>,<contenttweaker:californium54nitride>,<contenttweaker:californium54zirconium>],[<contenttweaker:einsteinium54>,<contenttweaker:einsteinium54carbide>,<contenttweaker:einsteinium54oxide>,<contenttweaker:einsteinium54nitride>,<contenttweaker:einsteinium54zirconium>],[<contenttweaker:einsteinium55>,<contenttweaker:einsteinium55carbide>,<contenttweaker:einsteinium55oxide>,<contenttweaker:einsteinium55nitride>,<contenttweaker:einsteinium55zirconium>],[<contenttweaker:fermium57>,<contenttweaker:fermium57carbide>,<contenttweaker:fermium57oxide>,<contenttweaker:fermium57nitride>,<contenttweaker:fermium57zirconium>]] as IItemStack[][];
var fluidNames= [<fluid:californium_253>,<fluid:californium_254>,<fluid:einsteinium_254>,<fluid:einsteinium_255>,<fluid:fermium_257>] as ILiquidStack[];
//val radName= [<ore:Californium253>,<ore:Californium254>,<ore:Einsteinium254>,<ore:Einsteinium255>,<ore:Fermium257>] as IOreDictEntry[];
val isoN2 = [<contenttweaker:californium53>,<contenttweaker:californium54>,<contenttweaker:einsteinium54>,<contenttweaker:einsteinium55>,<contenttweaker:fermium57>] as IItemStack[];
val decays = [[<ore:ingotCalifornium249>,<ore:ingotCalifornium249Carbide>,<ore:ingotCalifornium249Oxide>,<ore:ingotCalifornium249Nitride>,<ore:ingotCalifornium249ZA>],[<ore:dustPromethium147>,<ore:dustPromethium147>,<ore:dustPromethium147>,<ore:dustPromethium147>,<ore:dustPromethium147>],[<ore:ingotCurium246>,<ore:ingotCurium246Carbide>,<ore:ingotCurium246Oxide>,<ore:ingotCurium246Nitride>,<ore:ingotCurium246ZA>], [<ore:ingotCalifornium251>,<ore:ingotCalifornium251Carbide>,<ore:ingotCalifornium251Oxide>,<ore:ingotCalifornium251Nitride>,<ore:ingotCalifornium251ZA>],[<contenttweaker:californium53>,<contenttweaker:californium53carbide>,<contenttweaker:californium53oxide>,<contenttweaker:californium53nitride>,<contenttweaker:californium53zirconium>]] as IIngredient[][];
var decayRad = [20.5, 6.04, 1.32, 9.18, 3.63] as double[];
//cf-250 skipped over due to balancing concerns
//oreDic
var oreDictList = ["dustGermanium","ingotCalifornium253All","ingotCalifornium254All","ingotEinsteinium254All","ingotEinsteinium255All","ingotFermium257All"] as string[];
for entry in oreDictList {
oreDict.entry;
}
<ore:dustGermanium>.add(<contenttweaker:gemgermanium>);
var realOreDictList = [<ore:ingotCalifornium253All>,<ore:ingotCalifornium254All>,<ore:ingotEinsteinium254All>,<ore:ingotEinsteinium255All>,<ore:ingotFermium257All>] as IOreDictEntry[];
val graphite = <ore:ingotGraphite>|<ore:dustGraphite>;
val zirconium = <ore:ingotZirconium>|<ore:dustZirconium>;
for i,array in IsoNames{
// adding carbides
mods.nuclearcraft.AlloyFurnace.addRecipe(array[0], graphite, array[1]);
// adding oxides
mods.nuclearcraft.Infuser.addRecipe(array[0], <fluid:oxygen>*1000, array[2]);
// adding nitrides
mods.nuclearcraft.Infuser.addRecipe(array[0], <fluid:nitrogen>*1000, array[3]);
// adding zirconium alloys
mods.nuclearcraft.AlloyFurnace.addRecipe(array[0], zirconium, array[4]);
// recipes for normal
furnace.addRecipe(isoN2[i], array[3]);
furnace.addRecipe(isoN2[i], array[2]);
mods.nuclearcraft.Separator.addRecipe(array[1], array[0], <nuclearcraft:dust:8>);
mods.nuclearcraft.Separator.addRecipe(array[4], array[0], <nuclearcraft:dust:10>);
//adding decays
for j,item in array{
mods.nuclearcraft.Radiation.setRadiationLevel(item, decayRad[i]);
realOreDictList[i].add(IsoNames2[i][j]);
if (i!=1 | (j!=1 & j!=4)){
mods.nuclearcraft.DecayHastener.addRecipe(item, decays[i][j],1.0,1.0,decayRad[i]);
}
}
// melting time
mods.nuclearcraft.Melter.addRecipe(array[0], fluidNames[i]*144);
mods.nuclearcraft.IngotFormer.addRecipe(fluidNames[i]*144, array[0]);
}
//does all liquid stuff except isotope mixing & separation
function superMelt(item as IItemStack, array as ILiquidStack[], prod as ILiquidStack[], doub as double[], integs as int[], selfPriming as bool){
//array is molten, fluoride, FLiBe, dFLiBe, dF, dMolten
//prod is 4 actinides, 2 fission products
//doub is time, efficiency, radiation, decay factor
//integs is heat, criticality, fission product1 chance, fission product2 chance
//basic melter
mods.nuclearcraft.Melter.addRecipe(item, array[0]*144);
mods.nuclearcraft.IngotFormer.addRecipe(array[0]*144, item);
//fuel making
mods.nuclearcraft.ChemicalReactor.addRecipe(array[0]*72, <fluid:fluorine>*500, array[1]*72, null);
mods.nuclearcraft.Electrolyzer.addRecipe(array[1]*72, array[0]*72, <fluid:fluorine>*500, null, null);
mods.nuclearcraft.SaltMixer.addRecipe(array[1]*72, <fluid:flibe>*72, array[2]*72);
mods.nuclearcraft.Centrifuge.addRecipe(array[2]*72, array[1]*72, <fluid:flibe>*72, null, null, null, null);
//MSR recipe
mods.nuclearcraft.SaltFission.addRecipe(array[2], array[3], doub[0], integs[0], doub[1], integs[1], doub[3], selfPriming, doub[2]);
//reprocessing
mods.nuclearcraft.Centrifuge.addRecipe(array[3]*72, array[4]*72, <fluid:flibe>*72, null, null, null, null);
mods.nuclearcraft.Electrolyzer.addRecipe(array[4]*72, array[5]*72, <fluid:fluorine>*500, null, null);
val fisProd1 = mods.nuclearcraft.ChanceFluidIngredient.create(prod[4]*16, integs[2], 16);
val fisProd2 = mods.nuclearcraft.ChanceFluidIngredient.create(prod[5]*16, integs[3], 16);
mods.nuclearcraft.Centrifuge.addRecipe(array[5]*144, prod[0], prod[1], fisProd1, prod[2], prod[3], fisProd2);
}
// fuels recipes
/* -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- LE Fuels -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- */
var fis = [[<contenttweaker:californium53>,<contenttweaker:californium53carbide>,<contenttweaker:californium53oxide>,<contenttweaker:californium53nitride>,<contenttweaker:californium53zirconium>],[<contenttweaker:einsteinium54>,<contenttweaker:einsteinium54carbide>,<contenttweaker:einsteinium54oxide>,<contenttweaker:einsteinium54nitride>,<contenttweaker:einsteinium54zirconium>]] as IIngredient[][];
var fer = [[<ore:ingotCalifornium252>,<nuclearcraft:californium:16>,<ore:ingotCalifornium252Oxide>,<ore:ingotCalifornium252Nitride>,<nuclearcraft:californium:19>],[<contenttweaker:einsteinium55>,<contenttweaker:einsteinium55carbide>,<contenttweaker:einsteinium55oxide>,<contenttweaker:einsteinium55nitride>,<contenttweaker:einsteinium55zirconium>]] as IIngredient[][];
var FuelNames = [["californium_fuel","californium_fuel_carbide","californium_fuel_oxide","californium_fuel_nitride","californium_fuel_zirconium"],["einsteinium_fuel","einsteinium_fuel_carbide","einsteinium_fuel_oxide","einsteinium_fuel_nitride","einsteinium_fuel_zirconium"]] as string[][];
var allFuels = [[<contenttweaker:californium_fuel>,<contenttweaker:californium_fuel_carbide>,<contenttweaker:californium_fuel_oxide>,<contenttweaker:californium_fuel_nitride>,<contenttweaker:californium_fuel_zirconium>],[<contenttweaker:einsteinium_fuel>,<contenttweaker:einsteinium_fuel_carbide>,<contenttweaker:einsteinium_fuel_oxide>,<contenttweaker:einsteinium_fuel_nitride>,<contenttweaker:einsteinium_fuel_zirconium>]] as IItemStack[][];
var fuelN2 = [<contenttweaker:californium_fuel>,<contenttweaker:einsteinium_fuel>] as IItemStack[];
decayRad =[2.61,8.3,1.92,7.09,6.56] as double[];
var decayFactor =[0.10,0.105] as double[];
var fluidFuelNames= [[<fluid:lecf_253>,<fluid:lecf_253_fluoride>,<fluid:lecf_253_fluoride_flibe>,<fluid:depleted_lecf_253_fluoride_flibe>,<fluid:depleted_lecf_253_fluoride>,<fluid:depleted_lecf_253>],[<fluid:lee_254>,<fluid:lee_254_fluoride>,<fluid:lee_254_fluoride_flibe>,<fluid:depleted_lee_254_fluoride_flibe>,<fluid:depleted_lee_254_fluoride>,<fluid:depleted_lee_254>]] as ILiquidStack[][];
var fluidProd= [[<fluid:californium_252>*32,<fluid:californium_252>*32,<fluid:einsteinium_254>*32,<fluid:einsteinium_255>*32,<fluid:caesium_137>,<fluid:promethium_147>],[<fluid:einsteinium_254>*16,<fluid:einsteinium_255>*48,<fluid:einsteinium_255>*48,<fluid:fermium_257>*16,<fluid:caesium_137>,<fluid:promethium_147>]] as ILiquidStack[][];
var fluidComp= [[<fluid:californium_252>*128,<fluid:californium_253>*16],[<fluid:einsteinium_255>*128,<fluid:einsteinium_254>*16]] as IIngredient[][];
// time, heat, criticality
var fuelStats = [[[lifetimeMultiplier*450,1280,25],[lifetimeMultiplier*288,2000,17],[lifetimeMultiplier*324,1778,18]],[[lifetimeMultiplier*550,1048,31],[lifetimeMultiplier*352,1638,21],[lifetimeMultiplier*396,1456,23]]] as int[][][];
var fuelCrits = [[20],[25]] as int[][];
var trisoFuels = [<contenttweaker:californium_fuel_triso>,<contenttweaker:einsteinium_fuel_triso>] as IItemStack[];
var dFuels = [[<contenttweaker:dcalifornium_fuel_triso>,<contenttweaker:dcalifornium_fuel_oxide>,<contenttweaker:dcalifornium_fuel_nitride>,<contenttweaker:dcalifornium_fuel_zirconium>],[<contenttweaker:deinsteinium_fuel_triso>,<contenttweaker:deinsteinium_fuel_oxide>,<contenttweaker:deinsteinium_fuel_nitride>,<contenttweaker:deinsteinium_fuel_zirconium>]] as IIngredient[][];
var dFuels2 = [[<contenttweaker:dcalifornium_fuel_triso>,<contenttweaker:dcalifornium_fuel_oxide>,<contenttweaker:dcalifornium_fuel_nitride>,<contenttweaker:dcalifornium_fuel_zirconium>],[<contenttweaker:deinsteinium_fuel_triso>,<contenttweaker:deinsteinium_fuel_oxide>,<contenttweaker:deinsteinium_fuel_nitride>,<contenttweaker:deinsteinium_fuel_zirconium>]] as IItemStack[][];
// time, heat, criticality
var trisoStats = [[lifetimeMultiplier*360,1600,17],[lifetimeMultiplier*440,1310,21]] as int[][];
// efficiency, radiation
var trisoStatsAlt = [[1.9,8.01E-02],[2.0,2.34E-01]] as double[][];
var moltenTimes = [3.125,3.819444444] as double[];
// MRR Compat
if (oreDict has "QuantumTraverseIHaveHadEnoughOfYourSpaghettiCodeAndAbsurdNames") {
trisoStatsAlt = [[1.9,4.22E-02],[2.0,7.18E-02]] as double[][];
}
var fisProd1 = mods.nuclearcraft.ChanceItemIngredient.create(<ore:dustCaesium137>, 30);
var fisProd2 = mods.nuclearcraft.ChanceItemIngredient.create(<ore:dustPromethium147>, 20);
oreDictList = ["ingotLECf253All","ingotLEE254All","ingotDepletedLECf253All","ingotDepletedLEE254All"] as string[];
for entry in oreDictList {
oreDict.entry;
}
realOreDictList = [<ore:ingotLECf253All>,<ore:ingotLEE254All>,<ore:ingotDepletedLECf253All>,<ore:ingotDepletedLEE254All>] as IOreDictEntry[];
for i,array in allFuels{
for j,item in array{
//crafting
recipes.addShapeless(FuelNames[i][j],item * 9,[fis[i][j], fer[i][j], fer[i][j], fer[i][j], fer[i][j], fer[i][j], fer[i][j], fer[i][j], fer[i][j]]);
mods.nuclearcraft.Radiation.setRadiationLevel(item, decayRad[i]);
realOreDictList[i].add(item);
}
//non-crafting recipes
mods.nuclearcraft.AlloyFurnace.addRecipe(array[0], graphite, array[1]);
mods.nuclearcraft.Infuser.addRecipe(array[0], <fluid:oxygen>*1000, array[2]);
mods.nuclearcraft.Infuser.addRecipe(array[0], <fluid:nitrogen>*1000, array[3]);
mods.nuclearcraft.AlloyFurnace.addRecipe(array[0], zirconium, array[4]);
furnace.addRecipe(fuelN2[i], array[3]);
furnace.addRecipe(fuelN2[i], array[2]);
mods.nuclearcraft.Separator.addRecipe(array[1], array[0], <nuclearcraft:dust:8>);
mods.nuclearcraft.Separator.addRecipe(array[4], array[0], <nuclearcraft:dust:10>);
mods.nuclearcraft.Separator.addRecipe(array[0]*9, fis[i][0], fer[i][0]*8);
//pebbles
mods.nuclearcraft.Assembler.addRecipe(array[1]*9, <ore:dustGraphite>, <nuclearcraft:part:15>, <nuclearcraft:alloy:13>, trisoFuels[i]*9);
if (oreDict has "QuantumTraverseWhyCanISteamMyCrabs") {
mods.nuclearcraft.SolidFission.addRecipe(trisoFuels[i], dFuels[i][0], fuelStats[i][2][0], fuelStats[i][2][1], trisoStatsAlt[i][0], fuelStats[i][2][2], decayFactor[i], true, trisoStatsAlt[i][1]);
}else{
mods.nuclearcraft.PebbleFission.addRecipe(trisoFuels[i], dFuels[i][0], trisoStats[i][0], trisoStats[i][1], trisoStatsAlt[i][0], trisoStats[i][2], decayFactor[i], true, trisoStatsAlt[i][1]);
}
mods.nuclearcraft.Radiation.setRadiationLevel(trisoFuels[i], decayRad[i]);
realOreDictList[i].add(trisoFuels[i]);
//oxide
mods.nuclearcraft.SolidFission.addRecipe(array[2], dFuels[i][1], trisoStats[i][0], trisoStats[i][1], trisoStatsAlt[i][0], fuelCrits[i][0], decayFactor[i], true, trisoStatsAlt[i][1]);
//nitride
mods.nuclearcraft.SolidFission.addRecipe(array[3], dFuels[i][2], fuelStats[i][0][0], fuelStats[i][0][1], trisoStatsAlt[i][0], fuelStats[i][0][2], decayFactor[i], true, trisoStatsAlt[i][1]);
//zirconium
mods.nuclearcraft.SolidFission.addRecipe(array[4], dFuels[i][3], fuelStats[i][1][0], fuelStats[i][1][1], trisoStatsAlt[i][0], fuelStats[i][1][2], decayFactor[i], true, trisoStatsAlt[i][1]);
//melting time
mods.nuclearcraft.SaltMixer.addRecipe(fluidComp[i][0], fluidComp[i][1], fluidFuelNames[i][0]*144);
mods.nuclearcraft.Centrifuge.addRecipe(fluidFuelNames[i][0]*144, fluidComp[i][0], fluidComp[i][1], null, null, null, null);
superMelt(array[0], fluidFuelNames[i], fluidProd[i], [moltenTimes[i], trisoStatsAlt[i][0], trisoStatsAlt[i][1], decayFactor[i]] as double[], [fuelStats[i][0][1],fuelCrits[i][0],30,20] as int[], true);
}
// reprocessing the depleted fuels
var dIso = [[[fer[0][1].amount(2),fer[0][1].amount(2),fer[1][1].amount(2),fis[1][1]], [fer[0][2].amount(2),fer[0][2].amount(2),fer[1][2].amount(2),fis[1][2]], [fer[0][3].amount(2),fer[0][3].amount(2),fer[1][3].amount(2),fis[1][3]], [fer[0][4].amount(2),fer[0][4].amount(2),fer[1][4].amount(2),fis[1][4]]], [[fis[1][1],fer[1][1].amount(3),fer[1][1].amount(3),<contenttweaker:fermium57carbide>],[fis[1][2],fer[1][2].amount(3),fer[1][2].amount(3),<contenttweaker:fermium57oxide>],[fis[1][3],fer[1][3].amount(3),fer[1][3].amount(3),<contenttweaker:fermium57nitride>],[fis[1][4],fer[1][4].amount(3),fer[1][4].amount(3),<contenttweaker:fermium57zirconium>]] ] as IIngredient[][][];
var ddecayRad = [2.51,6.68,1.14,3.99,5.32] as double[];
for i,array in dFuels{
//triso
mods.nuclearcraft.FuelReprocessor.addRecipe(array[0].amount(9), dIso[i][0][0], dIso[i][0][1], fisProd1, <ore:dustGraphite>.amount(3), dIso[i][0][2], dIso[i][0][3], fisProd2, <nuclearcraft:alloy:13>);
//oxide
mods.nuclearcraft.FuelReprocessor.addRecipe(array[1].amount(9), dIso[i][1][0], dIso[i][1][1], fisProd1, null, dIso[i][1][2], dIso[i][1][3], fisProd2, null);
//nitride
mods.nuclearcraft.FuelReprocessor.addRecipe(array[2].amount(9), dIso[i][2][0], dIso[i][2][1], fisProd1, null, dIso[i][2][2], dIso[i][2][3], fisProd2, null);
//zirc
mods.nuclearcraft.FuelReprocessor.addRecipe(array[3].amount(9), dIso[i][3][0], dIso[i][3][1], fisProd1, <nuclearcraft:dust:10>, dIso[i][3][2], dIso[i][3][3], fisProd2, null);
for j,item in array{
mods.nuclearcraft.Radiation.setRadiationLevel(item, ddecayRad[i]);
realOreDictList[i+2].add(dFuels2[i][j]);
}
}
/* -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- MX Fuels -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- */
val mxFuelNames = ["fermium_fuel","fermium_fuel_carbide","fermium_fuel_oxide","fermium_fuel_nitride","fermium_fuel_zirconium"] as string[];
val mxFuels = [<contenttweaker:fermium_fuel>,<contenttweaker:fermium_fuel_carbide>,<contenttweaker:fermium_fuel_oxide>,<contenttweaker:fermium_fuel_nitride>,<contenttweaker:fermium_fuel_zirconium>] as IItemStack[];
fluidNames= [<fluid:mix_257>] as ILiquidStack[];
val fm257 = [<contenttweaker:fermium57>,<contenttweaker:fermium57carbide>,<contenttweaker:fermium57oxide>,<contenttweaker:fermium57nitride>,<contenttweaker:fermium57zirconium>] as IItemStack[];
val am243 = [<ore:ingotAmericium243>,<ore:ingotAmericium243Carbide>,<ore:ingotAmericium243Oxide>,<ore:ingotAmericium243Nitride>,<ore:ingotAmericium243ZA>] as IIngredient[];
val bk247 = [<ore:ingotBerkelium247>,<ore:ingotBerkelium247Carbide>,<ore:ingotBerkelium247Oxide>,<ore:ingotBerkelium247Nitride>,<ore:ingotBerkelium247ZA>] as IIngredient[];
val cf254 = [<contenttweaker:californium54>,<contenttweaker:californium54carbide>,<contenttweaker:californium54oxide>,<contenttweaker:californium54nitride>,<contenttweaker:californium54zirconium>] as IItemStack[];
oreDict.ingotMIX257All;
oreDict.ingotDepletedMIX257All;
for j,item in mxFuels{
//crafting
recipes.addShapeless(mxFuelNames[j],item * 9,[fm257[j], fm257[j], fm257[j], am243[j], am243[j], bk247[j], bk247[j], fer[0][j], cf254[j]]);
mods.nuclearcraft.Radiation.setRadiationLevel(item, decayRad[2]);
<ore:ingotMIX257All>.add(item);
}
//non-crafting recipes
mods.nuclearcraft.AlloyFurnace.addRecipe(mxFuels[0], graphite, mxFuels[1]);
mods.nuclearcraft.Infuser.addRecipe(mxFuels[0], <fluid:oxygen>*1000, mxFuels[2]);
mods.nuclearcraft.Infuser.addRecipe(mxFuels[0], <fluid:nitrogen>*1000, mxFuels[3]);
mods.nuclearcraft.AlloyFurnace.addRecipe(mxFuels[0], zirconium, mxFuels[4]);
furnace.addRecipe(<contenttweaker:fermium_fuel>, mxFuels[3]);
furnace.addRecipe(<contenttweaker:fermium_fuel>, mxFuels[2]);
mods.nuclearcraft.Separator.addRecipe(mxFuels[1], mxFuels[0], <nuclearcraft:dust:8>);
mods.nuclearcraft.Separator.addRecipe(mxFuels[4], mxFuels[0], <nuclearcraft:dust:10>);
val dmxFuels = [<contenttweaker:dfermium_fuel_triso>,<contenttweaker:dfermium_fuel_oxide>,<contenttweaker:dfermium_fuel_nitride>,<contenttweaker:dfermium_fuel_zirconium>] as IItemStack[];
val mxeff = 2.1;
var mxrad = 4.79E-02;
// MRR Compat
if (oreDict has "QuantumTraverseIHaveHadEnoughOfYourSpaghettiCodeAndAbsurdNames") {
mxrad = 3.38E-02;
}
//pebbles
mods.nuclearcraft.Assembler.addRecipe(mxFuels[1]*9, <ore:dustGraphite>, <nuclearcraft:part:15>, <nuclearcraft:alloy:13>, <contenttweaker:fermium_fuel_triso>*9);
if (oreDict has "QuantumTraverseWhyCanISteamMyCrabs") {
mods.nuclearcraft.SolidFission.addRecipe(<contenttweaker:fermium_fuel_triso>, dmxFuels[0], (lifetimeMultiplier*684), 2700, mxeff, 40, 0.11, true, mxrad);
}else{
mods.nuclearcraft.PebbleFission.addRecipe(<contenttweaker:fermium_fuel_triso>, dmxFuels[0], (lifetimeMultiplier*760), 2430, mxeff, 37, 0.11, true, mxrad);
}
mods.nuclearcraft.Radiation.setRadiationLevel(<contenttweaker:fermium_fuel_triso>, decayRad[2]);
<ore:ingotMIX257All>.add(<contenttweaker:fermium_fuel_triso>);
//oxide
mods.nuclearcraft.SolidFission.addRecipe(mxFuels[2], dmxFuels[1], (lifetimeMultiplier*760), 2430, mxeff, 44, 0.11, true, mxrad);
//nitride
mods.nuclearcraft.SolidFission.addRecipe(mxFuels[3], dmxFuels[2], (lifetimeMultiplier*950), 1944, mxeff, 55, 0.11, true, mxrad);
//zirconium
mods.nuclearcraft.SolidFission.addRecipe(mxFuels[4], dmxFuels[3], (lifetimeMultiplier*608), 3088, mxeff, 37, 0.11, true, mxrad);
fisProd1 = mods.nuclearcraft.ChanceItemIngredient.create(<ore:dustCaesium137>, 75);
fisProd2 = mods.nuclearcraft.ChanceItemIngredient.create(<ore:dustEuropium155>, 75);
//reprocessing
//triso
mods.nuclearcraft.FuelReprocessor.addRecipe(dmxFuels[0] * 9, <nuclearcraft:curium:6> * 2, <ore:ingotCalifornium250Carbide> * 2, fisProd1, <ore:dustGraphite>.amount(4), fer[0][1] * 2, fis[1][1], fisProd2, <nuclearcraft:alloy:13>);
//oxide
mods.nuclearcraft.FuelReprocessor.addRecipe(dmxFuels[1] * 9, <nuclearcraft:curium:7> * 2, <ore:ingotCalifornium250Oxide> * 2, fisProd1, null, fer[0][2] * 2, fis[1][2], fisProd2, null);
//nitride
mods.nuclearcraft.FuelReprocessor.addRecipe(dmxFuels[2] * 9, <nuclearcraft:curium:8>* 2, <ore:ingotCalifornium250Nitride> * 2, fisProd1, null, fer[0][3] * 2, fis[1][3], fisProd2, null);
//zirc
mods.nuclearcraft.FuelReprocessor.addRecipe(dmxFuels[3] * 9, <nuclearcraft:curium:9> * 2, <ore:ingotCalifornium250ZA> * 2, fisProd1, <nuclearcraft:dust:10> * 2, fer[0][4] * 2, fis[1][4], fisProd2, null);
for item in dmxFuels{
mods.nuclearcraft.Radiation.setRadiationLevel(item, ddecayRad[2]);
<ore:ingotDepletedMIX257All>.add(item);
}
//MSR Stuff
fluidFuelNames= [[<fluid:mix_257>,<fluid:mix_257_fluoride>,<fluid:mix_257_fluoride_flibe>,<fluid:depleted_mix_257_fluoride_flibe>,<fluid:depleted_mix_257_fluoride>,<fluid:depleted_mix_257>]] as ILiquidStack[][];
fluidProd= [[<fluid:californium_252>*32,<fluid:californium_254>*16,<fluid:einsteinium_254>*16,<fluid:einsteinium_255>*48,<fluid:caesium_137>,<fluid:europium_155>]] as ILiquidStack[][];
superMelt(mxFuels[0], fluidFuelNames[0], fluidProd[0], [6.597222222, mxeff, mxrad, 0.11] as double[], [1944, 44, 75, 75] as int[], true);
/* -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- HE Fuels -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- */
FuelNames = [["hcalifornium_fuel","hcalifornium_fuel_carbide","hcalifornium_fuel_oxide","hcalifornium_fuel_nitride","hcalifornium_fuel_zirconium"],["heinsteinium_fuel","heinsteinium_fuel_carbide","heinsteinium_fuel_oxide","heinsteinium_fuel_nitride","heinsteinium_fuel_zirconium"]];
allFuels = [[<contenttweaker:hcalifornium_fuel>,<contenttweaker:hcalifornium_fuel_carbide>,<contenttweaker:hcalifornium_fuel_oxide>,<contenttweaker:hcalifornium_fuel_nitride>,<contenttweaker:hcalifornium_fuel_zirconium>],[<contenttweaker:heinsteinium_fuel>,<contenttweaker:heinsteinium_fuel_carbide>,<contenttweaker:heinsteinium_fuel_oxide>,<contenttweaker:heinsteinium_fuel_nitride>,<contenttweaker:heinsteinium_fuel_zirconium>]];
fuelN2 = [<contenttweaker:hcalifornium_fuel>,<contenttweaker:heinsteinium_fuel>];
fluidFuelNames= [[<fluid:hecf_253>,<fluid:hecf_253_fluoride>,<fluid:hecf_253_fluoride_flibe>,<fluid:depleted_hecf_253_fluoride_flibe>,<fluid:depleted_hecf_253_fluoride>,<fluid:depleted_hecf_253>],[<fluid:hee_254>,<fluid:hee_254_fluoride>,<fluid:hee_254_fluoride_flibe>,<fluid:depleted_hee_254_fluoride_flibe>,<fluid:depleted_hee_254_fluoride>,<fluid:depleted_hee_254>]] as ILiquidStack[][];
fluidProd= [[<fluid:californium_252>*32,<fluid:californium_254>*16,<fluid:einsteinium_254>*16,<fluid:einsteinium_255>*48,<fluid:caesium_137>,<fluid:promethium_147>],[<fluid:einsteinium_255>*16,<fluid:einsteinium_255>*16,<fluid:einsteinium_255>*32,<fluid:fermium_257>*48,<fluid:caesium_137>,<fluid:promethium_147>]] as ILiquidStack[][];
fluidComp= [[<fluid:californium_252>,<fluid:californium_253>,<fluid:lecf_253>],[<fluid:einsteinium_255>,<fluid:einsteinium_254>,<fluid:lee_254>]] as IIngredient[][];
moltenTimes = [3.125,3.819444444] as double[];
fuelCrits = [[9,10,13,9],[11,13,16,12]];
trisoFuels = [<contenttweaker:hcalifornium_fuel_triso>,<contenttweaker:heinsteinium_fuel_triso>];
dFuels = [[<contenttweaker:dhcalifornium_fuel_triso>,<contenttweaker:dhcalifornium_fuel_oxide>,<contenttweaker:dhcalifornium_fuel_nitride>,<contenttweaker:dhcalifornium_fuel_zirconium>],[<contenttweaker:dheinsteinium_fuel_triso>,<contenttweaker:dheinsteinium_fuel_oxide>,<contenttweaker:dheinsteinium_fuel_nitride>,<contenttweaker:dheinsteinium_fuel_zirconium>]];
dFuels2 = [[<contenttweaker:dhcalifornium_fuel_triso>,<contenttweaker:dhcalifornium_fuel_oxide>,<contenttweaker:dhcalifornium_fuel_nitride>,<contenttweaker:dhcalifornium_fuel_zirconium>],[<contenttweaker:dheinsteinium_fuel_triso>,<contenttweaker:dheinsteinium_fuel_oxide>,<contenttweaker:dheinsteinium_fuel_nitride>,<contenttweaker:dheinsteinium_fuel_zirconium>]];
trisoStatsAlt = [[1.95,1.73E-01],[2.05,1.86E-01]] as double[][];
// MRR Compat
if (oreDict has "QuantumTraverseIHaveHadEnoughOfYourSpaghettiCodeAndAbsurdNames") {
trisoStatsAlt = [[1.9,6.50E-02],[2.0,6.15E-02]] as double[][];
}
fisProd1 = mods.nuclearcraft.ChanceItemIngredient.create(<ore:dustCaesium137>, 90);
fisProd2 = mods.nuclearcraft.ChanceItemIngredient.create(<ore:dustPromethium147>, 60);
oreDictList = ["ingotHECf253All","ingotHEE254All","ingotDepletedHECf253All","ingotDepletedHEE254All"] as string[];
for entry in oreDictList {
oreDict.entry;
}
realOreDictList = [<ore:ingotHECf253All>,<ore:ingotHEE254All>,<ore:ingotDepletedHECf253All>,<ore:ingotDepletedHEE254All>] as IOreDictEntry[];
for i,array in allFuels{
for j,item in array{
//crafting
recipes.addShapeless(FuelNames[i][j],item * 9,[fis[i][j], fis[i][j], fis[i][j], fer[i][j], fer[i][j], fer[i][j], fer[i][j], fer[i][j], fer[i][j]]);
mods.nuclearcraft.Radiation.setRadiationLevel(item, decayRad[3+i]);
realOreDictList[i].add(item);
}
//non-crafting recipes
mods.nuclearcraft.AlloyFurnace.addRecipe(array[0], graphite, array[1]);
mods.nuclearcraft.Infuser.addRecipe(array[0], <fluid:oxygen>*1000, array[2]);
mods.nuclearcraft.Infuser.addRecipe(array[0], <fluid:nitrogen>*1000, array[3]);
mods.nuclearcraft.AlloyFurnace.addRecipe(array[0], zirconium, array[4]);
furnace.addRecipe(fuelN2[i], array[3]);
furnace.addRecipe(fuelN2[i], array[2]);
mods.nuclearcraft.Separator.addRecipe(array[1], array[0], <nuclearcraft:dust:8>);
mods.nuclearcraft.Separator.addRecipe(array[4], array[0], <nuclearcraft:dust:10>);
mods.nuclearcraft.Separator.addRecipe(array[0]*9, fis[i][0]*3, fer[i][0]*6);
//pebbles
mods.nuclearcraft.Assembler.addRecipe(array[1]*9, <ore:dustGraphite>, <nuclearcraft:part:15>, <nuclearcraft:alloy:13>, trisoFuels[i]*9);
if (oreDict has "QuantumTraverseWhyCanISteamMyCrabs") {
mods.nuclearcraft.SolidFission.addRecipe(trisoFuels[i], dFuels[i][0], fuelStats[i][2][0], (3 * fuelStats[i][2][1]), fuelCrits[i][3], fuelStats[i][2][2], decayFactor[i], true, trisoStatsAlt[i][1]);
}else{
mods.nuclearcraft.PebbleFission.addRecipe(trisoFuels[i], dFuels[i][0], trisoStats[i][0], (3 * trisoStats[i][1]), trisoStatsAlt[i][0], fuelCrits[i][0], decayFactor[i], true, trisoStatsAlt[i][1]);
}
mods.nuclearcraft.Radiation.setRadiationLevel(trisoFuels[i], decayRad[3+i]);
realOreDictList[i].add(trisoFuels[i]);
//oxide
mods.nuclearcraft.SolidFission.addRecipe(array[2], dFuels[i][1], trisoStats[i][0], (3 * trisoStats[i][1]), trisoStatsAlt[i][0], fuelCrits[i][1], decayFactor[i], true, trisoStatsAlt[i][1]);
//nitride
mods.nuclearcraft.SolidFission.addRecipe(array[3], dFuels[i][2], fuelStats[i][0][0], (3 * fuelStats[i][0][1]), trisoStatsAlt[i][0], fuelCrits[i][2], decayFactor[i], true, trisoStatsAlt[i][1]);
//zirconium
mods.nuclearcraft.SolidFission.addRecipe(array[4], dFuels[i][3], fuelStats[i][1][0], (3 * fuelStats[i][1][1]), trisoStatsAlt[i][0], fuelCrits[i][0], decayFactor[i], true, trisoStatsAlt[i][1]);
//melting time
mods.nuclearcraft.SaltMixer.addRecipe(fluidComp[i][2]*48, fluidComp[i][1]*16, fluidFuelNames[i][0]*64);
mods.nuclearcraft.Centrifuge.addRecipe(fluidFuelNames[i][0]*144, fluidComp[i][0]*96, fluidComp[i][1]*48, null, null, null, null);
superMelt(array[0], fluidFuelNames[i], fluidProd[i], [moltenTimes[i], trisoStatsAlt[i][0], trisoStatsAlt[i][1], decayFactor[i]] as double[], [(3*fuelStats[i][0][1]), fuelCrits[i][0], 90, 60] as int[], true);
}
// reprocessing the depleted fuels
dIso = [[[fer[0][1].amount(2),<contenttweaker:californium54carbide>,fer[1][1],fis[1][1].amount(3)], [fer[0][2].amount(2),<contenttweaker:californium54oxide>,fer[1][2],fis[1][2].amount(3)], [fer[0][3].amount(2),<contenttweaker:californium54nitride>,fer[1][3],fis[1][3].amount(3)], [fer[0][4].amount(2),<contenttweaker:californium54zirconium>,fer[1][4],fis[1][4].amount(3)]], [[fer[1][1],fer[1][1],fer[1][1].amount(2),<contenttweaker:fermium57carbide> * 3],[fer[1][2],fer[1][2],fer[1][2].amount(2),<contenttweaker:fermium57oxide> * 3],[fer[1][3],fer[1][3],fer[1][3].amount(2),<contenttweaker:fermium57nitride> * 3],[fer[1][4],fer[1][4],fer[1][4].amount(2),<contenttweaker:fermium57zirconium> *3 ]]] as IIngredient[][][];
for i,array in dFuels{
//triso
mods.nuclearcraft.FuelReprocessor.addRecipe(array[0].amount(9), dIso[i][0][0], dIso[i][0][1], fisProd1, <ore:dustGraphite>.amount(4), dIso[i][0][2], dIso[i][0][3], fisProd2, <nuclearcraft:alloy:13>);
//oxide
mods.nuclearcraft.FuelReprocessor.addRecipe(array[1].amount(9), dIso[i][1][0], dIso[i][1][1], fisProd1, null, dIso[i][1][2], dIso[i][1][3], fisProd2, null);
//nitride
mods.nuclearcraft.FuelReprocessor.addRecipe(array[2].amount(9), dIso[i][2][0], dIso[i][2][1], fisProd1, null, dIso[i][2][2], dIso[i][2][3], fisProd2, null);
//zirc
mods.nuclearcraft.FuelReprocessor.addRecipe(array[3].amount(9), dIso[i][3][0], dIso[i][3][1], fisProd1, <nuclearcraft:dust:10> * 2, dIso[i][3][2], dIso[i][3][3], fisProd2, null);
for j,item in array{
mods.nuclearcraft.Radiation.setRadiationLevel(item, ddecayRad[3+i]);
realOreDictList[i+2].add(dFuels2[i][j]);
}
}
/* -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- CBCm Time -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- */
oreDict.ingotCurium244;
<ore:ingotCurium244>.add(<contenttweaker:curium_244>);
oreDict.ingotCBCm;
<ore:ingotCBCm>.add(<contenttweaker:cbc>);
oreDict.ingotCBCmAll;
// MRR Compat
if (oreDict has "QuantumTraverseIHaveHadEnoughOfYourSpaghettiCodeAndAbsurdNames") {
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotCurium244>, 1.94E-05);
mods.nuclearcraft.DecayHastener.addRecipe(<ore:ingotCurium244>, <ore:dustThorium>, 1.0, 1.0, 1.94E-05);
mods.nuclearcraft.FissionIrradiator.addRecipe(<ore:ingotCurium244>, <ore:ingotCBCm>, 78388, 0.0, 0.0, 1.94E-05);
mods.nuclearcraft.FissionIrradiator.addRecipe(<ore:ingotCBCm>, <ore:ingotCurium245>, 1332612, 0.0, 0.0, 2.81E-05);
}else{
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotCurium244>, 5.52E-02);
mods.nuclearcraft.DecayHastener.addRecipe(<ore:ingotCurium244>, <ore:dustThorium>, 1.0, 1.0, 5.52E-02);
mods.nuclearcraft.FissionIrradiator.addRecipe(<ore:ingotCurium244>, <ore:ingotCBCm>, 78388, 0.0, 0.0, 5.52E-02);
mods.nuclearcraft.FissionIrradiator.addRecipe(<ore:ingotCBCm>, <ore:ingotCurium245>, 1332612, 0.0, 0.0, 5.22E-02);
}
// does all the needed things
function theMediumCheese(pellet as IItemStack[], triso as IItemStack, dpellet as IIngredient[], dpellet2 as IItemStack[], fuelInts as int[][], integs as int[], fuelDoubles as double[], array as ILiquidStack[], prod as ILiquidStack[], solidProd as IIngredient[][], selfPriming as bool, oreNames as IOreDictEntry[]){
//fis/fert/pellet is [normal,carbide,oxide,nitride,za]
//dpellet is [tr, ox, ni, za]
//fuelInts is [time, heat, criticality] for [ox, ni, za, trisoSFR]
//integs is [enrichment, fisProd1 base chance, fisProd2 base chance, affected chance reprocessing ingredient]
//fuelDoubles is [efficiency, base radiation, burn radiation, depleted radiation, MSR time, decay factor]
//array is molten, fluoride, FLiBe, dFLiBe, dF, dMolten
//prod is 4 actinides, 2 fission products as liquids
//solidProd is 4 actinides, 2 fission products as items
for i,item in pellet{
mods.nuclearcraft.Radiation.setRadiationLevel(item, fuelDoubles[1]);
oreNames[0].add(item);
}
//non-crafting recipes
mods.nuclearcraft.AlloyFurnace.addRecipe(pellet[0], <ore:ingotGraphite>|<ore:dustGraphite>, pellet[1]);
mods.nuclearcraft.Infuser.addRecipe(pellet[0], <fluid:oxygen>*1000, pellet[2]);
mods.nuclearcraft.Infuser.addRecipe(pellet[0], <fluid:nitrogen>*1000, pellet[3]);
mods.nuclearcraft.AlloyFurnace.addRecipe(pellet[0], <ore:ingotZirconium>|<ore:dustZirconium>, pellet[4]);
furnace.addRecipe(pellet[0], pellet[3]);
furnace.addRecipe(pellet[0], pellet[2]);
mods.nuclearcraft.Separator.addRecipe(pellet[1], pellet[0], <nuclearcraft:dust:8>);
mods.nuclearcraft.Separator.addRecipe(pellet[4], pellet[0], <nuclearcraft:dust:10>);
//pebbles
mods.nuclearcraft.Assembler.addRecipe(pellet[1]*9, <ore:dustGraphite>, <nuclearcraft:part:15>, <nuclearcraft:alloy:13>, triso*9);
mods.nuclearcraft.Radiation.setRadiationLevel(triso, fuelDoubles[1]);
oreNames[0].add(triso);
if (oreDict has "QuantumTraverseWhyCanISteamMyCrabs") {
mods.nuclearcraft.SolidFission.addRecipe(triso, dpellet[0], fuelInts[3][0], fuelInts[3][1], fuelDoubles[0], fuelInts[3][2], fuelDoubles[5], selfPriming, fuelDoubles[2]);
}else{
mods.nuclearcraft.PebbleFission.addRecipe(triso, dpellet[0], fuelInts[0][0], fuelInts[0][1], fuelDoubles[0], fuelInts[2][2], fuelDoubles[5], selfPriming, fuelDoubles[2]);
}
//oxide
mods.nuclearcraft.SolidFission.addRecipe(pellet[2], dpellet[1], fuelInts[0][0], fuelInts[0][1], fuelDoubles[0], fuelInts[0][2], fuelDoubles[5], selfPriming, fuelDoubles[2]);
//nitride
mods.nuclearcraft.SolidFission.addRecipe(pellet[3], dpellet[2], fuelInts[1][0], fuelInts[1][1], fuelDoubles[0], fuelInts[1][2], fuelDoubles[5], selfPriming, fuelDoubles[2]);
//zirconium
mods.nuclearcraft.SolidFission.addRecipe(pellet[4], dpellet[3], fuelInts[2][0], fuelInts[2][1], fuelDoubles[0], fuelInts[2][2], fuelDoubles[5], selfPriming, fuelDoubles[2]);
//melting time
superMelt(pellet[0], array, prod, [fuelDoubles[4], fuelDoubles[0], fuelDoubles[2], fuelDoubles[5]] as double[], [fuelInts[1][1],fuelInts[0][2], integs[1], integs[2]] as int[], selfPriming);
//decayed fuel stuff
for i,item in dpellet{
mods.nuclearcraft.Radiation.setRadiationLevel(item, fuelDoubles[3]);
oreNames[1].add(dpellet2[i]);
}
var num = 9-integs[0] as int;
var num2 = integs[0] as int;
val fisProd1 = mods.nuclearcraft.ChanceItemIngredient.create(solidProd[0][4] * num2, integs[1]);
val fisProd2 = mods.nuclearcraft.ChanceItemIngredient.create(solidProd[0][5] * num2, integs[2]);
//reprocessing time
num = 1+integs[0] as int;
num2 = 5+integs[0] as int;
var graphite = mods.nuclearcraft.ChanceItemIngredient.create(<ore:dustGraphite> * num2, 50);
var zirconium = mods.nuclearcraft.ChanceItemIngredient.create(<nuclearcraft:dust:10> * num, 50);
if(integs[0]==1){
graphite = <ore:dustGraphite> * (num2/2);
zirconium = <nuclearcraft:dust:10> * (num/2);
}
//triso
mods.nuclearcraft.FuelReprocessor.addRecipe(dpellet[0] * 9, solidProd[0][0], solidProd[0][1], fisProd1, graphite, solidProd[0][2], solidProd[0][3], fisProd2, <nuclearcraft:alloy:13>);
//oxide
mods.nuclearcraft.FuelReprocessor.addRecipe(dpellet[1] * 9, solidProd[1][0], solidProd[1][1], fisProd1, null, solidProd[1][2], solidProd[1][3], fisProd2, null);
//nitride
mods.nuclearcraft.FuelReprocessor.addRecipe(dpellet[2] * 9, solidProd[2][0], solidProd[2][1], fisProd1, null, solidProd[2][2], solidProd[2][3], fisProd2, null);
//zirc
mods.nuclearcraft.FuelReprocessor.addRecipe(dpellet[3] * 9, solidProd[3][0], solidProd[3][1], fisProd1, zirconium, solidProd[3][2], solidProd[3][3], fisProd2, null);
}
var cbc_rads = [5.22E-02,4.96E-03,2.65E-01] as double[]; //base, burn, depleted
if (oreDict has "QuantumTraverseIHaveHadEnoughOfYourSpaghettiCodeAndAbsurdNames") {
cbc_rads = [2.81E-05,3.68E-03,2.35E-01];
}
theMediumCheese([<contenttweaker:cbc>,<contenttweaker:cbc_c>,<contenttweaker:cbc_ox>,<contenttweaker:cbc_ni>,<contenttweaker:cbc_za>], <contenttweaker:cbc_tr>, [<contenttweaker:d_cbc_tr>,<contenttweaker:d_cbc_ox>,<contenttweaker:d_cbc_ni>,<contenttweaker:d_cbc_za>], [<contenttweaker:d_cbc_tr>,<contenttweaker:d_cbc_ox>,<contenttweaker:d_cbc_ni>,<contenttweaker:d_cbc_za>], [[2560,225,77],[3200,180,96],[2050,281,65],[2304,250,69]], [1, 30, 20, 4], [1.50, cbc_rads[0], cbc_rads[1], cbc_rads[2], 22.22222222, 0.085], [<fluid:cbc>,<fluid:cbc_fluoride>,<fluid:cbc_fluoride_flibe>,<fluid:depleted_cbc_fluoride_flibe>,<fluid:depleted_cbc_fluoride>,<fluid:depleted_cbc>], [<fluid:curium_245>*32,<fluid:curium_246>*48,<fluid:curium_247>*16,<fluid:berkelium_248>*32,<fluid:molybdenum>,<fluid:europium_155>], [[<nuclearcraft:curium:6>*2,<nuclearcraft:curium:11>*3,<nuclearcraft:curium:16>,<nuclearcraft:berkelium:6>*2,<ore:dustMolybdenum>,<ore:dustEuropium155>],[<nuclearcraft:curium:7>*2,<nuclearcraft:curium:12>*3,<nuclearcraft:curium:17>,<nuclearcraft:berkelium:7>*2,<ore:dustMolybdenum>,<ore:dustEuropium155>],[<nuclearcraft:curium:8>*2,<nuclearcraft:curium:13>*3,<nuclearcraft:curium:18>,<nuclearcraft:berkelium:8>*2,<ore:dustMolybdenum>,<ore:dustEuropium155>],[<nuclearcraft:curium:9>*2,<nuclearcraft:curium:14>*3,<nuclearcraft:curium:19>,<nuclearcraft:berkelium:9>*2,<ore:dustMolybdenum>,<ore:dustEuropium155>]], false, [<ore:ingotCBCmAll>,<ore:ingotDepletedCBCAll>]);
//fis/fert/pellet is [normal,carbide,oxide,nitride,za]
//dpellet is [tr, ox, ni, za]
//fuelInts is [time, heat, criticality] for [ox, ni, za, trisoSFR]
//integs is [enrichment, fisProd1 base chance, fisProd2 base chance, affected chance reprocessing ingredient]
//fuelDoubles is [efficiency, base radiation, burn radiation, depleted radiation, MSR time, decay factor]
//array is molten, fluoride, FLiBe, dFLiBe, dF, dMolten
//prod is 4 actinides, 2 fission products as liquids
//solidProd is 4 actinides, 2 fission products as items
/* -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- REF Fuels -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- */
fis = [[<ore:ingotPlutonium239>,<nuclearcraft:plutonium:6>,<ore:ingotPlutonium239Oxide>,<ore:ingotPlutonium239Nitride>,<nuclearcraft:plutonium:9>],[<ore:ingotAmericium242>,<nuclearcraft:americium:6>,<ore:ingotAmericium242Oxide>,<ore:ingotAmericium242Nitride>,<nuclearcraft:americium:9>],[<ore:ingotCalifornium251>,<nuclearcraft:californium:11>,<ore:ingotCalifornium251Oxide>,<ore:ingotCalifornium251Nitride>,<nuclearcraft:californium:14>]] as IIngredient[][];
fer = [[<ore:ingotPlutonium242>,<nuclearcraft:plutonium:16>,<ore:ingotPlutonium242Oxide>,<ore:ingotPlutonium242Nitride>,<nuclearcraft:plutonium:19>],[<ore:ingotAmericium243>,<nuclearcraft:americium:11>,<ore:ingotAmericium243Oxide>,<ore:ingotAmericium243Nitride>,<nuclearcraft:americium:14>],[<ore:ingotCalifornium252>,<nuclearcraft:californium:16>,<ore:ingotCalifornium252Oxide>,<ore:ingotCalifornium252Nitride>,<nuclearcraft:californium:19>]] as IIngredient[][];
var rad = [[<ore:ingotPlutonium238>,<nuclearcraft:plutonium:1>,<ore:ingotPlutonium238Oxide>,<ore:ingotPlutonium238Nitride>,<nuclearcraft:plutonium:4>],[<ore:ingotAmericium241>,<nuclearcraft:americium:1>,<ore:ingotAmericium241Oxide>,<ore:ingotAmericium241Nitride>,<nuclearcraft:americium:4>],[<ore:ingotCalifornium250>,<nuclearcraft:californium:6>,<ore:ingotCalifornium250Oxide>,<ore:ingotCalifornium250Nitride>,<nuclearcraft:californium:9>]] as IIngredient[][];
fluidFuelNames= [[<fluid:rep_238>,<fluid:rep_238_fluoride>,<fluid:rep_238_fluoride_flibe>,<fluid:depleted_rep_238_fluoride_flibe>,<fluid:depleted_rep_238_fluoride>,<fluid:depleted_rep_238>],[<fluid:rea_241>,<fluid:rea_241_fluoride>,<fluid:rea_241_fluoride_flibe>,<fluid:depleted_rea_241_fluoride_flibe>,<fluid:depleted_rea_241_fluoride>,<fluid:depleted_rea_241>],[<fluid:rec_250>,<fluid:rec_250_fluoride>,<fluid:rec_250_fluoride_flibe>,<fluid:depleted_rec_250_fluoride_flibe>,<fluid:depleted_rec_250_fluoride>,<fluid:depleted_rec_250>]] as ILiquidStack[][];
fluidProd= [[<fluid:plutonium_239>*16,<fluid:plutonium_242>*48,<fluid:americium_242>*32,<fluid:americium_243>*32,<fluid:strontium_90>,<fluid:promethium_147>],[<fluid:americium_242>*16,<fluid:americium_243>*48,<fluid:curium_244>*16,<fluid:curium_246>*32,<fluid:molybdenum>,<fluid:promethium_147>],[<fluid:californium_251>*16,<fluid:californium_252>*32,<fluid:californium_252>*48,<fluid:californium_253>*16,<fluid:ruthenium_106>,<fluid:europium_155>]] as ILiquidStack[][];
moltenTimes = [34.72222222,13.88888889,19.47916667] as double[];
val fissionProdChance = [[75,75],[75,75],[90,60]] as int[][];
allFuels = [[<contenttweaker:rplutonium_fuel>,<contenttweaker:rplutonium_fuel_carbide>,<contenttweaker:rplutonium_fuel_oxide>,<contenttweaker:rplutonium_fuel_nitride>,<contenttweaker:rplutonium_fuel_zirconium>],[<contenttweaker:ramericium_fuel>,<contenttweaker:ramericium_fuel_carbide>,<contenttweaker:ramericium_fuel_oxide>,<contenttweaker:ramericium_fuel_nitride>,<contenttweaker:ramericium_fuel_zirconium>],[<contenttweaker:rcalifornium_fuel>,<contenttweaker:rcalifornium_fuel_carbide>,<contenttweaker:rcalifornium_fuel_oxide>,<contenttweaker:rcalifornium_fuel_nitride>,<contenttweaker:rcalifornium_fuel_zirconium>]];
fuelN2 = [<contenttweaker:rplutonium_fuel>,<contenttweaker:ramericium_fuel>,<contenttweaker:rcalifornium_fuel>];
trisoFuels = [<contenttweaker:rplutonium_fuel_triso>,<contenttweaker:ramericium_fuel_triso>,<contenttweaker:rcalifornium_fuel_triso>];
dFuels = [[<contenttweaker:drplutonium_fuel_triso>,<contenttweaker:drplutonium_fuel_oxide>,<contenttweaker:drplutonium_fuel_nitride>,<contenttweaker:drplutonium_fuel_zirconium>],[<contenttweaker:dramericium_fuel_triso>,<contenttweaker:dramericium_fuel_oxide>,<contenttweaker:dramericium_fuel_nitride>,<contenttweaker:dramericium_fuel_zirconium>],[<contenttweaker:drcalifornium_fuel_triso>,<contenttweaker:drcalifornium_fuel_oxide>,<contenttweaker:drcalifornium_fuel_nitride>,<contenttweaker:drcalifornium_fuel_zirconium>]];
dFuels2 = [[<contenttweaker:drplutonium_fuel_triso>,<contenttweaker:drplutonium_fuel_oxide>,<contenttweaker:drplutonium_fuel_nitride>,<contenttweaker:drplutonium_fuel_zirconium>],[<contenttweaker:dramericium_fuel_triso>,<contenttweaker:dramericium_fuel_oxide>,<contenttweaker:dramericium_fuel_nitride>,<contenttweaker:dramericium_fuel_zirconium>],[<contenttweaker:drcalifornium_fuel_triso>,<contenttweaker:drcalifornium_fuel_oxide>,<contenttweaker:drcalifornium_fuel_nitride>,<contenttweaker:drcalifornium_fuel_zirconium>]];
// time, heat, criticality
fuelStats = [[[lifetimeMultiplier*250*20,346,53],[lifetimeMultiplier*160*20,540,42],[lifetimeMultiplier*180,480,38]],[[lifetimeMultiplier*100*20,864,43],[lifetimeMultiplier*64*20,1350,34],[lifetimeMultiplier*72*20,1200,31]],[[lifetimeMultiplier*2805,616,63],[lifetimeMultiplier*1795,963,50],[lifetimeMultiplier*40371,856,45]]] as int[][][];
val primer=[false,false,true] as bool[];
// time, heat, criticality
trisoStats = [[lifetimeMultiplier*200*20,432,36],[lifetimeMultiplier*80*20,1080,29],[lifetimeMultiplier*2244,770,43]] as int[][];
// efficiency, radiation
trisoStatsAlt = [[1.35,5.87E-04],[1.45,5.43E-04],[1.90,4.47E-02]] as double[][];
decayFactor=[0.075,0.080,0.10];
// MRR Compat
if (oreDict has "QuantumTraverseIHaveHadEnoughOfYourSpaghettiCodeAndAbsurdNames") {
trisoStatsAlt = [[1.35,3.02E-04],[1.45,2.98E-04],[1.90,2.70E-02]] as double[][];
}
decayRad =[1.28e-3,1.92e-3,0.261] as double[];
ddecayRad =[3.63E-02,3.28E-02,2.60] as double[];
oreDictList = ["ingotREP238All","ingotREA241All","ingotRECf250All","ingotDepletedREP238All","ingotDepletedREA241All","ingotDepletedRECf250All"] as string[];
for entry in oreDictList {
oreDict.entry;
}
realOreDictList = [<ore:ingotREP238All>,<ore:ingotREA241All>,<ore:ingotRECf250All>,<ore:ingotDepletedREP238All>,<ore:ingotDepletedREA241All>,<ore:ingotDepletedRECf250All>] as IOreDictEntry[];
for i,array in allFuels{
for j,item in array{
//crafting
recipes.addShapeless(item * 9,[rad[i][j], fis[i][j], fis[i][j], fer[i][j], fer[i][j], fer[i][j], fer[i][j], fer[i][j], fer[i][j]]);
mods.nuclearcraft.Radiation.setRadiationLevel(item, decayRad[i]);
realOreDictList[i].add(item);
}
//non-crafting recipes
mods.nuclearcraft.AlloyFurnace.addRecipe(array[0], graphite, array[1]);
mods.nuclearcraft.Infuser.addRecipe(array[0], <fluid:oxygen>*1000, array[2]);
mods.nuclearcraft.Infuser.addRecipe(array[0], <fluid:nitrogen>*1000, array[3]);
mods.nuclearcraft.AlloyFurnace.addRecipe(array[0], zirconium, array[4]);
furnace.addRecipe(fuelN2[i], array[3]);
furnace.addRecipe(fuelN2[i], array[2]);
mods.nuclearcraft.Separator.addRecipe(array[1], array[0], <nuclearcraft:dust:8>);
mods.nuclearcraft.Separator.addRecipe(array[4], array[0], <nuclearcraft:dust:10>);
mods.nuclearcraft.Separator.addRecipe(array[0]*9, fis[i][0]*3, fer[i][0]*6);
//pebbles
mods.nuclearcraft.Assembler.addRecipe(array[1]*9, <ore:dustGraphite>, <nuclearcraft:part:15>, <nuclearcraft:alloy:13>, trisoFuels[i]*9);
if (oreDict has "QuantumTraverseWhyCanISteamMyCrabs") {
mods.nuclearcraft.SolidFission.addRecipe(trisoFuels[i], dFuels[i][0], fuelStats[i][2][0], fuelStats[i][2][1], trisoStatsAlt[i][0], fuelStats[i][2][2], decayFactor[i], primer[i], trisoStatsAlt[i][1]);
}else{
mods.nuclearcraft.PebbleFission.addRecipe(trisoFuels[i], dFuels[i][0], trisoStats[i][0], trisoStats[i][1], trisoStatsAlt[i][0], trisoStats[i][2], decayFactor[i], primer[i], trisoStatsAlt[i][1]);
}
mods.nuclearcraft.Radiation.setRadiationLevel(trisoFuels[i], decayRad[i]);
realOreDictList[i].add(trisoFuels[i]);
//oxide
mods.nuclearcraft.SolidFission.addRecipe(array[2], dFuels[i][1], trisoStats[i][0], trisoStats[i][1], trisoStatsAlt[i][0], fuelStats[i][1][2], decayFactor[i], primer[i], trisoStatsAlt[i][1]);
//nitride
mods.nuclearcraft.SolidFission.addRecipe(array[3], dFuels[i][2], fuelStats[i][0][0], fuelStats[i][0][1], trisoStatsAlt[i][0], fuelStats[i][0][2], decayFactor[i], primer[i], trisoStatsAlt[i][1]);
//zirconium
mods.nuclearcraft.SolidFission.addRecipe(array[4], dFuels[i][3], fuelStats[i][1][0], fuelStats[i][1][1], trisoStatsAlt[i][0], trisoStats[i][2], decayFactor[i], primer[i], trisoStatsAlt[i][1]);
//melting time
superMelt(array[0], fluidFuelNames[i], fluidProd[i], [moltenTimes[i], trisoStatsAlt[i][0], trisoStatsAlt[i][1], decayFactor[i]] as double[], [fuelStats[i][0][1], fuelStats[i][1][2], fissionProdChance[i][0], fissionProdChance[i][1]] as int[], true);
}
// reprocessing the depleted fuels
dIso = [[[fis[0][1],fer[0][1].amount(2),fis[1][1].amount(2),fer[1][1].amount(2)],[fis[0][2],<nuclearcraft:plutonium:17>*2,fis[1][2].amount(2),fer[1][2].amount(2)],[fis[0][3],fer[0][3].amount(2),fis[1][3].amount(2),<nuclearcraft:americium:13>*2],[fis[0][4],fer[0][4].amount(2),fis[1][4].amount(2),fer[1][4].amount(2)]],[[fis[1][1],fer[1][1].amount(3),<ore:ingotCurium244>,<nuclearcraft:curium:11>*2],[fis[1][2],fer[1][2].amount(3),<ore:ingotCurium244>,<nuclearcraft:curium:12>*2],[fis[1][3],<nuclearcraft:americium:13>*3,<ore:ingotCurium244>,<nuclearcraft:curium:13>*2],[fis[1][4],<nuclearcraft:americium:14>*3,<ore:ingotCurium244>,<nuclearcraft:curium:14>*2]],[[fis[2][1],fer[2][1].amount(2),fer[2][1].amount(3),<contenttweaker:californium53carbide>],[fis[2][2],fer[2][2].amount(2),fer[2][2].amount(3),<contenttweaker:californium53oxide>],[fis[2][3],fer[2][3].amount(2),fer[2][3].amount(3),<contenttweaker:californium53nitride>],[fis[2][4],fer[2][4].amount(2),fer[2][4].amount(3),<contenttweaker:californium53zirconium>]]] as IIngredient[][][];
for i,array in dFuels{
if(i==0){
fisProd1 = mods.nuclearcraft.ChanceItemIngredient.create(<ore:dustStrontium90>, 75);
fisProd2 = mods.nuclearcraft.ChanceItemIngredient.create(<ore:dustPromethium147>, 75);
}
if(i==1){
fisProd1 = mods.nuclearcraft.ChanceItemIngredient.create(<ore:dustMolybdenum>, 75);
fisProd2 = mods.nuclearcraft.ChanceItemIngredient.create(<ore:dustPromethium147>, 75);
}
if(i==2){
fisProd1 = mods.nuclearcraft.ChanceItemIngredient.create(<ore:dustRuthenium106>, 75);
fisProd2 = mods.nuclearcraft.ChanceItemIngredient.create(<ore:dustEuropium155>, 75);
}
if(i==1){
//triso
mods.nuclearcraft.FuelReprocessor.addRecipe(array[0].amount(9), dIso[i][0][0], dIso[i][0][1], fisProd1, <ore:dustGraphite>.amount(5), dIso[i][0][2], dIso[i][0][3], fisProd2, <nuclearcraft:alloy:13>);
//oxide
mods.nuclearcraft.FuelReprocessor.addRecipe(array[1].amount(9), dIso[i][1][0], dIso[i][1][1], fisProd1, null, dIso[i][1][2], dIso[i][1][3], fisProd2, null);
//nitride
mods.nuclearcraft.FuelReprocessor.addRecipe(array[2].amount(9), dIso[i][2][0], dIso[i][2][1], fisProd1, null, dIso[i][2][2], dIso[i][2][3], fisProd2, null);
//zirc
mods.nuclearcraft.FuelReprocessor.addRecipe(array[3].amount(9), dIso[i][3][0], dIso[i][3][1], fisProd1, <nuclearcraft:dust:10> * 3, dIso[i][3][2], dIso[i][3][3], fisProd2, null);
}else{
//triso
mods.nuclearcraft.FuelReprocessor.addRecipe(array[0].amount(9), dIso[i][0][0], dIso[i][0][1], fisProd1, <ore:dustGraphite>.amount(4), dIso[i][0][2], dIso[i][0][3], fisProd2, <nuclearcraft:alloy:13>);
//oxide
mods.nuclearcraft.FuelReprocessor.addRecipe(array[1].amount(9), dIso[i][1][0], dIso[i][1][1], fisProd1, null, dIso[i][1][2], dIso[i][1][3], fisProd2, null);
//nitride
mods.nuclearcraft.FuelReprocessor.addRecipe(array[2].amount(9), dIso[i][2][0], dIso[i][2][1], fisProd1, null, dIso[i][2][2], dIso[i][2][3], fisProd2, null);
//zirc
mods.nuclearcraft.FuelReprocessor.addRecipe(array[3].amount(9), dIso[i][3][0], dIso[i][3][1], fisProd1, <nuclearcraft:dust:10> * 2, dIso[i][3][2], dIso[i][3][3], fisProd2, null);
}
for j,item in array{
mods.nuclearcraft.Radiation.setRadiationLevel(item, ddecayRad[i]);
realOreDictList[i+3].add(dFuels2[i][j]);
}
}
/* -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- Improved RTGs -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- */
val radioIso = [<ore:dustStrontium90>,<ore:dustRuthenium106>,<ore:dustCaesium137>,<ore:dustPromethium147>,<ore:dustEuropium155>,<ore:dustPolonium>,<ore:dustRadium>,<ore:ingotPlutonium238>,<ore:ingotAmericium241>,<ore:ingotCalifornium250>] as IIngredient[];
val decayIso = [<ore:dustZirconium>,<ore:dustSilver>,<ore:dustTin>,<ore:dustLead>,<ore:dustTin>,<ore:dustLead>,<ore:dustLead>,<ore:dustRadium>,<ore:ingotNeptunium237>,<ore:ingotCurium246>] as IIngredient[];
if (oreDict has "dustPalladium") {
decayIso[1] = <ore:dustPalladium>;
}
if (oreDict has "dustBarium") {
decayIso[2] = <ore:dustBarium>;
}
if (oreDict has "ingotNeodymium") {
decayIso[3] = <ore:ingotNeodymium>;
}else{
if(oreDict has "dustBarium"){
decayIso[3] = <ore:dustBarium>;
}else{
decayIso[3] = <ore:dustTin>;
}
}
if (oreDict has "dustGadolinium") {
decayIso[4] = <ore:dustGadolinium>;
}
if(loadedMods has "qmd"){
decayIso[7] = <ore:ingotUranium234>;
}
val shielding = [<nuclearcraft:rad_shielding:2>,<nuclearcraft:rad_shielding:2>,<nuclearcraft:rad_shielding:2>,<nuclearcraft:rad_shielding:2>,<nuclearcraft:rad_shielding:2>,<nuclearcraft:rad_shielding>,<nuclearcraft:rad_shielding:2>,<nuclearcraft:rad_shielding>,<nuclearcraft:rad_shielding:1>,<nuclearcraft:rad_shielding:2>] as IIngredient[];
val red = <ore:dustRedstone>;
val sige = <contenttweaker:si_ge>;
mods.nuclearcraft.RockCrusher.addRecipe(<ore:oreLead>*5,<ore:dustLead>*10, <contenttweaker:gemgermanium>, null);
mods.nuclearcraft.AlloyFurnace.addRecipe(<contenttweaker:gemgermanium>, <ore:itemSilicon>, sige);
val input = [<contenttweaker:rtg_sr>,<contenttweaker:rtg_ru>,<contenttweaker:rtg_cs>,<contenttweaker:rtg_pm>,<contenttweaker:rtg_eu>,<contenttweaker:rtg_po>,<contenttweaker:rtg_ra>,<contenttweaker:rtg_pu>,<contenttweaker:rtg_am>,<contenttweaker:rtg_cf>] as IIngredient[];
val output = [<contenttweaker:rtg_sr_done>,<contenttweaker:rtg_ru_done>,<contenttweaker:rtg_cs_done>,<contenttweaker:rtg_pm_done>,<contenttweaker:rtg_eu_done>,<contenttweaker:rtg_po_done>,<contenttweaker:rtg_ra_done>,<contenttweaker:rtg_pu_done>,<contenttweaker:rtg_am_done>,<contenttweaker:rtg_cf_done>] as IIngredient[];
//mean lifetime, power, radiation
var rtgstats = [[690000.0,44.0,3.47e-2],[24600.0,1550,9.77e-1],[724000.0,7.0,3.32e-2],[63000.0,26.0,3.81e-1],[114200.0,7.1,2.10e-1],[9100.0,11200.0,3.26e-2],[38400000.0,20.0,6.25e-4],[2104800.0,50.0,1.14e-2],[10380000.0,10.0,2.31e-3],[314000.0,370.0,7.65e-2]] as double[][];
// MRR Compat
if (oreDict has "QuantumTraverseIHaveHadEnoughOfYourSpaghettiCodeAndAbsurdNames") {
rtgstats = [[690000.0,44.0,1.56E-03],[24600.0,1550,4.39E-02],[724000.0,7.0,2.98E-02],[63000.0,26.0,1.72E-02],[114200.0,7.1,1.71E-01],[9100.0,11200.0,8.23E-05],[38400000.0,20.0,3.47E-05],[2104800.0,50.0,9.91E-03],[10380000.0,10.0,3.51E-03],[314000.0,370.0,1.20E-02]] as double[][];
}
for i,item in input{
mods.nuclearcraft.Assembler.addRecipe(radioIso[i].amount(9), shielding[i].amount(4), red*2, sige*2, item);
mods.nuclearcraft.DecayGenerator.addRecipe(item, output[i], rtgstats[i][0], rtgstats[i][1], rtgstats[i][2]);
mods.nuclearcraft.FuelReprocessor.addRecipe(output[i], decayIso[i].amount(9), shielding[i].amount(4), null, null, red*2, sige*2, null, null);
mods.nuclearcraft.Radiation.setRadiationLevel(item, rtgstats[i][2]);
}
/* -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- Clock Fun -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- */
val aClock = <minecraft:clock>.withTag({display: {Name: "Atomic Clock", Lore: ["Trillions of times more accurate than a normal clock!"]}});
recipes.addShaped(aClock,[[null, <ore:ingotGold>, null],[<ore:ingotGold>, <ore:dustCaesium137>, <ore:ingotGold>],[null,<ore:ingotGold>,null]]);
/* -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- Cm-250 Stuff -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- */
oreDict.ingotCurium250;
<ore:ingotCurium250>.add(<contenttweaker:curium_250>);
oreDict.ingotCBCf;
<ore:ingotCBCf>.add(<contenttweaker:cbcf>);
oreDict.ingotCBCfAll;
// MRR Compat
if (oreDict has "QuantumTraverseIHaveHadEnoughOfYourSpaghettiCodeAndAbsurdNames") {
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotCurium250>, 6.80E-03);
mods.nuclearcraft.DecayHastener.addRecipe(<ore:ingotCurium250>, <ore:dustPromethium147>, 1.0, 1.0, 6.80E-03);
mods.nuclearcraft.FissionIrradiator.addRecipe(<ore:ingotCurium250>, <ore:ingotCBCf>, 14556, 0.0, 0.0, 6.80E-03);
mods.nuclearcraft.FissionIrradiator.addRecipe(<ore:ingotCBCf>, <ore:ingotCalifornium251>, 247444, 0.0, 0.0, 6.52E-03);
}else{
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotCurium250>, 1.20E-04);
mods.nuclearcraft.DecayHastener.addRecipe(<ore:ingotCurium250>, <ore:dustPromethium147>, 1.0, 1.0, 1.20E-04);
mods.nuclearcraft.FissionIrradiator.addRecipe(<ore:ingotCurium250>, <ore:ingotCBCf>, 14556, 0.0, 0.0, 1.20E-04);
mods.nuclearcraft.FissionIrradiator.addRecipe(<ore:ingotCBCf>, <ore:ingotCalifornium251>, 247444, 0.0, 0.0, 1.76E-04);
}
if (oreDict has "blockHighlyRadioactiveEarth") {
val gold = mods.nuclearcraft.ChanceItemIngredient.create(<ore:dustGold198>, 64);
mods.nuclearcraft.FuelReprocessor.addRecipe(<ore:blockHighlyRadioactiveEarth>*64, <ore:dustEuropium155>*12, <ore:dustPromethium147>*16, gold, <ore:ingotPlutonium239>*12, <ore:ingotPlutonium242>*6, <ore:ingotAmericium243>*4, <ore:ingotCurium245>*2, <ore:ingotCurium250>);
mods.nuclearcraft.FuelReprocessor.addRecipe(<ore:blockHighlyRadioactiveSand>*64, <ore:dustEuropium155>*12, <ore:dustPromethium147>*16, gold, <ore:ingotPlutonium239>*12, <ore:ingotPlutonium242>*6, <ore:ingotAmericium243>*4, <ore:ingotCurium245>*2, <ore:ingotCurium250>);
}else{
val cure = <ore:ingotCurium250>;
if (oreDict has "QuantumTraverseIHaveHadEnoughOfYourSpaghettiCodeAndAbsurdNames") {
mods.nuclearcraft.FissionIrradiator.addRecipe(<ore:ingotCurium247All>, cure, 6249000, 0.0, 0.75, 1.90E-03);
}else{
mods.nuclearcraft.FissionIrradiator.addRecipe(<ore:ingotCurium247All>, cure, 6249000, 0.0, 0.75, 0.0003744);
}
}
//CBCf time
cbc_rads = [1.76E-04,3.94E-02,2.52E+00] as double[]; //base, burn, depleted
if (oreDict has "QuantumTraverseIHaveHadEnoughOfYourSpaghettiCodeAndAbsurdNames") {
cbc_rads = [6.52E-03,1.55E-02,9.83E-01];
}
theMediumCheese([<contenttweaker:cbcf>,<contenttweaker:cbcf_c>,<contenttweaker:cbcf_ox>,<contenttweaker:cbcf_ni>,<contenttweaker:cbcf_za>], <contenttweaker:cbcf_tr>, [<contenttweaker:d_cbcf_tr>,<contenttweaker:d_cbcf_ox>,<contenttweaker:d_cbcf_ni>,<contenttweaker:d_cbcf_za>], [<contenttweaker:d_cbcf_tr>,<contenttweaker:d_cbcf_ox>,<contenttweaker:d_cbcf_ni>,<contenttweaker:d_cbcf_za>], [[2304,250,75],[2880,200,94],[1840,313,64],[2072,278,68]], [1, 30, 20, 4], [1.75, cbc_rads[0], cbc_rads[1], cbc_rads[2], 20.0, 0.085], [<fluid:cbcf>,<fluid:cbcf_fluoride>,<fluid:cbcf_fluoride_flibe>,<fluid:depleted_cbc_fluoride_flibe>,<fluid:depleted_cbc_fluoride>,<fluid:depleted_cbc>], [<fluid:californium_251>*32,<fluid:californium_252>*32,<fluid:californium_252>*48,<fluid:californium_253>,<fluid:ruthenium_106>,<fluid:promethium_147>], [[<nuclearcraft:californium:11>*2,<nuclearcraft:californium:16>*2,<nuclearcraft:californium:16>*3,<contenttweaker:californium53carbide>,<ore:dustRuthenium106>,<ore:dustPromethium147>],[<nuclearcraft:californium:12>*2,<nuclearcraft:californium:17>*2,<nuclearcraft:californium:17>*3,<contenttweaker:californium53oxide>,<ore:dustRuthenium106>,<ore:dustPromethium147>],[<nuclearcraft:californium:13>*2,<nuclearcraft:californium:18>*2,<nuclearcraft:californium:18>*3,<contenttweaker:californium53nitride>,<ore:dustRuthenium106>,<ore:dustPromethium147>],[<nuclearcraft:californium:14>*2,<nuclearcraft:californium:19>*2,<nuclearcraft:californium:19>*3,<contenttweaker:californium53zirconium>,<ore:dustRuthenium106>,<ore:dustPromethium147>]], false, [<ore:ingotCBCfAll>,<ore:ingotDepletedCBCfAll>]);
//fis/fert/pellet is [normal,carbide,oxide,nitride,za]
//dpellet is [tr, ox, ni, za]
//fuelInts is [time, heat, criticality] for [ox, ni, za, trisoSFR]
//integs is [enrichment, fisProd1 base chance, fisProd2 base chance, affected chance reprocessing ingredient]
//fuelDoubles is [efficiency, base radiation, burn radiation, depleted radiation, MSR time, decay factor]
//array is molten, fluoride, FLiBe, dFLiBe, dF, dMolten
//prod is 4 actinides, 2 fission products as liquids
//solidProd is 4 actinides, 2 fission products as items
/* -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- CANDU+ Stuff -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- */
oreDict.ingotUraniumOxide;
<ore:ingotUraniumOxide>.add(<contenttweaker:uranium_oxide>);
oreDict.ingotCANDUAll;
<ore:ingotCANDUAll>.add(<contenttweaker:pre_candu>);
<ore:ingotCANDUAll>.add(<contenttweaker:candu>);
oreDict.ingotDepletedCANDUAll;
<ore:ingotDepletedCANDUAll>.add(<contenttweaker:dcandu>);
oreDict.ingotThoriumOxide;
<ore:ingotThoriumOxide>.add(<contenttweaker:thorium_oxide>);
oreDict.ingotANEELAll;
<ore:ingotANEELAll>.add(<contenttweaker:pre_aneel>);
<ore:ingotANEELAll>.add(<contenttweaker:aneel>);
oreDict.ingotDepletedANEELAll;
<ore:ingotDepletedANEELAll>.add(<contenttweaker:daneel>);
// CANDU recipe time
mods.nuclearcraft.Infuser.addRecipe(<ore:ingotUranium>, <fluid:oxygen>*1000, <ore:ingotUraniumOxide>);
furnace.addRecipe(<nuclearcraft:ingot:4>, <ore:ingotUraniumOxide>);
mods.nuclearcraft.Assembler.addRecipe(<ore:ingotUraniumOxide>*9, <ore:ingotZircaloy>, null, null, <contenttweaker:pre_candu>*9);
mods.nuclearcraft.Infuser.addRecipe(<contenttweaker:pre_candu>, <fluid:carbon_dioxide>*5, <contenttweaker:candu>);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotCANDUAll>, 3.44E-10);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotDepletedCANDUAll>, 1.72E-03);
// ANEEL recipe time
mods.nuclearcraft.Infuser.addRecipe(<ore:ingotThorium>, <fluid:oxygen>*1000, <ore:ingotThoriumOxide>);
furnace.addRecipe(<nuclearcraft:ingot:3>, <ore:ingotThoriumOxide>);
mods.nuclearcraft.Assembler.addRecipe(<ore:ingotHEU235Oxide>*3, <ore:ingotThoriumOxide>*6, <ore:ingotZircaloy>, null, <contenttweaker:pre_aneel>*9);
mods.nuclearcraft.Infuser.addRecipe(<contenttweaker:pre_aneel>, <fluid:carbon_dioxide>*5, <contenttweaker:aneel>);
// Fission & Rads
if (oreDict has "QuantumTraverseIHaveHadEnoughOfYourSpaghettiCodeAndAbsurdNames") {
mods.nuclearcraft.SolidFission.addRecipe(<contenttweaker:candu>, <ore:ingotDepletedCANDUAll>, 7200, 80, 1.25, 345, 0.065, false, 3.30E-05);
mods.nuclearcraft.SolidFission.addRecipe(<contenttweaker:aneel>, <ore:ingotDepletedANEELAll>, 9000, 64, 1.25, 418, 0.045, false, 8.17E-05);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotANEELAll>, 1.47E-09);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotThoriumOxide>, 2.70E-10);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotDepletedANEELAll>, 5.23E-03);
}else{
mods.nuclearcraft.SolidFission.addRecipe(<contenttweaker:candu>, <ore:ingotDepletedCANDUAll>, 7200, 80, 1.25, 345, 0.065, false, 2.68E-05);
mods.nuclearcraft.SolidFission.addRecipe(<contenttweaker:aneel>, <ore:ingotDepletedANEELAll>, 9000, 64, 1.25, 418, 0.045, false, 1.36E-04);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotANEELAll>, 2.55E-10);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotThoriumOxide>, 7.12E-11);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotDepletedANEELAll>, 8.68E-03);
}
// reprocessing
fisProd1 = mods.nuclearcraft.ChanceItemIngredient.create(<ore:dustMolybdenum>, 25);
fisProd2 = mods.nuclearcraft.ChanceItemIngredient.create(<ore:dustCaesium137>, 25);
mods.nuclearcraft.FuelReprocessor.addRecipe(<ore:ingotDepletedCANDUAll>*9, <nuclearcraft:uranium:12>*4, <ore:ingotPlutonium239Oxide>*2, fisProd1, <ore:ingotZircaloy>, <ore:ingotPlutonium242Oxide>, <ore:ingotAmericium242Oxide>, fisProd2, null);
mods.nuclearcraft.FuelReprocessor.addRecipe(<ore:ingotDepletedANEELAll>*9, <ore:ingotUranium234>, <nuclearcraft:uranium:7>, fisProd1, <ore:ingotZircaloy>, <nuclearcraft:uranium:12>*4, <nuclearcraft:neptunium:7>, fisProd2, <nuclearcraft:plutonium:12>);

View file

@ -0,0 +1,70 @@
/*
Copyright Bob Bartsch, 2021
This code is governed by the
Creative Commons AttributionNonCommercial License
https://creativecommons.org/licenses/by-nc/3.0/
(Meaning: credit me if you modify and/or redistribute
this code. Also, you may not sell this code.)
*/
// imports
import crafttweaker.item.IIngredient;
import crafttweaker.item.IItemStack;
import crafttweaker.oredict.IOreDictEntry;
import mods.nuclearcraft.FuelReprocessor;
val graphite = <ore:dustGraphite>;
val zirconium = <ore:dustZirconium>;
/* -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- LE Fuels -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- */
var dFuels = [[<nuclearcraft:depleted_fuel_californium:8>,<nuclearcraft:depleted_fuel_californium:9>,<nuclearcraft:depleted_fuel_californium:10>,<nuclearcraft:depleted_fuel_californium:11>]] as IIngredient[][];
// reprocessing the depleted fuels
var dIso = [[[<nuclearcraft:californium:16> * 2,<nuclearcraft:californium:16> * 2,<nuclearcraft:californium:16> * 2,<contenttweaker:californium53carbide> * 2], [<ore:ingotCalifornium252Oxide>.amount(2),<ore:ingotCalifornium252Oxide>.amount(2),<ore: ingotCalifornium252Oxide>.amount(2),<contenttweaker:californium53oxide> * 2], [<ore:ingotCalifornium252Nitride>.amount(2),<ore:ingotCalifornium252Nitride>.amount(2),<ore:ingotCalifornium252Nitride>.amount(2),<contenttweaker:californium53nitride> * 2], [<nuclearcraft:californium:19> * 2,<nuclearcraft:californium:19> * 2,<nuclearcraft:californium:19> * 2,<contenttweaker:californium53zirconium> * 2]] ] as IIngredient[][][];
var ru = mods.nuclearcraft.ChanceItemIngredient.create(<ore:dustRuthenium106>, 30);
var eu = mods.nuclearcraft.ChanceItemIngredient.create(<ore:dustEuropium155>, 20);
for i,array in dFuels{
mods.nuclearcraft.FuelReprocessor.removeRecipeWithInput(array[0].amount(9));
mods.nuclearcraft.FuelReprocessor.removeRecipeWithInput(array[1].amount(9));
mods.nuclearcraft.FuelReprocessor.removeRecipeWithInput(array[2].amount(9));
mods.nuclearcraft.FuelReprocessor.removeRecipeWithInput(array[3].amount(9));
//triso
mods.nuclearcraft.FuelReprocessor.addRecipe(array[0].amount(9), dIso[i][0][0], dIso[i][0][1], ru, graphite * 3, dIso[i][0][2], dIso[i][0][3], eu, <nuclearcraft:alloy:13>);
//oxide
mods.nuclearcraft.FuelReprocessor.addRecipe(array[1].amount(9), dIso[i][1][0], dIso[i][1][1], ru, null, dIso[i][1][2], dIso[i][1][3], eu, null);
//nitride
mods.nuclearcraft.FuelReprocessor.addRecipe(array[2].amount(9), dIso[i][2][0], dIso[i][2][1], ru, null, dIso[i][2][2], dIso[i][2][3], eu, null);
//zirc
mods.nuclearcraft.FuelReprocessor.addRecipe(array[3].amount(9), dIso[i][3][0], dIso[i][3][1], ru, zirconium, dIso[i][3][2], dIso[i][3][3], eu, null);
}
/* -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- HE Fuels -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- */
dFuels = [[<nuclearcraft:depleted_fuel_californium:12>,<nuclearcraft: depleted_fuel_californium:13>,<nuclearcraft: depleted_fuel_californium:14>,<nuclearcraft: depleted_fuel_californium:15>]] as IIngredient[][];
// reprocessing the depleted fuels
dIso = [[[<nuclearcraft:californium:16> * 2,<nuclearcraft:californium:16>,<nuclearcraft:californium:16>,<contenttweaker:californium53carbide> * 3], [<ore:ingotCalifornium252Oxide>.amount(2),<ore:ingotCalifornium252Oxide>,<ore: ingotCalifornium252Oxide>,<contenttweaker:californium53oxide> * 3], [<ore:ingotCalifornium252Nitride>.amount(2),<ore:ingotCalifornium252Nitride>,<ore: ingotCalifornium252Nitride>,<contenttweaker:californium53nitride> * 3], [<nuclearcraft:californium:19> * 2,<nuclearcraft:californium:19>,<nuclearcraft:californium:19>,<contenttweaker:californium53zirconium> * 3]] ];
ru = mods.nuclearcraft.ChanceItemIngredient.create(<ore:dustRuthenium106>, 90);
eu = mods.nuclearcraft.ChanceItemIngredient.create(<ore:dustEuropium155>, 60);
for i,array in dFuels{
mods.nuclearcraft.FuelReprocessor.removeRecipeWithInput(array[0].amount(9));
mods.nuclearcraft.FuelReprocessor.removeRecipeWithInput(array[1].amount(9));
mods.nuclearcraft.FuelReprocessor.removeRecipeWithInput(array[2].amount(9));
mods.nuclearcraft.FuelReprocessor.removeRecipeWithInput(array[3].amount(9));
//triso
mods.nuclearcraft.FuelReprocessor.addRecipe(array[0].amount(9), dIso[i][0][0], dIso[i][0][1], ru, graphite * 4, dIso[i][0][2], dIso[i][0][3], eu, <nuclearcraft:alloy:13>);
//oxide
mods.nuclearcraft.FuelReprocessor.addRecipe(array[1].amount(9), dIso[i][1][0], dIso[i][1][1], ru, null, dIso[i][1][2], dIso[i][1][3], eu, null);
//nitride
mods.nuclearcraft.FuelReprocessor.addRecipe(array[2].amount(9), dIso[i][2][0], dIso[i][2][1], ru, null, dIso[i][2][2], dIso[i][2][3], eu, null);
//zirc
mods.nuclearcraft.FuelReprocessor.addRecipe(array[3].amount(9), dIso[i][3][0], dIso[i][3][1], ru, zirconium * 2, dIso[i][3][2], dIso[i][3][3], eu, null);
}

View file

@ -0,0 +1,15 @@
/*
Copyright Bob Bartsch, 2021
This code is governed by the
Creative Commons AttributionNonCommercial License
https://creativecommons.org/licenses/by-nc/3.0/
(Meaning: credit me if you modify and/or redistribute
this code. Also, you may not sell this code.)
*/
#loader preinit
#modloaded qmd
mods.qmd.particle.addParticle("heffalumpMatter", "heffalump.png", 40383.21, 1.0, 0.0);

View file

@ -0,0 +1,574 @@
/*
Copyright Bob Bartsch, 2021
This code is governed by the
Creative Commons AttributionNonCommercial License
https://creativecommons.org/licenses/by-nc/3.0/
(Meaning: credit me if you modify and/or redistribute
this code. Also, you may not sell this code.)
*/
#modloaded qmd
import crafttweaker.item.IIngredient;
import crafttweaker.item.IItemStack;
import crafttweaker.oredict.IOreDict;
import crafttweaker.oredict.IOreDictEntry;
import crafttweaker.liquid.ILiquidStack;
import mods.nuclearcraft.AlloyFurnace;
import mods.nuclearcraft.Assembler;
import mods.nuclearcraft.DecayHastener;
import mods.nuclearcraft.Infuser;
import mods.nuclearcraft.Separator;
import mods.nuclearcraft.FuelReprocessor;
import mods.nuclearcraft.PebbleFission;
import mods.nuclearcraft.SolidFission;
import mods.nuclearcraft.FissionIrradiator;
/* -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- QMD Processing -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- */
mods.qmd.target_chamber.addRecipe(<contenttweaker:einsteinium55>, ((<particle:alpha>*240000)^6000)~1.0, <contenttweaker:mendelevium58>, null, <particle:neutron>, null, 8000, 0.1, -3000, 0.0001);
mods.qmd.target_chamber.addRecipe(<contenttweaker:fermium57>, ((<particle:heffalumpMatter>*1920000)^15000)~1.0, <contenttweaker:flerovium98>, null, <particle:neutron>*2, null, 25000, 0.01, -13000, 0.0001);
mods.qmd.target_chamber.addRecipe(<contenttweaker:fermium57>, ((<particle:heffalumpMatter>*3840000)^30000)~1.0, <contenttweaker:darmstadtium294>, <particle:proton>*2, <particle:alpha>, null, 50000, 0.01, -33000, 0.0001);
val stuff = <contenttweaker:mysterymix>;
if(false){ //loadedMods has "thermalfoundation"
recipes.addShaped("mana",stuff,[[<ore:clathrateEnder>, <ore:dustPyrotheum>, <ore:clathrateOil>],[<ore:dustPetrotheum>, <ore:dustLead>, <ore:dustCryotheum>],[<ore:clathrateGlowstone>,<ore:dustAerotheum>,<ore:clathrateRedstone>]]);
mods.qmd.target_chamber.addRecipe(stuff, ((<particle:positron>*120000)^8000)~2.6, <ore:dustLead>, null, <particle:heffalumpMatter>, null, 20000, 1.0, 0, 0.0021);
}else{
recipes.addShaped("mana",stuff,[[<nuclearcraft:gem>, <nuclearcraft:gem:1>, <nuclearcraft:gem:2>],[<nuclearcraft:gem:6>, <ore:dustLead>, <nuclearcraft:gem:6>],[<nuclearcraft:gem:3>,<nuclearcraft:gem:4>,<nuclearcraft:gem:5>]]);
mods.qmd.target_chamber.addRecipe(stuff, ((<particle:calcium_48_ion>*120000)^40000)~2.6, <ore:dustLead>, <particle:heffalumpMatter>, null, null, 50000, 1.0, -25000, 0.0021);
}
/* -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- QMD Fuels -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- */
// this is a separate/extra multiplier beyond NC's base multiplier
// (meaning this only affects MoarFuels' fuels, while NC's config
// affects both NC's & MoarFuels' fuels)
// only accepts an integer value
val lifetimeMultiplier = 1;
//does all liquid stuff except isotope mixing & separation
function superMelt(item as IItemStack, array as ILiquidStack[], prod as ILiquidStack[], doub as double[], integs as int[], selfPriming as bool){
//array is molten, fluoride, FLiBe, dFLiBe, dF, dMolten
//prod is 4 actinides, 2 fission products
//doub is time, efficiency, radiation, decay factor
//integs is heat, criticality, fission product1 chance, fission product2 chance
//basic melter
mods.nuclearcraft.Melter.addRecipe(item, array[0]*144);
mods.nuclearcraft.IngotFormer.addRecipe(array[0]*144, item);
//fuel making
mods.nuclearcraft.ChemicalReactor.addRecipe(array[0]*72, <fluid:fluorine>*500, array[1]*72, null);
mods.nuclearcraft.Electrolyzer.addRecipe(array[1]*72, array[0]*72, <fluid:fluorine>*500, null, null);
mods.nuclearcraft.SaltMixer.addRecipe(array[1]*72, <fluid:flibe>*72, array[2]*72);
mods.nuclearcraft.Centrifuge.addRecipe(array[2]*72, array[1]*72, <fluid:flibe>*72, null, null, null, null);
//MSR recipe
mods.nuclearcraft.SaltFission.addRecipe(array[2], array[3], doub[0], integs[0], doub[1], integs[1], doub[3], selfPriming, doub[2]);
//reprocessing
mods.nuclearcraft.Centrifuge.addRecipe(array[3]*72, array[4]*72, <fluid:flibe>*72, null, null, null, null);
mods.nuclearcraft.Electrolyzer.addRecipe(array[4]*72, array[5]*72, <fluid:fluorine>*500, null, null);
val fisProd1 = mods.nuclearcraft.ChanceFluidIngredient.create(prod[4]*16, integs[2], 16);
val fisProd2 = mods.nuclearcraft.ChanceFluidIngredient.create(prod[5]*16, integs[3], 16);
mods.nuclearcraft.Centrifuge.addRecipe(array[5]*144, prod[0], prod[1], fisProd1, prod[2], prod[3], fisProd2);
}
/* -=-=-=-=- MIX Fuels -=-=-=-=-*/
val graphite = <ore:ingotGraphite>|<ore:dustGraphite>;
val zirconium = <ore:ingotZirconium>|<ore:dustZirconium>;
var fis = [[<contenttweaker:mendelevium58>,<contenttweaker:mendelevium58carbide>,<contenttweaker:mendelevium58oxide>,<contenttweaker:mendelevium58nitride>,<contenttweaker:mendelevium58zirconium>],[<contenttweaker:flerovium98>,<contenttweaker:flerovium98carbide>,<contenttweaker:flerovium98oxide>,<contenttweaker:flerovium98nitride>,<contenttweaker:flerovium98zirconium>],[<contenttweaker:darmstadtium294>,<contenttweaker:darmstadtium294carbide>,<contenttweaker:darmstadtium294oxide>,<contenttweaker:darmstadtium294nitride>,<contenttweaker:darmstadtium294zirconium>]] as IIngredient[][];
var fer = [[<ore:ingotAmericium243>,<ore:ingotAmericium243Carbide>,<ore:ingotAmericium243Oxide>,<ore:ingotAmericium243Nitride>,<ore:ingotAmericium243ZA>],[<ore:ingotNeptunium237>,<nuclearcraft:neptunium:6>,<ore:ingotNeptunium237Oxide>,<ore:ingotNeptunium237Nitride>,<nuclearcraft:neptunium:9>],[<contenttweaker:thorium229>,<contenttweaker:thorium229carbide>,<contenttweaker:thorium229oxide>,<contenttweaker:thorium229nitride>,<contenttweaker:thorium229zirconium>]] as IIngredient[][];
var decayRad = [0.788146499,5.26E-07,1.12E-04,3.70E-06,1.04E-05,3.85E-06] as double[];
var decayFactor =[0.11,0.11,0.11] as double[];
var FuelNames = [["mendelevium_fuel","mendelevium_fuel_carbide","mendelevium_fuel_oxide","mendelevium_fuel_nitride","mendelevium_fuel_zirconium"],["flerovium_fuel","flerovium_fuel_carbide","flerovium_fuel_triso","flerovium_fuel_oxide","flerovium_fuel_nitride","flerovium_fuel_zirconium"],["darmstadtium_fuel","darmstadtium_fuel_carbide","darmstadtium_fuel_triso","darmstadtium_fuel_oxide","darmstadtium_fuel_nitride","darmstadtium_fuel_zirconium"]] as string[][];
var allFuels = [[<contenttweaker:mendelevium_fuel>,<contenttweaker:mendelevium_fuel_carbide>,<contenttweaker:mendelevium_fuel_oxide>,<contenttweaker:mendelevium_fuel_nitride>,<contenttweaker:mendelevium_fuel_zirconium>],[<contenttweaker:flerovium_fuel>,<contenttweaker:flerovium_fuel_carbide>,<contenttweaker:flerovium_fuel_oxide>,<contenttweaker:flerovium_fuel_nitride>,<contenttweaker:flerovium_fuel_zirconium>],[<contenttweaker:darmstadtium_fuel>,<contenttweaker:darmstadtium_fuel_carbide>,<contenttweaker:darmstadtium_fuel_oxide>,<contenttweaker:darmstadtium_fuel_nitride>,<contenttweaker:darmstadtium_fuel_zirconium>]] as IItemStack[][];
var fuelN2 = [<contenttweaker:mendelevium_fuel>,<contenttweaker:flerovium_fuel>,<contenttweaker:darmstadtium_fuel>] as IItemStack[];
// time, heat, criticality
var fuelStats = [[[lifetimeMultiplier*1200,3389,21],[lifetimeMultiplier*768,5295,14],[lifetimeMultiplier*864,4707,15]],[[lifetimeMultiplier*7100,1696,60],[lifetimeMultiplier*4544,2650,41],[lifetimeMultiplier*4176,5109,29]],[[lifetimeMultiplier*5800,3678,40],[lifetimeMultiplier*3712,5748,27],[lifetimeMultiplier*5112,2356,43]]] as int[][][];
var fuelCrits = [[17],[48],[32]] as int[][];
val fuelPrime = [true,true,true] as bool[];
var trisoFuels = [<contenttweaker:mendelevium_fuel_triso>,<contenttweaker:flerovium_fuel_triso>,<contenttweaker:darmstadtium_fuel_triso>] as IItemStack[];
var dFuels = [[<contenttweaker:dmendelevium_fuel_triso>,<contenttweaker:dmendelevium_fuel_oxide>,<contenttweaker:dmendelevium_fuel_nitride>,<contenttweaker:dmendelevium_fuel_zirconium>],[<contenttweaker:dflerovium_fuel_triso>,<contenttweaker:dflerovium_fuel_oxide>,<contenttweaker:dflerovium_fuel_nitride>,<contenttweaker:dflerovium_fuel_zirconium>],[<contenttweaker:ddarmstadtium_fuel_triso>,<contenttweaker:ddarmstadtium_fuel_oxide>,<contenttweaker:ddarmstadtium_fuel_nitride>,<contenttweaker:ddarmstadtium_fuel_zirconium>]] as IIngredient[][];
var dFuels2 = [[<contenttweaker:dmendelevium_fuel_triso>,<contenttweaker:dmendelevium_fuel_oxide>,<contenttweaker:dmendelevium_fuel_nitride>,<contenttweaker:dmendelevium_fuel_zirconium>],[<contenttweaker:dflerovium_fuel_triso>,<contenttweaker:dflerovium_fuel_oxide>,<contenttweaker:dflerovium_fuel_nitride>,<contenttweaker:dflerovium_fuel_zirconium>],[<contenttweaker:ddarmstadtium_fuel_triso>,<contenttweaker:ddarmstadtium_fuel_oxide>,<contenttweaker:ddarmstadtium_fuel_nitride>,<contenttweaker:ddarmstadtium_fuel_zirconium>]] as IItemStack[][];
// time, heat, criticality
var trisoStats = [[lifetimeMultiplier*960,4236,14],[lifetimeMultiplier*5680,2120,51],[lifetimeMultiplier*4640,4598,27]] as int[][];
// efficiency, radiation
var trisoStatsAlt = [[2.15,1.24E-02],[4.0,2.71E-04],[6.0,2.59E-04]] as double[][];
// MRR Compat
if (oreDict has "QuantumTraverseIHaveHadEnoughOfYourSpaghettiCodeAndAbsurdNames") {
trisoStatsAlt = [[2.15,6.67E-03],[4.0,2.21E-04],[6.0,0.0002114613636]] as double[][];
}
var fisProd1 = mods.nuclearcraft.ChanceItemIngredient.create(<ore:dustCaesium137>, 25);
var fisProd2 = mods.nuclearcraft.ChanceItemIngredient.create(<ore:dustEuropium155>, 25);
var fluidFuelNames= [[<fluid:mix_258>,<fluid:mix_258_fluoride>,<fluid:mix_258_fluoride_flibe>,<fluid:depleted_mix_258_fluoride_flibe>,<fluid:depleted_mix_258_fluoride>,<fluid:depleted_mix_258>],[<fluid:mix_298>,<fluid:mix_298_fluoride>,<fluid:mix_298_fluoride_flibe>,<fluid:depleted_mix_298_fluoride_flibe>,<fluid:depleted_mix_298_fluoride>,<fluid:depleted_mix_298>],[<fluid:mix_294>,<fluid:mix_294_fluoride>,<fluid:mix_294_fluoride_flibe>,<fluid:depleted_mix_294_fluoride_flibe>,<fluid:depleted_mix_294_fluoride>,<fluid:depleted_mix_294>]] as ILiquidStack[][];
var fluidProd= [[<fluid:curium_245>*32,<fluid:curium_246>*48,<fluid:californium_249>*32,<fluid:californium_251>*16,<fluid:caesium_137>,<fluid:europium_155>],[<fluid:plutonium_239>*32,<fluid:americium_242>*16,<fluid:americium_243>*48,<fluid:curium_246>*32,<fluid:promethium_147>,<fluid:europium_155>],[<fluid:tbu>*16,<fluid:uranium_235>*16,<fluid:uranium_238>*48,<fluid:plutonium_239>*48,<fluid:promethium_147>,<fluid:europium_155>]] as ILiquidStack[][];
var moltenTimes = [8.333333333, 49.30555556, 40.27777778] as double[];
//oreDic
var oreDictList = ["ingotMIX258All","ingotMIX298All","ingotMIX294All","ingotDepletedMIX258All","ingotDepletedMIX298All","ingotDepletedMIX294All"] as string[];
for entry in oreDictList {
oreDict.entry;
}
var realOreDictList = [<ore:ingotMIX258All>,<ore:ingotMIX298All>,<ore:ingotMIX294All>,<ore:ingotDepletedMIX258All>,<ore:ingotDepletedMIX298All>,<ore:ingotDepletedMIX294All>] as IOreDictEntry[];
for i,array in allFuels{
for j,item in array{
//crafting
recipes.addShapeless(FuelNames[i][j],item * 9,[fis[i][j], fer[i][j], fer[i][j], fer[i][j], fer[i][j], fer[i][j], fer[i][j], fer[i][j], fer[i][j]]);
mods.nuclearcraft.Radiation.setRadiationLevel(item, decayRad[i]);
realOreDictList[i].add(item);
}
//non-crafting recipes
mods.nuclearcraft.AlloyFurnace.addRecipe(array[0], graphite, array[1]);
mods.nuclearcraft.Infuser.addRecipe(array[0], <fluid:oxygen>*1000, array[2]);
mods.nuclearcraft.Infuser.addRecipe(array[0], <fluid:nitrogen>*1000, array[3]);
mods.nuclearcraft.AlloyFurnace.addRecipe(array[0], zirconium, array[4]);
furnace.addRecipe(fuelN2[i], array[3]);
furnace.addRecipe(fuelN2[i], array[2]);
mods.nuclearcraft.Separator.addRecipe(array[1], array[0], <nuclearcraft:dust:8>);
mods.nuclearcraft.Separator.addRecipe(array[4], array[0], <nuclearcraft:dust:10>);
mods.nuclearcraft.Separator.addRecipe(array[0]*9, fis[i][0], fer[i][0]*8);
//pebbles
mods.nuclearcraft.Assembler.addRecipe(array[1]*9, <ore:dustGraphite>, <nuclearcraft:part:15>, <nuclearcraft:alloy:13>, trisoFuels[i]*9);
if (oreDict has "QuantumTraverseWhyCanISteamMyCrabs") {
mods.nuclearcraft.SolidFission.addRecipe(trisoFuels[i], dFuels[i][0], fuelStats[i][2][0], fuelStats[i][2][1], trisoStatsAlt[i][0], fuelStats[i][2][2], decayFactor[i], fuelPrime[i], trisoStatsAlt[i][1]);
}else{
mods.nuclearcraft.PebbleFission.addRecipe(trisoFuels[i], dFuels[i][0], trisoStats[i][0], trisoStats[i][1], trisoStatsAlt[i][0], trisoStats[i][2], decayFactor[i], fuelPrime[i], trisoStatsAlt[i][1]);
}
mods.nuclearcraft.Radiation.setRadiationLevel(trisoFuels[i], decayRad[i]);
realOreDictList[i].add(trisoFuels[i]);
//oxide
mods.nuclearcraft.SolidFission.addRecipe(array[2], dFuels[i][1], trisoStats[i][0], trisoStats[i][1], trisoStatsAlt[i][0], fuelCrits[i][0], decayFactor[i], fuelPrime[i], trisoStatsAlt[i][1]);
//nitride
mods.nuclearcraft.SolidFission.addRecipe(array[3], dFuels[i][2], fuelStats[i][0][0], fuelStats[i][0][1], trisoStatsAlt[i][0], fuelStats[i][0][2], decayFactor[i], fuelPrime[i], trisoStatsAlt[i][1]);
//zirconium
mods.nuclearcraft.SolidFission.addRecipe(array[4], dFuels[i][3], fuelStats[i][1][0], fuelStats[i][1][1], trisoStatsAlt[i][0], fuelStats[i][1][2], decayFactor[i], fuelPrime[i], trisoStatsAlt[i][1]);
//melting time
superMelt(array[0], fluidFuelNames[i], fluidProd[i], [moltenTimes[i], trisoStatsAlt[i][0], trisoStatsAlt[i][1], decayFactor[i]] as double[], [fuelStats[i][0][1],fuelCrits[i][0],25,25] as int[], true);
}
// reprocessing
var ddecayRad = [7.61E-03,1.73E-02,1.64E-02,1.90E-03,5.69E-03,9.22E-04] as double[];
var dIso = [[[<nuclearcraft:curium:6>*2,<nuclearcraft:curium:11>*3,<ore:ingotCalifornium249Carbide>*2,<ore:ingotCalifornium251Carbide>], [<nuclearcraft:curium:7>*2,<nuclearcraft:curium:12>*3,<ore:ingotCalifornium249Oxide>*2,<ore:ingotCalifornium251Oxide>], [<nuclearcraft:curium:8>*2,<nuclearcraft:curium:13>*3,<ore:ingotCalifornium249Nitride>*2,<ore:ingotCalifornium251Nitride>], [<nuclearcraft:curium:9>*2,<nuclearcraft:curium:14>*3,<ore:ingotCalifornium249ZA>*2,<ore:ingotCalifornium251ZA>]], [[<nuclearcraft:plutonium:6>*2,<ore:ingotAmericium242Carbide>,<ore:ingotAmericium243Carbide>*3,<nuclearcraft:curium:11>*2],[<nuclearcraft:plutonium:7>*2,<ore:ingotAmericium242Oxide>,<ore:ingotAmericium243Oxide>*3,<nuclearcraft:curium:12>*2],[<nuclearcraft:curium:8>*2,<ore:ingotAmericium242Nitride>,<nuclearcraft:americium:13>*3,<nuclearcraft:curium:13>*2],[<nuclearcraft:curium:9>*2,<ore:ingotAmericium242ZA>,<ore:ingotAmericium243ZA>*3,<nuclearcraft:curium:14>*2]],[[<ore:ingotTBUCarbide>,<ore:ingotUranium235Carbide>,<nuclearcraft:uranium:11>*3,<nuclearcraft:plutonium:11>*3],[<ore:ingotTBUOxide>,<ore:ingotUranium235Oxide>,<nuclearcraft:uranium:12>*3,<nuclearcraft:plutonium:12>*3],[<ore:ingotTBUNitride>,<ore:ingotUranium235Nitride>,<nuclearcraft:uranium:13>*3,<nuclearcraft:plutonium:13>*3],[<ore:ingotTBUZA>,<ore:ingotUranium235ZA>,<nuclearcraft:uranium:14>*3,<nuclearcraft:plutonium:14>*3]]] as IIngredient[][][];
for i,array in dFuels{
if(i==1){
fisProd1 = mods.nuclearcraft.ChanceItemIngredient.create(<ore:dustPromethium147>, 25);
}
//triso
mods.nuclearcraft.FuelReprocessor.addRecipe(array[0].amount(9), dIso[i][0][0], dIso[i][0][1], fisProd1, <ore:dustGraphite>.amount(3), dIso[i][0][2], dIso[i][0][3], fisProd2, <nuclearcraft:alloy:13>);
//oxide
mods.nuclearcraft.FuelReprocessor.addRecipe(array[1].amount(9), dIso[i][1][0], dIso[i][1][1], fisProd1, null, dIso[i][1][2], dIso[i][1][3], fisProd2, null);
//nitride
mods.nuclearcraft.FuelReprocessor.addRecipe(array[2].amount(9), dIso[i][2][0], dIso[i][2][1], fisProd1, null, dIso[i][2][2], dIso[i][2][3], fisProd2, null);
//zirc
mods.nuclearcraft.FuelReprocessor.addRecipe(array[3].amount(9), dIso[i][3][0], dIso[i][3][1], fisProd1, <nuclearcraft:dust:10>, dIso[i][3][2], dIso[i][3][3], fisProd2, null);
for j,item in array{
mods.nuclearcraft.Radiation.setRadiationLevel(item, ddecayRad[i]);
realOreDictList[i+3].add(dFuels2[i][j]);
}
}
/* -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- PBU & LUF Time -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- */
oreDict.ingotPBU;
<ore:ingotPBU>.add(<contenttweaker:pbu>);
oreDict.ingotPBUAll;
oreDict.ingotUranium232;
<ore:ingotUranium232>.add(<contenttweaker:uranium_232>);
oreDict.ingotLUF;
<ore:ingotLUF>.add(<contenttweaker:luf>);
oreDict.ingotLUFAll;
//<ore:dustProtactinium231>.add(<contenttweaker:pa_pellet_slow>);
//<ore:dustProtactinium231>.add(<contenttweaker:pa_pellet_fast>);
//recipes.addShaped(<contenttweaker:pa_pellet_slow>*3,[[<ore:dustProtactinium231>],[<ore:dustProtactinium231>],[<ore:dustProtactinium231>]]);
//recipes.addShaped(<contenttweaker:pa_pellet_fast>*3,[[<ore:dustProtactinium231>,<ore:dustProtactinium231>,<ore:dustProtactinium231>]]);
// MRR Compat
if (oreDict has "QuantumTraverseIHaveHadEnoughOfYourSpaghettiCodeAndAbsurdNames") {
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotUranium232>, 2.12E-02);
mods.nuclearcraft.DecayHastener.addRecipe(<ore:ingotUranium232>, <ore:dustLead>, 1.0, 1.0, 2.12E-02);
mods.nuclearcraft.FissionIrradiator.removeRecipeWithInput(<ore:dustProtactinium231>);
mods.nuclearcraft.FissionIrradiator.addRecipe(<ore:dustProtactinium231>, <ore:ingotPBU>, 5833, 0.8, 0.0, 3.05E-05);
//mods.nuclearcraft.FissionIrradiator.addRecipe(<contenttweaker:pa_pellet_fast>, <ore:dustProtactinium233>, 151000, 0.05, 0.0, 3.05E-05);
//mods.nuclearcraft.FissionIrradiator.addRecipe(<contenttweaker:pa_pellet_slow>, <ore:ingotPBU>, 5833, 2.5, 0.0, 3.05E-05);
mods.nuclearcraft.FissionIrradiator.addRecipe(<ore:ingotPBU>, <ore:ingotUranium232>, 99167, 8.0, 0.0, 1.33E-03);
}else{
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotUranium232>, 1.45E-02);
mods.nuclearcraft.DecayHastener.addRecipe(<ore:ingotUranium232>, <ore:dustLead>, 1.0, 1.0, 1.45E-02);
mods.nuclearcraft.FissionIrradiator.removeRecipeWithInput(<ore:dustProtactinium231>);
mods.nuclearcraft.FissionIrradiator.addRecipe(<ore:dustProtactinium231>, <ore:ingotPBU>, 142222, 0.8, 0.0, 1.56E-04);
//mods.nuclearcraft.FissionIrradiator.addRecipe(<contenttweaker:pa_pellet_fast>, <ore:dustProtactinium233>, 3840000, 0.05, 0.0, 1.56E-04);
//mods.nuclearcraft.FissionIrradiator.addRecipe(<contenttweaker:pa_pellet_slow>, <ore:ingotPBU>, 142222, 2.5, 0.0, 1.56E-04);
mods.nuclearcraft.FissionIrradiator.addRecipe(<ore:ingotPBU>, <ore:ingotUranium232>, 2417778, 8.0, 0.0, 8.35E-04);
}
mods.nuclearcraft.Assembler.addRecipe(<ore:ingotUranium232>, null, null, null, <ore:ingotLUF>);
recipes.addShapeless(<contenttweaker:luf>*9,[<ore:ingotUranium232>, <ore:ingotUranium232>, <ore:ingotUranium232>, <ore:ingotUranium232>, <ore:ingotUranium233>, <ore:ingotUranium232>, <ore:ingotUranium232>, <ore:ingotUranium232>, <ore:ingotUranium232>]);
// does all the needed things (with toggle-able reprocessing)
function theMediumCheeseWithFries(pellet as IItemStack[], triso as IItemStack, dpellet as IIngredient[], dpellet2 as IItemStack[], fuelInts as int[][], integs as int[], fuelDoubles as double[], array as ILiquidStack[], prod as ILiquidStack[], solidProd as IIngredient[][], selfPriming as bool, oreNames as IOreDictEntry[], reprocQ as bool){
//fis/fert/pellet is [normal,carbide,oxide,nitride,za]
//dpellet is [tr, ox, ni, za]
//fuelInts is [time, heat, criticality] for [ox, ni, za, trisoSFR]
//integs is [enrichment, fisProd1 base chance, fisProd2 base chance, affected chance reprocessing ingredient]
//fuelDoubles is [efficiency, base radiation, burn radiation, depleted radiation, MSR time, decay factor]
//array is molten, fluoride, FLiBe, dFLiBe, dF, dMolten
//prod is 4 actinides, 2 fission products as liquids
//solidProd is 4 actinides, 2 fission products as items
//reprocQ determines whether reprocessing is done
for i,item in pellet{
mods.nuclearcraft.Radiation.setRadiationLevel(item, fuelDoubles[1]);
oreNames[0].add(item);
}
//non-crafting recipes
mods.nuclearcraft.AlloyFurnace.addRecipe(pellet[0], <ore:ingotGraphite>|<ore:dustGraphite>, pellet[1]);
mods.nuclearcraft.Infuser.addRecipe(pellet[0], <fluid:oxygen>*1000, pellet[2]);
mods.nuclearcraft.Infuser.addRecipe(pellet[0], <fluid:nitrogen>*1000, pellet[3]);
mods.nuclearcraft.AlloyFurnace.addRecipe(pellet[0], <ore:ingotZirconium>|<ore:dustZirconium>, pellet[4]);
furnace.addRecipe(pellet[0], pellet[3]);
furnace.addRecipe(pellet[0], pellet[2]);
mods.nuclearcraft.Separator.addRecipe(pellet[1], pellet[0], <nuclearcraft:dust:8>);
mods.nuclearcraft.Separator.addRecipe(pellet[4], pellet[0], <nuclearcraft:dust:10>);
//pebbles
mods.nuclearcraft.Assembler.addRecipe(pellet[1]*9, <ore:dustGraphite>, <nuclearcraft:part:15>, <nuclearcraft:alloy:13>, triso*9);
mods.nuclearcraft.Radiation.setRadiationLevel(triso, fuelDoubles[1]);
oreNames[0].add(triso);
if (oreDict has "QuantumTraverseWhyCanISteamMyCrabs") {
mods.nuclearcraft.SolidFission.addRecipe(triso, dpellet[0], fuelInts[3][0], fuelInts[3][1], fuelDoubles[0], fuelInts[3][2], fuelDoubles[5], selfPriming, fuelDoubles[2]);
}else{
mods.nuclearcraft.PebbleFission.addRecipe(triso, dpellet[0], fuelInts[0][0], fuelInts[0][1], fuelDoubles[0], fuelInts[2][2], fuelDoubles[5], selfPriming, fuelDoubles[2]);
}
//oxide
mods.nuclearcraft.SolidFission.addRecipe(pellet[2], dpellet[1], fuelInts[0][0], fuelInts[0][1], fuelDoubles[0], fuelInts[0][2], fuelDoubles[5], selfPriming, fuelDoubles[2]);
//nitride
mods.nuclearcraft.SolidFission.addRecipe(pellet[3], dpellet[2], fuelInts[1][0], fuelInts[1][1], fuelDoubles[0], fuelInts[1][2], fuelDoubles[5], selfPriming, fuelDoubles[2]);
//zirconium
mods.nuclearcraft.SolidFission.addRecipe(pellet[4], dpellet[3], fuelInts[2][0], fuelInts[2][1], fuelDoubles[0], fuelInts[2][2], fuelDoubles[5], selfPriming, fuelDoubles[2]);
//melting time
superMelt(pellet[0], array, prod, [fuelDoubles[4], fuelDoubles[0], fuelDoubles[2], fuelDoubles[5]] as double[], [fuelInts[1][1],fuelInts[0][2], integs[1], integs[2]] as int[], selfPriming);
//decayed fuel stuff
for i,item in dpellet{
mods.nuclearcraft.Radiation.setRadiationLevel(item, fuelDoubles[3]);
oreNames[1].add(dpellet2[i]);
}
if(reprocQ){
var num = 9-integs[0] as int;
var num2 = integs[0] as int;
val fisProd1 = mods.nuclearcraft.ChanceItemIngredient.create(solidProd[0][4] * num2, integs[1]);
val fisProd2 = mods.nuclearcraft.ChanceItemIngredient.create(solidProd[0][5] * num2, integs[2]);
//reprocessing time
num = 1+integs[0] as int;
num2 = 5+integs[0] as int;
var graphite = mods.nuclearcraft.ChanceItemIngredient.create(<ore:dustGraphite> * num2, 50);
var zirconium = mods.nuclearcraft.ChanceItemIngredient.create(<nuclearcraft:dust:10> * num, 50);
if(integs[0]==1){
graphite = <ore:dustGraphite> * (num2/2);
zirconium = <nuclearcraft:dust:10> * (num/2);
}
//triso
mods.nuclearcraft.FuelReprocessor.addRecipe(dpellet[0] * 9, solidProd[0][0], solidProd[0][1], fisProd1, graphite, solidProd[0][2], solidProd[0][3], fisProd2, <nuclearcraft:alloy:13>);
//oxide
mods.nuclearcraft.FuelReprocessor.addRecipe(dpellet[1] * 9, solidProd[1][0], solidProd[1][1], fisProd1, null, solidProd[1][2], solidProd[1][3], fisProd2, null);
//nitride
mods.nuclearcraft.FuelReprocessor.addRecipe(dpellet[2] * 9, solidProd[2][0], solidProd[2][1], fisProd1, null, solidProd[2][2], solidProd[2][3], fisProd2, null);
//zirc
mods.nuclearcraft.FuelReprocessor.addRecipe(dpellet[3] * 9, solidProd[3][0], solidProd[3][1], fisProd1, zirconium, solidProd[3][2], solidProd[3][3], fisProd2, null);
}
}
var pbu_rads = [8.35E-04,4.27E-05,1.90E-03] as double[]; //base, burn, depleted
var luf_rads = [1.45E-02,4.92E-04,1.70E-02] as double[];
if (oreDict has "QuantumTraverseIHaveHadEnoughOfYourSpaghettiCodeAndAbsurdNames") {
pbu_rads = [1.33E-03,4.66E-05,1.66E-03];
luf_rads = [2.12E-02,5.87E-04,1.64E-02];
}
theMediumCheeseWithFries([<contenttweaker:pbu>,<contenttweaker:pbu_c>,<contenttweaker:pbu_ox>,<contenttweaker:pbu_ni>,<contenttweaker:pbu_za>], <contenttweaker:pbu_tr>, [<contenttweaker:d_pbu_tr>,<contenttweaker:d_pbu_ox>,<contenttweaker:d_pbu_ni>,<contenttweaker:d_pbu_za>], [<contenttweaker:d_pbu_tr>,<contenttweaker:d_pbu_ox>,<contenttweaker:d_pbu_ni>,<contenttweaker:d_pbu_za>], [[7024,82,118],[8727,66,148],[5592,103,100],[6330,91,106]], [1, 30, 20, 4], [1.10, pbu_rads[0], pbu_rads[1], pbu_rads[2], 60.60416667, 0.050], [<fluid:pbu>,<fluid:pbu_fluoride>,<fluid:pbu_fluoride_flibe>,<fluid:depleted_pbu_fluoride_flibe>,<fluid:depleted_pbu_fluoride>,<fluid:depleted_pbu>], [<fluid:uranium_233>*32,<fluid:uranium_235>,<fluid:neptunium_236>*32,<fluid:neptunium_237>*48,<fluid:strontium_90>,<fluid:caesium_137>], [[<nuclearcraft:uranium:1>*2,<nuclearcraft:uranium:6>,<nuclearcraft:neptunium:1>*2,<nuclearcraft:neptunium:6>*3,<ore:dustStrontium90>,<ore:dustCaesium137>],[<nuclearcraft:uranium:2>*2,<nuclearcraft:uranium:7>,<nuclearcraft:neptunium:2>*2,<nuclearcraft:neptunium:7>*3,<ore:dustStrontium90>,<ore:dustCaesium137>],[<nuclearcraft:uranium:3>*2,<nuclearcraft:uranium:8>,<nuclearcraft:neptunium:3>*2,<nuclearcraft:neptunium:8>*3,<ore:dustStrontium90>,<ore:dustCaesium137>],[<nuclearcraft:uranium:4>*2,<nuclearcraft:uranium:9>,<nuclearcraft:neptunium:4>*2,<nuclearcraft:neptunium:9>*3,<ore:dustStrontium90>,<ore:dustCaesium137>]], false, [<ore:ingotPBUAll>,<ore:ingotDepletedPBUAll>], true);
//fis/fert/pellet is [normal,carbide,oxide,nitride,za]
//dpellet is [tr, ox, ni, za]
//fuelInts is [time, heat, criticality] for [ox, ni, za, trisoSFR]
//integs is [enrichment, fisProd1 base chance, fisProd2 base chance, affected chance reprocessing ingredient]
//fuelDoubles is [efficiency, base radiation, burn radiation, depleted radiation, MSR time, decay factor]
//array is molten, fluoride, FLiBe, dFLiBe, dF, dMolten
//prod is 4 actinides, 2 fission products as liquids
//solidProd is 4 actinides, 2 fission products as items
theMediumCheeseWithFries([<contenttweaker:luf>,<contenttweaker:luf_c>,<contenttweaker:luf_ox>,<contenttweaker:luf_ni>,<contenttweaker:luf_za>], <contenttweaker:luf_tr>, [<contenttweaker:d_luf_tr>,<contenttweaker:d_luf_ox>,<contenttweaker:d_luf_ni>,<contenttweaker:d_luf_za>], [<contenttweaker:d_luf_tr>,<contenttweaker:d_luf_ox>,<contenttweaker:d_luf_ni>,<contenttweaker:d_luf_za>], [[6063,855,24],[7580,684,30],[4840,1069,20],[5434,950,22]], [9, 25, 25, 4], [1.30, luf_rads[0], luf_rads[1], luf_rads[2], 52.63888889, 0.055], [<fluid:luf>,<fluid:luf_fluoride>,<fluid:luf_fluoride_flibe>,<fluid:depleted_luf_fluoride_flibe>,<fluid:depleted_luf_fluoride>,<fluid:depleted_luf>], [<fluid:uranium_234>*16,<fluid:uranium_235>*16,<fluid:neptunium_236>*16,<fluid:neptunium_237>*16,<fluid:strontium_90>,<fluid:caesium_137>], [[null]], false, [<ore:ingotLUFAll>,<ore:ingotDepletedLUFAll>], false);
//external processing
fisProd1 = mods.nuclearcraft.ChanceItemIngredient.create(<ore:dustStrontium90> * 9, 25);
fisProd2 = mods.nuclearcraft.ChanceItemIngredient.create(<ore:dustCaesium137> * 9, 25);
//triso
mods.nuclearcraft.FuelReprocessor.addRecipe(<contenttweaker:d_luf_tr> * 9, <ore:ingotUranium234>, <nuclearcraft:uranium:6>, fisProd1, <ore:dustGraphite>*8, <nuclearcraft:neptunium:1>, <nuclearcraft:neptunium:6>, fisProd2, <nuclearcraft:alloy:13>);
//oxide
mods.nuclearcraft.FuelReprocessor.addRecipe(<contenttweaker:d_luf_ox> * 9, <ore:ingotUranium234>, <nuclearcraft:uranium:7>, fisProd1, null, <nuclearcraft:neptunium:2>, <nuclearcraft:neptunium:7>, fisProd2, null);
//nitride
mods.nuclearcraft.FuelReprocessor.addRecipe(<contenttweaker:d_luf_ni> * 9, <ore:ingotUranium234>, <nuclearcraft:uranium:8>, fisProd1, null, <nuclearcraft:neptunium:3>, <nuclearcraft:neptunium:8>, fisProd2, null);
//zirc
mods.nuclearcraft.FuelReprocessor.addRecipe(<contenttweaker:d_luf_za> * 9, <ore:ingotUranium234>, <nuclearcraft:uranium:9>, fisProd1, <ore:dustZirconium>*6, <nuclearcraft:neptunium:4>, <nuclearcraft:neptunium:9>, fisProd2, null);
fisProd1 = mods.nuclearcraft.ChanceFluidIngredient.create(<fluid:strontium_90>*144, 25, 16);
fisProd2 = mods.nuclearcraft.ChanceFluidIngredient.create(<fluid:caesium_137>*144, 25, 16);
mods.nuclearcraft.Centrifuge.removeRecipeWithInput(<fluid:depleted_luf>*144);
mods.nuclearcraft.Centrifuge.addRecipe(<fluid:depleted_luf>*144, <fluid:uranium_234>*16,<fluid:uranium_235>*16,fisProd1,<fluid:neptunium_236>*16,<fluid:neptunium_237>*16,fisProd2);
/* -=-=-=-=- UBU & Pa-231 Based Fuels -=-=-=-=-*/
val paFuels = [[<contenttweaker:protactinium_fuel>,<contenttweaker:protactinium_fuel_carbide>,<contenttweaker:protactinium_fuel_oxide>,<contenttweaker:protactinium_fuel_nitride>,<contenttweaker:protactinium_fuel_zirconium>],[<contenttweaker:hprotactinium_fuel>,<contenttweaker:hprotactinium_fuel_carbide>,<contenttweaker:hprotactinium_fuel_oxide>,<contenttweaker:hprotactinium_fuel_nitride>,<contenttweaker:hprotactinium_fuel_zirconium>],[<contenttweaker:ubu_fuel>,<contenttweaker:ubu_fuel_carbide>,<contenttweaker:ubu_fuel_oxide>,<contenttweaker:ubu_fuel_nitride>,<contenttweaker:ubu_fuel_zirconium>]] as IItemStack[][];
val dpaFuels = [[<contenttweaker:dprotactinium_fuel_triso>,<contenttweaker:dprotactinium_fuel_oxide>,<contenttweaker:dprotactinium_fuel_nitride>,<contenttweaker:dprotactinium_fuel_zirconium>],[<contenttweaker:dhprotactinium_fuel_triso>,<contenttweaker:dhprotactinium_fuel_oxide>,<contenttweaker:dhprotactinium_fuel_nitride>,<contenttweaker:dhprotactinium_fuel_zirconium>],[<contenttweaker:dubu_fuel_triso>,<contenttweaker:dubu_fuel_oxide>,<contenttweaker:dubu_fuel_nitride>,<contenttweaker:dubu_fuel_zirconium>]] as IIngredient[][];
val dpaFuels2 = [[<contenttweaker:dprotactinium_fuel_triso>,<contenttweaker:dprotactinium_fuel_oxide>,<contenttweaker:dprotactinium_fuel_nitride>,<contenttweaker:dprotactinium_fuel_zirconium>],[<contenttweaker:dhprotactinium_fuel_triso>,<contenttweaker:dhprotactinium_fuel_oxide>,<contenttweaker:dhprotactinium_fuel_nitride>,<contenttweaker:dhprotactinium_fuel_zirconium>],[<contenttweaker:dubu_fuel_triso>,<contenttweaker:dubu_fuel_oxide>,<contenttweaker:dubu_fuel_nitride>,<contenttweaker:dubu_fuel_zirconium>]] as IItemStack[][];
val paeff = [1.25,1.3,1.2] as double[];
val paStats = [[[lifetimeMultiplier*9600,60,160],[lifetimeMultiplier*12000,48,200],[lifetimeMultiplier*7680,75,136],[lifetimeMultiplier*8597,67,144]],[[lifetimeMultiplier*9600,180,80],[lifetimeMultiplier*12000,144,100],[lifetimeMultiplier*7680,225,68],[lifetimeMultiplier*8597,201,72]],[[lifetimeMultiplier*4500,128,96],[lifetimeMultiplier*5647,102,120],[lifetimeMultiplier*3600,160,82],[lifetimeMultiplier*4056,142,86]]] as int[][][];
var burnrad = [2.97E-05,8.90E-05,1.45E-05] as double[];
decayFactor = [0.065,0.045,0.045];
// MRR Compat
if (oreDict has "QuantumTraverseIHaveHadEnoughOfYourSpaghettiCodeAndAbsurdNames") {
burnrad = [2.61E-05,7.82E-05,2.12E-05] as double[];
}
val pebbles = [<contenttweaker:protactinium_fuel_triso>,<contenttweaker:hprotactinium_fuel_triso>,<contenttweaker:ubu_fuel_triso>] as IItemStack[];
fuelN2 = [<contenttweaker:protactinium_fuel>,<contenttweaker:hprotactinium_fuel>,<contenttweaker:ubu_fuel>] as IItemStack[];
fluidFuelNames= [[<fluid:lam_231>,<fluid:lam_231_fluoride>,<fluid:lam_231_fluoride_flibe>,<fluid:depleted_lam_231_fluoride_flibe>,<fluid:depleted_lam_231_fluoride>,<fluid:depleted_lam_231>],[<fluid:eam_231>,<fluid:eam_231_fluoride>,<fluid:eam_231_fluoride_flibe>,<fluid:depleted_eam_231_fluoride_flibe>,<fluid:depleted_eam_231_fluoride>,<fluid:depleted_eam_231>],[<fluid:ubu>,<fluid:ubu_fluoride>,<fluid:ubu_fluoride_flibe>,<fluid:depleted_ubu_fluoride_flibe>,<fluid:depleted_ubu_fluoride>,<fluid:depleted_ubu>]] as ILiquidStack[][];
fluidProd= [[<fluid:tbu>*64,<fluid:uranium_233>*16,<fluid:uranium_234>*16,<fluid:uranium_235>*32,<fluid:strontium_90>,<fluid:caesium_137>],[<fluid:uranium_233>*32,<fluid:uranium_234>*32,<fluid:uranium_235>*32,<fluid:neptunium_237>*16,<fluid:strontium_90>,<fluid:caesium_137>],[<fluid:uranium_235>*32,<fluid:neptunium_236>*16,<fluid:neptunium_237>*32,<fluid:uranium_238>*48,<fluid:molybdenum>,<fluid:caesium_137>]] as ILiquidStack[][];
moltenTimes = [83.33333333,83.33333333,39.21527778] as double[];
val fisProdChance = [[30,20],[90,60],[25,25]] as int[][];
//base recipe
mods.nuclearcraft.Assembler.addRecipe(<ore:ingotPBU>, <ore:ingotTBU>*8, null, null, paFuels[0][0]*9);
mods.nuclearcraft.Assembler.addRecipe(<ore:ingotPBU>*2, paFuels[0][0]*6, null, null, paFuels[1][0]*8);
oreDict.ingotUBU;
<ore:ingotUBU>.add(<contenttweaker:ubu_fuel>);
mods.nuclearcraft.FissionIrradiator.removeRecipeWithInput(<ore:ingotUranium234>);
mods.nuclearcraft.FissionIrradiator.addRecipe(<ore:ingotUranium234>, <ore:ingotUBU>, 106667, 0.0, 0.0, 4.07E-06);
mods.nuclearcraft.FissionIrradiator.addRecipe(<ore:ingotUBU>, <ore:ingotUranium235>, 1813333, 0.0, 0.0, 1.42E-09);
oreDictList = ["ingotLAM231All","ingotEAM231All","ingotUBUAll","ingotDepletedLAM231All","ingotDepletedEAM231All","ingotDepletedUBUAll"] as string[];
for entry in oreDictList {
oreDict.entry;
}
realOreDictList = [<ore:ingotLAM231All>,<ore:ingotEAM231All>,<ore:ingotUBUAll>,<ore:ingotDepletedLAM231All>,<ore:ingotDepletedEAM231All>,<ore:ingotDepletedUBUAll>] as IOreDictEntry[];
//non-base recipes
for i, array in paFuels{
for item in array{
mods.nuclearcraft.Radiation.setRadiationLevel(item, decayRad[i+3]);
realOreDictList[i].add(item);
}
mods.nuclearcraft.AlloyFurnace.addRecipe(array[0], graphite, array[1]);
mods.nuclearcraft.Infuser.addRecipe(array[0], <fluid:oxygen>*1000, array[2]);
mods.nuclearcraft.Infuser.addRecipe(array[0], <fluid:nitrogen>*1000, array[3]);
mods.nuclearcraft.AlloyFurnace.addRecipe(array[0], zirconium, array[4]);
furnace.addRecipe(fuelN2[i], array[3]);
furnace.addRecipe(fuelN2[i], array[2]);
mods.nuclearcraft.Separator.addRecipe(array[1], array[0], <nuclearcraft:dust:8>);
mods.nuclearcraft.Separator.addRecipe(array[4], array[0], <nuclearcraft:dust:10>);
//pebbles
mods.nuclearcraft.Assembler.addRecipe(array[1]*9, <ore:dustGraphite>, <nuclearcraft:part:15>, <nuclearcraft:alloy:13>, pebbles[i]*9);
if (oreDict has "QuantumTraverseWhyCanISteamMyCrabs") {
mods.nuclearcraft.SolidFission.addRecipe(pebbles[i], dpaFuels[i][0], paStats[i][3][0], paStats[i][3][1], paeff[i], paStats[i][3][2], decayFactor[i], false, burnrad[i]);
}else{
mods.nuclearcraft.PebbleFission.addRecipe(pebbles[i], dpaFuels[i][0], paStats[i][0][0], paStats[i][0][1], paeff[i], paStats[i][2][2], decayFactor[i], false, burnrad[i]);
}
mods.nuclearcraft.Radiation.setRadiationLevel(pebbles[i], decayRad[i+2]);
realOreDictList[i].add(trisoFuels[i]);
//oxide
mods.nuclearcraft.SolidFission.addRecipe(array[2], dpaFuels[i][1], paStats[i][0][0], paStats[i][0][1], paeff[i], paStats[i][0][2], decayFactor[i], false, burnrad[i]);
//nitride
mods.nuclearcraft.SolidFission.addRecipe(array[3], dpaFuels[i][2], paStats[i][1][0], paStats[i][1][1], paeff[i], paStats[i][1][2], decayFactor[i], false, burnrad[i]);
//zirconium
mods.nuclearcraft.SolidFission.addRecipe(array[4], dpaFuels[i][3], paStats[i][2][0], paStats[i][2][1], paeff[i], paStats[i][2][2], decayFactor[i], false, burnrad[i]);
//melting time
superMelt(array[0], fluidFuelNames[i], fluidProd[i], [moltenTimes[i], paeff[i], burnrad[i], decayFactor[i]] as double[], [paStats[i][0][1],paStats[i][0][2], fisProdChance[i][0], fisProdChance[i][1]] as int[], false);
}
fisProd1 = mods.nuclearcraft.ChanceItemIngredient.create(<ore:dustStrontium90>, 30);
fisProd2 = mods.nuclearcraft.ChanceItemIngredient.create(<ore:dustCaesium137>, 20);
//reprocessing
//triso
mods.nuclearcraft.FuelReprocessor.addRecipe(dpaFuels[0][0] * 9, <ore:ingotTBUCarbide> * 4, <ore:ingotUranium233Carbide>, fisProd1, <ore:dustGraphite>.amount(4), <ore:ingotUranium234>, <nuclearcraft:uranium:6>*2, fisProd2, <nuclearcraft:alloy:13>);
//oxide
mods.nuclearcraft.FuelReprocessor.addRecipe(dpaFuels[0][1] * 9, <ore:ingotTBUOxide> * 4, <ore:ingotUranium233Oxide>, fisProd1, null, <ore:ingotUranium234>, <nuclearcraft:uranium:7>*2, fisProd2, null);
//nitride
mods.nuclearcraft.FuelReprocessor.addRecipe(dpaFuels[0][2] * 9, <ore:ingotTBUNitride> * 4, <ore:ingotUranium233Nitride>, fisProd1, null, <ore:ingotUranium234>, <nuclearcraft:uranium:8>*2, fisProd2, null);
//zirc
mods.nuclearcraft.FuelReprocessor.addRecipe(dpaFuels[0][3] * 9, <ore:ingotTBUZA> * 4, <ore:ingotUranium233ZA>, fisProd1, <nuclearcraft:dust:10> * 2, <ore:ingotUranium234>, <nuclearcraft:uranium:9>*2, fisProd2, null);
fisProd1 = mods.nuclearcraft.ChanceItemIngredient.create(<ore:dustStrontium90>, 90);
fisProd2 = mods.nuclearcraft.ChanceItemIngredient.create(<ore:dustCaesium137>, 60);
//triso
mods.nuclearcraft.FuelReprocessor.addRecipe(dpaFuels[1][0] * 9, <ore:ingotUranium233Carbide>*2, <ore:ingotUranium234>*2, fisProd1, <ore:dustGraphite>.amount(6), <nuclearcraft:uranium:6>*2, <ore:ingotNeptunium237Carbide>, fisProd2, <nuclearcraft:alloy:13>);
//oxide
mods.nuclearcraft.FuelReprocessor.addRecipe(dpaFuels[1][1] * 9, <ore:ingotUranium233Oxide>*2, <ore:ingotUranium234>*2, fisProd1, null, <nuclearcraft:uranium:7>*2, <ore:ingotNeptunium237Oxide>, fisProd2, null);
//nitride
mods.nuclearcraft.FuelReprocessor.addRecipe(dpaFuels[1][2] * 9, <ore:ingotUranium233Nitride>*2, <ore:ingotUranium234>*2, fisProd1, null, <nuclearcraft:uranium:8>*2, <ore:ingotNeptunium237Nitride>, fisProd2, null);
//zirc
mods.nuclearcraft.FuelReprocessor.addRecipe(dpaFuels[1][3] * 9, <ore:ingotUranium233ZA>*2, <ore:ingotUranium234>*2, fisProd1, <nuclearcraft:dust:10> * 4, <nuclearcraft:uranium:9>*2, <ore:ingotNeptunium237ZA>, fisProd2, null);
fisProd1 = mods.nuclearcraft.ChanceItemIngredient.create(<ore:dustMolybdenum>, 25);
fisProd2 = mods.nuclearcraft.ChanceItemIngredient.create(<ore:dustCaesium137>, 25);
//reprocessing
//triso
mods.nuclearcraft.FuelReprocessor.addRecipe(dpaFuels[2][0] * 9, <nuclearcraft:uranium:6> * 2, <ore:ingotNeptunium236Carbide>, fisProd1, <ore:dustGraphite>.amount(3), <nuclearcraft:neptunium:6> * 2, <nuclearcraft:uranium:11>*3, fisProd2, <nuclearcraft:alloy:13>);
//oxide
mods.nuclearcraft.FuelReprocessor.addRecipe(dpaFuels[2][1] * 9, <nuclearcraft:uranium:7> * 2, <ore:ingotNeptunium236Oxide>, fisProd1, null, <nuclearcraft:neptunium:7> * 2, <nuclearcraft:uranium:12>*3, fisProd2, null);
//nitride
mods.nuclearcraft.FuelReprocessor.addRecipe(dpaFuels[2][2] * 9, <nuclearcraft:uranium:8> * 2, <ore:ingotNeptunium236Nitride>, fisProd1, null, <nuclearcraft:neptunium:8> * 2, <nuclearcraft:uranium:13>*3, fisProd2, null);
//zirc
mods.nuclearcraft.FuelReprocessor.addRecipe(dpaFuels[2][3] * 9, <nuclearcraft:uranium:9> * 2, <ore:ingotNeptunium236ZA>, fisProd1, <nuclearcraft:dust:10>, <nuclearcraft:neptunium:9> * 2, <nuclearcraft:uranium:14>*3, fisProd2, null);
for i,array in dpaFuels{
for j,item in array{
mods.nuclearcraft.Radiation.setRadiationLevel(item, ddecayRad[i+3]);
realOreDictList[i+3].add(dpaFuels2[i][j]);
}
}
/* -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- Isotope Stuff -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
val qIsoNames= [[<contenttweaker:thorium229>,<contenttweaker:thorium229carbide>,<contenttweaker:thorium229oxide>,<contenttweaker:thorium229nitride>,<contenttweaker:thorium229zirconium>],[<contenttweaker:mendelevium58>,<contenttweaker:mendelevium58carbide>,<contenttweaker:mendelevium58oxide>,<contenttweaker:mendelevium58nitride>,<contenttweaker:mendelevium58zirconium>],[<contenttweaker:flerovium98>,<contenttweaker:flerovium98carbide>,<contenttweaker:flerovium98oxide>,<contenttweaker:flerovium98nitride>,<contenttweaker:flerovium98zirconium>],[<contenttweaker:darmstadtium294>,<contenttweaker:darmstadtium294carbide>,<contenttweaker:darmstadtium294oxide>,<contenttweaker:darmstadtium294nitride>,<contenttweaker:darmstadtium294zirconium>]] as IIngredient[][];
val qIsoNames2= [[<contenttweaker:thorium229>,<contenttweaker:thorium229carbide>,<contenttweaker:thorium229oxide>,<contenttweaker:thorium229nitride>,<contenttweaker:thorium229zirconium>],[<contenttweaker:mendelevium58>,<contenttweaker:mendelevium58carbide>,<contenttweaker:mendelevium58oxide>,<contenttweaker:mendelevium58nitride>,<contenttweaker:mendelevium58zirconium>],[<contenttweaker:flerovium98>,<contenttweaker:flerovium98carbide>,<contenttweaker:flerovium98oxide>,<contenttweaker:flerovium98nitride>,<contenttweaker:flerovium98zirconium>],[<contenttweaker:darmstadtium294>,<contenttweaker:darmstadtium294carbide>,<contenttweaker:darmstadtium294oxide>,<contenttweaker:darmstadtium294nitride>,<contenttweaker:darmstadtium294zirconium>]] as IItemStack[][];
val qisoN2 = [<contenttweaker:thorium229>,<contenttweaker:mendelevium58>,<contenttweaker:flerovium98>,<contenttweaker:darmstadtium294>] as IItemStack[];
val qdecays = [<contenttweaker:einsteinium54>,<contenttweaker:einsteinium54carbide>,<contenttweaker:einsteinium54oxide>,<contenttweaker:einsteinium54nitride>,<contenttweaker:einsteinium54zirconium>] as IIngredient[];
decayRad = [1.26E-04,7.09,1.0e-6,1.0e-9] as double[];
oreDictList = ["ingotThorium229All","ingotMendelevium258All","ingotFlerovium298All","ingotDarmstadtium294All"] as string[];
for entry in oreDictList {
oreDict.entry;
}
realOreDictList = [<ore:ingotThorium229All>,<ore:ingotMendelevium258All>,<ore:ingotFlerovium298All>,<ore:ingotDarmstadtium294All>] as IOreDictEntry[];
for i,array in qIsoNames{
// adding carbides
mods.nuclearcraft.AlloyFurnace.addRecipe(array[0], graphite, array[1]);
// adding oxides
mods.nuclearcraft.Infuser.addRecipe(array[0], <fluid:oxygen>*1000, array[2]);
// adding nitrides
mods.nuclearcraft.Infuser.addRecipe(array[0], <fluid:nitrogen>*1000, array[3]);
// adding zirconium alloys
mods.nuclearcraft.AlloyFurnace.addRecipe(array[0], zirconium, array[4]);
// recipes for normal
furnace.addRecipe(qisoN2[i], array[3]);
furnace.addRecipe(qisoN2[i], array[2]);
mods.nuclearcraft.Separator.addRecipe(array[1], array[0], <nuclearcraft:dust:8>);
mods.nuclearcraft.Separator.addRecipe(array[4], array[0], <nuclearcraft:dust:10>);
//adding decays
for j,item in array{
mods.nuclearcraft.Radiation.setRadiationLevel(item, decayRad[i]);
realOreDictList[i].add(qIsoNames2[i][j]);
if (i==1){
mods.nuclearcraft.DecayHastener.addRecipe(item, qdecays[j],1.0,1.0,decayRad[i]);
}
}
}
var uran = <ore:ingotUranium235>;
mods.nuclearcraft.DecayHastener.removeRecipeWithInput(uran);
uran = <ore:ingotUranium235>|<ore:ingotUranium235Oxide>|<ore:ingotUranium235Nitride>;
mods.nuclearcraft.DecayHastener.addRecipe(uran, <ore:dustProtactinium231>,1.0,1.0,1.42e-9);
// Stuff for Actinium-227 & Thorium-229
oreDict.dustActinium227;
<ore:dustActinium227>.add(<contenttweaker:actinium>);
mods.nuclearcraft.FissionIrradiator.addRecipe(<ore:dustRadium>, <contenttweaker:actinium>, 1563000, 0.0, 0.0, 0.0);
mods.nuclearcraft.DecayHastener.addRecipe(<contenttweaker:actinium>, <ore:dustLead>,1.0,1.0,4.59E-02);
mods.nuclearcraft.Radiation.setRadiationLevel(<contenttweaker:actinium>, 4.59E-02);
oreDict.ingotThorium229Pure;
<ore:ingotThorium229Pure>.add(<contenttweaker:purethorium229>);
mods.nuclearcraft.Manufactory.addRecipe(<ore:ingotThorium229All>, <ore:ingotThorium229Pure>);
mods.nuclearcraft.Radiation.setRadiationLevel(<contenttweaker:purethorium229>, 1.26E-04);
mods.nuclearcraft.FissionIrradiator.addRecipe(<contenttweaker:actinium>, <contenttweaker:purethorium229>, 201000, 0.0, 0.0, 0.0);
mods.nuclearcraft.DecayHastener.addRecipe(<contenttweaker:purethorium229>|<contenttweaker:thorium229>|<contenttweaker:thorium229oxide>|<contenttweaker:thorium229nitride>, <ore:dustBismuth>,1.0,1.0,decayRad[0]);
//enhancements
mods.nuclearcraft.AlloyFurnace.addRecipe(<contenttweaker:purethorium229>*64, <contenttweaker:californium54>, <contenttweaker:thorium229>*64);
mods.nuclearcraft.AlloyFurnace.addRecipe(<contenttweaker:purethorium229>*8, <ore:ingotCalifornium252>, <contenttweaker:thorium229>*8);
// U-234 melting time
mods.nuclearcraft.Melter.addRecipe(<ore:ingotUranium234>, <fluid:uranium_234>*144);
mods.nuclearcraft.IngotFormer.addRecipe(<fluid:uranium_234>*144, <ore:ingotUranium234>);
//Special Thorium Pellet Stuff
if (oreDict has "QuantumTraverseIHaveHadEnoughOfYourSpaghettiCodeAndAbsurdNames") {
//<ore:ingotThorium229Pure>.add(<contenttweaker:th_pellet_slow>);
//<ore:ingotThorium229Pure>.add(<contenttweaker:th_pellet_fast>);
//recipes.addShaped(<contenttweaker:th_pellet_slow>*3,[[<ore:ingotThorium229Pure>],[<ore:ingotThorium229Pure>],[<ore:ingotThorium229Pure>]]);
//recipes.addShaped(<contenttweaker:th_pellet_fast>*3,[[<ore:ingotThorium229Pure>,<ore:ingotThorium229Pure>,<ore:ingotThorium229Pure>]]);
mods.nuclearcraft.FissionIrradiator.addRecipe(<ore:ingotThorium229Pure>, <ore:dustProtactinium231>, 1185000, 7.5, 0.0, 3.30E-04);
//mods.nuclearcraft.FissionIrradiator.addRecipe(<contenttweaker:th_pellet_slow>, <ore:dustProtactinium231>, 1185000, 7.5, 0.0, 3.30E-04);
//mods.nuclearcraft.FissionIrradiator.addRecipe(<contenttweaker:th_pellet_fast>, <ore:dustThorium>, 1198000, 0.1, 0.0, 3.30E-04);
}else{
//mods.jei.JEI.hide(<contenttweaker:th_pellet_slow>);
//mods.jei.JEI.hide(<contenttweaker:th_pellet_fast>);
}
/* -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- Improved RTGs -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- */
val radioIso = [<ore:ingotCobalt60>,<contenttweaker:actinium>] as IIngredient[];
val decayIso = [<ore:dustNickel>,<ore:dustLead>] as IIngredient[];
val red = <ore:dustRedstone>;
val sige = <contenttweaker:si_ge>;
var input = [<contenttweaker:rtg_co>,<contenttweaker:rtg_ac>] as IIngredient[];
var output = [<contenttweaker:rtg_co_done>,<contenttweaker:rtg_ac_done>] as IIngredient[];
//mean lifetime, power, radiation
var rtgstats = [[126600.0,36.0,1.90E-01],[522000.0,1370.0,4.59E-02]] as double[][];
// MRR Compat
if (oreDict has "QuantumTraverseIHaveHadEnoughOfYourSpaghettiCodeAndAbsurdNames") {
rtgstats = [[126600.0,36.0,3.50E-01],[522000.0,1370.0,5.90E-02]] as double[][];
}
for i,item in input{
mods.nuclearcraft.Assembler.addRecipe(radioIso[i].amount(9), <nuclearcraft:rad_shielding:2>*4, red*2, sige*2, item);
mods.nuclearcraft.DecayGenerator.addRecipe(item, output[i], rtgstats[i][0], rtgstats[i][1], rtgstats[i][2]);
mods.nuclearcraft.FuelReprocessor.addRecipe(output[i], decayIso[i].amount(9), <nuclearcraft:rad_shielding:2>*4, null, null, red*2, sige*2, null, null);
mods.nuclearcraft.Radiation.setRadiationLevel(item, rtgstats[i][2]);
}
/* -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- Clock Fun -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- */
val nClock = <minecraft:clock>.withTag({display: {Name: "Nuclear Clock", Lore: ["Somehow hundreds of times even more accurate than an atomic clock!"]}});
recipes.addShaped(nClock,[[null, <ore:ingotGold>, null],[<ore:ingotGold>, <contenttweaker:purethorium229>, <ore:ingotGold>],[null,<ore:ingotGold>,null]]);

View file

@ -0,0 +1,24 @@
/*
Copyright Bob Bartsch, 2021
This code is governed by the
Creative Commons AttributionNonCommercial License
https://creativecommons.org/licenses/by-nc/3.0/
(Meaning: credit me if you modify and/or redistribute
this code. Also, you may not sell this code.)
*/
#modloaded trinity
import crafttweaker.item.IIngredient;
import crafttweaker.item.IItemStack;
/* -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- Subcritical Spheres -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- */
val pitList = [<trinity:u233_pit>,<trinity:u235_pit>,<trinity:pu239_pit>,<trinity:am242_pit>,<trinity:cm247_pit>,<trinity:bk248_pit>,<trinity:cf249_pit>,<trinity:cf251_pit>] as IItemStack[];
val fis = [<contenttweaker:wgu_233>,<contenttweaker:wgu_235>,<contenttweaker:wgp_239>,<contenttweaker:wga_242>,<contenttweaker:wgcm_247>,<contenttweaker:wgb_248>,<contenttweaker:wgcf_249>,<contenttweaker:wgcf_251>] as IIngredient[];
val poSource = <trinity:neutron_initiator>;
for i,pit in pitList {
recipes.addShaped(pit,[[fis[i], fis[i], fis[i]], [fis[i], poSource, fis[i]], [fis[i], fis[i], fis[i]]]);
}

View file

@ -0,0 +1,140 @@
/*
Copyright Bob Bartsch, 2021
This code is governed by the
Creative Commons AttributionNonCommercial License
https://creativecommons.org/licenses/by-nc/3.0/
(Meaning: credit me if you modify and/or redistribute
this code. Also, you may not sell this code.)
*/
#loader preinit
//isotopes
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Tritium",4.06e-2);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Strontium90",1.74e-2);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Ruthenium106",4.88e-1);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Caesium137",4.81e-2);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Promethium147",1.91e-1);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Europium155",2.85e-1);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Bismuth",4.03e-23);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Polonium",5.38e-5);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Radium",2.51e-3);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Thorium",2.70e-10);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("TBP",2.41e-01);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Protactinium233",4.35);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Uranium233",1.78e-5);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Uranium",2.20e-9);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Uranium235",1.07e-8);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Uranium238",1.25e-9);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Neptunium236",1.62e-5);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Neptunium237",1.27e-6);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Plutonium238",3.30e-3);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Plutonium239",5.35e-5);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Plutonium241",3.50e-2);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Plutonium242",6.25e-7);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Americium241",2.34e-3);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Americium242",6.86e-3);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Americium243",3.02e-4);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Curium243",4.00e-2);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Curium245",1.76e-4);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Curium246",4.16e-5);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Curium247",2.43e-7);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Berkelium247",1.42e-3);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Berkelium248",8.89e-2);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Californium249",2.92e-3);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Californium250",1.78e-2);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Californium251",1.73e-3);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Californium252",1.04);
if(loadedMods has "qmd"){
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Beryllium7",5.20e-1);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Sodium22",1.17);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Calcium48",4.45e-20);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Cobalt60",4.74e-1);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Iridium192",3.46);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Protactinium231",1.56e-4);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Uranium234",1.75e-5);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Copernicium291",8.57e-2);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("MIX291",9.52E-03);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("DepletedMIX291",3.18E-02);
}
if(loadedMods has "trinity"){
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("Gold198",7.64E+00);
}
//fuels
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("TBU",9.90e-7);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("LEU233",1.98e-6);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("HEU233",5.94e-6);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("LEU235",2.31e-9);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("HEU235",4.41e-9);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("LEN236",2.93e-6);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("HEN236",6.25e-6);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("LEP239",6.49e-6);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("HEP239",1.82e-5);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("LEP241",3.89e-3);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("HEP241",1.17e-2);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("MIX239",5.94e-6);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("MIX241",3.89e-3);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("LEA242",1.03e-3);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("HEA242",2.49e-3);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("LECm243",4.48e-3);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("HECm243",1.34e-2);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("LECm245",5.66e-5);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("HECm245",8.64e-5);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("LECm247",3.70e-5);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("HECm247",2.78e-5);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("LEB248",1.11e-2);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("HEB248",3.06e-2);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("LECf249",9.24e-1);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("HECf249",6.94e-1);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("LECf251",9.24e-1);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("HECf251",6.93e-1);
//depleted fuels
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("DepletedTBU",1.82e-3);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("DepletedLEU233",5.74e-3);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("DepletedHEU233",5.49e-3);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("DepletedLEU235",1.38e-3);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("DepletedHEU235",4.04e-3);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("DepletedLEN236",5.22e-3);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("DepletedHEN236",4.38e-3);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("DepletedLEP239",6.58e-3);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("DepletedHEP239",2.66e-2);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("DepletedLEP241",5.97e-3);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("DepletedHEP241",1.85e-2);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("DepletedMIX239",9.70e-3);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("DepletedMIX241",9.70e-3);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("DepletedLEA242",1.53e-2);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("DepletedHEA242",2.06e-2);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("DepletedLECm243",1.55e-2);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("DepletedHECm243",2.61e-2);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("DepletedLECm245",6.98e-3);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("DepletedHECm245",1.96e-2);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("DepletedLECm247",1.67e-2);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("DepletedHECm247",3.00e-2);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("DepletedLEB248",1.47e-1);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("DepletedHEB248",4.18e-1);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("DepletedLECf249",9.44e-1);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("DepletedHECf249",7.56e-1);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("DepletedLECf251",9.46e-1);
mods.nuclearcraft.Radiation.setMaterialRadiationLevel("DepletedHECf251",8.76e-1);

View file

@ -0,0 +1,127 @@
/*
Copyright Bob Bartsch, 2021
This code is governed by the
Creative Commons AttributionNonCommercial License
https://creativecommons.org/licenses/by-nc/3.0/
(Meaning: credit me if you modify and/or redistribute
this code. Also, you may not sell this code.)
*/
import mods.nuclearcraft.FissionIrradiator;
//neutron sources
mods.nuclearcraft.Radiation.setRadiationLevel(<nuclearcraft:fission_source:0>, 2.41E-04);
mods.nuclearcraft.Radiation.setRadiationLevel(<nuclearcraft:fission_source:1>, 4.58E-06);
mods.nuclearcraft.Radiation.setRadiationLevel(<nuclearcraft:fission_source:2>, 1.18E-01);
//rtgs
mods.nuclearcraft.Radiation.setRadiationLevel(<nuclearcraft:rtg_uranium>, 9.62E-11);
mods.nuclearcraft.Radiation.setRadiationLevel(<nuclearcraft:rtg_plutonium>, 5.51E-04);
mods.nuclearcraft.Radiation.setRadiationLevel(<nuclearcraft:rtg_americium>, 3.90E-04);
mods.nuclearcraft.Radiation.setRadiationLevel(<nuclearcraft:rtg_californium>, 2.23E-03);
//irradiator changes
mods.nuclearcraft.FissionIrradiator.removeRecipeWithInput(<ore:dustBismuth>);
mods.nuclearcraft.FissionIrradiator.addRecipe(<ore:dustBismuth>, <ore:dustPolonium>, 3220000, 0.0, 0.50, 253.0e-24);
if(loadedMods has "trinity"){
mods.nuclearcraft.FissionIrradiator.removeRecipeWithOutput(<ore:dustGold198>);
mods.nuclearcraft.FissionIrradiator.addRecipe(<ore:dustGold>|<ore:ingotGold>, <ore:dustGold198>, 214000, 0.0, 0.0, 0.0);
mods.nuclearcraft.FissionIrradiator.addRecipe(<ore:dustCaesium137>, <ore:dustBarium>, 3099000, 0.0, 0.0, 4.81E-02);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:dustGold198>, 7.64E+00);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotGold198>, 7.64E+00);
}
//irradiator additions
mods.nuclearcraft.FissionIrradiator.addRecipe(<ore:ingotUranium238>, <ore:ingotMIX239>, 867342, 0.25, 0.0, 1.25E-09);
mods.nuclearcraft.FissionIrradiator.addRecipe(<ore:blockUranium238>, <ore:ingotMIX239>*9, 7806078, 2.25, 0.0, 11.25E-09);
mods.nuclearcraft.FissionIrradiator.addRecipe(<ore:ingotMIX239>, <ore:ingotPlutonium239>, 6938658, 0.25, 0.0, 5.94E-06);
mods.nuclearcraft.FissionIrradiator.addRecipe(<forge:bucketfilled>.withTag({FluidName: "hydrogen", Amount: 1000}), <forge:bucketfilled>.withTag({FluidName: "deuterium", Amount: 1000}), 3086000, 0.0, 0.0, 0.0);
// MoarFuels Integration
if (oreDict has "ingotEinsteinium255All") {
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotCalifornium253All>, 3.49);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotCalifornium254All>, 9.07);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotEinsteinium254All>, 1.52);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotEinsteinium255All>, 2.63);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotFermium257All>, 1.46);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotLECf253All>, 1.31);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotHECf253All>, 1.86);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotLEE254All>, 2.51);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotHEE254All>, 2.26);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotMIX257All>, 1.61);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotDepletedLECf253All>, 1.39);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotDepletedHECf253All>, 2.30);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotDepletedLEE254All>, 2.09);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotDepletedHEE254All>, 1.67);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotDepletedMIX257All>, 5.55e-1);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotREP238All>, 3.79E-04);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotREA241All>, 1.99E-03);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotRECf250All>, 6.95E-01);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotDepletedREP238All>, 1.89E-02);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotDepletedREA241All>, 8.74E-04);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotDepletedRECf250All>, 1.03E+00);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotUraniumOxide>, 2.20e-9);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotCANDUAll>, 2.20e-9);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotDepletedCANDUAll>, 2.11E-03);
if(loadedMods has "qmd"){
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotMIX258All>, 4.17e-1);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotMIX294All>, 1.16e-6);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotMIX298All>, 3.20e-4);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotDepletedMIX258All>, 1.01e-2);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotDepletedMIX294All>, 1.32e-2);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotDepletedMIX298All>, 1.41e-2);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotUBUAll>, 1.65E-05);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotDepletedUBUAll>, 1.34E-03);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotLAM231All>, 1.82E-05);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotDepletedLAM231All>, 1.65E-03);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotEAM231All>, 5.27E-05);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotDepletedEAM231All>, 4.95E-03);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:dustActinium227>, 1.27E-01);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotThorium229Pure>, 3.30E-04);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotThorium229All>, 3.30E-04);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotMendelevium258All>, 3.75E+00);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotFlerovium298All>, 2.39E-04);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotDarmstadtium294All>, 2.41E-07);
}
if(loadedMods has "trinity"){
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotPlutonium236>, 1.11E-03);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotPBPAll>, 1.66E-02);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotDepletedPBPAll>, 6.16E-03);
mods.nuclearcraft.FissionIrradiator.removeRecipeWithInput(<ore:ingotPlutonium236>);
mods.nuclearcraft.FissionIrradiator.addRecipe(<ore:ingotPlutonium236>, <ore:ingotPBP>, 75692, 0.0, 0.0, 1.11E-03);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotU233Sphere>, 1.58E-05);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotDepletedU233Sphere>, 1.46E-02);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotU235Sphere>, 9.51E-09);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotDepletedU235Sphere>, 1.07E-02);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotN237Sphere>, 1.13E-06);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotDepletedN237Sphere>, 2.02E-03);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotP239Sphere>, 4.76E-05);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotDepletedP239Sphere>, 5.10E-02);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotA242Sphere>, 2.68E-04);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotDepletedA242Sphere>, 4.47E-02);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotCm247Sphere>, 2.16E-07);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotDepletedCm247Sphere>, 5.63E-02);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotB248Sphere>, 7.90E-02);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotDepletedB248Sphere>, 2.90E-01);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotCf249Sphere>, 2.60E-03);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotDepletedCf249Sphere>, 6.69E-01);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotCf251Sphere>, 1.54E-03);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotDepletedCf251Sphere>, 1.75E+00);
}
}
// MoarReactorFunctionality Integration
if (oreDict has "puBeModerator") {
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:puBeModerator>, 3.97E-03);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:neutronMultiplierReflector>, 2.60E-03);
}

View file

@ -0,0 +1,18 @@
/*
Copyright Bob Bartsch, 2021
This code is governed by the
Creative Commons AttributionNonCommercial License
https://creativecommons.org/licenses/by-nc/3.0/
(Meaning: credit me if you modify and/or redistribute
this code. Also, you may not sell this code.)
*/
#priority 10
import crafttweaker.oredict.IOreDict;
import crafttweaker.oredict.IOreDictEntry;
oreDict.QuantumTraverseIHaveHadEnoughOfYourSpaghettiCodeAndAbsurdNames;
<ore:QuantumTraverseIHaveHadEnoughOfYourSpaghettiCodeAndAbsurdNames>.add(<nuclearcraft:supercold_ice>);

View file

@ -0,0 +1,42 @@
/*
Copyright Bob Bartsch, 2021
This code is governed by the
Creative Commons AttributionNonCommercial License
https://creativecommons.org/licenses/by-nc/3.0/
(Meaning: credit me if you modify and/or redistribute
this code. Also, you may not sell this code.)
*/
#modloaded qmd
import mods.nuclearcraft.FissionIrradiator;
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:dustBeryllium7>, 5.20e-1);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:dustSodium22>, 1.17);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:dustCalcium48>, 4.45e-20);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:dustCobalt60>, 4.74e-1);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:dustIridium192>, 3.46);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:dustProtactinium231>, 1.56e-4);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotUranium234>, 1.75e-5);
mods.nuclearcraft.Radiation.setRadiationLevel(<ore:ingotCoperniciumAll>, 8.57e-2);
//irradiator stuff
mods.nuclearcraft.FissionIrradiator.removeRecipeWithInput(<ore:ingotCobalt>);
mods.nuclearcraft.FissionIrradiator.addRecipe(<ore:ingotCobalt>, <ore:ingotCobalt60>, 571000, 0.0, 0.0, 0.0);
mods.nuclearcraft.FissionIrradiator.addRecipe(<ore:dustProtactinium233>, <ore:ingotUranium234>, 545000, 0.0, 0.0, 4.35E+00);
if (!(oreDict has "ingotUBU")) {
mods.nuclearcraft.FissionIrradiator.removeRecipeWithInput(<ore:ingotUranium234>);
mods.nuclearcraft.FissionIrradiator.addRecipe(<ore:ingotUranium234>, <ore:ingotUranium235>, 215000, 0.0, 0.0, 1.75E-05);
mods.nuclearcraft.FissionIrradiator.removeRecipeWithInput(<ore:dustProtactinium231>);
mods.nuclearcraft.FissionIrradiator.addRecipe(<ore:dustProtactinium231>, <ore:dustProtactinium233>, 151000, 0.0, 0.0, 1.56E-04);
} else {
mods.nuclearcraft.FissionIrradiator.removeRecipeWithInput(<ore:ingotUranium234>);
mods.nuclearcraft.FissionIrradiator.addRecipe(<ore:ingotUranium234>, <ore:ingotUBU>, 11944, 0.0, 0.0, 1.75E-05);
mods.nuclearcraft.FissionIrradiator.removeRecipeWithInput(<ore:ingotUBU>);
mods.nuclearcraft.FissionIrradiator.addRecipe(<ore:ingotUBU>, <ore:ingotUranium235>, 203056, 0.0, 0.0, 1.65E-05);
}