init
This commit is contained in:
commit
a956daf8e2
2351 changed files with 163047 additions and 0 deletions
180
kubejs/startup_scripts/gregtech_crafting_components.js
Normal file
180
kubejs/startup_scripts/gregtech_crafting_components.js
Normal file
|
|
@ -0,0 +1,180 @@
|
|||
/**
|
||||
* Unlike how screret showcases the functionality of this event in his discord messge:
|
||||
* https://discord.com/channels/914926812948234260/1229854271613436066/1279802878822711407
|
||||
* there is no "Map.of()" to create map objects out of varargs.
|
||||
*
|
||||
* Worse still, I could not find an analog to that function.
|
||||
* Therefore we declare empty maps and then populate them afterwards.
|
||||
*/
|
||||
|
||||
GTCEuStartupEvents.craftingComponents(event => {
|
||||
|
||||
// Make LuV+ electrolyzer wires not osmium for funsies :)
|
||||
let wireElectricMap = {};
|
||||
wireElectricMap[GTValues.LuV] = UnificationEntry(TagPrefix.wireGtSingle, GTMaterials.VanadiumGallium);
|
||||
wireElectricMap[GTValues.ZPM] = UnificationEntry(TagPrefix.wireGtSingle, GTMaterials.NaquadahAlloy);
|
||||
wireElectricMap[GTValues.UV] = UnificationEntry(TagPrefix.wireGtSingle, GTMaterials.get("sculk_superconductor"));
|
||||
wireElectricMap[GTValues.UHV] = UnificationEntry(TagPrefix.wireGtSingle, GTMaterials.get("activated_netherite"));
|
||||
wireElectricMap[GTValues.UEV] = UnificationEntry(TagPrefix.wireGtSingle, GTMaterials.Holmium);
|
||||
wireElectricMap[GTValues.UIV] = UnificationEntry(TagPrefix.wireGtSingle, GTMaterials.get("monium"));
|
||||
event.modify(CraftingComponent.WIRE_ELECTRIC, wireElectricMap)
|
||||
|
||||
// Omnium & Holmium for wires/cables
|
||||
let wireCableComponentPrefixes = [
|
||||
[TagPrefix.wireGtQuadruple, TagPrefix.wireGtQuadruple, CraftingComponent.WIRE_QUAD],
|
||||
[TagPrefix.wireGtOctal, TagPrefix.wireGtOctal, CraftingComponent.WIRE_OCT],
|
||||
[TagPrefix.wireGtHex, TagPrefix.wireGtHex, CraftingComponent.WIRE_HEX],
|
||||
[TagPrefix.cableGtSingle, TagPrefix.wireGtSingle, CraftingComponent.CABLE],
|
||||
[TagPrefix.cableGtDouble, TagPrefix.wireGtDouble, CraftingComponent.CABLE_DOUBLE],
|
||||
[TagPrefix.cableGtQuadruple, TagPrefix.wireGtQuadruple, CraftingComponent.CABLE_QUAD],
|
||||
[TagPrefix.cableGtOctal, TagPrefix.wireGtOctal, CraftingComponent.CABLE_OCT],
|
||||
// [TagPrefix.cableGtHex, TagPrefix.wireGtHex, CraftingComponent.CABLE_HEX] // Seems borked? Causes crashes when uncommented
|
||||
]
|
||||
|
||||
wireCableComponentPrefixes.forEach(prefixComponentPair => {
|
||||
let wireMap = {};
|
||||
wireMap[GTValues.UEV] = UnificationEntry(prefixComponentPair[0], GTMaterials.get("omnium"));
|
||||
wireMap[GTValues.UIV] = UnificationEntry(prefixComponentPair[1], GTMaterials.Holmium);
|
||||
wireMap[GTValues.MAX] = UnificationEntry(prefixComponentPair[1], GTMaterials.get("monium"));
|
||||
event.modify(prefixComponentPair[2], wireMap)
|
||||
})
|
||||
|
||||
// Netherite, Holmium, and Monium for tier up wires/cables
|
||||
// Currently useless because GT only autogenerates transformer recipes up to UV.
|
||||
let wireCableTierUpComponentPrefixes = [
|
||||
[TagPrefix.wireGtSingle, CraftingComponent.CABLE_TIER_UP],
|
||||
[TagPrefix.wireGtDouble, CraftingComponent.CABLE_TIER_UP_DOUBLE],
|
||||
[TagPrefix.wireGtQuadruple, CraftingComponent.CABLE_TIER_UP_QUAD],
|
||||
// [TagPrefix.wireGtOctal, CraftingComponent.CABLE_TIER_UP_OCT], // Seems borked. Same here as above.
|
||||
[TagPrefix.wireGtHex, CraftingComponent.CABLE_TIER_UP_HEX]
|
||||
]
|
||||
|
||||
wireCableTierUpComponentPrefixes.forEach(prefixComponentPair => {
|
||||
let wireTierUpMap = {};
|
||||
wireTierUpMap[GTValues.UHV] = UnificationEntry(prefixComponentPair[0], GTMaterials.get("activated_netherite"));
|
||||
wireTierUpMap[GTValues.UEV] = UnificationEntry(prefixComponentPair[0], GTMaterials.Holmium);
|
||||
wireTierUpMap[GTValues.UIV] = UnificationEntry(prefixComponentPair[0], GTMaterials.get("monium"));
|
||||
event.modify(prefixComponentPair[1], wireTierUpMap)
|
||||
})
|
||||
|
||||
// Pipes
|
||||
let pipeComponentPrefixes = [
|
||||
[TagPrefix.pipeNormalFluid, CraftingComponent.PIPE_NORMAL],
|
||||
[TagPrefix.pipeLargeFluid, CraftingComponent.PIPE_LARGE],
|
||||
[TagPrefix.pipeNonupleFluid, CraftingComponent.PIPE_NONUPLE]
|
||||
]
|
||||
|
||||
pipeComponentPrefixes.forEach(prefixComponentPair => {
|
||||
let pipeMap = {};
|
||||
pipeMap[GTValues.UHV] = UnificationEntry(prefixComponentPair[0], GTMaterials.Neutronium);
|
||||
pipeMap[GTValues.UEV] = UnificationEntry(prefixComponentPair[0], GTMaterials.get("activated_netherite"));
|
||||
pipeMap[GTValues.UIV] = UnificationEntry(prefixComponentPair[0], GTMaterials.Holmium);
|
||||
event.modify(prefixComponentPair[1], pipeMap)
|
||||
})
|
||||
|
||||
// Glass
|
||||
let glassMap = {};
|
||||
glassMap[GTValues.UHV] = Item.of("gtceu:fusion_glass");
|
||||
glassMap[GTValues.UEV] = Item.of("gtceu:fusion_glass");
|
||||
glassMap[GTValues.UIV] = Item.of("gtceu:fusion_glass");
|
||||
event.modify(CraftingComponent.GLASS, glassMap)
|
||||
|
||||
// Plates
|
||||
let plateMap = {};
|
||||
plateMap[GTValues.UEV] = UnificationEntry(TagPrefix.plate, GTMaterials.get("omnium"))
|
||||
plateMap[GTValues.UIV] = UnificationEntry(TagPrefix.plate, GTMaterials.get("infinity"))
|
||||
plateMap[GTValues.MAX] = UnificationEntry(TagPrefix.plate, GTMaterials.get("monium"))
|
||||
event.modifyUnificationEntry(CraftingComponent.PLATE, plateMap)
|
||||
|
||||
// Hull plates
|
||||
let hullPlateMap = {};
|
||||
plateMap[GTValues.UEV] = UnificationEntry(TagPrefix.plate, GTMaterials.get("polyethyl_cyanoacrylate"))
|
||||
plateMap[GTValues.UIV] = UnificationEntry(TagPrefix.plate, GTMaterials.get("polyethyl_cyanoacrylate"))
|
||||
plateMap[GTValues.MAX] = UnificationEntry(TagPrefix.plate, GTMaterials.get("polyethyl_cyanoacrylate"))
|
||||
event.modifyUnificationEntry(CraftingComponent.HULL_PLATE, hullPlateMap)
|
||||
|
||||
// Rotors
|
||||
let rotorMap = {};
|
||||
rotorMap[GTValues.UHV] = UnificationEntry(TagPrefix.rotor, GTMaterials.Neutronium)
|
||||
rotorMap[GTValues.UEV] = UnificationEntry(TagPrefix.rotor, GTMaterials.get("activated_netherite"))
|
||||
rotorMap[GTValues.UIV] = UnificationEntry(TagPrefix.rotor, GTMaterials.Holmium)
|
||||
event.modifyUnificationEntry(CraftingComponent.ROTOR, rotorMap)
|
||||
|
||||
// TODO: Sawblades (May require making tools for the material)
|
||||
|
||||
// Resistive heating wires (typically, these match the EBF coil for that tier)
|
||||
let heatingCoilComponentPrefixes = [
|
||||
[TagPrefix.wireGtDouble, CraftingComponent.COIL_HEATING],
|
||||
[TagPrefix.wireGtQuadruple, CraftingComponent.COIL_HEATING_DOUBLE],
|
||||
]
|
||||
|
||||
heatingCoilComponentPrefixes.forEach(prefixComponentPair => {
|
||||
let heaterMap = {};
|
||||
heaterMap[GTValues.UHV] = UnificationEntry(prefixComponentPair[0], GTMaterials.get("omnium"));
|
||||
heaterMap[GTValues.UEV] = UnificationEntry(prefixComponentPair[0], GTMaterials.get("omnium"));
|
||||
heaterMap[GTValues.UIV] = UnificationEntry(prefixComponentPair[0], GTMaterials.get("omnium"));
|
||||
event.modify(prefixComponentPair[1], heaterMap)
|
||||
})
|
||||
|
||||
// Electric Coils
|
||||
let electricCoilMap = {};
|
||||
electricCoilMap[GTValues.UHV] = UnificationEntry(TagPrefix.wireGtHex, GTMaterials.get("sculk_superconductor"))
|
||||
electricCoilMap[GTValues.UEV] = UnificationEntry(TagPrefix.wireGtHex, GTMaterials.get("activated_netherite"))
|
||||
electricCoilMap[GTValues.UIV] = UnificationEntry(TagPrefix.wireGtHex, GTMaterials.get("holmium"))
|
||||
event.modifyUnificationEntry(CraftingComponent.COIL_ELECTRIC, electricCoilMap)
|
||||
|
||||
// Magnetic Rods
|
||||
let magneticRodMap = {};
|
||||
magneticRodMap[GTValues.UV] = UnificationEntry(TagPrefix.rodLong, GTMaterials.SamariumMagnetic)
|
||||
magneticRodMap[GTValues.UHV] = UnificationEntry(TagPrefix.rodLong, GTMaterials.get("magnetic_terbium"))
|
||||
magneticRodMap[GTValues.UEV] = UnificationEntry(TagPrefix.rodLong, GTMaterials.get("magnetic_terbium"))
|
||||
magneticRodMap[GTValues.UIV] = UnificationEntry(TagPrefix.rodLong, GTMaterials.get("magnetic_terbium"))
|
||||
event.modifyUnificationEntry(CraftingComponent.STICK_MAGNETIC, magneticRodMap)
|
||||
|
||||
// Distillation Rods
|
||||
let distillationRodMap = {};
|
||||
distillationRodMap[GTValues.UHV] = UnificationEntry(TagPrefix.spring, GTMaterials.Actinium)
|
||||
distillationRodMap[GTValues.UEV] = UnificationEntry(TagPrefix.spring, GTMaterials.get("sculk_bioalloy"))
|
||||
distillationRodMap[GTValues.UIV] = UnificationEntry(TagPrefix.spring, GTMaterials.get("eltz"))
|
||||
event.modifyUnificationEntry(CraftingComponent.STICK_DISTILLATION, distillationRodMap)
|
||||
|
||||
// Electromagnetic Rods
|
||||
let electromagneticRodMap = {};
|
||||
electromagneticRodMap[GTValues.IV] = UnificationEntry(TagPrefix.rod, GTMaterials.Neodymium)
|
||||
electromagneticRodMap[GTValues.LuV] = UnificationEntry(TagPrefix.rod, GTMaterials.Samarium)
|
||||
electromagneticRodMap[GTValues.ZPM] = UnificationEntry(TagPrefix.rod, GTMaterials.Samarium)
|
||||
electromagneticRodMap[GTValues.UV] = UnificationEntry(TagPrefix.rod, GTMaterials.Samarium)
|
||||
electromagneticRodMap[GTValues.UHV] = UnificationEntry(TagPrefix.rod, GTMaterials.Terbium)
|
||||
electromagneticRodMap[GTValues.UEV] = UnificationEntry(TagPrefix.rod, GTMaterials.Terbium)
|
||||
electromagneticRodMap[GTValues.UIV] = UnificationEntry(TagPrefix.rod, GTMaterials.Terbium)
|
||||
event.modifyUnificationEntry(CraftingComponent.STICK_ELECTROMAGNETIC, electromagneticRodMap)
|
||||
|
||||
// Chem reactor pipe ingredient
|
||||
let reactorPipeMap = {};
|
||||
reactorPipeMap[GTValues.UHV] = UnificationEntry(TagPrefix.pipeNormalFluid, GTMaterials.get("polyethyl_cyanoacrylate"))
|
||||
reactorPipeMap[GTValues.UEV] = UnificationEntry(TagPrefix.pipeLargeFluid, GTMaterials.get("polyethyl_cyanoacrylate"))
|
||||
reactorPipeMap[GTValues.UIV] = UnificationEntry(TagPrefix.pipeHugeFluid, GTMaterials.get("polyethyl_cyanoacrylate"))
|
||||
event.modifyUnificationEntry(CraftingComponent.PIPE_REACTOR, reactorPipeMap)
|
||||
|
||||
// PIC ingredient
|
||||
let powerComponentMap = {};
|
||||
powerComponentMap[GTValues.UEV] = Item.of("kubejs:uxpic_chip")
|
||||
powerComponentMap[GTValues.UIV] = Item.of("kubejs:uxpic_chip")
|
||||
powerComponentMap[GTValues.MAX] = Item.of("kubejs:uxpic_chip")
|
||||
event.modifyItem(CraftingComponent.POWER_COMPONENT, powerComponentMap)
|
||||
|
||||
// Spring
|
||||
let springMap = {};
|
||||
springMap[GTValues.UEV] = UnificationEntry(TagPrefix.spring, GTMaterials.get("activated_netherite"))
|
||||
springMap[GTValues.UIV] = UnificationEntry(TagPrefix.spring, GTMaterials.get("holmium"))
|
||||
springMap[GTValues.MAX] = UnificationEntry(TagPrefix.spring, GTMaterials.get("monium"))
|
||||
event.modifyUnificationEntry(CraftingComponent.SPRING, springMap)
|
||||
|
||||
// Frame
|
||||
let frameMap = {};
|
||||
frameMap[GTValues.UHV] = UnificationEntry(TagPrefix.frameGt, GTMaterials.Neutronium)
|
||||
frameMap[GTValues.UEV] = UnificationEntry(TagPrefix.frameGt, GTMaterials.get("omnium"))
|
||||
frameMap[GTValues.UIV] = UnificationEntry(TagPrefix.frameGt, GTMaterials.get("infinity"))
|
||||
frameMap[GTValues.MAX] = UnificationEntry(TagPrefix.frameGt, GTMaterials.get("monium"))
|
||||
event.modifyUnificationEntry(CraftingComponent.FRAME, frameMap)
|
||||
})
|
||||
Loading…
Add table
Add a link
Reference in a new issue