This commit is contained in:
Shiroyasha 2025-09-14 21:22:24 +03:00
commit a956daf8e2
Signed by: shiroyashik
GPG key ID: E4953D3940D7860A
2351 changed files with 163047 additions and 0 deletions

View file

@ -0,0 +1,139 @@
/**
* Endgame Material Registry.
* Used for registering Gregtech Materials
* that are related post-tank content.
*/
// ? Keep in sync with
// ? https://github.com/Nomi-CEu/Nomi-Labs/blob/main/src/main/java/com/nomiceu/nomilabs/gregtech/material/registry/register/LabsEndgame.java
/*
Note: Some GTCEuM recipes handlers calculate duration based on mass.
This led to the infamous recipe bug where Infinity Screws in the Lathe had integer limit duration,
because the Infinity material had infinite mass.
*/
GTCEuStartupEvents.registry("gtceu:element", event => {
event.create("omnium")
.protons(130)
.neutrons(234)
.symbol("Nm");
event.create("infinity")
.protons(168)
.neutrons(316)
.symbol("∞");
event.create("monium")
.protons(169)
.neutrons(317)
.symbol("Mu");
event.create("crystal_matrix")
.protons(6)
.neutrons(6)
.symbol("C*");
event.create("eltz")
.protons(15)
.neutrons(15)
.symbol("Ez")
})
// Omnium, Infinity, and Monium have animations and thus custom material icon sets.
GTCEuStartupEvents.registry("gtceu:material_icon_set", event => {
event.create("omnium").parent(GTMaterialIconSet.SHINY)
event.create("sculk_alloy").parent(GTMaterialIconSet.DULL)
event.create("infinity").parent(GTMaterialIconSet.SHINY)
event.create("eltz").parent(GTMaterialIconSet.SHINY)
event.create("monium").parent(GTMaterialIconSet.SHINY)
event.create("dilithium").parent(GTMaterialIconSet.DULL)
event.create("mana").parent(GTMaterialIconSet.SHINY)
})
GTCEuStartupEvents.registry("gtceu:material", event => {
event.create("crystal_matrix")
.ingot().fluid()
.element(GTElements.get("crystal_matrix"))
.color(0x66ffff)
.blastTemp(6800, "highest")
.iconSet("shiny")
.flags(GTMaterialFlags.GENERATE_PLATE, GTMaterialFlags.GENERATE_FOIL, GTMaterialFlags.GENERATE_ROD, GTMaterialFlags.GENERATE_FRAME, GTMaterialFlags.GENERATE_DENSE);
event.create("omnium")
.ingot()
.liquid(new GTFluidBuilder().state(GTFluidState.LIQUID).customStill())
.element(GTElements.get("omnium"))
.color(0xffffff).iconSet("omnium")
.flags(GTMaterialFlags.GENERATE_PLATE, GTMaterialFlags.GENERATE_ROD, GTMaterialFlags.GENERATE_BOLT_SCREW, GTMaterialFlags.GENERATE_FRAME, GTMaterialFlags.GENERATE_SMALL_GEAR)
.cableProperties(GTValues.V[GTValues.UEV], 64, 8, false)
event.create("omnic_acid")
.dust()
.color(0xff00ff)
.iconSet("shiny")
.components("5x carbon", "4x hydrogen", "3x oxygen", "4x omnium")
.flags(GTMaterialFlags.DISABLE_DECOMPOSITION)
event.create("sculk_superconductor")
.ingot().fluid()
.element(GTElements.get("sculk_superconductor"))
.color(0xffffff)
.iconSet("shiny")
.flags(GTMaterialFlags.NO_SMELTING, GTMaterialFlags.NO_SMASHING)
.cableProperties(GTValues.V[GTValues.UHV], 8, 0, true)
event.create("netherite_scrap")
.dust().ingot().ore(1, 3)
.color(0x6D473E)
.iconSet("dull")
.addOreByproducts(GTMaterials.Obsidian, GTMaterials.Obsidian, GTMaterials.RarestMetalMixture)
.ignoredTagPrefixes([TagPrefix.nugget, TagPrefix.block, TagPrefix.dustTiny, TagPrefix.rawOre, TagPrefix.rawOreBlock])
event.create("activated_netherite")
.ingot()
.element(GTElements.get("activated_netherite"))
.color(0x4C484C)
.iconSet("dull")
.cableProperties(GTValues.V[GTValues.UEV], 16, 0, true)
.fluidPipeProperties(11000, 8500, true, false, true, true)
.flags(GTMaterialFlags.GENERATE_PLATE, GTMaterialFlags.GENERATE_ROD, GTMaterialFlags.GENERATE_FRAME, GTMaterialFlags.GENERATE_DENSE, GTMaterialFlags.GENERATE_FINE_WIRE, GTMaterialFlags.GENERATE_ROTOR, GTMaterialFlags.GENERATE_SPRING)
event.create("sculk_bioalloy")
.ingot()
.liquid(new GTFluidBuilder().state(GTFluidState.LIQUID).customStill())
.color(0xffffff)
.iconSet("sculk_alloy")
.flags(GTMaterialFlags.EXCLUDE_BLOCK_CRAFTING_BY_HAND_RECIPES, GTMaterialFlags.EXCLUDE_BLOCK_CRAFTING_RECIPES, GTMaterialFlags.GENERATE_PLATE, GTMaterialFlags.GENERATE_ROD, GTMaterialFlags.GENERATE_RING, GTMaterialFlags.GENERATE_ROUND, GTMaterialFlags.GENERATE_GEAR, GTMaterialFlags.GENERATE_SMALL_GEAR, GTMaterialFlags.GENERATE_SPRING, GTMaterialFlags.GENERATE_BOLT_SCREW, GTMaterialFlags.GENERATE_FRAME, GTMaterialFlags.NO_SMELTING, GTMaterialFlags.NO_WORKING)
event.create("infinity")
.ingot()
.liquid(new GTFluidBuilder().state(GTFluidState.LIQUID).customStill())
.element(GTElements.get("infinity"))
.color(0xffffff)
.iconSet("infinity")
.flags(GTMaterialFlags.GENERATE_PLATE, GTMaterialFlags.GENERATE_ROD, GTMaterialFlags.GENERATE_FRAME, GTMaterialFlags.GENERATE_DENSE, GTMaterialFlags.GENERATE_SMALL_GEAR)
event.create("eltz")
.ingot()
.liquid(new GTFluidBuilder().state(GTFluidState.LIQUID).customStill())
.element(GTElements.get("eltz"))
.color(0xffffff)
.iconSet("eltz")
.flags(GTMaterialFlags.GENERATE_PLATE, GTMaterialFlags.GENERATE_ROD, GTMaterialFlags.GENERATE_LONG_ROD, GTMaterialFlags.GENERATE_RING, GTMaterialFlags.GENERATE_ROUND, GTMaterialFlags.GENERATE_GEAR, GTMaterialFlags.GENERATE_SMALL_GEAR, GTMaterialFlags.GENERATE_SPRING, GTMaterialFlags.GENERATE_BOLT_SCREW, GTMaterialFlags.GENERATE_FRAME, GTMaterialFlags.PHOSPHORESCENT)
event.create("eltic_actinate")
.gem()
.color(0xbb9966).secondaryColor(0x881105)
.iconSet("dilithium")
.components("4x eltz", "1x actinium", "3x oxygen")
.flags(GTMaterialFlags.DISABLE_DECOMPOSITION, GTMaterialFlags.NO_SMASHING)
event.create("actinium_iron_oxide")
.dust()
.color(0xC3D1FF) // Old actinium color for fun
.components("1x actinium", "4x iron", "3x oxygen")
event.create("monium")
.ingot()
.liquid(new GTFluidBuilder().state(GTFluidState.LIQUID).customStill())
.element(GTElements.get("monium"))
.color(0xffffff)
.iconSet("monium")
.flags(GTMaterialFlags.GENERATE_PLATE, GTMaterialFlags.GENERATE_ROD, GTMaterialFlags.GENERATE_FRAME, GTMaterialFlags.GENERATE_GEAR, GTMaterialFlags.GENERATE_SPRING)
.cableProperties(GTValues.V[GTValues.MAX], 134217727, 0, true)
})