aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Robertz <dream-master@gmx.net>2023-04-15 21:48:02 +0200
committerGitHub <noreply@github.com>2023-04-15 21:48:02 +0200
commitf74465e5c858678ed09c0140c72c7d89480d5df3 (patch)
tree7e7d8956cfe1354255102e1056ebe8e88097c69a
parentd1ec4f813c7182eda8bd9bb00feb2462e537f12e (diff)
parent9adb11d7c5a88b38bacdacdf7da2c69c9e519248 (diff)
downloadGT5-Unofficial-f74465e5c858678ed09c0140c72c7d89480d5df3.tar.gz
GT5-Unofficial-f74465e5c858678ed09c0140c72c7d89480d5df3.tar.bz2
GT5-Unofficial-f74465e5c858678ed09c0140c72c7d89480d5df3.zip
Merge pull request #64 from GTNewHorizons/cleanup
Cleanup
-rw-r--r--build.gradle347
-rw-r--r--dependencies.gradle8
-rw-r--r--src/main/java/client/ClientProxy.java2
-rw-r--r--src/main/java/common/Blocks.java40
-rw-r--r--src/main/java/common/Recipes.java838
-rw-r--r--src/main/java/common/TileEntities.java16
-rw-r--r--src/main/java/common/blocks/Block_IchorJar.java2
-rw-r--r--src/main/java/common/blocks/Block_ItemProxyCable.java2
-rw-r--r--src/main/java/common/blocks/Block_ReactorChamber_OFF.java2
-rw-r--r--src/main/java/common/blocks/Block_ReactorChamber_ON.java2
-rw-r--r--src/main/java/common/blocks/Block_ThaumiumReinforcedJar.java2
-rw-r--r--src/main/java/common/blocks/Block_YSZUnit.java2
-rw-r--r--src/main/java/common/itemBlocks/IB_LapotronicEnergyUnit.java8
-rw-r--r--src/main/java/common/recipeLoaders/AlloySmelter.java32
-rw-r--r--src/main/java/common/recipeLoaders/Assembler.java246
-rw-r--r--src/main/java/common/recipeLoaders/AssemblyLine.java205
-rw-r--r--src/main/java/common/recipeLoaders/ChemicalReactor.java28
-rw-r--r--src/main/java/common/recipeLoaders/Crafting.java75
-rw-r--r--src/main/java/common/recipeLoaders/FormingPress.java28
-rw-r--r--src/main/java/common/recipeLoaders/Mixer.java44
-rw-r--r--src/main/java/common/recipeLoaders/ResearchableAssemblyLine.java136
-rw-r--r--src/main/java/common/recipeLoaders/Unpackager.java146
-rw-r--r--src/main/java/common/tileentities/GTMTE_LapotronicSuperCapacitor.java44
-rw-r--r--src/main/java/common/tileentities/GTMTE_SOFuelCellMK1.java11
-rw-r--r--src/main/java/common/tileentities/GTMTE_SOFuelCellMK2.java9
-rw-r--r--src/main/java/common/tileentities/GTMTE_TFFT.java17
-rw-r--r--src/main/java/common/tileentities/GTMTE_TFFTHatch.java6
-rw-r--r--src/main/java/common/tileentities/TE_BeamTransmitter.java2
-rw-r--r--src/main/java/common/tileentities/TE_ItemProxySource.java2
-rw-r--r--src/main/java/kekztech/KekzCore.java6
-rw-r--r--src/main/java/util/Vector3ic.java6
31 files changed, 1389 insertions, 925 deletions
diff --git a/build.gradle b/build.gradle
index 9027fe62de..055dcee435 100644
--- a/build.gradle
+++ b/build.gradle
@@ -1,4 +1,4 @@
-//version: 1675624371
+//version: 1680120787
/*
DO NOT CHANGE THIS FILE!
Also, you may replace this file at any time if there is an update available.
@@ -9,13 +9,18 @@
import com.diffplug.blowdryer.Blowdryer
import com.github.jengelman.gradle.plugins.shadow.tasks.ConfigureShadowRelocation
import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar
+import com.gtnewhorizons.retrofuturagradle.ObfuscationAttribute
import com.gtnewhorizons.retrofuturagradle.mcp.ReobfuscatedJar
+import com.gtnewhorizons.retrofuturagradle.minecraft.RunMinecraftTask
import com.matthewprenger.cursegradle.CurseArtifact
import com.matthewprenger.cursegradle.CurseRelation
import com.modrinth.minotaur.dependencies.ModDependency
import com.modrinth.minotaur.dependencies.VersionDependency
+import cpw.mods.fml.relauncher.Side
+import org.gradle.api.tasks.options.Option;
import org.gradle.internal.logging.text.StyledTextOutput.Style
import org.gradle.internal.logging.text.StyledTextOutputFactory
+import org.gradle.internal.xml.XmlTransformer
import org.jetbrains.gradle.ext.*
import java.nio.file.Files
@@ -23,10 +28,10 @@ import java.nio.file.Paths
import java.util.concurrent.TimeUnit
import java.util.zip.ZipEntry
import java.util.zip.ZipOutputStream
+import javax.inject.Inject
buildscript {
repositories {
- mavenLocal()
mavenCentral()
maven {
@@ -47,6 +52,8 @@ buildscript {
name 'Scala CI dependencies'
url 'https://repo1.maven.org/maven2/'
}
+
+ mavenLocal()
}
}
plugins {
@@ -58,7 +65,7 @@ plugins {
id 'org.jetbrains.kotlin.jvm' version '1.8.0' apply false
id 'org.jetbrains.kotlin.kapt' version '1.8.0' apply false
id 'com.google.devtools.ksp' version '1.8.0-1.0.9' apply false
- id 'org.ajoberstar.grgit' version '4.1.1' // 4.1.1 is the last jvm8 supporting version ,unused, available for addon.gradle
+ id 'org.ajoberstar.grgit' version '4.1.1' // 4.1.1 is the last jvm8 supporting version, unused, available for addon.gradle
id 'com.github.johnrengelman.shadow' version '7.1.2' apply false
id 'com.palantir.git-version' version '0.13.0' apply false // 0.13.0 is the last jvm8 supporting version
id 'de.undercouch.download' version '5.3.0'
@@ -66,7 +73,7 @@ plugins {
id 'com.diffplug.spotless' version '6.7.2' apply false
id 'com.modrinth.minotaur' version '2.+' apply false
id 'com.matthewprenger.cursegradle' version '1.4.0' apply false
- id 'com.gtnewhorizons.retrofuturagradle' version '1.1.4'
+ id 'com.gtnewhorizons.retrofuturagradle' version '1.2.4'
}
boolean settingsupdated = verifySettingsGradle()
settingsupdated = verifyGitAttributes() || settingsupdated
@@ -122,6 +129,9 @@ propertyDefaultIfUnset("gradleTokenGroupName", "")
propertyDefaultIfUnset("enableModernJavaSyntax", false) // On by default for new projects only
propertyDefaultIfUnset("enableGenericInjection", false) // On by default for new projects only
+// this is meant to be set using the user wide property file. by default we do nothing.
+propertyDefaultIfUnset("ideaOverrideBuildType", "") // Can be nothing, "gradle" or "idea"
+
project.extensions.add(Blowdryer, "Blowdryer", Blowdryer) // Make blowdryer available in "apply from:" scripts
if (!disableSpotless) {
apply plugin: 'com.diffplug.spotless'
@@ -143,13 +153,21 @@ java {
} else {
languageVersion.set(projectJavaVersion)
}
- vendor.set(JvmVendorSpec.ADOPTIUM)
+ vendor.set(JvmVendorSpec.AZUL)
}
if (!noPublishedSources) {
withSourcesJar()
}
}
+tasks.withType(JavaCompile).configureEach {
+ options.encoding = "UTF-8"
+}
+
+tasks.withType(ScalaCompile).configureEach {
+ options.encoding = "UTF-8"
+}
+
pluginManager.withPlugin('org.jetbrains.kotlin.jvm') {
// If Kotlin is enabled in the project
kotlin {
@@ -186,11 +204,21 @@ configurations {
}
if (enableModernJavaSyntax.toBoolean()) {
+ repositories {
+ mavenCentral {
+ mavenContent {
+ includeGroup("me.eigenraven.java8unsupported")
+ }
+ }
+ }
+
dependencies {
annotationProcessor 'com.github.bsideup.jabel:jabel-javac-plugin:1.0.0'
compileOnly('com.github.bsideup.jabel:jabel-javac-plugin:1.0.0') {
transitive = false // We only care about the 1 annotation class
}
+ // Allow using jdk.unsupported classes like sun.misc.Unsafe in the compiled code, working around JDK-8206937.
+ patchedMinecraft('me.eigenraven.java8unsupported:java-8-unsupported-shim:1.0.0')
}
tasks.withType(JavaCompile).configureEach {
@@ -202,7 +230,7 @@ if (enableModernJavaSyntax.toBoolean()) {
javaCompiler.set(javaToolchains.compilerFor {
languageVersion.set(JavaLanguageVersion.of(17))
- vendor.set(JvmVendorSpec.ADOPTIUM)
+ vendor.set(JvmVendorSpec.AZUL)
})
}
}
@@ -234,12 +262,14 @@ if (apiPackage) {
}
if (accessTransformersFile) {
- String targetFile = "src/main/resources/META-INF/" + accessTransformersFile
- if (!getFile(targetFile).exists()) {
- throw new GradleException("Could not resolve \"accessTransformersFile\"! Could not find " + targetFile)
+ for (atFile in accessTransformersFile.split(",")) {
+ String targetFile = "src/main/resources/META-INF/" + atFile.trim()
+ if (!getFile(targetFile).exists()) {
+ throw new GradleException("Could not resolve \"accessTransformersFile\"! Could not find " + targetFile)
+ }
+ tasks.deobfuscateMergedJarToSrg.accessTransformerFiles.from(targetFile)
+ tasks.srgifyBinpatchedJar.accessTransformerFiles.from(targetFile)
}
- tasks.deobfuscateMergedJarToSrg.accessTransformerFiles.from(targetFile)
- tasks.srgifyBinpatchedJar.accessTransformerFiles.from(targetFile)
} else {
boolean atsFound = false
for (File at : sourceSets.getByName("main").resources.files) {
@@ -367,12 +397,14 @@ minecraft {
injectMissingGenerics.set(true)
}
+ username = developmentEnvironmentUserName.toString()
+
+ lwjgl3Version = "3.3.2-SNAPSHOT"
+
// Enable assertions in the current mod
extraRunJvmArguments.add("-ea:${modGroup}")
if (usesMixins.toBoolean() || forceEnableMixins.toBoolean()) {
- extraTweakClasses.add("org.spongepowered.asm.launch.MixinTweaker")
-
if (usesMixinDebug.toBoolean()) {
extraRunJvmArguments.addAll([
"-Dmixin.debug.countInjections=true",
@@ -401,6 +433,16 @@ configurations.configureEach {
}
}
}
+ def obfuscationAttr = it.attributes.getAttribute(ObfuscationAttribute.OBFUSCATION_ATTRIBUTE)
+ if (obfuscationAttr != null && obfuscationAttr.name == ObfuscationAttribute.SRG) {
+ resolutionStrategy.eachDependency { DependencyResolveDetails details ->
+ // Remap CoFH core cursemaven dev jar to the obfuscated version for runObfClient/Server
+ if (details.requested.group == 'curse.maven' && details.requested.name.endsWith('-69162') && details.requested.version == '2388751') {
+ details.useVersion '2388750'
+ details.because 'Pick obfuscated jar'
+ }
+ }
+ }
}
// Ensure tests have access to minecraft classes
@@ -430,8 +472,9 @@ repositories.configureEach { repo ->
apply from: 'repositories.gradle'
configurations {
+ runtimeClasspath.extendsFrom(runtimeOnlyNonPublishable)
+ testRuntimeClasspath.extendsFrom(runtimeOnlyNonPublishable)
for (config in [compileClasspath, runtimeClasspath, testCompileClasspath, testRuntimeClasspath]) {
- config.extendsFrom(runtimeOnlyNonPublishable)
if (usesShadowedDependencies.toBoolean()) {
config.extendsFrom(shadowImplementation)
// TODO: remove Compile after all uses are refactored to Implementation
@@ -476,12 +519,11 @@ repositories {
url = "http://jenkins.usrv.eu:8081/nexus/content/groups/public/"
allowInsecureProtocol = true
}
- if (usesMixins.toBoolean() || forceEnableMixins.toBoolean()) {
- if (usesMixinDebug.toBoolean()) {
- maven {
- name = "Fabric Maven"
- url = "https://maven.fabricmc.net/"
- }
+ maven {
+ name 'sonatype'
+ url 'https://oss.sonatype.org/content/repositories/snapshots/'
+ content {
+ includeGroup "org.lwjgl"
}
}
if (includeWellKnownRepositories.toBoolean()) {
@@ -515,29 +557,49 @@ repositories {
}
}
+def mixinProviderGroup = "io.github.legacymoddingmc"
+def mixinProviderModule = "unimixins"
+def mixinProviderVersion = "0.1.6"
+def mixinProviderSpecNoClassifer = "${mixinProviderGroup}:${mixinProviderModule}:${mixinProviderVersion}"
+def mixinProviderSpec = "${mixinProviderSpecNoClassifer}:dev"
+
dependencies {
if (usesMixins.toBoolean()) {
annotationProcessor('org.ow2.asm:asm-debug-all:5.0.3')
annotationProcessor('com.google.guava:guava:24.1.1-jre')
annotationProcessor('com.google.code.gson:gson:2.8.6')
- annotationProcessor('com.gtnewhorizon:gtnhmixins:2.1.12:processor')
+ annotationProcessor(mixinProviderSpec)
if (usesMixinDebug.toBoolean()) {
runtimeOnlyNonPublishable('org.jetbrains:intellij-fernflower:1.2.1.16')
}
}
- if (usesMixins.toBoolean() || forceEnableMixins.toBoolean()) {
- implementation('com.gtnewhorizon:gtnhmixins:2.1.12')
+ if (usesMixins.toBoolean()) {
+ implementation(mixinProviderSpec)
+ } else if (forceEnableMixins.toBoolean()) {
+ runtimeOnlyNonPublishable(mixinProviderSpec)
}
}
pluginManager.withPlugin('org.jetbrains.kotlin.kapt') {
if (usesMixins.toBoolean()) {
dependencies {
- kapt('com.gtnewhorizon:gtnhmixins:2.1.12:processor')
+ kapt(mixinProviderSpec)
}
}
}
+// Replace old mixin mods with unimixins
+// https://docs.gradle.org/8.0.2/userguide/resolution_rules.html#sec:substitution_with_classifier
+configurations.all {
+ resolutionStrategy.dependencySubstitution {
+ substitute module('com.gtnewhorizon:gtnhmixins') using module(mixinProviderSpecNoClassifer) withClassifier("dev") because("Unimixins replaces other mixin mods")
+ substitute module('com.github.GTNewHorizons:Mixingasm') using module(mixinProviderSpecNoClassifer) withClassifier("dev") because("Unimixins replaces other mixin mods")
+ substitute module('com.github.GTNewHorizons:SpongePoweredMixin') using module(mixinProviderSpecNoClassifer) withClassifier("dev") because("Unimixins replaces other mixin mods")
+ substitute module('com.github.GTNewHorizons:SpongeMixins') using module(mixinProviderSpecNoClassifer) withClassifier("dev") because("Unimixins replaces other mixin mods")
+ substitute module('io.github.legacymoddingmc:unimixins') using module(mixinProviderSpecNoClassifer) withClassifier("dev") because("Our previous unimixins upload was missing the dev classifier")
+ }
+}
+
apply from: 'dependencies.gradle'
def mixingConfigRefMap = 'mixins.' + modId + '.refmap.json'
@@ -637,6 +699,142 @@ tasks.named("processResources", ProcessResources).configure {
}
}
+ext.java17Toolchain = (JavaToolchainSpec spec) -> {
+ spec.languageVersion.set(JavaLanguageVersion.of(17))
+ spec.vendor.set(JvmVendorSpec.matching("jetbrains"))
+}
+
+ext.java17DependenciesCfg = configurations.create("java17Dependencies") {
+ extendsFrom(configurations.getByName("runtimeClasspath")) // Ensure consistent transitive dependency resolution
+ canBeConsumed = false
+}
+ext.java17PatchDependenciesCfg = configurations.create("java17PatchDependencies") {
+ canBeConsumed = false
+}
+
+dependencies {
+ def lwjgl3ifyVersion = '1.3.3'
+ def asmVersion = '9.4'
+ if (modId != 'lwjgl3ify') {
+ java17Dependencies("com.github.GTNewHorizons:lwjgl3ify:${lwjgl3ifyVersion}")
+ }
+ if (modId != 'hodgepodge') {
+ java17Dependencies('com.github.GTNewHorizons:Hodgepodge:2.2.4')
+ }
+
+ java17PatchDependencies('net.minecraft:launchwrapper:1.15') {transitive = false}
+ java17PatchDependencies("org.ow2.asm:asm:${asmVersion}")
+ java17PatchDependencies("org.ow2.asm:asm-commons:${asmVersion}")
+ java17PatchDependencies("org.ow2.asm:asm-tree:${asmVersion}")
+ java17PatchDependencies("org.ow2.asm:asm-analysis:${asmVersion}")
+ java17PatchDependencies("org.ow2.asm:asm-util:${asmVersion}")
+ java17PatchDependencies('org.ow2.asm:asm-deprecated:7.1')
+ java17PatchDependencies("org.apache.commons:commons-lang3:3.12.0")
+ java17PatchDependencies("com.github.GTNewHorizons:lwjgl3ify:${lwjgl3ifyVersion}:forgePatches") {transitive = false}
+}
+
+ext.java17JvmArgs = [
+ // Java 9+ support
+ "--illegal-access=warn",
+ "-Djava.security.manager=allow",
+ "-Dfile.encoding=UTF-8",
+ "--add-opens", "java.base/jdk.internal.loader=ALL-UNNAMED",
+ "--add-opens", "java.base/java.net=ALL-UNNAMED",
+ "--add-opens", "java.base/java.nio=ALL-UNNAMED",
+ "--add-opens", "java.base/java.io=ALL-UNNAMED",
+ "--add-opens", "java.base/java.lang=ALL-UNNAMED",
+ "--add-opens", "java.base/java.lang.reflect=ALL-UNNAMED",
+ "--add-opens", "java.base/java.text=ALL-UNNAMED",
+ "--add-opens", "java.base/java.util=ALL-UNNAMED",
+ "--add-opens", "java.base/jdk.internal.reflect=ALL-UNNAMED",
+ "--add-opens", "java.base/sun.nio.ch=ALL-UNNAMED",
+ "--add-opens", "jdk.naming.dns/com.sun.jndi.dns=ALL-UNNAMED,java.naming",
+ "--add-opens", "java.desktop/sun.awt.image=ALL-UNNAMED",
+ "--add-modules", "jdk.dynalink",
+ "--add-opens", "jdk.dynalink/jdk.dynalink.beans=ALL-UNNAMED",
+ "--add-modules", "java.sql.rowset",
+ "--add-opens", "java.sql.rowset/javax.sql.rowset.serial=ALL-UNNAMED"
+]
+
+ext.hotswapJvmArgs = [
+ // DCEVM advanced hot reload
+ "-XX:+AllowEnhancedClassRedefinition",
+ "-XX:HotswapAgent=fatjar"
+]
+
+ext.setupHotswapAgentTask = tasks.register("setupHotswapAgent") {
+ group = "GTNH Buildscript"
+ description = "Installs a recent version of HotSwapAgent into the Java 17 JetBrains runtime directory"
+ def hsaUrl = 'https://github.com/HotswapProjects/HotswapAgent/releases/download/1.4.2-SNAPSHOT/hotswap-agent-1.4.2-SNAPSHOT.jar'
+ def targetFolderProvider = javaToolchains.launcherFor(java17Toolchain).map {it.metadata.installationPath.dir("lib/hotswap")}
+ def targetFilename = "hotswap-agent.jar"
+ onlyIf {
+ !targetFolderProvider.get().file(targetFilename).asFile.exists()
+ }
+ doLast {
+ def targetFolder = targetFolderProvider.get()
+ targetFolder.asFile.mkdirs()
+ download.run {
+ src hsaUrl
+ dest targetFolder.file(targetFilename).asFile
+ overwrite false
+ tempAndMove true
+ }
+ }
+}
+
+public abstract class RunHotswappableMinecraftTask extends RunMinecraftTask {
+ // IntelliJ doesn't seem to allow commandline arguments so we also support an env variable
+ private boolean enableHotswap = Boolean.valueOf(System.getenv("HOTSWAP"));
+
+ @Input
+ public boolean getEnableHotswap() { return enableHotswap }
+ @Option(option = "hotswap", description = "Enables HotSwapAgent for enhanced class reloading under a debugger")
+ public boolean setEnableHotswap(boolean enable) { enableHotswap = enable }
+
+ @Inject
+ public RunHotswappableMinecraftTask(Side side, String superTask, org.gradle.api.invocation.Gradle gradle) {
+ super(side, gradle)
+
+ this.lwjglVersion = 3
+ this.javaLauncher = project.javaToolchains.launcherFor(project.java17Toolchain)
+ this.extraJvmArgs.addAll(project.java17JvmArgs)
+ this.extraJvmArgs.addAll(project.provider(() -> enableHotswap ? project.hotswapJvmArgs : []))
+
+ this.classpath(project.java17PatchDependenciesCfg)
+ if (side == Side.CLIENT) {
+ this.classpath(project.minecraftTasks.lwjgl3Configuration)
+ }
+ // Use a raw provider instead of map to not create a dependency on the task
+ this.classpath(project.provider(() -> project.tasks.named(superTask, RunMinecraftTask).get().classpath))
+ this.classpath.filter { file ->
+ !file.path.contains("2.9.4-nightly-20150209") // Remove lwjgl2
+ }
+ this.classpath(project.java17DependenciesCfg)
+ }
+}
+
+def runClient17Task = tasks.register("runClient17", RunHotswappableMinecraftTask, Side.CLIENT, "runClient")
+runClient17Task.configure {
+ setup(project)
+ group = "Modded Minecraft"
+ description = "Runs the modded client using Java 17, lwjgl3ify and Hodgepodge"
+ dependsOn(setupHotswapAgentTask, mcpTasks.launcherSources.classesTaskName, minecraftTasks.taskDownloadVanillaAssets, mcpTasks.taskPackagePatchedMc, 'jar')
+ mainClass = "GradleStart"
+ username = minecraft.username
+ userUUID = minecraft.userUUID
+}
+
+def runServer17Task = tasks.register("runServer17", RunHotswappableMinecraftTask, Side.SERVER, "runServer")
+runServer17Task.configure {
+ setup(project)
+ group = "Modded Minecraft"
+ description = "Runs the modded server using Java 17, lwjgl3ify and Hodgepodge"
+ dependsOn(setupHotswapAgentTask, mcpTasks.launcherSources.classesTaskName, minecraftTasks.taskDownloadVanillaAssets, mcpTasks.taskPackagePatchedMc, 'jar')
+ mainClass = "GradleStartServer"
+ extraArgs.add("nogui")
+}
+
def getManifestAttributes() {
def manifestAttributes = [:]
if (!containsMixinsAndOrCoreModOnly.toBoolean() && (usesMixins.toBoolean() || coreModClass)) {
@@ -671,7 +869,7 @@ if (usesShadowedDependencies.toBoolean()) {
tasks.register('relocateShadowJar', ConfigureShadowRelocation) {
target = tasks.shadowJar
prefix = modGroup + ".shadow"
- enabled = minimizeShadowedDependencies.toBoolean()
+ enabled = relocateShadowedDependencies.toBoolean()
}
tasks.named("shadowJar", ShadowJar).configure {
manifest {
@@ -687,7 +885,7 @@ if (usesShadowedDependencies.toBoolean()) {
project.configurations.shadeCompile
]
archiveClassifier.set('dev')
- if (minimizeShadowedDependencies.toBoolean()) {
+ if (relocateShadowedDependencies.toBoolean()) {
dependsOn(relocateShadowJar)
}
}
@@ -706,7 +904,7 @@ if (usesShadowedDependencies.toBoolean()) {
javaComponent.withVariantsFromConfiguration(configurations.shadowRuntimeElements) {
skip()
}
- for (runTask in ["runClient", "runServer"]) {
+ for (runTask in ["runClient", "runServer", "runClient17", "runServer17"]) {
tasks.named(runTask).configure {
dependsOn("shadowJar")
}
@@ -748,6 +946,19 @@ idea {
}
project {
settings {
+ if (ideaOverrideBuildType != "") {
+ delegateActions {
+ if ("gradle".equalsIgnoreCase(ideaOverrideBuildType)) {
+ delegateBuildRunToGradle = true
+ testRunner = org.jetbrains.gradle.ext.ActionDelegationConfig.TestRunner.GRADLE
+ } else if ("idea".equalsIgnoreCase(ideaOverrideBuildType)) {
+ delegateBuildRunToGradle = false
+ testRunner = org.jetbrains.gradle.ext.ActionDelegationConfig.TestRunner.PLATFORM
+ } else {
+ throw GradleScriptException('Accepted value for ideaOverrideBuildType is one of gradle or idea.')
+ }
+ }
+ }
runConfigurations {
"1. Run Client"(Gradle) {
taskNames = ["runClient"]
@@ -755,6 +966,20 @@ idea {
"2. Run Server"(Gradle) {
taskNames = ["runServer"]
}
+ "1a. Run Client (Java 17)"(Gradle) {
+ taskNames = ["runClient17"]
+ }
+ "2a. Run Server (Java 17)"(Gradle) {
+ taskNames = ["runServer17"]
+ }
+ "1b. Run Client (Java 17, Hotswap)"(Gradle) {
+ taskNames = ["runClient17"]
+ envs = ["HOTSWAP": "true"]
+ }
+ "2b. Run Server (Java 17, Hotswap)"(Gradle) {
+ taskNames = ["runServer17"]
+ envs = ["HOTSWAP": "true"]
+ }
"3. Run Obfuscated Client"(Gradle) {
taskNames = ["runObfClient"]
}
@@ -772,7 +997,7 @@ idea {
}
"Run Client (IJ Native)"(Application) {
mainClass = "GradleStart"
- moduleName = project.name + ".main"
+ moduleName = project.name + ".ideVirtualMain"
afterEvaluate {
workingDirectory = tasks.runClient.workingDir.absolutePath
programParameters = tasks.runClient.calculateArgs(project).collect { '"' + it + '"' }.join(' ')
@@ -783,7 +1008,7 @@ idea {
}
"Run Server (IJ Native)"(Application) {
mainClass = "GradleStartServer"
- moduleName = project.name + ".main"
+ moduleName = project.name + ".ideVirtualMain"
afterEvaluate {
workingDirectory = tasks.runServer.workingDir.absolutePath
programParameters = tasks.runServer.calculateArgs(project).collect { '"' + it + '"' }.join(' ')
@@ -795,11 +1020,57 @@ idea {
}
compiler.javac {
afterEvaluate {
+ javacAdditionalOptions = "-encoding utf8"
moduleJavacAdditionalOptions = [
(project.name + ".main"): tasks.compileJava.options.compilerArgs.collect { '"' + it + '"' }.join(' ')
]
}
}
+ withIDEADir { File ideaDir ->
+ if (!ideaDir.path.contains(".idea")) {
+ // If an .ipr file exists, the project root directory is passed here instead of the .idea subdirectory
+ ideaDir = new File(ideaDir, ".idea")
+ }
+ if (ideaDir.isDirectory()) {
+ def miscFile = new File(ideaDir, "misc.xml")
+ if (miscFile.isFile()) {
+ boolean dirty = false
+ def miscTransformer = new XmlTransformer()
+ miscTransformer.addAction { root ->
+ Node rootNode = root.asNode()
+ def rootManager = rootNode
+ .component.find { it.@name == 'ProjectRootManager' }
+ if (!rootManager) {
+ rootManager = rootNode.appendNode('component', ['name': 'ProjectRootManager', 'version': '2'])
+ dirty = true
+ }
+ def output = rootManager.output
+ if (!output) {
+ output = rootManager.appendNode('output')
+ dirty = true
+ }
+ if (!output.@url) {
+ // Only modify the output url if it doesn't yet have one, or if the existing one is blank somehow.
+ // This is a sensible default for most setups
+ output.@url = 'file://$PROJECT_DIR$/build/ideaBuild'
+ dirty = true
+ }
+ }
+ def result = miscTransformer.transform(miscFile.text)
+ if (dirty) {
+ miscFile.write(result)
+ }
+ } else {
+ miscFile.text = """<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+ <component name="ProjectRootManager" version="2">
+ <output url="file://\$PROJECT_DIR\$/out" />
+ </component>
+</project>
+"""
+ }
+ }
+ }
}
}
}
@@ -869,7 +1140,7 @@ if (modrinthProjectId.size() != 0 && System.getenv("MODRINTH_TOKEN") != null) {
}
}
if (usesMixins.toBoolean()) {
- addModrinthDep("required", "project", "gtnhmixins")
+ addModrinthDep("required", "project", "unimixins")
}
tasks.modrinth.dependsOn(build)
tasks.publish.dependsOn(tasks.modrinth)
@@ -913,7 +1184,7 @@ if (curseForgeProjectId.size() != 0 && System.getenv("CURSEFORGE_TOKEN") != null
}
}
if (usesMixins.toBoolean()) {
- addCurseForgeRelation("requiredDependency", "gtnhmixins")
+ addCurseForgeRelation("requiredDependency", "unimixins")
}
tasks.curseforge.dependsOn(build)
tasks.publish.dependsOn(tasks.curseforge)
@@ -947,10 +1218,21 @@ def addCurseForgeRelation(String type, String name) {
}
// Updating
+
+def buildscriptGradleVersion = "8.0.2"
+
+tasks.named('wrapper', Wrapper).configure {
+ gradleVersion = buildscriptGradleVersion
+}
+
tasks.register('updateBuildScript') {
group = 'GTNH Buildscript'
description = 'Updates the build script to the latest version'
+ if (gradle.gradleVersion != buildscriptGradleVersion && !Boolean.getBoolean('DISABLE_BUILDSCRIPT_GRADLE_UPDATE')) {
+ dependsOn('wrapper')
+ }
+
doLast {
if (performBuildScriptUpdate()) return
@@ -963,6 +1245,9 @@ if (!project.getGradle().startParameter.isOffline() && !Boolean.getBoolean('DISA
performBuildScriptUpdate()
} else {
out.style(Style.SuccessHeader).println("Build script update available! Run 'gradle updateBuildScript'")
+ if (gradle.gradleVersion != buildscriptGradleVersion) {
+ out.style(Style.SuccessHeader).println("updateBuildScript can update gradle from ${gradle.gradleVersion} to ${buildscriptGradleVersion}\n")
+ }
}
}
diff --git a/dependencies.gradle b/dependencies.gradle
index 5da2f08d65..84a337aa6e 100644
--- a/dependencies.gradle
+++ b/dependencies.gradle
@@ -1,10 +1,10 @@
// Add your dependencies here
dependencies {
- compile 'com.github.GTNewHorizons:GT5-Unofficial:5.09.42.09:dev'
- compile 'com.github.GTNewHorizons:TecTech:5.0.89:dev'
- compile 'com.github.GTNewHorizons:bartworks:0.5.151:dev'
- compile 'com.github.GTNewHorizons:StructureLib:1.2.1:dev'
+ compile 'com.github.GTNewHorizons:GT5-Unofficial:5.09.42.52:dev'
+ compile 'com.github.GTNewHorizons:TecTech:5.1.7:dev'
+ compile 'com.github.GTNewHorizons:bartworks:0.6.9:dev'
+ compile 'com.github.GTNewHorizons:StructureLib:1.2.6:dev'
compile 'com.github.GTNewHorizons:ThaumicTinkerer:2.6.11:dev'
compile 'thaumcraft:Thaumcraft:1.7.10-4.2.3.5:dev'
diff --git a/src/main/java/client/ClientProxy.java b/src/main/java/client/ClientProxy.java
index 1423e34963..18def75a9e 100644
--- a/src/main/java/client/ClientProxy.java
+++ b/src/main/java/client/ClientProxy.java
@@ -27,7 +27,5 @@ public class ClientProxy extends CommonProxy {
@Override
public void init(final FMLInitializationEvent e) {
super.init(e);
- // Register Simple Block Renderers
- // RenderingRegistry.registerBlockHandler(ConduitRenderer.getInstance());
}
}
diff --git a/src/main/java/common/Blocks.java b/src/main/java/common/Blocks.java
index 16485925c2..3fccd0604c 100644
--- a/src/main/java/common/Blocks.java
+++ b/src/main/java/common/Blocks.java
@@ -4,33 +4,25 @@ import kekztech.KekzCore;
import net.minecraft.block.Block;
-import common.blocks.*;
+import common.blocks.Block_GDCUnit;
+import common.blocks.Block_IchorJar;
+import common.blocks.Block_LapotronicEnergyUnit;
+import common.blocks.Block_LargeHexPlate;
+import common.blocks.Block_TFFTStorageField;
+import common.blocks.Block_ThaumiumReinforcedJar;
+import common.blocks.Block_YSZUnit;
public class Blocks {
public static Block yszUnit;
public static Block gdcUnit;
-
public static Block tfftStorageField;
-
public static Block reactorChamberOFF;
public static Block reactorChamberON;
public static Block reactorControlRod;
-
- public static Block itemServerDrive;
- public static Block itemServerRackCasing;
- public static Block itemServerIOPort;
-
- public static Block itemProxyCable;
- public static Block itemProxySource;
- public static Block itemProxyEndpoint;
-
public static Block jarThaumiumReinforced;
public static Block jarIchor;
-
public static Block lscLapotronicEnergyUnit;
- public static Block beamTransmitter;
-
public static Block spaceElevatorStructure;
public static Block spaceElevatorCapacitor;
public static Block spaceElevatorTether;
@@ -42,11 +34,8 @@ public class Blocks {
registerBlocks_SOFC();
registerBlocks_TFFT();
- // registerBlocks_Nuclear();
- // registerBlocks_ItemProxy();
registerBlocks_Jars();
registerBlocks_LSC();
- // registerBlocks_SpaceElevator();
registerBlocks_Cosmetics();
KekzCore.LOGGER.info("Finished registering blocks");
@@ -61,14 +50,6 @@ public class Blocks {
tfftStorageField = Block_TFFTStorageField.registerBlock();
}
- /*
- * private static void registerBlocks_Nuclear() { reactorChamberOFF = Block_ReactorChamber_OFF.registerBlock();
- * reactorChamberON = Block_ReactorChamber_ON.registerBlock(); reactorControlRod = Block_ControlRod.registerBlock();
- * } private static void registerBlocks_ItemProxy() { itemProxyCable = Block_ItemProxyCable.registerBlock();
- * itemProxySource = Block_ItemProxySource.registerBlock(); itemProxyEndpoint =
- * Block_ItemProxyEndpoint.registerBlock(); }
- */
-
private static void registerBlocks_Jars() {
jarThaumiumReinforced = Block_ThaumiumReinforcedJar.registerBlock();
jarIchor = Block_IchorJar.registerBlock();
@@ -76,15 +57,8 @@ public class Blocks {
private static void registerBlocks_LSC() {
lscLapotronicEnergyUnit = Block_LapotronicEnergyUnit.registerBlock();
- // beamTransmitter = Block_BeamTransmitter.registerBlock();
}
- /*
- * private static void registerBlocks_SpaceElevator() { spaceElevatorStructure =
- * Block_SpaceElevator.registerBlock(); spaceElevatorCapacitor = Block_SpaceElevatorCapacitor.registerBlock();
- * spaceElevatorTether = Block_SpaceElevatorTether.registerBlock(); }
- */
-
private static void registerBlocks_Cosmetics() {
largeHexPlate = Block_LargeHexPlate.registerBlock();
}
diff --git a/src/main/java/common/Recipes.java b/src/main/java/common/Recipes.java
index 44eb36e642..21149e1406 100644
--- a/src/main/java/common/Recipes.java
+++ b/src/main/java/common/Recipes.java
@@ -1,460 +1,60 @@
package common;
+import static gregtech.api.enums.Mods.ThaumicTinkerer;
+
import java.util.HashMap;
-import kekztech.Items;
import kekztech.KekzCore;
import net.minecraft.item.ItemStack;
-import net.minecraftforge.fluids.Fluid;
-import net.minecraftforge.fluids.FluidRegistry;
-import net.minecraftforge.fluids.FluidStack;
import thaumcraft.api.ItemApi;
import thaumcraft.api.ThaumcraftApi;
import thaumcraft.api.aspects.Aspect;
import thaumcraft.api.aspects.AspectList;
import thaumcraft.api.crafting.InfusionRecipe;
-import util.Util;
import com.github.bartimaeusnek.bartworks.system.material.GT_Enhancement.LuVTierEnhancer;
-import com.github.bartimaeusnek.bartworks.util.BW_Util;
-import com.github.technus.tectech.recipe.TT_recipeAdder;
-import common.items.ErrorItem;
-import common.items.MetaItem_CraftingComponent;
+import common.recipeLoaders.AlloySmelter;
+import common.recipeLoaders.Assembler;
+import common.recipeLoaders.AssemblyLine;
+import common.recipeLoaders.ChemicalReactor;
+import common.recipeLoaders.Crafting;
+import common.recipeLoaders.FormingPress;
+import common.recipeLoaders.Mixer;
+import common.recipeLoaders.ResearchableAssemblyLine;
+import common.recipeLoaders.Unpackager;
-import cpw.mods.fml.common.Loader;
import cpw.mods.fml.common.registry.GameRegistry;
-import gregtech.api.enums.*;
+import gregtech.api.enums.Materials;
+import gregtech.api.enums.OrePrefixes;
import gregtech.api.util.GT_ModHandler;
import gregtech.api.util.GT_OreDictUnificator;
-import gregtech.api.util.GT_Utility;
public class Recipes {
public static final HashMap<String, InfusionRecipe> infusionRecipes = new HashMap<>();
- static Fluid solderIndalloy = FluidRegistry.getFluid("molten.indalloy140") != null
- ? FluidRegistry.getFluid("molten.indalloy140")
- : FluidRegistry.getFluid("molten.solderingalloy");
- static Fluid solderUEV = FluidRegistry.getFluid("molten.mutatedlivingsolder") != null
- ? FluidRegistry.getFluid("molten.mutatedlivingsolder")
- : FluidRegistry.getFluid("molten.solderingalloy");
-
- static Fluid radoxPoly = FluidRegistry.getFluid("molten.radoxpoly") != null
- ? FluidRegistry.getFluid("molten.radoxpoly")
- : FluidRegistry.getFluid("molten.polybenzimidazole");
public static void postInit() {
KekzCore.LOGGER.info("Registering recipes...");
- registerRecipes_TFFT();
- registerRecipes_SOFC();
- // registerRecipes_Nuclear();
- registerRecipes_Jars();
- registerRecipes_LSC();
- // registerRecipes_SpaceElevator();
- registerRecipes_Cosmetics();
-
- KekzCore.LOGGER.info("Finished registering recipes");
- }
-
- private static void registerRecipes_TFFT() {
-
- // TFFT Controller
- GT_ModHandler.addCraftingRecipe(
- TileEntities.tfft.getStackForm(1),
- new Object[] { "ESE", "FTF", "CVC", 'E',
- GT_OreDictUnificator.get(OrePrefixes.screw, Materials.EnderEye, 1), 'S',
- ItemList.Cover_Screen.get(1), 'F', ItemList.Field_Generator_LV.get(1), 'T',
- new ItemStack(Blocks.tfftStorageField, 1), 'C', "circuitData", 'V',
- GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.VibrantAlloy, 1), });
-
- // TFFT Casing
- GT_Values.RA.addAssemblerRecipe(
- new ItemStack[] { GT_Utility.getIntegratedCircuit(6),
- GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.StainlessSteel, 1),
- GT_OreDictUnificator.get(OrePrefixes.plate, Materials.DarkSteel, 3),
- GT_OreDictUnificator.get(OrePrefixes.plate, Materials.EnderPearl, 3), },
- Materials.Polytetrafluoroethylene.getMolten(144),
- new ItemStack(Blocks.tfftStorageField, 1),
- 100,
- BW_Util.getMachineVoltageFromTier(3));
-
- // TFFT Multi Hatch
- GT_Values.RA.addAssemblerRecipe(
- new ItemStack[] { ItemList.Hull_HV.get(1), ItemList.Cover_FluidStorageMonitor.get(1),
- ItemList.Field_Generator_LV.get(4),
- GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.Polytetrafluoroethylene, 25) },
- Materials.Plastic.getMolten(432),
- TileEntities.tfftHatch.getStackForm(1),
- 400,
- BW_Util.getMachineVoltageFromTier(3));
-
- // TFFTStorageField1
- GT_Values.RA.addAssemblerRecipe(
- new ItemStack[] { GT_Utility.getIntegratedCircuit(6),
- GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.CrudeSteel, 1),
- GT_OreDictUnificator.get(OrePrefixes.plate, Materials.CrudeSteel, 6),
- GT_OreDictUnificator.get(OrePrefixes.pipeNonuple, Materials.Steel, 3),
- ItemList.FluidRegulator_LV.get(1) },
- Materials.Glass.getMolten(144),
- new ItemStack(Blocks.tfftStorageField, 1, 1),
- 100,
- BW_Util.getMachineVoltageFromTier(3));
-
- // TFFTStorageField2
- GT_Values.RA.addAssemblerRecipe(
- new ItemStack[] { GT_Utility.getIntegratedCircuit(6), ItemList.Casing_Tank_1.get(1),
- GT_OreDictUnificator.get(OrePrefixes.plate, Materials.EnergeticSilver, 6),
- GT_OreDictUnificator.get(OrePrefixes.pipeNonuple, Materials.Plastic, 3),
- ItemList.FluidRegulator_MV.get(1) },
- Materials.Plastic.getMolten(288),
- new ItemStack(Blocks.tfftStorageField, 1, 2),
- 200,
- BW_Util.getMachineVoltageFromTier(3));
-
- // TFFTStorageField3
- GT_Values.RA.addAssemblerRecipe(
- new ItemStack[] { GT_Utility.getIntegratedCircuit(6), ItemList.Casing_Tank_3.get(1),
- GT_OreDictUnificator.get(OrePrefixes.plate, Materials.VividAlloy, 6),
- GT_OreDictUnificator.get(OrePrefixes.pipeNonuple, Materials.StainlessSteel, 3),
- ItemList.Field_Generator_LV.get(1), ItemList.FluidRegulator_HV.get(1) },
- Materials.Plastic.getMolten(432),
- new ItemStack(Blocks.tfftStorageField, 1, 3),
- 400,
- BW_Util.getMachineVoltageFromTier(3));
-
- // TFFTStorageField4
- GT_Values.RA.addAssemblerRecipe(
- new ItemStack[] { GT_Utility.getIntegratedCircuit(6), ItemList.Casing_Tank_5.get(1),
- GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Enderium, 6),
- GT_OreDictUnificator.get(OrePrefixes.pipeNonuple, Materials.Polytetrafluoroethylene, 3),
- ItemList.Field_Generator_MV.get(2), ItemList.FluidRegulator_EV.get(1) },
- Materials.Epoxid.getMolten(864),
- new ItemStack(Blocks.tfftStorageField, 1, 4),
- 400,
- BW_Util.getMachineVoltageFromTier(4));
-
- // TFFTStorageField5
- GT_Values.RA.addAssemblerRecipe(
- new ItemStack[] { GT_Utility.getIntegratedCircuit(6), ItemList.Casing_Tank_7.get(1),
- GT_OreDictUnificator.get(OrePrefixes.plate, Materials.CrystallineAlloy, 6),
- GT_OreDictUnificator.get(OrePrefixes.pipeNonuple, Materials.Enderium, 3),
- ItemList.Field_Generator_HV.get(4), ItemList.FluidRegulator_IV.get(1) },
- Materials.Epoxid.getMolten(1152),
- new ItemStack(Blocks.tfftStorageField, 1, 5),
- 400,
- BW_Util.getMachineVoltageFromTier(5));
-
- // TFFTStorageField6
- GT_Values.RA.addAssemblylineRecipe(
- new ItemStack(Blocks.tfftStorageField, 1, 5),
- 40000,
- new ItemStack[] { ItemList.Casing_Tank_7.get(4),
- GT_OreDictUnificator.get(OrePrefixes.plateQuadruple, Materials.CrystallinePinkSlime, 6),
- GT_OreDictUnificator.get(OrePrefixes.pipeNonuple, Materials.Naquadah, 3),
- GT_ModHandler.getModItem("dreamcraft", "item.ChromeBars", 6),
- GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.Quantium, 6),
- ItemList.Field_Generator_EV.get(8), ItemList.FluidRegulator_LuV.get(1),
- GT_ModHandler.getModItem("dreamcraft", "item.EngineeringProcessorFluidEmeraldCore", 4) },
- new FluidStack[] { Materials.Enderium.getMolten(1440), Materials.Polybenzimidazole.getMolten(1584) },
- new ItemStack(Blocks.tfftStorageField, 1, 6),
- 600,
- BW_Util.getMachineVoltageFromTier(6));
-
- // TFFTStorageField7
- GT_Values.RA.addAssemblylineRecipe(
- new ItemStack(Blocks.tfftStorageField, 1, 6),
- 80000,
- new ItemStack[] { ItemList.Casing_Tank_10.get(16),
- GT_OreDictUnificator.get(OrePrefixes.plateQuadruple, Materials.MelodicAlloy, 6),
- GT_OreDictUnificator.get(OrePrefixes.pipeNonuple, Materials.NetherStar, 3),
- GT_ModHandler.getModItem("dreamcraft", "item.OsmiumBars", 6),
- GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.MysteriousCrystal, 6),
- ItemList.Field_Generator_IV.get(16), ItemList.Field_Generator_LuV.get(4),
- ItemList.FluidRegulator_UV.get(1),
- GT_ModHandler.getModItem("dreamcraft", "item.EngineeringProcessorFluidEmeraldCore", 16) },
- new FluidStack[] { Materials.CrystallineAlloy.getMolten(2880),
- Materials.Polybenzimidazole.getMolten(2016) },
- new ItemStack(Blocks.tfftStorageField, 1, 7),
- 600,
- BW_Util.getMachineVoltageFromTier(8));
-
- // TFFTStorageField8
- GT_Values.RA.addAssemblylineRecipe(
- new ItemStack(Blocks.tfftStorageField, 1, 7),
- 120000,
- new ItemStack[] { ItemList.Quantum_Tank_IV.get(1),
- GT_ModHandler.getModItem("Avaritia", "Neutronium_Compressor", 1),
- GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.StellarAlloy, 6),
- GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.StellarAlloy, 6),
- GT_OreDictUnificator.get(OrePrefixes.pipeNonuple, Materials.DraconiumAwakened, 3),
- GT_ModHandler.getModItem("dreamcraft", "item.NeutroniumBars", 6),
- GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.InfinityCatalyst, 6),
- ItemList.Field_Generator_ZPM.get(16), ItemList.Field_Generator_UV.get(4),
- GT_ModHandler.getModItem("GoodGenerator", "huiCircuit", 4, 2),
- GT_ModHandler
- .getModItem("universalsingularities", "universal.tinkersConstruct.singularity", 1, 4) },
- new FluidStack[] { Materials.CrystallinePinkSlime.getMolten(4320), new FluidStack(radoxPoly, 2880) },
- new ItemStack(Blocks.tfftStorageField, 1, 8),
- 600,
- BW_Util.getMachineVoltageFromTier(10));
-
- // TFFTStorageField9
- GT_Values.RA.addAssemblylineRecipe(
- new ItemStack(Blocks.tfftStorageField, 1, 8),
- 160000,
- new ItemStack[] { ItemList.Quantum_Tank_IV.get(4),
- GT_ModHandler.getModItem("Avaritia", "Neutronium_Compressor", 2),
- GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.TranscendentMetal, 6),
- GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.TranscendentMetal, 6),
- GT_OreDictUnificator.get(OrePrefixes.pipeNonuple, Materials.Infinity, 3),
- ItemList.EnergisedTesseract.get(1),
- GT_ModHandler.getModItem("miscutils", "itemRotorHypogen", 6),
- ItemList.Field_Generator_UHV.get(16), ItemList.Field_Generator_UEV.get(4),
- GT_ModHandler.getModItem("GoodGenerator", "huiCircuit", 4, 3),
- GT_ModHandler
- .getModItem("universalsingularities", "universal.tinkersConstruct.singularity", 1, 4) },
- new FluidStack[] { Materials.MelodicAlloy.getMolten(5760), new FluidStack(radoxPoly, 3456) },
- new ItemStack(Blocks.tfftStorageField, 1, 9),
- 600,
- BW_Util.getMachineVoltageFromTier(12));
-
- // TFFTStorageField10
- GT_Values.RA.addAssemblylineRecipe(
- new ItemStack(Blocks.tfftStorageField, 1, 9),
- 200000,
- new ItemStack[] { ItemList.Quantum_Tank_IV.get(16),
- GT_ModHandler.getModItem("Avaritia", "Neutronium_Compressor", 4),
- GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.SpaceTime, 6),
- GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.SpaceTime, 6),
- GT_OreDictUnificator.get(OrePrefixes.pipeNonuple, Materials.SpaceTime, 3),
- ItemList.EnergisedTesseract.get(6),
- GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.SpaceTime, 6),
- ItemList.Field_Generator_UEV.get(16), ItemList.Field_Generator_UIV.get(4),
- GT_ModHandler.getModItem("GoodGenerator", "huiCircuit", 4, 4),
- GT_ModHandler.getModItem("GoodGenerator", "huiCircuit", 4, 4),
- GT_ModHandler.getModItem("EnderIO", "itemBasicCapacitor", 64, 6),
- GT_ModHandler.getModItem("eternalsingularity", "eternal_singularity", 1) },
- new FluidStack[] { Materials.StellarAlloy.getMolten(7200), new FluidStack(radoxPoly, 4608) },
- new ItemStack(Blocks.tfftStorageField, 1, 10),
- 600,
- BW_Util.getMachineVoltageFromTier(13));
-
- // Recycling
- GT_Values.RA.addUnboxingRecipe(
- new ItemStack(Blocks.tfftStorageField, 1, 1),
- GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.CrudeSteel, 1),
- GT_OreDictUnificator.get(OrePrefixes.plate, Materials.CrudeSteel, 6),
- 100,
- BW_Util.getMachineVoltageFromTier(3));
- GT_Values.RA.addUnboxingRecipe(
- new ItemStack(Blocks.tfftStorageField, 1, 2),
- ItemList.Casing_Tank_1.get(1),
- GT_OreDictUnificator.get(OrePrefixes.plate, Materials.EnergeticSilver, 6),
- 100,
- BW_Util.getMachineVoltageFromTier(3));
- GT_Values.RA.addUnboxingRecipe(
- new ItemStack(Blocks.tfftStorageField, 1, 3),
- ItemList.Casing_Tank_3.get(1),
- GT_OreDictUnificator.get(OrePrefixes.plate, Materials.VividAlloy, 6),
- 100,
- BW_Util.getMachineVoltageFromTier(3));
- GT_Values.RA.addUnboxingRecipe(
- new ItemStack(Blocks.tfftStorageField, 1, 4),
- ItemList.Casing_Tank_5.get(1),
- GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Enderium, 6),
- 100,
- BW_Util.getMachineVoltageFromTier(3));
- GT_Values.RA.addUnboxingRecipe(
- new ItemStack(Blocks.tfftStorageField, 1, 5),
- ItemList.Casing_Tank_7.get(1),
- GT_OreDictUnificator.get(OrePrefixes.plate, Materials.CrystallineAlloy, 6),
- 100,
- BW_Util.getMachineVoltageFromTier(3));
- GT_Values.RA.addUnboxingRecipe(
- new ItemStack(Blocks.tfftStorageField, 1, 6),
- ItemList.Casing_Tank_7.get(4),
- GT_OreDictUnificator.get(OrePrefixes.plateQuadruple, Materials.CrystallinePinkSlime, 6),
- 100,
- BW_Util.getMachineVoltageFromTier(3));
- GT_Values.RA.addUnboxingRecipe(
- new ItemStack(Blocks.tfftStorageField, 1, 7),
- ItemList.Casing_Tank_10.get(16),
- GT_OreDictUnificator.get(OrePrefixes.plateQuadruple, Materials.MelodicAlloy, 6),
- 100,
- BW_Util.getMachineVoltageFromTier(3));
- GT_Values.RA.addUnboxingRecipe(
- new ItemStack(Blocks.tfftStorageField, 1, 8),
- ItemList.Quantum_Tank_IV.get(1),
- GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.StellarAlloy, 12),
- 100,
- BW_Util.getMachineVoltageFromTier(3));
- GT_Values.RA.addUnboxingRecipe(
- new ItemStack(Blocks.tfftStorageField, 1, 9),
- ItemList.Quantum_Tank_IV.get(4),
- GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.TranscendentMetal, 12),
- 100,
- BW_Util.getMachineVoltageFromTier(3));
- GT_Values.RA.addUnboxingRecipe(
- new ItemStack(Blocks.tfftStorageField, 1, 10),
- ItemList.Quantum_Tank_IV.get(16),
- GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.SpaceTime, 12),
- 100,
- BW_Util.getMachineVoltageFromTier(3));
- }
-
- private static void registerRecipes_SOFC() {
-
- final MetaItem_CraftingComponent craftingItem = MetaItem_CraftingComponent.getInstance();
-
- // Controller
- final Object[] mk1_recipe = { "CCC", "PHP", "FBL", 'C', OrePrefixes.circuit.get(Materials.Advanced), 'P',
- ItemList.Electric_Pump_HV.get(1L), 'H', ItemList.Hull_HV.get(1L), 'F',
- GT_OreDictUnificator.get(OrePrefixes.pipeSmall, Materials.StainlessSteel, 1), 'B',
- GT_OreDictUnificator.get(OrePrefixes.cableGt02, Materials.Gold, 1), 'L',
- GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.StainlessSteel, 1) };
- GT_ModHandler.addCraftingRecipe(TileEntities.sofc1.getStackForm(1), mk1_recipe);
- final Object[] mk2_recipe = { "CCC", "PHP", "FBL", 'C', OrePrefixes.circuit.get(Materials.Master), 'P',
- ItemList.Electric_Pump_IV.get(1L), 'H', ItemList.Hull_IV.get(1L), 'F',
- GT_OreDictUnificator.get(OrePrefixes.pipeSmall, Materials.Ultimate, 1), 'B',
- Util.getStackofAmountFromOreDict("wireGt04SuperconductorEV", 1), 'L',
- GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.Ultimate, 1) };
- GT_ModHandler.addCraftingRecipe(TileEntities.sofc2.getStackForm(1), mk2_recipe);
-
- // Blocks
- final ItemStack[] yszUnit = { GT_Utility.getIntegratedCircuit(6),
- craftingItem.getStackOfAmountFromDamage(Items.YSZCeramicPlate.getMetaID(), 4),
- GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Yttrium, 1),
- GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.StainlessSteel, 1),
- ItemList.Electric_Motor_HV.get(1L), };
- GT_Values.RA.addAssemblerRecipe(
- yszUnit,
- Materials.Hydrogen.getGas(4000),
- new ItemStack(Blocks.yszUnit, 1),
- 1200,
- 480);
- final ItemStack[] gdcUnit = { GT_Utility.getIntegratedCircuit(6),
- craftingItem.getStackOfAmountFromDamage(Items.GDCCeramicPlate.getMetaID(), 8),
- GT_OreDictUnificator
- .get(OrePrefixes.frameGt, Materials.Gadolinium, new ItemStack(ErrorItem.getInstance(), 1), 1),
- GT_OreDictUnificator
- .get(OrePrefixes.rotor, Materials.Desh, new ItemStack(ErrorItem.getInstance(), 1), 1),
- ItemList.Electric_Motor_IV.get(1L), };
- GT_Values.RA.addAssemblerRecipe(
- gdcUnit,
- Materials.Hydrogen.getGas(16000),
- new ItemStack(Blocks.gdcUnit, 1),
- 2400,
- 1920);
+ LuVTierEnhancer.addToBlackListForOsmiridiumReplacement(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 2));
- // Items
- GT_Values.RA.addAlloySmelterRecipe(
- craftingItem.getStackOfAmountFromDamage(
- Items.YSZCeramicDust.getMetaID(),
- Loader.isModLoaded("bartworks") ? 3 : 10),
- ItemList.Shape_Mold_Plate.get(0),
- craftingItem.getStackOfAmountFromDamage(Items.YSZCeramicPlate.getMetaID(), 1),
- 400,
- 480);
- GT_Values.RA.addFormingPressRecipe(
- craftingItem.getStackOfAmountFromDamage(Items.GDCCeramicDust.getMetaID(), 10),
- ItemList.Shape_Mold_Plate.get(0),
- craftingItem.getStackOfAmountFromDamage(Items.GDCCeramicPlate.getMetaID(), 1),
- 800,
- 480);
+ new AlloySmelter().run();
+ new Assembler().run();
+ new AssemblyLine().run();
+ new ChemicalReactor().run();
+ new Crafting().run();
+ new FormingPress().run();
+ new Mixer().run();
+ new ResearchableAssemblyLine().run();
+ new Unpackager().run();
- if (!Loader.isModLoaded("bartworks")) {
- GT_Values.RA.addChemicalRecipe(
- Materials.Yttrium.getDust(1),
- GT_Utility.getIntegratedCircuit(6),
- Materials.Oxygen.getGas(3000),
- null,
- craftingItem.getStackOfAmountFromDamage(Items.YttriaDust.getMetaID(), 1),
- null,
- 400,
- 30);
- GT_Values.RA.addChemicalRecipe(
- Util.getStackofAmountFromOreDict("dustZirconium", 1),
- GT_Utility.getIntegratedCircuit(6),
- Materials.Oxygen.getGas(2000),
- null,
- craftingItem.getStackOfAmountFromDamage(Items.ZirconiaDust.getMetaID(), 1),
- null,
- 400,
- 30);
- }
+ registerRecipes_Jars();
- GT_Values.RA.addChemicalRecipe(
- Materials.Cerium.getDust(2),
- GT_Utility.getIntegratedCircuit(6),
- Materials.Oxygen.getGas(3000),
- null,
- craftingItem.getStackOfAmountFromDamage(Items.CeriaDust.getMetaID(), 2),
- null,
- 400,
- 30);
- GT_Values.RA.addMixerRecipe(
- Items.YttriaDust.getOreDictedItemStack(1),
- Items.ZirconiaDust.getOreDictedItemStack(5),
- GT_Utility.getIntegratedCircuit(6),
- null,
- null,
- null,
- craftingItem.getStackOfAmountFromDamage(Items.YSZCeramicDust.getMetaID(), 6),
- 400,
- 96);
- GT_Values.RA.addMixerRecipe(
- GT_OreDictUnificator
- .get(OrePrefixes.dust, Materials.Gadolinium, new ItemStack(ErrorItem.getInstance(), 1), 1),
- craftingItem.getStackOfAmountFromDamage(Items.CeriaDust.getMetaID(), 9),
- GT_Utility.getIntegratedCircuit(6),
- null,
- null,
- null,
- craftingItem.getStackOfAmountFromDamage(Items.GDCCeramicDust.getMetaID(), 10),
- 400,
- 1920);
+ KekzCore.LOGGER.info("Finished registering recipes");
}
- /*
- * private static void registerRecipes_Nuclear() { final MetaItem_CraftingComponent craftingItem =
- * MetaItem_CraftingComponent.getInstance(); // Controller // Blocks final ItemStack[] controlrod = {
- * GT_Utility.getIntegratedCircuit(6), GT_OreDictUnificator.get(OrePrefixes.pipeHuge, Materials.Lead, 1),
- * GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.Steel, 4), GT_OreDictUnificator.get(OrePrefixes.dust,
- * Materials.Carbon, 64) }; GT_Values.RA.addAssemblerRecipe( controlrod, null, new
- * ItemStack(Blocks.reactorControlRod, 1), 800, 480); final ItemStack[] reactorchamber = {
- * GT_Utility.getIntegratedCircuit(6), GT_OreDictUnificator.get(OrePrefixes.pipeHuge, Materials.Lead, 1),
- * GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.Lead, 9), GT_OreDictUnificator.get(OrePrefixes.ring,
- * Materials.TungstenSteel, 18), GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.Steel, 2), };
- * GT_Values.RA.addAssemblerRecipe( reactorchamber, FluidRegistry.getFluidStack("wet.concrete", 144), new
- * ItemStack(Blocks.reactorChamberOFF, 1), 1600, 480); // Items
- * GT_Values.RA.addMixerRecipe(Materials.Boron.getDust(1), Materials.Arsenic.getDust(1),
- * GT_Utility.getIntegratedCircuit(6), null, null, null,
- * craftingItem.getStackOfAmountFromDamage(Items.BoronArsenideDust.getMetaID(), 2), 100, 1920);
- * GT_Values.RA.addChemicalRecipe( Materials.Ammonia.getCells(2), Materials.CarbonDioxide.getCells(1), null, null,
- * craftingItem.getStackOfAmountFromDamage(Items.AmineCarbamiteDust.getMetaID(), 1),
- * Util.getStackofAmountFromOreDict("cellEmpty", 3), 400, 30); GT_Values.RA.addChemicalRecipe(
- * craftingItem.getStackOfAmountFromDamage(Items.AmineCarbamiteDust.getMetaID(), 1), Materials.Diamond.getDust(16),
- * Materials.CarbonDioxide.getGas(1000), null,
- * craftingItem.getStackOfAmountFromDamage(Items.IsotopicallyPureDiamondDust.getMetaID(), 1), null, 1200, 480);
- * GT_Values.RA.addAutoclaveRecipe(
- * craftingItem.getStackOfAmountFromDamage(Items.IsotopicallyPureDiamondDust.getMetaID(), 4),
- * Materials.CarbonDioxide.getGas(16000),
- * craftingItem.getStackOfAmountFromDamage(Items.IsotopicallyPureDiamondCrystal.getMetaID(), 1), 10000, 2400, 7680);
- * GT_Values.RA.addAutoclaveRecipe( craftingItem.getStackOfAmountFromDamage(Items.BoronArsenideDust.getMetaID(), 4),
- * Materials.Nitrogen.getGas(4000), craftingItem.getStackOfAmountFromDamage(Items.BoronArsenideCrystal.getMetaID(),
- * 1), 10000, 2400, 1920); GT_Values.RA.addLatheRecipe( GT_OreDictUnificator.get(OrePrefixes.stick,
- * Materials.AnnealedCopper, 1), craftingItem.getStackFromDamage(Items.CopperHeatPipe.getMetaID()), null, 120, 120);
- * GT_Values.RA.addLatheRecipe( GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Silver, 1),
- * craftingItem.getStackFromDamage(Items.SilverHeatPipe.getMetaID()), null, 120, 480); GT_Values.RA.addLatheRecipe(
- * craftingItem.getStackOfAmountFromDamage(Items.BoronArsenideCrystal.getMetaID(), 4),
- * craftingItem.getStackFromDamage(Items.BoronArsenideHeatPipe.getMetaID()), null, 1200, 1920);
- * GT_Values.RA.addLatheRecipe(
- * craftingItem.getStackOfAmountFromDamage(Items.IsotopicallyPureDiamondCrystal.getMetaID(), 4),
- * craftingItem.getStackFromDamage(Items.DiamondHeatPipe.getMetaID()), null, 1200, 7680); }
- */
-
private static void registerRecipes_Jars() {
// Thaumium Reinforced Jar
@@ -497,7 +97,7 @@ public class Recipes {
new ItemStack(Blocks.jarThaumiumReinforced, 1, 0),
recipe_voidjarupgrade));
- final ItemStack[] recipe_jarichor = { GT_ModHandler.getModItem("ThaumicTinkerer", "kamiResource", 1, 0),
+ final ItemStack[] recipe_jarichor = { GT_ModHandler.getModItem(ThaumicTinkerer.ID, "kamiResource", 1, 0),
GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Diamond, 1),
new ItemStack(net.minecraft.init.Blocks.glass_pane),
GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Osmiridium, 1),
@@ -533,390 +133,4 @@ public class Recipes {
recipe_voidjarupgrade));
}
- private static void registerRecipes_LSC() {
-
- // Controller
- final Object[] lsc_recipe = { "LPL", "CBC", "LPL", 'L', ItemList.IC2_LapotronCrystal.getWildcard(1L), 'P',
- ItemList.Circuit_Chip_PIC.get(1L), 'C', OrePrefixes.circuit.get(Materials.Master), 'B',
- new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 0), };
- GT_ModHandler.addCraftingRecipe(TileEntities.lsc.getStackForm(1), lsc_recipe);
-
- // Blocks
- final Object[] lcBase_recipe = { "WBW", "RLR", "WBW", 'W', OrePrefixes.plate.get(Materials.Tantalum), 'B',
- OrePrefixes.frameGt.get(Materials.TungstenSteel), 'R',
- OrePrefixes.stickLong.get(Materials.TungstenSteel), 'L', OrePrefixes.block.get(Materials.Lapis) };
- GT_ModHandler.addCraftingRecipe(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 0), lcBase_recipe);
- GT_Values.RA.addAssemblerRecipe(
- new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Tantalum, 4),
- GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.TungstenSteel, 2),
- GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.TungstenSteel, 2),
- GT_OreDictUnificator.get(OrePrefixes.block, Materials.Lapis, 1) },
- null,
- new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 0),
- 100,
- 480);
-
- // Empty Capacitor
- final Object[] lcEmpty_recipe = { "SLS", "L L", "SLS", 'S', OrePrefixes.screw.get(Materials.Lapis), 'L',
- OrePrefixes.plate.get(Materials.Lapis) };
- GT_ModHandler.addCraftingRecipe(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 6), lcEmpty_recipe);
-
- // EV Capacitor
- final Object[] lcEV_recipe = { "SLS", "LCL", "SLS", 'S', OrePrefixes.screw.get(Materials.Lapis), 'L',
- OrePrefixes.plate.get(Materials.Lapis), 'C',
- GT_ModHandler.getIC2Item("lapotronCrystal", 1L, GT_Values.W) };
- GT_ModHandler.addCraftingRecipe(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 7), lcEV_recipe);
-
- // EV Capacitor alt recipe
- GT_Values.RA.addAssemblerRecipe(
- new ItemStack[] { new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 6),
- GT_ModHandler.getIC2Item("lapotronCrystal", 1L, GT_Values.W),
- GT_Utility.getIntegratedCircuit(7) },
- null,
- new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 7),
- 200,
- BW_Util.getMachineVoltageFromTier(3));
-
- // IV Capacitor
- final Object[] lcIV_recipe = { "SLS", "LOL", "SLS", 'S', OrePrefixes.screw.get(Materials.Lapis), 'L',
- OrePrefixes.plate.get(Materials.Lapis), 'O', ItemList.Energy_LapotronicOrb.get(1L) };
- GT_ModHandler.addCraftingRecipe(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 1), lcIV_recipe);
-
- // IV Capacitor alt recipe
- GT_Values.RA.addAssemblerRecipe(
- new ItemStack[] { new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 6),
- ItemList.Energy_LapotronicOrb.get(1L), GT_Utility.getIntegratedCircuit(1) },
- null,
- new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 1),
- 400,
- BW_Util.getMachineVoltageFromTier(4));
-
- // LuV Capacitor
- GT_Values.RA.addAssemblylineRecipe(
- new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 1),
- 288000,
- new Object[] { GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Osmiridium, 4),
- GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Osmiridium, 24),
- ItemList.Circuit_Board_Elite.get(1),
- GT_OreDictUnificator.get(OrePrefixes.foil, Materials.NaquadahAlloy, 64),
- new Object[] { OrePrefixes.circuit.get(Materials.Master), 4 },
- ItemList.Circuit_Parts_Crystal_Chip_Master.get(36),
- ItemList.Circuit_Parts_Crystal_Chip_Master.get(36), ItemList.Circuit_Chip_HPIC.get(64),
- ItemList.Circuit_Parts_DiodeASMD.get(8), ItemList.Circuit_Parts_CapacitorASMD.get(8),
- ItemList.Circuit_Parts_ResistorASMD.get(8), ItemList.Circuit_Parts_TransistorASMD.get(8),
- GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Platinum, 64) },
- new FluidStack[] { new FluidStack(solderIndalloy, 720) },
- new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 2),
- 1000,
- 80000);
-
- // LuV Capacitor alt recipe
- GT_Values.RA.addAssemblerRecipe(
- new ItemStack[] { ItemList.Energy_LapotronicOrb2.get(1),
- GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Osmiridium, 4),
- GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Osmiridium, 24),
- GT_Utility.getIntegratedCircuit(6) },
- null,
- new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 2),
- 800,
- BW_Util.getMachineVoltageFromTier(5));
- LuVTierEnhancer.addToBlackListForOsmiridiumReplacement(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 2));
-
- // ZPM Capacitor
- GT_Values.RA.addAssemblylineRecipe(
- new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 2),
- 288000,
- new Object[] { GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.NaquadahAlloy, 4),
- GT_OreDictUnificator.get(OrePrefixes.screw, Materials.NaquadahAlloy, 24),
- GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Europium, 16L),
- new Object[] { OrePrefixes.circuit.get(Materials.Ultimate), 1 },
- new Object[] { OrePrefixes.circuit.get(Materials.Ultimate), 1 },
- new Object[] { OrePrefixes.circuit.get(Materials.Ultimate), 1 },
- new Object[] { OrePrefixes.circuit.get(Materials.Ultimate), 1 },
- ItemList.Energy_LapotronicOrb2.get(8L), ItemList.Field_Generator_LuV.get(2),
- ItemList.Circuit_Wafer_SoC2.get(64), ItemList.Circuit_Wafer_SoC2.get(64),
- ItemList.Circuit_Parts_DiodeASMD.get(8),
- GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Naquadah, 32) },
- new FluidStack[] { new FluidStack(solderIndalloy, 2880),
- new FluidStack(FluidRegistry.getFluid("ic2coolant"), 16000) },
- new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 3),
- 2000,
- 100000);
-
- // ZPM Capacitor alt recipe
- GT_Values.RA.addAssemblerRecipe(
- new ItemStack[] { ItemList.Energy_Module.get(1),
- GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.NaquadahAlloy, 4),
- GT_OreDictUnificator.get(OrePrefixes.screw, Materials.NaquadahAlloy, 24),
- GT_Utility.getIntegratedCircuit(6) },
- null,
- new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 3),
- 1600,
- BW_Util.getMachineVoltageFromTier(6));
-
- // UV Capacitor
- GT_Values.RA.addAssemblylineRecipe(
- new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 3),
- 288000,
- new Object[] { GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Neutronium, 4),
- GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Neutronium, 24),
- GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Americium, 32L),
- new Object[] { OrePrefixes.circuit.get(Materials.Superconductor), 1 },
- new Object[] { OrePrefixes.circuit.get(Materials.Superconductor), 1 },
- new Object[] { OrePrefixes.circuit.get(Materials.Superconductor), 1 },
- new Object[] { OrePrefixes.circuit.get(Materials.Superconductor), 1 },
- ItemList.Energy_Module.get(8L), ItemList.Field_Generator_ZPM.get(2),
- ItemList.Circuit_Wafer_HPIC.get(64), ItemList.Circuit_Wafer_HPIC.get(64),
- ItemList.Circuit_Parts_DiodeASMD.get(16),
- GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.NaquadahAlloy, 32) },
- new FluidStack[] { new FluidStack(solderIndalloy, 2880),
- new FluidStack(FluidRegistry.getFluid("ic2coolant"), 16000) },
- new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 4),
- 2000,
- 200000);
-
- // UV Capacitor alt recipe
- GT_Values.RA.addAssemblerRecipe(
- new ItemStack[] { ItemList.Energy_Cluster.get(1),
- GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Neutronium, 4),
- GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Neutronium, 24),
- GT_Utility.getIntegratedCircuit(6) },
- null,
- new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 4),
- 3200,
- BW_Util.getMachineVoltageFromTier(7));
-
- // Ultimate Capacitor (UHV)
- TT_recipeAdder.addResearchableAssemblylineRecipe(
- new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 4),
- 12000,
- 16,
- 300000,
- 3,
- new Object[] { GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.CosmicNeutronium, 4),
- GT_OreDictUnificator.get(OrePrefixes.screw, Materials.CosmicNeutronium, 24),
- GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.Neutronium, 32L),
- GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.Neutronium, 32L),
- new Object[] { OrePrefixes.circuit.get(Materials.Bio), 1 },
- new Object[] { OrePrefixes.circuit.get(Materials.Bio), 1 },
- new Object[] { OrePrefixes.circuit.get(Materials.Bio), 1 },
- new Object[] { OrePrefixes.circuit.get(Materials.Bio), 1 }, ItemList.ZPM2.get(8L),
- ItemList.Field_Generator_UHV.get(4), ItemList.Circuit_Wafer_UHPIC.get(64),
- ItemList.Circuit_Wafer_UHPIC.get(64), ItemList.Circuit_Wafer_SoC2.get(32),
- ItemList.Circuit_Parts_DiodeASMD.get(64),
- GT_OreDictUnificator.get(OrePrefixes.wireGt02, Materials.SuperconductorUHV, 64) },
- new FluidStack[] { new FluidStack(solderUEV, 4608), Materials.Naquadria.getMolten(9216),
- new FluidStack(FluidRegistry.getFluid("ic2coolant"), 32000) },
- new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 5),
- 4000,
- 1600000);
-
- // UHV Capacitor alt recipe
- GT_Values.RA.addAssemblerRecipe(
- new ItemStack[] { ItemList.ZPM3.get(1),
- GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.CosmicNeutronium, 4),
- GT_OreDictUnificator.get(OrePrefixes.screw, Materials.CosmicNeutronium, 24),
- GT_Utility.getIntegratedCircuit(6) },
- null,
- new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 5),
- 6400,
- BW_Util.getMachineVoltageFromTier(8));
-
- // Extremely Ultimate Capacitor (UEV)
- TT_recipeAdder.addResearchableAssemblylineRecipe(
- new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 5),
- 1200000,
- 128,
- 8000000,
- 16,
- new Object[] { GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Infinity, 4),
- GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Infinity, 24),
- GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.InfinityCatalyst, 32L),
- GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.InfinityCatalyst, 32L),
- new Object[] { OrePrefixes.circuit.get(Materials.Optical), 1 },
- new Object[] { OrePrefixes.circuit.get(Materials.Optical), 1 },
- new Object[] { OrePrefixes.circuit.get(Materials.Optical), 1 },
- new Object[] { OrePrefixes.circuit.get(Materials.Optical), 1 }, ItemList.ZPM3.get(8L),
- ItemList.Field_Generator_UEV.get(4), ItemList.Circuit_Wafer_PPIC.get(64),
- ItemList.Circuit_Wafer_PPIC.get(64), ItemList.Circuit_Wafer_SoC2.get(64),
- ItemList.Circuit_Parts_DiodeXSMD.get(64),
- GT_OreDictUnificator.get(OrePrefixes.wireGt04, Materials.SuperconductorUEV, 64) },
- new FluidStack[] { new FluidStack(solderUEV, 9216), Materials.Quantium.getMolten(18432),
- Materials.Naquadria.getMolten(18432), Materials.SuperCoolant.getFluid(64000) },
- new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 8),
- 250 * 20,
- (int) TierEU.RECIPE_UEV);
-
- // UEV Capacitor alt recipe
- GT_Values.RA.addAssemblerRecipe(
- new ItemStack[] { ItemList.ZPM4.get(1),
- GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Infinity, 4),
- GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Infinity, 24),
- GT_Utility.getIntegratedCircuit(6) },
- null,
- new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 8),
- 640 * 20,
- (int) TierEU.RECIPE_UHV);
-
- if (Loader.isModLoaded("miscutils")) {
- // Insanely Ultimate Capacitor (UIV)
- TT_recipeAdder.addResearchableAssemblylineRecipe(
- new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 8),
- 24_000_000,
- 1_280,
- 32_000_000,
- 32,
- new Object[] { GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.TranscendentMetal, 4),
- GT_OreDictUnificator.get(OrePrefixes.screw, Materials.TranscendentMetal, 24),
- GT_ModHandler.getModItem("miscutils", "itemPlateDoubleHypogen", 32),
- GT_ModHandler.getModItem("miscutils", "itemPlateDoubleHypogen", 32),
- new Object[] { OrePrefixes.circuit.get(Materials.Piko), 1 },
- new Object[] { OrePrefixes.circuit.get(Materials.Piko), 1 },
- new Object[] { OrePrefixes.circuit.get(Materials.Piko), 1 },
- new Object[] { OrePrefixes.circuit.get(Materials.Piko), 1 }, ItemList.ZPM4.get(8L),
- ItemList.Field_Generator_UIV.get(4), ItemList.Circuit_Wafer_QPIC.get(64),
- ItemList.Circuit_Wafer_QPIC.get(64),
- GT_ModHandler.getModItem("dreamcraft", "item.RawPicoWafer", 64),
- ItemList.Circuit_Parts_DiodeXSMD.get(64), ItemList.Circuit_Parts_InductorXSMD.get(32),
- GT_OreDictUnificator.get(OrePrefixes.wireGt08, Materials.SuperconductorUIV, 64) },
- new FluidStack[] { new FluidStack(solderUEV, 18_432),
- new FluidStack(FluidRegistry.getFluid("molten.celestialtungsten"), 18432),
- Materials.Quantium.getMolten(18_432), Materials.SuperCoolant.getFluid(128_000) },
- new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 9),
- 300 * 20,
- (int) TierEU.RECIPE_UIV);
-
- // Mega Ultimate Capacitor (UMV)
- TT_recipeAdder.addResearchableAssemblylineRecipe(
- new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 9),
- 480_000_000,
- 12_288,
- 128_000_000,
- 64,
- new Object[] { GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.SpaceTime, 4),
- GT_OreDictUnificator.get(OrePrefixes.screw, Materials.SpaceTime, 24),
- GT_ModHandler.getModItem("miscutils", "itemPlateDoubleDragonblood", 32),
- GT_ModHandler.getModItem("miscutils", "itemPlateDoubleDragonblood", 32),
- new Object[] { OrePrefixes.circuit.get(Materials.Quantum), 1 },
- new Object[] { OrePrefixes.circuit.get(Materials.Quantum), 1 },
- new Object[] { OrePrefixes.circuit.get(Materials.Quantum), 1 },
- new Object[] { OrePrefixes.circuit.get(Materials.Quantum), 1 }, ItemList.ZPM5.get(8L),
- ItemList.Field_Generator_UMV.get(4), ItemList.Circuit_Wafer_QPIC.get(64),
- ItemList.Circuit_Wafer_QPIC.get(64),
- GT_ModHandler.getModItem("dreamcraft", "item.PicoWafer", 64),
- ItemList.Circuit_Parts_DiodeXSMD.get(64), ItemList.Circuit_Parts_InductorXSMD.get(64),
- GT_OreDictUnificator.get(OrePrefixes.wireGt16, Materials.SuperconductorUMV, 64) },
- new FluidStack[] { new FluidStack(solderUEV, 36_864),
- new FluidStack(FluidRegistry.getFluid("molten.astraltitanium"), 36_864),
- new FluidStack(FluidRegistry.getFluid("molten.celestialtungsten"), 36_864),
- Materials.SuperCoolant.getFluid(256_000) },
- new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 10),
- 350 * 20,
- (int) TierEU.RECIPE_UMV);
- }
- // UIV Capacitor alt recipe
- GT_Values.RA.addAssemblerRecipe(
- new ItemStack[] { ItemList.ZPM5.get(1),
- GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.TranscendentMetal, 4),
- GT_OreDictUnificator.get(OrePrefixes.screw, Materials.TranscendentMetal, 24),
- GT_Utility.getIntegratedCircuit(6) },
- null,
- new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 9),
- 640 * 20,
- (int) TierEU.RECIPE_UEV);
-
- // UMV Capacitor alt recipe
- GT_Values.RA.addAssemblerRecipe(
- new ItemStack[] { ItemList.ZPM6.get(1),
- GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.SpaceTime, 4),
- GT_OreDictUnificator.get(OrePrefixes.screw, Materials.SpaceTime, 24),
- GT_Utility.getIntegratedCircuit(6) },
- null,
- new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 10),
- 640 * 20,
- (int) TierEU.RECIPE_UIV);
-
- // Capacitor recycling
- GT_Values.RA.addUnboxingRecipe(
- new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 7),
- GT_ModHandler.getIC2Item("lapotronCrystal", 1L, 26),
- new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 6),
- 1200,
- (int) TierEU.RECIPE_LV);
- GT_Values.RA.addUnboxingRecipe(
- new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 1),
- ItemList.Energy_LapotronicOrb.get(1L),
- new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 6),
- 1200,
- (int) TierEU.RECIPE_LV);
- GT_Values.RA.addUnboxingRecipe(
- new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 2),
- ItemList.Energy_LapotronicOrb2.get(1L),
- GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Osmiridium, 24),
- 1200,
- (int) TierEU.RECIPE_LV);
- GT_Values.RA.addUnboxingRecipe(
- new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 3),
- ItemList.Energy_Module.get(1L),
- GT_OreDictUnificator.get(OrePrefixes.screw, Materials.NaquadahAlloy, 24),
- 1200,
- (int) TierEU.RECIPE_LV);
- GT_Values.RA.addUnboxingRecipe(
- new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 4),
- ItemList.Energy_Cluster.get(1L),
- GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Neutronium, 24),
- 1200,
- (int) TierEU.RECIPE_LV);
- GT_Values.RA.addUnboxingRecipe(
- new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 5),
- ItemList.ZPM3.get(1L),
- GT_OreDictUnificator.get(OrePrefixes.screw, Materials.CosmicNeutronium, 24),
- 1200,
- (int) TierEU.RECIPE_LV);
- GT_Values.RA.addUnboxingRecipe(
- new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 8),
- ItemList.ZPM4.get(1L),
- GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Infinity, 24),
- 1200,
- (int) TierEU.RECIPE_LV);
- GT_Values.RA.addUnboxingRecipe(
- new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 9),
- ItemList.ZPM5.get(1L),
- GT_OreDictUnificator.get(OrePrefixes.screw, Materials.TranscendentMetal, 24),
- 1200,
- (int) TierEU.RECIPE_LV);
- GT_Values.RA.addUnboxingRecipe(
- new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 10),
- ItemList.ZPM6.get(1L),
- GT_OreDictUnificator.get(OrePrefixes.screw, Materials.SpaceTime, 24),
- 1200,
- (int) TierEU.RECIPE_LV);
- }
-
- /*
- * private static void registerRecipes_SpaceElevator() { // Controller final Object[] se_recipe = { "BCB", "CPC",
- * "BCB", 'B', new ItemStack(Blocks.spaceElevatorStructure, 1, 0), 'C',
- * OrePrefixes.cableGt16.get(Materials.Aluminium), 'P', OrePrefixes.circuit.get(Materials.Master) };
- * GT_ModHandler.addCraftingRecipe(TileEntities.se.getStackForm(1), se_recipe); // Blocks final Object[]
- * seBase_recipe = { "DRD", "RCR", "DRD", 'D', OrePrefixes.plate.get(Materials.DarkSteel), 'R',
- * OrePrefixes.stick.get(Materials.Steel), 'C', OrePrefixes.block.get(Materials.Concrete), };
- * GT_ModHandler.addCraftingRecipe(new ItemStack(Blocks.spaceElevatorStructure, 1, 0), seBase_recipe); final
- * Object[] seCoilHolder_recipe = { "DRD", "RCR", "DRD", 'D', OrePrefixes.plate.get(Materials.DarkSteel), 'R',
- * OrePrefixes.ring.get(Materials.Steel), 'C', OrePrefixes.cableGt01.get(Materials.Aluminium) };
- * GT_ModHandler.addCraftingRecipe(new ItemStack(Blocks.spaceElevatorStructure, 1, 1), seCoilHolder_recipe); }
- */
-
- private static void registerRecipes_Cosmetics() {
- // Hex Tiles
- final ItemStack[] hexTiles = { GT_Utility.getIntegratedCircuit(6),
- GT_OreDictUnificator.get(OrePrefixes.stone, Materials.Concrete, 1),
- GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Steel, 1),
- GT_OreDictUnificator.get(OrePrefixes.foil, Materials.DarkSteel, 2) };
- GT_Values.RA.addAssemblerRecipe(
- hexTiles,
- FluidRegistry.getFluidStack("molten.plastic", 36),
- new ItemStack(Blocks.largeHexPlate, 2),
- 600,
- 120);
- }
}
diff --git a/src/main/java/common/TileEntities.java b/src/main/java/common/TileEntities.java
index 455bde0e63..9925e7aa27 100644
--- a/src/main/java/common/TileEntities.java
+++ b/src/main/java/common/TileEntities.java
@@ -1,8 +1,15 @@
package common;
-import common.tileentities.*;
+import common.tileentities.GTMTE_LapotronicSuperCapacitor;
+import common.tileentities.GTMTE_SOFuelCellMK1;
+import common.tileentities.GTMTE_SOFuelCellMK2;
+import common.tileentities.GTMTE_SpaceElevator;
import common.tileentities.GTMTE_TFFT;
import common.tileentities.GTMTE_TFFTHatch;
+import common.tileentities.TE_IchorJar;
+import common.tileentities.TE_IchorVoidJar;
+import common.tileentities.TE_ThaumiumReinforcedJar;
+import common.tileentities.TE_ThaumiumReinforcedVoidJar;
import cpw.mods.fml.common.registry.GameRegistry;
public class TileEntities {
@@ -19,25 +26,18 @@ public class TileEntities {
public static GTMTE_TFFTHatch tfftHatch;
public static void preInit() {
- // GameRegistry.registerTileEntity(TE_ItemProxyCable.class, "kekztech_itemproxycable_tile");
- // GameRegistry.registerTileEntity(TE_ItemProxySource.class, "kekztech_itemproxysource_tile");
- // GameRegistry.registerTileEntity(TE_ItemProxyEndpoint.class, "kekztech_itemproxyendpoint_tile");
GameRegistry.registerTileEntity(TE_ThaumiumReinforcedJar.class, "kekztech_thaumiumreinforcedjar");
GameRegistry.registerTileEntity(TE_ThaumiumReinforcedVoidJar.class, "kekztech_thaumiumreinforcedvoidjar");
GameRegistry.registerTileEntity(TE_IchorJar.class, "kekztech_ichorjar");
GameRegistry.registerTileEntity(TE_IchorVoidJar.class, "kekztech_ichorvoidjar");
- // GameRegistry.registerTileEntity(TE_SpaceElevatorCapacitor.class, "kekztech_secapacitor");
- // GameRegistry.registerTileEntity(TE_BeamTransmitter.class, "kekztech_beamtransmitter");
}
public static void init() {
// Multiblock controllers
sofc1 = new GTMTE_SOFuelCellMK1(13101, "multimachine.fuelcellmk1", "Solid-Oxide Fuel Cell Mk I");
sofc2 = new GTMTE_SOFuelCellMK2(13102, "multimachine.fuelcellmk2", "Solid-Oxide Fuel Cell Mk II");
- // mdr = new GTMTE_ModularNuclearReactor(13103, "multimachine.nuclearreactor", "Nuclear Reactor");
tfft = new GTMTE_TFFT(13104, "multimachine.tfft", "T.F.F.T");
lsc = new GTMTE_LapotronicSuperCapacitor(13106, "multimachine.supercapacitor", "Lapotronic Supercapacitor");
- // se = new GTMTE_SpaceElevator(13107, "multimachine.spaceelevator", "Space Elevator");
// Singleblocks
tfftHatch = new GTMTE_TFFTHatch(13109, "machine.tffthatch", "T.F.F.T Multi I/O Hatch");
diff --git a/src/main/java/common/blocks/Block_IchorJar.java b/src/main/java/common/blocks/Block_IchorJar.java
index 88449b7e98..2328458d2d 100644
--- a/src/main/java/common/blocks/Block_IchorJar.java
+++ b/src/main/java/common/blocks/Block_IchorJar.java
@@ -100,7 +100,7 @@ public class Block_IchorJar extends BlockJar {
/**
* Handle compatibility with Essentia Phials
- *
+ *
* @param world Pass through from onBlockActivated()
* @param player Pass through from onBlockActivated()
* @param x Pass through from onBlockActivated()
diff --git a/src/main/java/common/blocks/Block_ItemProxyCable.java b/src/main/java/common/blocks/Block_ItemProxyCable.java
index e693117d9b..bd8511d41e 100644
--- a/src/main/java/common/blocks/Block_ItemProxyCable.java
+++ b/src/main/java/common/blocks/Block_ItemProxyCable.java
@@ -19,7 +19,7 @@ import cpw.mods.fml.relauncher.SideOnly;
public class Block_ItemProxyCable extends Block {
- private static Block_ItemProxyCable instance = new Block_ItemProxyCable();
+ private static final Block_ItemProxyCable instance = new Block_ItemProxyCable();
private Block_ItemProxyCable() {
super(Material.glass);
diff --git a/src/main/java/common/blocks/Block_ReactorChamber_OFF.java b/src/main/java/common/blocks/Block_ReactorChamber_OFF.java
index 4e3cd89318..937483eec2 100644
--- a/src/main/java/common/blocks/Block_ReactorChamber_OFF.java
+++ b/src/main/java/common/blocks/Block_ReactorChamber_OFF.java
@@ -10,7 +10,7 @@ import cpw.mods.fml.common.registry.GameRegistry;
public class Block_ReactorChamber_OFF extends BaseGTUpdateableBlock {
- private static Block_ReactorChamber_OFF instance = new Block_ReactorChamber_OFF();
+ private static final Block_ReactorChamber_OFF instance = new Block_ReactorChamber_OFF();
private Block_ReactorChamber_OFF() {
super(Material.iron);
diff --git a/src/main/java/common/blocks/Block_ReactorChamber_ON.java b/src/main/java/common/blocks/Block_ReactorChamber_ON.java
index bbdd4179c5..a140c1f1d7 100644
--- a/src/main/java/common/blocks/Block_ReactorChamber_ON.java
+++ b/src/main/java/common/blocks/Block_ReactorChamber_ON.java
@@ -10,7 +10,7 @@ import cpw.mods.fml.common.registry.GameRegistry;
public class Block_ReactorChamber_ON extends BaseGTUpdateableBlock {
- private static Block_ReactorChamber_ON instance = new Block_ReactorChamber_ON();
+ private static final Block_ReactorChamber_ON instance = new Block_ReactorChamber_ON();
private Block_ReactorChamber_ON() {
super(Material.iron);
diff --git a/src/main/java/common/blocks/Block_ThaumiumReinforcedJar.java b/src/main/java/common/blocks/Block_ThaumiumReinforcedJar.java
index 5ea0d7c072..53026e1ac3 100644
--- a/src/main/java/common/blocks/Block_ThaumiumReinforcedJar.java
+++ b/src/main/java/common/blocks/Block_ThaumiumReinforcedJar.java
@@ -141,7 +141,7 @@ public class Block_ThaumiumReinforcedJar extends BlockJar {
/**
* Handle compatibility with Essentia Phials
- *
+ *
* @param world Pass through from onBlockActivated()
* @param player Pass through from onBlockActivated()
* @param x Pass through from onBlockActivated()
diff --git a/src/main/java/common/blocks/Block_YSZUnit.java b/src/main/java/common/blocks/Block_YSZUnit.java
index a02bda9fb3..b94c9c53d7 100644
--- a/src/main/java/common/blocks/Block_YSZUnit.java
+++ b/src/main/java/common/blocks/Block_YSZUnit.java
@@ -10,7 +10,7 @@ import cpw.mods.fml.common.registry.GameRegistry;
public class Block_YSZUnit extends BaseGTUpdateableBlock {
- private static Block_YSZUnit instance = new Block_YSZUnit();
+ private static final Block_YSZUnit instance = new Block_YSZUnit();
private Block_YSZUnit() {
super(Material.iron);
diff --git a/src/main/java/common/itemBlocks/IB_LapotronicEnergyUnit.java b/src/main/java/common/itemBlocks/IB_LapotronicEnergyUnit.java
index 37f597b5ae..1b074241de 100644
--- a/src/main/java/common/itemBlocks/IB_LapotronicEnergyUnit.java
+++ b/src/main/java/common/itemBlocks/IB_LapotronicEnergyUnit.java
@@ -43,28 +43,28 @@ public class IB_LapotronicEnergyUnit extends ItemBlock {
public static BigInteger LSC_wireless_eu_cap = BigInteger.valueOf(60 * pow(10, 12));
// 10 Billion EU/t
- private static BigInteger UHV_cap_eu_per_tick = LSC_wireless_eu_cap
+ private static final BigInteger UHV_cap_eu_per_tick = LSC_wireless_eu_cap
.divide(BigInteger.valueOf(LSC_time_between_wireless_rebalance_in_ticks));
// 6 Quadrillion EU.
public static BigInteger UEV_wireless_eu_cap = BigInteger.valueOf(100 * 60 * pow(10, 12));
// 1 Trillion EU/t
- private static BigInteger UEV_cap_eu_per_tick = UEV_wireless_eu_cap
+ private static final BigInteger UEV_cap_eu_per_tick = UEV_wireless_eu_cap
.divide(BigInteger.valueOf(LSC_time_between_wireless_rebalance_in_ticks));
// 600 Quadrillion EU.
public static BigInteger UIV_wireless_eu_cap = BigInteger.valueOf(60 * pow(10, 16));
// 100 Trillion EU/t
- private static BigInteger UIV_cap_eu_per_tick = UIV_wireless_eu_cap
+ private static final BigInteger UIV_cap_eu_per_tick = UIV_wireless_eu_cap
.divide(BigInteger.valueOf(LSC_time_between_wireless_rebalance_in_ticks));
// 60 Quintillion EU.
public static BigInteger UMV_wireless_eu_cap = UIV_wireless_eu_cap.multiply(BigInteger.valueOf(100));
// 10 Quadrillion EU/t
- private static BigInteger UMV_cap_eu_per_tick = UMV_wireless_eu_cap
+ private static final BigInteger UMV_cap_eu_per_tick = UMV_wireless_eu_cap
.divide(BigInteger.valueOf(LSC_time_between_wireless_rebalance_in_ticks));
public static long EV_cap_storage = 60_000_000L;
diff --git a/src/main/java/common/recipeLoaders/AlloySmelter.java b/src/main/java/common/recipeLoaders/AlloySmelter.java
new file mode 100644
index 0000000000..86af24d4a4
--- /dev/null
+++ b/src/main/java/common/recipeLoaders/AlloySmelter.java
@@ -0,0 +1,32 @@
+package common.recipeLoaders;
+
+import static gregtech.api.enums.Mods.BartWorks;
+import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes;
+import static gregtech.api.util.GT_RecipeBuilder.SECONDS;
+
+import kekztech.Items;
+
+import common.items.MetaItem_CraftingComponent;
+
+import gregtech.api.enums.GT_Values;
+import gregtech.api.enums.ItemList;
+import gregtech.api.enums.TierEU;
+
+public class AlloySmelter implements Runnable {
+
+ @Override
+ public void run() {
+ if (BartWorks.isModLoaded()) {
+ final MetaItem_CraftingComponent craftingItem = MetaItem_CraftingComponent.getInstance();
+
+ // YSZ Cermic Plate
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ craftingItem.getStackOfAmountFromDamage(Items.YSZCeramicDust.getMetaID(), 3),
+ ItemList.Shape_Mold_Plate.get(0))
+ .itemOutputs(craftingItem.getStackOfAmountFromDamage(Items.YSZCeramicPlate.getMetaID(), 1))
+ .noFluidInputs().noFluidOutputs().duration(20 * SECONDS).eut(TierEU.RECIPE_HV)
+ .addTo(sAlloySmelterRecipes);
+ }
+ }
+}
diff --git a/src/main/java/common/recipeLoaders/Assembler.java b/src/main/java/common/recipeLoaders/Assembler.java
new file mode 100644
index 0000000000..01001038bd
--- /dev/null
+++ b/src/main/java/common/recipeLoaders/Assembler.java
@@ -0,0 +1,246 @@
+package common.recipeLoaders;
+
+import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAssemblerRecipes;
+import static gregtech.api.util.GT_RecipeBuilder.MINUTES;
+import static gregtech.api.util.GT_RecipeBuilder.SECONDS;
+
+import kekztech.Items;
+
+import net.minecraft.item.ItemStack;
+import net.minecraftforge.fluids.FluidRegistry;
+
+import common.Blocks;
+import common.TileEntities;
+import common.items.ErrorItem;
+import common.items.MetaItem_CraftingComponent;
+
+import gregtech.api.enums.GT_Values;
+import gregtech.api.enums.ItemList;
+import gregtech.api.enums.Materials;
+import gregtech.api.enums.OrePrefixes;
+import gregtech.api.enums.TierEU;
+import gregtech.api.util.GT_ModHandler;
+import gregtech.api.util.GT_OreDictUnificator;
+import gregtech.api.util.GT_Utility;
+
+public class Assembler implements Runnable {
+
+ @Override
+ public void run() {
+ // TFFT Casing
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_Utility.getIntegratedCircuit(6),
+ GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.StainlessSteel, 1),
+ GT_OreDictUnificator.get(OrePrefixes.plate, Materials.DarkSteel, 3),
+ GT_OreDictUnificator.get(OrePrefixes.plate, Materials.EnderPearl, 3))
+ .itemOutputs(new ItemStack(Blocks.tfftStorageField, 1))
+ .fluidInputs(Materials.Polytetrafluoroethylene.getMolten(144)).noFluidOutputs().duration(5 * SECONDS)
+ .eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes);
+ // TFFT Multi Hatch
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ ItemList.Hull_HV.get(1),
+ ItemList.Cover_FluidStorageMonitor.get(1),
+ ItemList.Field_Generator_LV.get(4),
+ GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.Polytetrafluoroethylene, 25))
+ .itemOutputs(TileEntities.tfftHatch.getStackForm(1)).fluidInputs(Materials.Plastic.getMolten(432))
+ .noFluidOutputs().duration(20 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes);
+ // TFFTStorageField1
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_Utility.getIntegratedCircuit(6),
+ GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.CrudeSteel, 1),
+ GT_OreDictUnificator.get(OrePrefixes.plate, Materials.CrudeSteel, 6),
+ GT_OreDictUnificator.get(OrePrefixes.pipeNonuple, Materials.Steel, 3),
+ ItemList.FluidRegulator_LV.get(1))
+ .itemOutputs(new ItemStack(Blocks.tfftStorageField, 1, 1)).fluidInputs(Materials.Glass.getMolten(144))
+ .noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes);
+ // TFFTStorageField2
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_Utility.getIntegratedCircuit(6),
+ ItemList.Casing_Tank_1.get(1),
+ GT_OreDictUnificator.get(OrePrefixes.plate, Materials.EnergeticSilver, 6),
+ GT_OreDictUnificator.get(OrePrefixes.pipeNonuple, Materials.Plastic, 3),
+ ItemList.FluidRegulator_MV.get(1))
+ .itemOutputs(new ItemStack(Blocks.tfftStorageField, 1, 2)).fluidInputs(Materials.Plastic.getMolten(288))
+ .noFluidOutputs().duration(10 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes);
+ // TFFTStorageField3
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_Utility.getIntegratedCircuit(6),
+ ItemList.Casing_Tank_3.get(1),
+ GT_OreDictUnificator.get(OrePrefixes.plate, Materials.VividAlloy, 6),
+ GT_OreDictUnificator.get(OrePrefixes.pipeNonuple, Materials.StainlessSteel, 3),
+ ItemList.Field_Generator_LV.get(1),
+ ItemList.FluidRegulator_HV.get(1))
+ .itemOutputs(new ItemStack(Blocks.tfftStorageField, 1, 3)).fluidInputs(Materials.Plastic.getMolten(432))
+ .noFluidOutputs().duration(20 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes);
+ // TFFTStorageField4
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_Utility.getIntegratedCircuit(6),
+ ItemList.Casing_Tank_5.get(1),
+ GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Enderium, 6),
+ GT_OreDictUnificator.get(OrePrefixes.pipeNonuple, Materials.Polytetrafluoroethylene, 3),
+ ItemList.Field_Generator_MV.get(2),
+ ItemList.FluidRegulator_EV.get(1))
+ .itemOutputs(new ItemStack(Blocks.tfftStorageField, 1, 4)).fluidInputs(Materials.Epoxid.getMolten(864))
+ .noFluidOutputs().duration(20 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes);
+ // TFFTStorageField5
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_Utility.getIntegratedCircuit(6),
+ ItemList.Casing_Tank_7.get(1),
+ GT_OreDictUnificator.get(OrePrefixes.plate, Materials.CrystallineAlloy, 6),
+ GT_OreDictUnificator.get(OrePrefixes.pipeNonuple, Materials.Enderium, 3),
+ ItemList.Field_Generator_HV.get(4),
+ ItemList.FluidRegulator_IV.get(1))
+ .itemOutputs(new ItemStack(Blocks.tfftStorageField, 1, 5)).fluidInputs(Materials.Epoxid.getMolten(1152))
+ .noFluidOutputs().duration(20 * SECONDS).eut(TierEU.RECIPE_IV).addTo(sAssemblerRecipes);
+ // LSC Casing
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Tantalum, 4),
+ GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.TungstenSteel, 2),
+ GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.TungstenSteel, 2),
+ GT_OreDictUnificator.get(OrePrefixes.block, Materials.Lapis, 1))
+ .itemOutputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 0)).noFluidInputs().noFluidOutputs()
+ .duration(5 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes);
+ // EV Capacitor alt recipe
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 6),
+ GT_ModHandler.getIC2Item("lapotronCrystal", 1L, GT_Values.W),
+ GT_Utility.getIntegratedCircuit(7))
+ .itemOutputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 7)).noFluidInputs().noFluidOutputs()
+ .duration(10 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes);
+ // IV Capacitor alt recipe
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 6),
+ ItemList.Energy_LapotronicOrb.get(1L),
+ GT_Utility.getIntegratedCircuit(1))
+ .itemOutputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 1)).noFluidInputs().noFluidOutputs()
+ .duration(20 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes);
+ // LuV Capacitor alt recipe
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ ItemList.Energy_LapotronicOrb2.get(1),
+ GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Osmiridium, 4),
+ GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Osmiridium, 24),
+ GT_Utility.getIntegratedCircuit(6))
+ .itemOutputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 2)).noFluidInputs().noFluidOutputs()
+ .duration(40 * SECONDS).eut(TierEU.RECIPE_IV).addTo(sAssemblerRecipes);
+ // ZPM Capacitor alt recipe
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ ItemList.Energy_Module.get(1),
+ GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.NaquadahAlloy, 4),
+ GT_OreDictUnificator.get(OrePrefixes.screw, Materials.NaquadahAlloy, 24),
+ GT_Utility.getIntegratedCircuit(6))
+ .itemOutputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 3)).noFluidInputs().noFluidOutputs()
+ .duration(1 * MINUTES + 20 * SECONDS).eut(TierEU.RECIPE_LuV).addTo(sAssemblerRecipes);
+ // UV Capacitor alt recipe
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ ItemList.Energy_Cluster.get(1),
+ GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Neutronium, 4),
+ GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Neutronium, 24),
+ GT_Utility.getIntegratedCircuit(6))
+ .itemOutputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 4)).noFluidInputs().noFluidOutputs()
+ .duration(2 * MINUTES + 40 * SECONDS).eut(TierEU.RECIPE_ZPM).addTo(sAssemblerRecipes);
+ // UHV Capacitor alt recipe
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ ItemList.ZPM3.get(1),
+ GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.CosmicNeutronium, 4),
+ GT_OreDictUnificator.get(OrePrefixes.screw, Materials.CosmicNeutronium, 24),
+ GT_Utility.getIntegratedCircuit(6))
+ .itemOutputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 5)).noFluidInputs().noFluidOutputs()
+ .duration(5 * MINUTES + 20 * SECONDS).eut(TierEU.RECIPE_UV).addTo(sAssemblerRecipes);
+ // UEV Capacitor alt recipe
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ ItemList.ZPM4.get(1),
+ GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Infinity, 4),
+ GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Infinity, 24),
+ GT_Utility.getIntegratedCircuit(6))
+ .itemOutputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 8)).noFluidInputs().noFluidOutputs()
+ .duration(10 * MINUTES + 40 * SECONDS).eut(TierEU.RECIPE_UHV).addTo(sAssemblerRecipes);
+ // UIV Capacitor alt recipe
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ ItemList.ZPM5.get(1),
+ GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.TranscendentMetal, 4),
+ GT_OreDictUnificator.get(OrePrefixes.screw, Materials.TranscendentMetal, 24),
+ GT_Utility.getIntegratedCircuit(6))
+ .itemOutputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 9)).noFluidInputs().noFluidOutputs()
+ .duration(10 * MINUTES + 40 * SECONDS).eut(TierEU.RECIPE_UEV).addTo(sAssemblerRecipes);
+ // UMV Capacitor alt recipe
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ ItemList.ZPM6.get(1),
+ GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.SpaceTime, 4),
+ GT_OreDictUnificator.get(OrePrefixes.screw, Materials.SpaceTime, 24),
+ GT_Utility.getIntegratedCircuit(6))
+ .itemOutputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 10)).noFluidInputs().noFluidOutputs()
+ .duration(10 * MINUTES + 40 * SECONDS).eut(TierEU.RECIPE_UIV).addTo(sAssemblerRecipes);
+
+ final MetaItem_CraftingComponent craftingItem = MetaItem_CraftingComponent.getInstance();
+
+ // YSZ Unit
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_Utility.getIntegratedCircuit(6),
+ craftingItem.getStackOfAmountFromDamage(Items.YSZCeramicPlate.getMetaID(), 4),
+ GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Yttrium, 1),
+ GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.StainlessSteel, 1),
+ ItemList.Electric_Motor_HV.get(1L))
+ .itemOutputs(new ItemStack(Blocks.yszUnit, 1)).fluidInputs(Materials.Hydrogen.getGas(4000))
+ .noFluidOutputs().duration(60 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes);
+ // GDC Unit
+
+ GT_Values.RA.stdBuilder().itemInputs(
+ GT_Utility.getIntegratedCircuit(6),
+ craftingItem.getStackOfAmountFromDamage(Items.GDCCeramicPlate.getMetaID(), 8),
+ GT_OreDictUnificator
+ .get(OrePrefixes.frameGt, Materials.Gadolinium, new ItemStack(ErrorItem.getInstance(), 1), 1),
+ GT_OreDictUnificator
+ .get(OrePrefixes.rotor, Materials.Desh, new ItemStack(ErrorItem.getInstance(), 1), 1),
+ ItemList.Electric_Motor_IV.get(1L)).itemOutputs(new ItemStack(Blocks.gdcUnit, 1))
+ .fluidInputs(Materials.Hydrogen.getGas(16000)).noFluidOutputs().duration(2 * MINUTES)
+ .eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes);
+ // Hex Tiles
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_Utility.getIntegratedCircuit(6),
+ GT_OreDictUnificator.get(OrePrefixes.stone, Materials.Concrete, 1),
+ GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Steel, 1),
+ GT_OreDictUnificator.get(OrePrefixes.foil, Materials.DarkSteel, 2))
+ .itemOutputs(new ItemStack(Blocks.largeHexPlate, 2))
+ .fluidInputs(FluidRegistry.getFluidStack("molten.plastic", 36)).noFluidOutputs().duration(30 * SECONDS)
+ .eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes);
+
+ }
+}
diff --git a/src/main/java/common/recipeLoaders/AssemblyLine.java b/src/main/java/common/recipeLoaders/AssemblyLine.java
new file mode 100644
index 0000000000..6c56d2ccb4
--- /dev/null
+++ b/src/main/java/common/recipeLoaders/AssemblyLine.java
@@ -0,0 +1,205 @@
+package common.recipeLoaders;
+
+import static gregtech.api.enums.Mods.Avaritia;
+import static gregtech.api.enums.Mods.EnderIO;
+import static gregtech.api.enums.Mods.EternalSingularity;
+import static gregtech.api.enums.Mods.GTPlusPlus;
+import static gregtech.api.enums.Mods.GoodGenerator;
+import static gregtech.api.enums.Mods.NewHorizonsCoreMod;
+import static gregtech.api.enums.Mods.UniversalSingularities;
+import static gregtech.api.util.GT_RecipeBuilder.HOURS;
+import static gregtech.api.util.GT_RecipeBuilder.MINUTES;
+import static gregtech.api.util.GT_RecipeBuilder.SECONDS;
+import static gregtech.api.util.GT_RecipeConstants.AssemblyLine;
+import static gregtech.api.util.GT_RecipeConstants.RESEARCH_ITEM;
+import static gregtech.api.util.GT_RecipeConstants.RESEARCH_TIME;
+
+import net.minecraft.item.ItemStack;
+import net.minecraftforge.fluids.Fluid;
+import net.minecraftforge.fluids.FluidRegistry;
+import net.minecraftforge.fluids.FluidStack;
+
+import common.Blocks;
+
+import gregtech.api.enums.GT_Values;
+import gregtech.api.enums.ItemList;
+import gregtech.api.enums.Materials;
+import gregtech.api.enums.OrePrefixes;
+import gregtech.api.enums.TierEU;
+import gregtech.api.util.GT_ModHandler;
+import gregtech.api.util.GT_OreDictUnificator;
+
+public class AssemblyLine implements Runnable {
+
+ @Override
+ public void run() {
+ final Fluid radoxPoly = FluidRegistry.getFluid("molten.radoxpoly") != null
+ ? FluidRegistry.getFluid("molten.radoxpoly")
+ : FluidRegistry.getFluid("molten.polybenzimidazole");
+
+ final Fluid solderIndalloy = FluidRegistry.getFluid("molten.indalloy140") != null
+ ? FluidRegistry.getFluid("molten.indalloy140")
+ : FluidRegistry.getFluid("molten.solderingalloy");
+
+ // TFFTStorageField6
+ GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, new ItemStack(Blocks.tfftStorageField, 1, 5))
+ .metadata(RESEARCH_TIME, 1 * HOURS + 6 * MINUTES + 40 * SECONDS)
+ .itemInputs(
+ ItemList.Casing_Tank_7.get(4),
+ GT_OreDictUnificator.get(OrePrefixes.plateQuadruple, Materials.CrystallinePinkSlime, 6),
+ GT_OreDictUnificator.get(OrePrefixes.pipeNonuple, Materials.Naquadah, 3),
+ GT_ModHandler.getModItem(NewHorizonsCoreMod.ID, "item.ChromeBars", 6),
+ GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.Quantium, 6),
+ ItemList.Field_Generator_EV.get(8),
+ ItemList.FluidRegulator_LuV.get(1),
+ GT_ModHandler.getModItem(NewHorizonsCoreMod.ID, "item.EngineeringProcessorFluidEmeraldCore", 4))
+ .fluidInputs(Materials.Enderium.getMolten(1440), Materials.Polybenzimidazole.getMolten(1584))
+ .noFluidOutputs().itemOutputs(new ItemStack(Blocks.tfftStorageField, 1, 6)).eut(TierEU.RECIPE_LuV)
+ .duration(30 * SECONDS).addTo(AssemblyLine);
+
+ // TFFTStorageField7
+ GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, new ItemStack(Blocks.tfftStorageField, 1, 6))
+ .metadata(RESEARCH_TIME, 1 * HOURS + 6 * MINUTES + 40 * SECONDS)
+ .itemInputs(
+ ItemList.Casing_Tank_10.get(16),
+ GT_OreDictUnificator.get(OrePrefixes.plateQuadruple, Materials.MelodicAlloy, 6),
+ GT_OreDictUnificator.get(OrePrefixes.pipeNonuple, Materials.NetherStar, 3),
+ GT_ModHandler.getModItem(NewHorizonsCoreMod.ID, "item.OsmiumBars", 6),
+ GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.MysteriousCrystal, 6),
+ ItemList.Field_Generator_IV.get(16),
+ ItemList.Field_Generator_LuV.get(4),
+ ItemList.FluidRegulator_UV.get(1),
+ GT_ModHandler
+ .getModItem(NewHorizonsCoreMod.ID, "item.EngineeringProcessorFluidEmeraldCore", 16))
+ .fluidInputs(Materials.CrystallineAlloy.getMolten(2880), Materials.Polybenzimidazole.getMolten(2016))
+ .noFluidOutputs().itemOutputs(new ItemStack(Blocks.tfftStorageField, 1, 7)).duration(30 * SECONDS)
+ .eut(TierEU.RECIPE_UV).addTo(AssemblyLine);
+
+ // TFFTStorageField8
+ GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, new ItemStack(Blocks.tfftStorageField, 1, 7))
+ .metadata(RESEARCH_TIME, 2 * HOURS + 40 * MINUTES)
+ .itemInputs(
+ ItemList.Quantum_Tank_IV.get(1),
+ GT_ModHandler.getModItem(Avaritia.ID, "Neutronium_Compressor", 1),
+ GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.StellarAlloy, 6),
+ GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.StellarAlloy, 6),
+ GT_OreDictUnificator.get(OrePrefixes.pipeNonuple, Materials.DraconiumAwakened, 3),
+ GT_ModHandler.getModItem(NewHorizonsCoreMod.ID, "item.NeutroniumBars", 6),
+ GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.InfinityCatalyst, 6),
+ ItemList.Field_Generator_ZPM.get(16),
+ ItemList.Field_Generator_UV.get(4),
+ GT_ModHandler.getModItem(GoodGenerator.ID, "huiCircuit", 4, 2),
+ GT_ModHandler
+ .getModItem(UniversalSingularities.ID, "universal.tinkersConstruct.singularity", 1, 4))
+ .fluidInputs(Materials.CrystallinePinkSlime.getMolten(4320), new FluidStack(radoxPoly, 2880))
+ .noFluidOutputs().itemOutputs(new ItemStack(Blocks.tfftStorageField, 1, 8)).duration(30 * SECONDS)
+ .eut(TierEU.RECIPE_UEV).addTo(AssemblyLine);
+
+ GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, new ItemStack(Blocks.tfftStorageField, 1, 8))
+ .metadata(RESEARCH_TIME, 2 * HOURS + 13 * MINUTES + 20 * SECONDS)
+ .itemInputs(
+ ItemList.Quantum_Tank_IV.get(4),
+ GT_ModHandler.getModItem(Avaritia.ID, "Neutronium_Compressor", 2),
+ GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.TranscendentMetal, 6),
+ GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.TranscendentMetal, 6),
+ GT_OreDictUnificator.get(OrePrefixes.pipeNonuple, Materials.Infinity, 3),
+ ItemList.EnergisedTesseract.get(1),
+ GT_ModHandler.getModItem(GTPlusPlus.ID, "itemRotorHypogen", 6),
+ ItemList.Field_Generator_UHV.get(16),
+ ItemList.Field_Generator_UEV.get(4),
+ GT_ModHandler.getModItem(GoodGenerator.ID, "huiCircuit", 4, 3),
+ GT_ModHandler
+ .getModItem(UniversalSingularities.ID, "universal.tinkersConstruct.singularity", 1, 4))
+ .fluidInputs(Materials.MelodicAlloy.getMolten(5760), new FluidStack(radoxPoly, 3456)).noFluidOutputs()
+ .itemOutputs(new ItemStack(Blocks.tfftStorageField, 1, 9)).duration(30 * SECONDS).eut(TierEU.RECIPE_UMV)
+ .addTo(AssemblyLine);
+
+ // TFFTStorageField10
+ GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, new ItemStack(Blocks.tfftStorageField, 1, 9))
+ .metadata(RESEARCH_TIME, 2 * HOURS + 46 * MINUTES + 40 * SECONDS)
+ .itemInputs(
+ ItemList.Quantum_Tank_IV.get(16),
+ GT_ModHandler.getModItem(Avaritia.ID, "Neutronium_Compressor", 4),
+ GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.SpaceTime, 6),
+ GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.SpaceTime, 6),
+ GT_OreDictUnificator.get(OrePrefixes.pipeNonuple, Materials.SpaceTime, 3),
+ ItemList.EnergisedTesseract.get(6),
+ GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.SpaceTime, 6),
+ ItemList.Field_Generator_UEV.get(16),
+ ItemList.Field_Generator_UIV.get(4),
+ GT_ModHandler.getModItem(GoodGenerator.ID, "huiCircuit", 4, 4),
+ GT_ModHandler.getModItem(GoodGenerator.ID, "huiCircuit", 4, 4),
+ GT_ModHandler.getModItem(EnderIO.ID, "itemBasicCapacitor", 64, 6),
+ GT_ModHandler.getModItem(EternalSingularity.ID, "eternal_singularity", 1))
+ .fluidInputs(Materials.StellarAlloy.getMolten(7200), new FluidStack(radoxPoly, 4608)).noFluidOutputs()
+ .itemOutputs(new ItemStack(Blocks.tfftStorageField, 1, 10)).duration(30 * SECONDS)
+ .eut(TierEU.RECIPE_UXV).addTo(AssemblyLine);
+
+ // LuV Capacitor
+ GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 1))
+ .metadata(RESEARCH_TIME, 4 * HOURS)
+ .itemInputs(
+ GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Osmiridium, 4),
+ GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Osmiridium, 24),
+ ItemList.Circuit_Board_Elite.get(1),
+ GT_OreDictUnificator.get(OrePrefixes.foil, Materials.NaquadahAlloy, 64),
+ new Object[] { OrePrefixes.circuit.get(Materials.Master), 4 },
+ ItemList.Circuit_Parts_Crystal_Chip_Master.get(36),
+ ItemList.Circuit_Parts_Crystal_Chip_Master.get(36),
+ ItemList.Circuit_Chip_HPIC.get(64),
+ ItemList.Circuit_Parts_DiodeASMD.get(8),
+ ItemList.Circuit_Parts_CapacitorASMD.get(8),
+ ItemList.Circuit_Parts_ResistorASMD.get(8),
+ ItemList.Circuit_Parts_TransistorASMD.get(8),
+ GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Platinum, 64))
+ .fluidInputs(new FluidStack(solderIndalloy, 720)).noFluidOutputs()
+ .itemOutputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 2)).duration(50 * SECONDS).eut(80_000)
+ .addTo(AssemblyLine);
+
+ // ZPM Capacitor
+ GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 2))
+ .metadata(RESEARCH_TIME, 4 * HOURS)
+ .itemInputs(
+ GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.NaquadahAlloy, 4),
+ GT_OreDictUnificator.get(OrePrefixes.screw, Materials.NaquadahAlloy, 24),
+ GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Europium, 16L),
+ new Object[] { OrePrefixes.circuit.get(Materials.Ultimate), 1 },
+ new Object[] { OrePrefixes.circuit.get(Materials.Ultimate), 1 },
+ new Object[] { OrePrefixes.circuit.get(Materials.Ultimate), 1 },
+ new Object[] { OrePrefixes.circuit.get(Materials.Ultimate), 1 },
+ ItemList.Energy_LapotronicOrb2.get(8L),
+ ItemList.Field_Generator_LuV.get(2),
+ ItemList.Circuit_Wafer_SoC2.get(64),
+ ItemList.Circuit_Wafer_SoC2.get(64),
+ ItemList.Circuit_Parts_DiodeASMD.get(8),
+ GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Naquadah, 32))
+ .fluidInputs(
+ new FluidStack(solderIndalloy, 2880),
+ new FluidStack(FluidRegistry.getFluid("ic2coolant"), 16000))
+ .noFluidOutputs().itemOutputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 3))
+ .duration(1 * MINUTES + 40 * SECONDS).eut(100_000).addTo(AssemblyLine);
+
+ // UV Capacitor
+ GT_Values.RA.stdBuilder().metadata(RESEARCH_ITEM, new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 3))
+ .metadata(RESEARCH_TIME, 4 * HOURS)
+ .itemInputs(
+ GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Neutronium, 4),
+ GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Neutronium, 24),
+ GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Americium, 32L),
+ new Object[] { OrePrefixes.circuit.get(Materials.SuperconductorUHV), 1 },
+ new Object[] { OrePrefixes.circuit.get(Materials.SuperconductorUHV), 1 },
+ new Object[] { OrePrefixes.circuit.get(Materials.SuperconductorUHV), 1 },
+ new Object[] { OrePrefixes.circuit.get(Materials.SuperconductorUHV), 1 },
+ ItemList.Energy_Module.get(8L),
+ ItemList.Field_Generator_ZPM.get(2),
+ ItemList.Circuit_Wafer_HPIC.get(64),
+ ItemList.Circuit_Wafer_HPIC.get(64),
+ ItemList.Circuit_Parts_DiodeASMD.get(16),
+ GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.NaquadahAlloy, 32))
+ .fluidInputs(
+ new FluidStack(solderIndalloy, 2880),
+ new FluidStack(FluidRegistry.getFluid("ic2coolant"), 16000))
+ .noFluidOutputs().itemOutputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 4)).eut(200_000)
+ .duration(1 * MINUTES + 40 * SECONDS).addTo(AssemblyLine);
+ }
+}
diff --git a/src/main/java/common/recipeLoaders/ChemicalReactor.java b/src/main/java/common/recipeLoaders/ChemicalReactor.java
new file mode 100644
index 0000000000..8d8a4a61b7
--- /dev/null
+++ b/src/main/java/common/recipeLoaders/ChemicalReactor.java
@@ -0,0 +1,28 @@
+package common.recipeLoaders;
+
+import static gregtech.api.util.GT_RecipeBuilder.SECONDS;
+import static gregtech.api.util.GT_RecipeConstants.UniversalChemical;
+
+import kekztech.Items;
+
+import common.items.MetaItem_CraftingComponent;
+
+import gregtech.api.enums.GT_Values;
+import gregtech.api.enums.Materials;
+import gregtech.api.enums.TierEU;
+import gregtech.api.util.GT_Utility;
+
+public class ChemicalReactor implements Runnable {
+
+ @Override
+ public void run() {
+ final MetaItem_CraftingComponent craftingItem = MetaItem_CraftingComponent.getInstance();
+
+ // Ceria Dust
+ GT_Values.RA.stdBuilder().itemInputs(Materials.Cerium.getDust(2), GT_Utility.getIntegratedCircuit(6))
+ .itemOutputs(craftingItem.getStackOfAmountFromDamage(Items.CeriaDust.getMetaID(), 2))
+ .fluidInputs(Materials.Oxygen.getGas(3000)).noFluidOutputs().duration(20 * SECONDS)
+ .eut(TierEU.RECIPE_LV).addTo(UniversalChemical);
+
+ }
+}
diff --git a/src/main/java/common/recipeLoaders/Crafting.java b/src/main/java/common/recipeLoaders/Crafting.java
new file mode 100644
index 0000000000..b481605204
--- /dev/null
+++ b/src/main/java/common/recipeLoaders/Crafting.java
@@ -0,0 +1,75 @@
+package common.recipeLoaders;
+
+import net.minecraft.item.ItemStack;
+
+import util.Util;
+
+import common.Blocks;
+import common.TileEntities;
+
+import gregtech.api.enums.GT_Values;
+import gregtech.api.enums.ItemList;
+import gregtech.api.enums.Materials;
+import gregtech.api.enums.OrePrefixes;
+import gregtech.api.util.GT_ModHandler;
+import gregtech.api.util.GT_OreDictUnificator;
+
+public class Crafting implements Runnable {
+
+ @Override
+ public void run() {
+ // TFFT Controller
+ GT_ModHandler.addCraftingRecipe(
+ TileEntities.tfft.getStackForm(1),
+ new Object[] { "ESE", "FTF", "CVC", 'E',
+ GT_OreDictUnificator.get(OrePrefixes.screw, Materials.EnderEye, 1), 'S',
+ ItemList.Cover_Screen.get(1), 'F', ItemList.Field_Generator_LV.get(1), 'T',
+ new ItemStack(Blocks.tfftStorageField, 1), 'C', "circuitData", 'V',
+ GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.VibrantAlloy, 1), });
+
+ // SOFC Controller mk1
+ final Object[] mk1_recipe = { "CCC", "PHP", "FBL", 'C', OrePrefixes.circuit.get(Materials.Advanced), 'P',
+ ItemList.Electric_Pump_HV.get(1L), 'H', ItemList.Hull_HV.get(1L), 'F',
+ GT_OreDictUnificator.get(OrePrefixes.pipeSmall, Materials.StainlessSteel, 1), 'B',
+ GT_OreDictUnificator.get(OrePrefixes.cableGt02, Materials.Gold, 1), 'L',
+ GT_OreDictUnificator.get(OrePrefixes.pipeLarge, Materials.StainlessSteel, 1) };
+ GT_ModHandler.addCraftingRecipe(TileEntities.sofc1.getStackForm(1), mk1_recipe);
+
+ // SOFC Controller mk2
+ final Object[] mk2_recipe = { "CCC", "PHP", "FBL", 'C', OrePrefixes.circuit.get(Materials.Master), 'P',
+ ItemList.Electric_Pump_IV.get(1L), 'H', ItemList.Hull_IV.get(1L), 'F',
+ GT_OreDictUnificator.get(OrePrefixes.pipeSmall, Materials.Ultimate, 1), 'B',
+ Util.getStackofAmountFromOreDict("wireGt04SuperconductorEV", 1), 'L',
+ GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.Ultimate, 1) };
+ GT_ModHandler.addCraftingRecipe(TileEntities.sofc2.getStackForm(1), mk2_recipe);
+
+ // LSC Controller
+ final Object[] lsc_recipe = { "LPL", "CBC", "LPL", 'L', ItemList.IC2_LapotronCrystal.getWildcard(1L), 'P',
+ ItemList.Circuit_Chip_PIC.get(1L), 'C', OrePrefixes.circuit.get(Materials.Master), 'B',
+ new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 0), };
+ GT_ModHandler.addCraftingRecipe(TileEntities.lsc.getStackForm(1), lsc_recipe);
+
+ // LSC casing
+ final Object[] lcBase_recipe = { "WBW", "RLR", "WBW", 'W', OrePrefixes.plate.get(Materials.Tantalum), 'B',
+ OrePrefixes.frameGt.get(Materials.TungstenSteel), 'R',
+ OrePrefixes.stickLong.get(Materials.TungstenSteel), 'L', OrePrefixes.block.get(Materials.Lapis) };
+ GT_ModHandler.addCraftingRecipe(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 0), lcBase_recipe);
+
+ // Empty Capacitor
+ final Object[] lcEmpty_recipe = { "SLS", "L L", "SLS", 'S', OrePrefixes.screw.get(Materials.Lapis), 'L',
+ OrePrefixes.plate.get(Materials.Lapis) };
+ GT_ModHandler.addCraftingRecipe(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 6), lcEmpty_recipe);
+
+ // EV Capacitor
+ final Object[] lcEV_recipe = { "SLS", "LCL", "SLS", 'S', OrePrefixes.screw.get(Materials.Lapis), 'L',
+ OrePrefixes.plate.get(Materials.Lapis), 'C',
+ GT_ModHandler.getIC2Item("lapotronCrystal", 1L, GT_Values.W) };
+ GT_ModHandler.addCraftingRecipe(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 7), lcEV_recipe);
+
+ // IV Capacitor
+ final Object[] lcIV_recipe = { "SLS", "LOL", "SLS", 'S', OrePrefixes.screw.get(Materials.Lapis), 'L',
+ OrePrefixes.plate.get(Materials.Lapis), 'O', ItemList.Energy_LapotronicOrb.get(1L) };
+ GT_ModHandler.addCraftingRecipe(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 1), lcIV_recipe);
+
+ }
+}
diff --git a/src/main/java/common/recipeLoaders/FormingPress.java b/src/main/java/common/recipeLoaders/FormingPress.java
new file mode 100644
index 0000000000..b53a68da27
--- /dev/null
+++ b/src/main/java/common/recipeLoaders/FormingPress.java
@@ -0,0 +1,28 @@
+package common.recipeLoaders;
+
+import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sPressRecipes;
+import static gregtech.api.util.GT_RecipeBuilder.SECONDS;
+
+import kekztech.Items;
+
+import common.items.MetaItem_CraftingComponent;
+
+import gregtech.api.enums.GT_Values;
+import gregtech.api.enums.ItemList;
+import gregtech.api.enums.TierEU;
+
+public class FormingPress implements Runnable {
+
+ @Override
+ public void run() {
+ final MetaItem_CraftingComponent craftingItem = MetaItem_CraftingComponent.getInstance();
+
+ // YSZ Ceramic Plate
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ craftingItem.getStackOfAmountFromDamage(Items.GDCCeramicDust.getMetaID(), 10),
+ ItemList.Shape_Mold_Plate.get(0))
+ .itemOutputs(craftingItem.getStackOfAmountFromDamage(Items.GDCCeramicPlate.getMetaID(), 1))
+ .noFluidInputs().noFluidOutputs().duration(40 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sPressRecipes);
+ }
+}
diff --git a/src/main/java/common/recipeLoaders/Mixer.java b/src/main/java/common/recipeLoaders/Mixer.java
new file mode 100644
index 0000000000..a3a9d6d3e6
--- /dev/null
+++ b/src/main/java/common/recipeLoaders/Mixer.java
@@ -0,0 +1,44 @@
+package common.recipeLoaders;
+
+import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMixerRecipes;
+import static gregtech.api.util.GT_RecipeBuilder.SECONDS;
+
+import kekztech.Items;
+
+import net.minecraft.item.ItemStack;
+
+import common.items.ErrorItem;
+import common.items.MetaItem_CraftingComponent;
+
+import gregtech.api.enums.GT_Values;
+import gregtech.api.enums.Materials;
+import gregtech.api.enums.OrePrefixes;
+import gregtech.api.enums.TierEU;
+import gregtech.api.util.GT_OreDictUnificator;
+import gregtech.api.util.GT_Utility;
+
+public class Mixer implements Runnable {
+
+ @Override
+ public void run() {
+ final MetaItem_CraftingComponent craftingItem = MetaItem_CraftingComponent.getInstance();
+
+ // YSZ Ceramic Dust
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ Items.YttriaDust.getOreDictedItemStack(1),
+ Items.ZirconiaDust.getOreDictedItemStack(5),
+ GT_Utility.getIntegratedCircuit(6))
+ .itemOutputs(craftingItem.getStackOfAmountFromDamage(Items.YSZCeramicDust.getMetaID(), 6))
+ .noFluidInputs().noFluidOutputs().duration(20 * SECONDS).eut(96).addTo(sMixerRecipes);
+
+ // GDC Ceramic Dust
+ GT_Values.RA.stdBuilder().itemInputs(
+ GT_OreDictUnificator
+ .get(OrePrefixes.dust, Materials.Gadolinium, new ItemStack(ErrorItem.getInstance(), 1), 1),
+ craftingItem.getStackOfAmountFromDamage(Items.CeriaDust.getMetaID(), 9),
+ GT_Utility.getIntegratedCircuit(6))
+ .itemOutputs(craftingItem.getStackOfAmountFromDamage(Items.GDCCeramicDust.getMetaID(), 10))
+ .noFluidInputs().noFluidOutputs().duration(20 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sMixerRecipes);
+ }
+}
diff --git a/src/main/java/common/recipeLoaders/ResearchableAssemblyLine.java b/src/main/java/common/recipeLoaders/ResearchableAssemblyLine.java
new file mode 100644
index 0000000000..ce8c68fd15
--- /dev/null
+++ b/src/main/java/common/recipeLoaders/ResearchableAssemblyLine.java
@@ -0,0 +1,136 @@
+package common.recipeLoaders;
+
+import static gregtech.api.enums.Mods.GTPlusPlus;
+import static gregtech.api.enums.Mods.NewHorizonsCoreMod;
+
+import net.minecraft.item.ItemStack;
+import net.minecraftforge.fluids.Fluid;
+import net.minecraftforge.fluids.FluidRegistry;
+import net.minecraftforge.fluids.FluidStack;
+
+import com.github.technus.tectech.recipe.TT_recipeAdder;
+import common.Blocks;
+
+import gregtech.api.enums.ItemList;
+import gregtech.api.enums.Materials;
+import gregtech.api.enums.OrePrefixes;
+import gregtech.api.enums.TierEU;
+import gregtech.api.util.GT_ModHandler;
+import gregtech.api.util.GT_OreDictUnificator;
+
+public class ResearchableAssemblyLine implements Runnable {
+
+ @Override
+ public void run() {
+ final Fluid solderUEV = FluidRegistry.getFluid("molten.mutatedlivingsolder") != null
+ ? FluidRegistry.getFluid("molten.mutatedlivingsolder")
+ : FluidRegistry.getFluid("molten.solderingalloy");
+
+ // Extremely Ultimate Capacitor (UEV)
+ TT_recipeAdder.addResearchableAssemblylineRecipe(
+ new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 5),
+ 1200000,
+ 128,
+ 8000000,
+ 16,
+ new Object[] { GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Infinity, 4),
+ GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Infinity, 24),
+ GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.InfinityCatalyst, 32L),
+ GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.InfinityCatalyst, 32L),
+ new Object[] { OrePrefixes.circuit.get(Materials.Optical), 1 },
+ new Object[] { OrePrefixes.circuit.get(Materials.Optical), 1 },
+ new Object[] { OrePrefixes.circuit.get(Materials.Optical), 1 },
+ new Object[] { OrePrefixes.circuit.get(Materials.Optical), 1 }, ItemList.ZPM3.get(8L),
+ ItemList.Field_Generator_UEV.get(4), ItemList.Circuit_Wafer_PPIC.get(64),
+ ItemList.Circuit_Wafer_PPIC.get(64), ItemList.Circuit_Wafer_SoC2.get(64),
+ ItemList.Circuit_Parts_DiodeXSMD.get(64),
+ GT_OreDictUnificator.get(OrePrefixes.wireGt04, Materials.SuperconductorUEV, 64) },
+ new FluidStack[] { new FluidStack(solderUEV, 9216), Materials.Quantium.getMolten(18432),
+ Materials.Naquadria.getMolten(18432), Materials.SuperCoolant.getFluid(64000) },
+ new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 8),
+ 250 * 20,
+ (int) TierEU.RECIPE_UEV);
+
+ if (GTPlusPlus.isModLoaded()) {
+ // Insanely Ultimate Capacitor (UIV)
+ TT_recipeAdder.addResearchableAssemblylineRecipe(
+ new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 8),
+ 24_000_000,
+ 1_280,
+ 32_000_000,
+ 32,
+ new Object[] { GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.TranscendentMetal, 4),
+ GT_OreDictUnificator.get(OrePrefixes.screw, Materials.TranscendentMetal, 24),
+ GT_ModHandler.getModItem(GTPlusPlus.ID, "itemPlateDoubleHypogen", 32),
+ GT_ModHandler.getModItem(GTPlusPlus.ID, "itemPlateDoubleHypogen", 32),
+ new Object[] { OrePrefixes.circuit.get(Materials.Piko), 1 },
+ new Object[] { OrePrefixes.circuit.get(Materials.Piko), 1 },
+ new Object[] { OrePrefixes.circuit.get(Materials.Piko), 1 },
+ new Object[] { OrePrefixes.circuit.get(Materials.Piko), 1 }, ItemList.ZPM4.get(8L),
+ ItemList.Field_Generator_UIV.get(4), ItemList.Circuit_Wafer_QPIC.get(64),
+ ItemList.Circuit_Wafer_QPIC.get(64),
+ GT_ModHandler.getModItem(NewHorizonsCoreMod.ID, "item.RawPicoWafer", 64),
+ ItemList.Circuit_Parts_DiodeXSMD.get(64), ItemList.Circuit_Parts_InductorXSMD.get(32),
+ GT_OreDictUnificator.get(OrePrefixes.wireGt08, Materials.SuperconductorUIV, 64) },
+ new FluidStack[] { new FluidStack(solderUEV, 18_432),
+ new FluidStack(FluidRegistry.getFluid("molten.celestialtungsten"), 18432),
+ Materials.Quantium.getMolten(18_432), Materials.SuperCoolant.getFluid(128_000) },
+ new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 9),
+ 300 * 20,
+ (int) TierEU.RECIPE_UIV);
+
+ // Mega Ultimate Capacitor (UMV)
+ TT_recipeAdder.addResearchableAssemblylineRecipe(
+ new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 9),
+ 480_000_000,
+ 12_288,
+ 128_000_000,
+ 64,
+ new Object[] { GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.SpaceTime, 4),
+ GT_OreDictUnificator.get(OrePrefixes.screw, Materials.SpaceTime, 24),
+ GT_ModHandler.getModItem(GTPlusPlus.ID, "itemPlateDoubleDragonblood", 32),
+ GT_ModHandler.getModItem(GTPlusPlus.ID, "itemPlateDoubleDragonblood", 32),
+ new Object[] { OrePrefixes.circuit.get(Materials.Quantum), 1 },
+ new Object[] { OrePrefixes.circuit.get(Materials.Quantum), 1 },
+ new Object[] { OrePrefixes.circuit.get(Materials.Quantum), 1 },
+ new Object[] { OrePrefixes.circuit.get(Materials.Quantum), 1 }, ItemList.ZPM5.get(8L),
+ ItemList.Field_Generator_UMV.get(4), ItemList.Circuit_Wafer_QPIC.get(64),
+ ItemList.Circuit_Wafer_QPIC.get(64),
+ GT_ModHandler.getModItem(NewHorizonsCoreMod.ID, "item.PicoWafer", 64),
+ ItemList.Circuit_Parts_DiodeXSMD.get(64), ItemList.Circuit_Parts_InductorXSMD.get(64),
+ GT_OreDictUnificator.get(OrePrefixes.wireGt16, Materials.SuperconductorUMV, 64) },
+ new FluidStack[] { new FluidStack(solderUEV, 36_864),
+ new FluidStack(FluidRegistry.getFluid("molten.astraltitanium"), 36_864),
+ new FluidStack(FluidRegistry.getFluid("molten.celestialtungsten"), 36_864),
+ Materials.SuperCoolant.getFluid(256_000) },
+ new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 10),
+ 350 * 20,
+ (int) TierEU.RECIPE_UMV);
+ }
+
+ // Ultimate Capacitor (UHV)
+ TT_recipeAdder.addResearchableAssemblylineRecipe(
+ new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 4),
+ 12000,
+ 16,
+ 300000,
+ 3,
+ new Object[] { GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.CosmicNeutronium, 4),
+ GT_OreDictUnificator.get(OrePrefixes.screw, Materials.CosmicNeutronium, 24),
+ GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.Neutronium, 32L),
+ GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.Neutronium, 32L),
+ new Object[] { OrePrefixes.circuit.get(Materials.Bio), 1 },
+ new Object[] { OrePrefixes.circuit.get(Materials.Bio), 1 },
+ new Object[] { OrePrefixes.circuit.get(Materials.Bio), 1 },
+ new Object[] { OrePrefixes.circuit.get(Materials.Bio), 1 }, ItemList.ZPM2.get(8L),
+ ItemList.Field_Generator_UHV.get(4), ItemList.Circuit_Wafer_UHPIC.get(64),
+ ItemList.Circuit_Wafer_UHPIC.get(64), ItemList.Circuit_Wafer_SoC2.get(32),
+ ItemList.Circuit_Parts_DiodeASMD.get(64),
+ GT_OreDictUnificator.get(OrePrefixes.wireGt02, Materials.SuperconductorUHV, 64) },
+ new FluidStack[] { new FluidStack(solderUEV, 4608), Materials.Naquadria.getMolten(9216),
+ new FluidStack(FluidRegistry.getFluid("ic2coolant"), 32000) },
+ new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 5),
+ 4000,
+ 1600000);
+ }
+}
diff --git a/src/main/java/common/recipeLoaders/Unpackager.java b/src/main/java/common/recipeLoaders/Unpackager.java
new file mode 100644
index 0000000000..ed39cd1e01
--- /dev/null
+++ b/src/main/java/common/recipeLoaders/Unpackager.java
@@ -0,0 +1,146 @@
+package common.recipeLoaders;
+
+import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sUnboxinatorRecipes;
+import static gregtech.api.util.GT_RecipeBuilder.SECONDS;
+
+import net.minecraft.item.ItemStack;
+
+import common.Blocks;
+
+import gregtech.api.enums.GT_Values;
+import gregtech.api.enums.ItemList;
+import gregtech.api.enums.Materials;
+import gregtech.api.enums.OrePrefixes;
+import gregtech.api.enums.TierEU;
+import gregtech.api.util.GT_ModHandler;
+import gregtech.api.util.GT_OreDictUnificator;
+
+public class Unpackager implements Runnable {
+
+ @Override
+ public void run() {
+
+ // TFFT Recycling
+ {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ new ItemStack(Blocks.tfftStorageField, 1, 1),
+ GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.CrudeSteel, 1))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.CrudeSteel, 6)).noFluidInputs()
+ .noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sUnboxinatorRecipes);
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(new ItemStack(Blocks.tfftStorageField, 1, 2), ItemList.Casing_Tank_1.get(1))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.EnergeticSilver, 6))
+ .noFluidInputs().noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_HV)
+ .addTo(sUnboxinatorRecipes);
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(new ItemStack(Blocks.tfftStorageField, 1, 3), ItemList.Casing_Tank_3.get(1))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.VividAlloy, 6)).noFluidInputs()
+ .noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sUnboxinatorRecipes);
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(new ItemStack(Blocks.tfftStorageField, 1, 4), ItemList.Casing_Tank_5.get(1))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Enderium, 6)).noFluidInputs()
+ .noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sUnboxinatorRecipes);
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(new ItemStack(Blocks.tfftStorageField, 1, 5), ItemList.Casing_Tank_7.get(1))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.CrystallineAlloy, 6))
+ .noFluidInputs().noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_HV)
+ .addTo(sUnboxinatorRecipes);
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(new ItemStack(Blocks.tfftStorageField, 1, 6), ItemList.Casing_Tank_7.get(4))
+ .itemOutputs(
+ GT_OreDictUnificator.get(OrePrefixes.plateQuadruple, Materials.CrystallinePinkSlime, 6))
+ .noFluidInputs().noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_HV)
+ .addTo(sUnboxinatorRecipes);
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(new ItemStack(Blocks.tfftStorageField, 1, 7), ItemList.Casing_Tank_10.get(16))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plateQuadruple, Materials.MelodicAlloy, 6))
+ .noFluidInputs().noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_HV)
+ .addTo(sUnboxinatorRecipes);
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(new ItemStack(Blocks.tfftStorageField, 1, 8), ItemList.Quantum_Tank_IV.get(1))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.StellarAlloy, 12))
+ .noFluidInputs().noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_HV)
+ .addTo(sUnboxinatorRecipes);
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(new ItemStack(Blocks.tfftStorageField, 1, 9), ItemList.Quantum_Tank_IV.get(4))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.TranscendentMetal, 12))
+ .noFluidInputs().noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_HV)
+ .addTo(sUnboxinatorRecipes);
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(new ItemStack(Blocks.tfftStorageField, 1, 10), ItemList.Quantum_Tank_IV.get(16))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.SpaceTime, 12))
+ .noFluidInputs().noFluidOutputs().duration(5 * SECONDS).eut(TierEU.RECIPE_HV)
+ .addTo(sUnboxinatorRecipes);
+
+ }
+
+ // Capacitor recycling
+ {
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 7),
+ GT_ModHandler.getIC2Item("lapotronCrystal", 1L, 26))
+ .itemOutputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 6)).noFluidInputs().noFluidOutputs()
+ .duration(60 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sUnboxinatorRecipes);
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 1),
+ ItemList.Energy_LapotronicOrb.get(1L))
+ .itemOutputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 6)).noFluidInputs().noFluidOutputs()
+ .duration(60 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sUnboxinatorRecipes);
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 2),
+ ItemList.Energy_LapotronicOrb2.get(1L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Osmiridium, 24)).noFluidInputs()
+ .noFluidOutputs().duration(60 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sUnboxinatorRecipes);
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 3), ItemList.Energy_Module.get(1L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.screw, Materials.NaquadahAlloy, 24))
+ .noFluidInputs().noFluidOutputs().duration(60 * SECONDS).eut(TierEU.RECIPE_LV)
+ .addTo(sUnboxinatorRecipes);
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 4), ItemList.Energy_Cluster.get(1L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Neutronium, 24)).noFluidInputs()
+ .noFluidOutputs().duration(60 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sUnboxinatorRecipes);
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 5), ItemList.ZPM3.get(1L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.screw, Materials.CosmicNeutronium, 24))
+ .noFluidInputs().noFluidOutputs().duration(60 * SECONDS).eut(TierEU.RECIPE_LV)
+ .addTo(sUnboxinatorRecipes);
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 8), ItemList.ZPM4.get(1L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Infinity, 24)).noFluidInputs()
+ .noFluidOutputs().duration(60 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sUnboxinatorRecipes);
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 9), ItemList.ZPM5.get(1L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.screw, Materials.TranscendentMetal, 24))
+ .noFluidInputs().noFluidOutputs().duration(60 * SECONDS).eut(TierEU.RECIPE_LV)
+ .addTo(sUnboxinatorRecipes);
+
+ GT_Values.RA.stdBuilder()
+ .itemInputs(new ItemStack(Blocks.lscLapotronicEnergyUnit, 1, 10), ItemList.ZPM6.get(1L))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.screw, Materials.SpaceTime, 24)).noFluidInputs()
+ .noFluidOutputs().duration(60 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sUnboxinatorRecipes);
+
+ }
+ }
+}
diff --git a/src/main/java/common/tileentities/GTMTE_LapotronicSuperCapacitor.java b/src/main/java/common/tileentities/GTMTE_LapotronicSuperCapacitor.java
index 7568bbb659..78338e4a27 100644
--- a/src/main/java/common/tileentities/GTMTE_LapotronicSuperCapacitor.java
+++ b/src/main/java/common/tileentities/GTMTE_LapotronicSuperCapacitor.java
@@ -1,7 +1,23 @@
package common.tileentities;
-import static com.gtnewhorizon.structurelib.structure.StructureUtility.*;
-import static common.itemBlocks.IB_LapotronicEnergyUnit.*;
+import static com.gtnewhorizon.structurelib.structure.StructureUtility.ofBlock;
+import static com.gtnewhorizon.structurelib.structure.StructureUtility.ofChain;
+import static com.gtnewhorizon.structurelib.structure.StructureUtility.onElementPass;
+import static com.gtnewhorizon.structurelib.structure.StructureUtility.onlyIf;
+import static com.gtnewhorizon.structurelib.structure.StructureUtility.transpose;
+import static com.gtnewhorizon.structurelib.structure.StructureUtility.withChannel;
+import static common.itemBlocks.IB_LapotronicEnergyUnit.EV_cap_storage;
+import static common.itemBlocks.IB_LapotronicEnergyUnit.IV_cap_storage;
+import static common.itemBlocks.IB_LapotronicEnergyUnit.LSC_time_between_wireless_rebalance_in_ticks;
+import static common.itemBlocks.IB_LapotronicEnergyUnit.LSC_wireless_eu_cap;
+import static common.itemBlocks.IB_LapotronicEnergyUnit.LuV_cap_storage;
+import static common.itemBlocks.IB_LapotronicEnergyUnit.UEV_wireless_eu_cap;
+import static common.itemBlocks.IB_LapotronicEnergyUnit.UIV_cap_storage;
+import static common.itemBlocks.IB_LapotronicEnergyUnit.UIV_wireless_eu_cap;
+import static common.itemBlocks.IB_LapotronicEnergyUnit.UMV_cap_storage;
+import static common.itemBlocks.IB_LapotronicEnergyUnit.UMV_wireless_eu_cap;
+import static common.itemBlocks.IB_LapotronicEnergyUnit.UV_cap_storage;
+import static common.itemBlocks.IB_LapotronicEnergyUnit.ZPM_cap_storage;
import static gregtech.api.enums.GT_HatchElement.Maintenance;
import static gregtech.api.metatileentity.BaseTileEntity.TOOLTIP_DELAY;
import static gregtech.api.util.GT_StructureUtility.buildHatchAdder;
@@ -10,7 +26,14 @@ import static java.lang.Math.min;
import java.math.BigInteger;
import java.text.NumberFormat;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Comparator;
+import java.util.HashSet;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Queue;
+import java.util.Set;
import java.util.function.Consumer;
import net.minecraft.block.Block;
@@ -40,7 +63,6 @@ import com.gtnewhorizon.structurelib.alignment.constructable.ISurvivalConstructa
import com.gtnewhorizon.structurelib.structure.IItemSource;
import com.gtnewhorizon.structurelib.structure.IStructureDefinition;
import com.gtnewhorizon.structurelib.structure.IStructureElement;
-import com.gtnewhorizon.structurelib.structure.IStructureElement.PlaceResult;
import com.gtnewhorizon.structurelib.structure.StructureUtility;
import com.gtnewhorizon.structurelib.util.ItemStackPredicate.NBTMode;
import com.gtnewhorizons.modularui.api.drawable.IDrawable;
@@ -60,7 +82,11 @@ import gregtech.api.interfaces.IHatchElement;
import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import gregtech.api.metatileentity.implementations.*;
+import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_EnhancedMultiBlockBase;
+import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch;
+import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Dynamo;
+import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Energy;
+import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Maintenance;
import gregtech.api.render.TextureFactory;
import gregtech.api.util.GT_Multiblock_Tooltip_Builder;
import gregtech.api.util.GT_Utility;
@@ -84,10 +110,10 @@ public class GTMTE_LapotronicSuperCapacitor
private final Queue<Long> energyInputValues = new LinkedList<>();
private final Queue<Long> energyOutputValues = new LinkedList<>();
- private long max_passive_drain_eu_per_tick_per_uhv_cap = 1_000_000;
- private long max_passive_drain_eu_per_tick_per_uev_cap = 100_000_000;
- private long max_passive_drain_eu_per_tick_per_uiv_cap = (long) Math.pow(10, 10);
- private long max_passive_drain_eu_per_tick_per_umv_cap = (long) Math.pow(10, 12);
+ private final long max_passive_drain_eu_per_tick_per_uhv_cap = 1_000_000;
+ private final long max_passive_drain_eu_per_tick_per_uev_cap = 100_000_000;
+ private final long max_passive_drain_eu_per_tick_per_uiv_cap = (long) Math.pow(10, 10);
+ private final long max_passive_drain_eu_per_tick_per_umv_cap = (long) Math.pow(10, 12);
private enum Capacitor {
diff --git a/src/main/java/common/tileentities/GTMTE_SOFuelCellMK1.java b/src/main/java/common/tileentities/GTMTE_SOFuelCellMK1.java
index 888f2c71e6..a17694b579 100644
--- a/src/main/java/common/tileentities/GTMTE_SOFuelCellMK1.java
+++ b/src/main/java/common/tileentities/GTMTE_SOFuelCellMK1.java
@@ -1,7 +1,14 @@
package common.tileentities;
-import static com.gtnewhorizon.structurelib.structure.StructureUtility.*;
-import static gregtech.api.enums.Textures.BlockIcons.*;
+import static com.gtnewhorizon.structurelib.structure.StructureUtility.ofBlock;
+import static com.gtnewhorizon.structurelib.structure.StructureUtility.ofBlockAnyMeta;
+import static com.gtnewhorizon.structurelib.structure.StructureUtility.ofChain;
+import static com.gtnewhorizon.structurelib.structure.StructureUtility.onElementPass;
+import static com.gtnewhorizon.structurelib.structure.StructureUtility.transpose;
+import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_FRONT_HEAT_EXCHANGER;
+import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_FRONT_HEAT_EXCHANGER_ACTIVE;
+import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_FRONT_HEAT_EXCHANGER_ACTIVE_GLOW;
+import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_FRONT_HEAT_EXCHANGER_GLOW;
import static gregtech.api.util.GT_StructureUtility.ofHatchAdder;
import java.util.ArrayList;
diff --git a/src/main/java/common/tileentities/GTMTE_SOFuelCellMK2.java b/src/main/java/common/tileentities/GTMTE_SOFuelCellMK2.java
index 56986228ae..baaef17858 100644
--- a/src/main/java/common/tileentities/GTMTE_SOFuelCellMK2.java
+++ b/src/main/java/common/tileentities/GTMTE_SOFuelCellMK2.java
@@ -1,8 +1,13 @@
package common.tileentities;
-import static com.gtnewhorizon.structurelib.structure.StructureUtility.*;
+import static com.gtnewhorizon.structurelib.structure.StructureUtility.ofBlock;
import static com.gtnewhorizon.structurelib.structure.StructureUtility.ofBlockAnyMeta;
-import static gregtech.api.enums.Textures.BlockIcons.*;
+import static com.gtnewhorizon.structurelib.structure.StructureUtility.ofChain;
+import static com.gtnewhorizon.structurelib.structure.StructureUtility.onElementPass;
+import static com.gtnewhorizon.structurelib.structure.StructureUtility.transpose;
+import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_FRONT_HEAT_EXCHANGER;
+import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_FRONT_HEAT_EXCHANGER_ACTIVE;
+import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_FRONT_HEAT_EXCHANGER_ACTIVE_GLOW;
import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_FRONT_HEAT_EXCHANGER_GLOW;
import static gregtech.api.util.GT_StructureUtility.ofHatchAdder;
diff --git a/src/main/java/common/tileentities/GTMTE_TFFT.java b/src/main/java/common/tileentities/GTMTE_TFFT.java
index 8978ae90a9..3c679bd514 100644
--- a/src/main/java/common/tileentities/GTMTE_TFFT.java
+++ b/src/main/java/common/tileentities/GTMTE_TFFT.java
@@ -1,7 +1,14 @@
package common.tileentities;
-import static com.gtnewhorizon.structurelib.structure.StructureUtility.*;
-import static gregtech.api.enums.GT_HatchElement.*;
+import static com.gtnewhorizon.structurelib.structure.StructureUtility.ofBlock;
+import static com.gtnewhorizon.structurelib.structure.StructureUtility.ofBlockUnlocalizedName;
+import static com.gtnewhorizon.structurelib.structure.StructureUtility.ofChain;
+import static com.gtnewhorizon.structurelib.structure.StructureUtility.onElementPass;
+import static com.gtnewhorizon.structurelib.structure.StructureUtility.transpose;
+import static gregtech.api.enums.GT_HatchElement.Energy;
+import static gregtech.api.enums.GT_HatchElement.InputHatch;
+import static gregtech.api.enums.GT_HatchElement.Maintenance;
+import static gregtech.api.enums.GT_HatchElement.OutputHatch;
import static gregtech.api.util.GT_StructureUtility.buildHatchAdder;
import static java.lang.Math.min;
@@ -27,7 +34,11 @@ import com.github.bartimaeusnek.bartworks.API.BorosilicateGlass;
import com.gtnewhorizon.structurelib.StructureLibAPI;
import com.gtnewhorizon.structurelib.alignment.constructable.ChannelDataAccessor;
import com.gtnewhorizon.structurelib.alignment.constructable.ISurvivalConstructable;
-import com.gtnewhorizon.structurelib.structure.*;
+import com.gtnewhorizon.structurelib.structure.AutoPlaceEnvironment;
+import com.gtnewhorizon.structurelib.structure.IStructureDefinition;
+import com.gtnewhorizon.structurelib.structure.IStructureElement;
+import com.gtnewhorizon.structurelib.structure.ISurvivalBuildEnvironment;
+import com.gtnewhorizon.structurelib.structure.StructureUtility;
import com.gtnewhorizon.structurelib.util.ItemStackPredicate;
import common.Blocks;
diff --git a/src/main/java/common/tileentities/GTMTE_TFFTHatch.java b/src/main/java/common/tileentities/GTMTE_TFFTHatch.java
index 37e3ade77a..414eb4a7fb 100644
--- a/src/main/java/common/tileentities/GTMTE_TFFTHatch.java
+++ b/src/main/java/common/tileentities/GTMTE_TFFTHatch.java
@@ -11,7 +11,11 @@ import appeng.api.AEApi;
import appeng.api.config.AccessRestriction;
import appeng.api.config.Actionable;
import appeng.api.networking.security.BaseActionSource;
-import appeng.api.storage.*;
+import appeng.api.storage.IExternalStorageHandler;
+import appeng.api.storage.IMEInventory;
+import appeng.api.storage.IMEMonitor;
+import appeng.api.storage.IMEMonitorHandlerReceiver;
+import appeng.api.storage.StorageChannel;
import appeng.api.storage.data.IAEFluidStack;
import appeng.api.storage.data.IItemList;
import appeng.util.item.AEFluidStack;
diff --git a/src/main/java/common/tileentities/TE_BeamTransmitter.java b/src/main/java/common/tileentities/TE_BeamTransmitter.java
index 1d6915ade2..e8999e393f 100644
--- a/src/main/java/common/tileentities/TE_BeamTransmitter.java
+++ b/src/main/java/common/tileentities/TE_BeamTransmitter.java
@@ -13,7 +13,7 @@ public class TE_BeamTransmitter extends TileEntity {
private final Vector3ic position;
- private Vector3ic target = new Vector3i(10, 20, 10);
+ private final Vector3ic target = new Vector3i(10, 20, 10);
private double distanceCache;
private boolean distanceCacheValid = false;
diff --git a/src/main/java/common/tileentities/TE_ItemProxySource.java b/src/main/java/common/tileentities/TE_ItemProxySource.java
index 78c338b920..31403f5352 100644
--- a/src/main/java/common/tileentities/TE_ItemProxySource.java
+++ b/src/main/java/common/tileentities/TE_ItemProxySource.java
@@ -7,7 +7,7 @@ import net.minecraft.tileentity.TileEntity;
public class TE_ItemProxySource extends TileEntity implements IInventory {
- private ItemStack[] slots = new ItemStack[16];
+ private final ItemStack[] slots = new ItemStack[16];
private String idCache = null;
/**
diff --git a/src/main/java/kekztech/KekzCore.java b/src/main/java/kekztech/KekzCore.java
index 557cfcb28c..59d5cab059 100644
--- a/src/main/java/kekztech/KekzCore.java
+++ b/src/main/java/kekztech/KekzCore.java
@@ -8,7 +8,6 @@ import org.apache.logging.log4j.Logger;
import com.google.common.collect.ImmutableSet;
import common.CommonProxy;
-import common.tileentities.*;
import cpw.mods.fml.common.Mod;
import cpw.mods.fml.common.SidedProxy;
@@ -16,6 +15,7 @@ import cpw.mods.fml.common.event.FMLInitializationEvent;
import cpw.mods.fml.common.event.FMLMissingMappingsEvent;
import cpw.mods.fml.common.event.FMLPostInitializationEvent;
import cpw.mods.fml.common.event.FMLPreInitializationEvent;
+import gregtech.api.enums.Mods;
/**
* My GT-Meta-IDs are: 13101 - 13500
@@ -35,12 +35,12 @@ import cpw.mods.fml.common.event.FMLPreInitializationEvent;
public class KekzCore {
public static final String NAME = "KekzTech";
- public static final String MODID = "kekztech";
+ public static final String MODID = Mods.Names.KEKZ_TECH;
public static final String VERSION = "GRADLETOKEN_VERSION";
public static final Logger LOGGER = LogManager.getLogger(NAME);
- @Mod.Instance("kekztech")
+ @Mod.Instance(Mods.Names.KEKZ_TECH)
public static KekzCore instance;
@SidedProxy(clientSide = "client.ClientProxy", serverSide = "kekztech.ServerProxy")
diff --git a/src/main/java/util/Vector3ic.java b/src/main/java/util/Vector3ic.java
index ea9a429d6f..296c4f0268 100644
--- a/src/main/java/util/Vector3ic.java
+++ b/src/main/java/util/Vector3ic.java
@@ -2,9 +2,9 @@ package util;
public interface Vector3ic {
- public int x();
+ int x();
- public int y();
+ int y();
- public int z();
+ int z();
}