diff --git a/README.md b/README.md
index 55ec308b..9149b167 100644
--- a/README.md
+++ b/README.md
@@ -1,17 +1,17 @@
-#[Natura](http://www.minecraftforum.net/forums/mapping-and-modding/minecraft-mods/1294968-natura)
+# [Natura](http://www.minecraftforum.net/forums/mapping-and-modding/minecraft-mods/1294968-natura)
-We work all day and we work all night
-The mandrake gives us quite a fright
-We munch on berries high and lo
-While we search for herbs to grow
+We work all day and we work all night
+The mandrake gives us quite a fright
+We munch on berries high and lo
+While we search for herbs to grow
-Heyo, Redwood trees! Chop them all day long~
-Heyo, Redwood trees! Chop them all day long~
+Heyo, Redwood trees! Chop them all day long~
+Heyo, Redwood trees! Chop them all day long~
-##Development
+## Development
Install Forge as usual, and setup your IDE as with any other Forge project. Forge Multipart, and CClib must be installed to `forge/mcp/jars/mods/` from the Forge File Server: [ForgeMultipart](http://files.minecraftforge.net/ForgeMultipart/) and [CClib](http://files.minecraftforge.net/CodeChickenLib/). The DEVELOPMENT version of NEI must be installed to the same directory from [Chicken Bones Site](http://www.chickenbones.craftsaddle.org/Files/New_Versions/links.php). Tinkers' Construct must be installed as well from [dvs1](https://dvs1.progwml6.com/jenkins/job/TConstruct_1.7.x/).
-##Issue reporting
+## Issue reporting
Please include the following:
* Minecraft version
diff --git a/build.gradle b/build.gradle
index fe8a2e7b..3fa171e0 100644
--- a/build.gradle
+++ b/build.gradle
@@ -1,4 +1,4 @@
-//version: 1675110695
+//version: 1683705740
/*
DO NOT CHANGE THIS FILE!
Also, you may replace this file at any time if there is an update available.
@@ -6,27 +6,28 @@
*/
-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.gtnewhorizons.retrofuturagradle.util.Distribution
import com.matthewprenger.cursegradle.CurseArtifact
import com.matthewprenger.cursegradle.CurseRelation
import com.modrinth.minotaur.dependencies.ModDependency
import com.modrinth.minotaur.dependencies.VersionDependency
import org.gradle.internal.logging.text.StyledTextOutput.Style
import org.gradle.internal.logging.text.StyledTextOutputFactory
-import org.jetbrains.gradle.ext.*
+import org.gradle.internal.xml.XmlTransformer
+import org.jetbrains.gradle.ext.Application
+import org.jetbrains.gradle.ext.Gradle
+import javax.inject.Inject
import java.nio.file.Files
import java.nio.file.Paths
import java.util.concurrent.TimeUnit
-import java.util.zip.ZipEntry
-import java.util.zip.ZipOutputStream
buildscript {
repositories {
- mavenLocal()
mavenCentral()
maven {
@@ -47,6 +48,8 @@ buildscript {
name 'Scala CI dependencies'
url 'https://repo1.maven.org/maven2/'
}
+
+ mavenLocal()
}
}
plugins {
@@ -58,22 +61,26 @@ 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 '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'
+ 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 '8.1.1' apply false
+ id 'com.palantir.git-version' version '3.0.0' apply false
+ id 'de.undercouch.download' version '5.4.0'
id 'com.github.gmazzo.buildconfig' version '3.1.0' apply false // Unused, available for addon.gradle
- id 'com.diffplug.spotless' version '6.7.2' apply false
+ id 'com.diffplug.spotless' version '6.13.0' apply false // 6.13.0 is the last jvm8 supporting version
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.2'
+ id 'com.gtnewhorizons.retrofuturagradle' version '1.3.11'
}
+
+print("You might want to check out './gradlew :faq' if your build fails.\n")
+
boolean settingsupdated = verifySettingsGradle()
settingsupdated = verifyGitAttributes() || settingsupdated
if (settingsupdated)
throw new GradleException("Settings has been updated, please re-run task.")
-if (project.file('.git/HEAD').isFile()) {
+// In submodules, .git is a file pointing to the real git dir
+if (project.file('.git/HEAD').isFile() || project.file('.git').isFile()) {
apply plugin: 'com.palantir.git-version'
}
@@ -122,7 +129,10 @@ propertyDefaultIfUnset("gradleTokenGroupName", "")
propertyDefaultIfUnset("enableModernJavaSyntax", false) // On by default for new projects only
propertyDefaultIfUnset("enableGenericInjection", false) // On by default for new projects only
-project.extensions.add(Blowdryer, "Blowdryer", Blowdryer) // Make blowdryer available in "apply from:" scripts
+// 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(com.diffplug.blowdryer.Blowdryer, "Blowdryer", com.diffplug.blowdryer.Blowdryer) // Make blowdryer available in "apply from:" scripts
if (!disableSpotless) {
apply plugin: 'com.diffplug.spotless'
apply from: Blowdryer.file('spotless.gradle')
@@ -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 {
@@ -183,14 +201,34 @@ configurations {
canBeConsumed = false
canBeResolved = false
}
+
+ create("devOnlyNonPublishable") {
+ description = "Runtime and compiletime dependencies that are not published alongside the jar (compileOnly + runtimeOnlyNonPublishable)"
+ canBeConsumed = false
+ canBeResolved = false
+ }
+ compileOnly.extendsFrom(devOnlyNonPublishable)
+ runtimeOnlyNonPublishable.extendsFrom(devOnlyNonPublishable)
}
if (enableModernJavaSyntax.toBoolean()) {
+ repositories {
+ mavenCentral {
+ mavenContent {
+ includeGroup("me.eigenraven.java8unsupported")
+ }
+ }
+ }
+
dependencies {
annotationProcessor 'com.github.bsideup.jabel:jabel-javac-plugin:1.0.0'
+ // workaround for https://github.com/bsideup/jabel/issues/174
+ annotationProcessor 'net.java.dev.jna:jna-platform:5.13.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 +240,7 @@ if (enableModernJavaSyntax.toBoolean()) {
javaCompiler.set(javaToolchains.compilerFor {
languageVersion.set(JavaLanguageVersion.of(17))
- vendor.set(JvmVendorSpec.ADOPTIUM)
+ vendor.set(JvmVendorSpec.AZUL)
})
}
}
@@ -234,12 +272,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 +407,14 @@ minecraft {
injectMissingGenerics.set(true)
}
+ username = developmentEnvironmentUserName.toString()
+
+ lwjgl3Version = "3.3.2"
+
// 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 +443,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 +482,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 +529,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 +567,50 @@ repositories {
}
}
+def mixinProviderGroup = "io.github.legacymoddingmc"
+def mixinProviderModule = "unimixins"
+def mixinProviderVersion = "0.1.7.1"
+def mixinProviderSpecNoClassifer = "${mixinProviderGroup}:${mixinProviderModule}:${mixinProviderVersion}"
+def mixinProviderSpec = "${mixinProviderSpecNoClassifer}:dev"
+ext.mixinProviderSpec = mixinProviderSpec
+
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.10: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.10')
+ 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.10: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'
@@ -633,7 +706,156 @@ tasks.named("processResources", ProcessResources).configure {
if (usesMixins.toBoolean()) {
from refMap
+ dependsOn("compileJava", "compileScala")
+ }
+}
+
+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.5'
+ def asmVersion = '9.4'
+ if (modId != 'lwjgl3ify') {
+ java17Dependencies("com.github.GTNewHorizons:lwjgl3ify:${lwjgl3ifyVersion}")
+ }
+ if (modId != 'hodgepodge') {
+ java17Dependencies('com.github.GTNewHorizons:Hodgepodge:2.2.8')
+ }
+
+ 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(Distribution 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 == Distribution.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)
+ }
+
+ public void setup(Project project) {
+ super.setup(project)
+ if (project.usesMixins.toBoolean()) {
+ this.extraJvmArgs.addAll(project.provider(() -> {
+ def mixinCfg = project.configurations.detachedConfiguration(project.dependencies.create(project.mixinProviderSpec))
+ mixinCfg.canBeConsumed = false
+ mixinCfg.transitive = false
+ enableHotswap ? ["-javaagent:" + mixinCfg.singleFile.absolutePath] : []
+ }))
+ }
+ }
+}
+
+def runClient17Task = tasks.register("runClient17", RunHotswappableMinecraftTask, Distribution.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, Distribution.DEDICATED_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() {
@@ -667,11 +889,6 @@ tasks.named("jar", Jar).configure {
}
if (usesShadowedDependencies.toBoolean()) {
- tasks.register('relocateShadowJar', ConfigureShadowRelocation) {
- target = tasks.shadowJar
- prefix = modGroup + ".shadow"
- enabled = minimizeShadowedDependencies.toBoolean()
- }
tasks.named("shadowJar", ShadowJar).configure {
manifest {
attributes(getManifestAttributes())
@@ -686,8 +903,9 @@ if (usesShadowedDependencies.toBoolean()) {
project.configurations.shadeCompile
]
archiveClassifier.set('dev')
- if (minimizeShadowedDependencies.toBoolean()) {
- dependsOn(relocateShadowJar)
+ if (relocateShadowedDependencies.toBoolean()) {
+ relocationPrefix = modGroup + ".shadow"
+ enableRelocation = true
}
}
configurations.runtimeElements.outgoing.artifacts.clear()
@@ -705,7 +923,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")
}
@@ -743,9 +961,23 @@ idea {
module {
downloadJavadoc = true
downloadSources = true
+ inheritOutputDirs = true
}
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"]
@@ -753,6 +985,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"]
}
@@ -770,7 +1016,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(' ')
@@ -781,7 +1027,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(' ')
@@ -793,11 +1039,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 = """
+
+
+
+
+
+"""
+ }
+ }
+ }
}
}
}
@@ -867,7 +1159,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)
@@ -911,7 +1203,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)
@@ -945,10 +1237,21 @@ def addCurseForgeRelation(String type, String name) {
}
// Updating
+
+def buildscriptGradleVersion = "8.1.1"
+
+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
@@ -961,6 +1264,24 @@ 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")
+ }
+ }
+}
+
+// If you want to add more cases to this task, implement them as arguments if total amount to print gets too large
+tasks.register('faq') {
+ group = 'GTNH Buildscript'
+ description = 'Prints frequently asked questions about building a project'
+
+ doLast {
+ print("If your build fails to fetch dependencies, they might have been deleted and replaced by newer " +
+ "versions.\nCheck if the versions you try to fetch are still on the distributing sites.\n" +
+ "The links can be found in repositories.gradle and build.gradle:repositories, " +
+ "not build.gradle:buildscript.repositories - this one is for gradle plugin metadata.\n\n" +
+ "If your build fails to recognize the syntax of new Java versions, enable Jabel in your " +
+ "gradle.properties. See how it's done in GTNH ExampleMod/gradle.properties.")
}
}
@@ -1101,7 +1422,7 @@ static int replaceParams(File file, Map params) {
return 0
}
-// Dependency Deobfuscation
+// Dependency Deobfuscation (Deprecated, use the new RFG API documented in dependencies.gradle)
def deobf(String sourceURL) {
try {
@@ -1143,11 +1464,7 @@ def deobfMaven(String repoURL, String mavenDep) {
}
def deobfCurse(String curseDep) {
- try {
- return deobfMaven("https://www.cursemaven.com/", "curse.maven:$curseDep")
- } catch (Exception ignored) {
- out.style(Style.Failure).println("Failed to get $curseDep from cursemaven.")
- }
+ return dependencies.rfg.deobf("curse.maven:$curseDep")
}
// The method above is to be preferred. Use this method if the filename is not at the end of the URL.
@@ -1155,34 +1472,7 @@ def deobf(String sourceURL, String rawFileName) {
String bon2Version = "2.5.1"
String fileName = URLDecoder.decode(rawFileName, "UTF-8")
String cacheDir = "$project.gradle.gradleUserHomeDir/caches"
- String bon2Dir = "$cacheDir/forge_gradle/deobf"
- String bon2File = "$bon2Dir/BON2-${bon2Version}.jar"
String obfFile = "$cacheDir/modules-2/files-2.1/${fileName}.jar"
- String deobfFile = "$cacheDir/modules-2/files-2.1/${fileName}-deobf.jar"
-
- if (file(deobfFile).exists()) {
- return files(deobfFile)
- }
-
- String mappingsVer
- String remoteMappings = project.hasProperty('remoteMappings') ? project.remoteMappings : 'https://raw.githubusercontent.com/MinecraftForge/FML/1.7.10/conf/'
- if (remoteMappings) {
- String id = "${forgeVersion.split("\\.")[3]}-$minecraftVersion"
- String mappingsZIP = "$cacheDir/forge_gradle/maven_downloader/de/oceanlabs/mcp/mcp_snapshot_nodoc/$id/mcp_snapshot_nodoc-${id}.zip"
-
- zipMappings(mappingsZIP, remoteMappings, bon2Dir)
-
- mappingsVer = "snapshot_$id"
- } else {
- mappingsVer = "${channel}_$mappingsVersion"
- }
-
- download.run {
- src "http://jenkins.usrv.eu:8081/nexus/content/repositories/releases/com/github/parker8283/BON2/$bon2Version-CUSTOM/BON2-$bon2Version-CUSTOM-all.jar"
- dest bon2File
- quiet true
- overwrite false
- }
download.run {
src sourceURL
@@ -1190,50 +1480,8 @@ def deobf(String sourceURL, String rawFileName) {
quiet true
overwrite false
}
-
- exec {
- commandLine 'java', '-jar', bon2File, '--inputJar', obfFile, '--outputJar', deobfFile, '--mcVer', minecraftVersion, '--mappingsVer', mappingsVer, '--notch'
- workingDir bon2Dir
- standardOutput = new FileOutputStream("${deobfFile}.log")
- }
-
- return files(deobfFile)
+ return dependencies.rfg.deobf(files(obfFile))
}
-
-def zipMappings(String zipPath, String url, String bon2Dir) {
- File zipFile = new File(zipPath)
- if (zipFile.exists()) {
- return
- }
-
- String fieldsCache = "$bon2Dir/data/fields.csv"
- String methodsCache = "$bon2Dir/data/methods.csv"
-
- download.run {
- src "${url}fields.csv"
- dest fieldsCache
- quiet true
- }
- download.run {
- src "${url}methods.csv"
- dest methodsCache
- quiet true
- }
-
- zipFile.getParentFile().mkdirs()
- ZipOutputStream zos = new ZipOutputStream(new FileOutputStream(zipFile))
-
- zos.putNextEntry(new ZipEntry("fields.csv"))
- Files.copy(Paths.get(fieldsCache), zos)
- zos.closeEntry()
-
- zos.putNextEntry(new ZipEntry("methods.csv"))
- Files.copy(Paths.get(methodsCache), zos)
- zos.closeEntry()
-
- zos.close()
-}
-
// Helper methods
def checkPropertyExists(String propertyName) {
diff --git a/dependencies.gradle b/dependencies.gradle
index 940d069f..b18973b3 100644
--- a/dependencies.gradle
+++ b/dependencies.gradle
@@ -1,22 +1,18 @@
// Add your dependencies here
dependencies {
+ api("com.github.GTNewHorizons:Mantle:0.3.6:dev")
- compile("com.github.GTNewHorizons:Mantle:0.3.4:dev")
-
- compileOnly("com.github.GTNewHorizons:waila:1.5.21:dev") {
- transitive = false
- }
- compileOnly("com.github.GTNewHorizons:ForgeMultipart:1.2.7:dev") {
+ compileOnly("com.github.GTNewHorizons:waila:1.6.0:dev") {
transitive = false
}
- compileOnly("com.github.GTNewHorizons:NotEnoughItems:2.2.17-GTNH:dev") {
+ compileOnly("com.github.GTNewHorizons:ForgeMultipart:1.3.3:dev") {
transitive = false
}
- compileOnly("com.github.GTNewHorizons:TinkersConstruct:1.9.0-16-GTNH:dev") {
+ devOnlyNonPublishable("com.github.GTNewHorizons:NotEnoughItems:2.3.52-GTNH:dev")
+ compileOnly("com.github.GTNewHorizons:TinkersConstruct:1.9.31-GTNH:dev") {
transitive = false
}
-
compileOnly("curse.maven:minefactory-reloaded-66672:2366150") {
transitive = false
}
diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar
index ccebba77..943f0cbf 100644
Binary files a/gradle/wrapper/gradle-wrapper.jar and b/gradle/wrapper/gradle-wrapper.jar differ
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index f398c33c..37aef8d3 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-7.6-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-8.1.1-bin.zip
networkTimeout=10000
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
diff --git a/repositories.gradle b/repositories.gradle
index 8ba89bc5..45729e10 100644
--- a/repositories.gradle
+++ b/repositories.gradle
@@ -1,14 +1,4 @@
// Add any additional repositiroes for your dependencies here
repositories {
- maven {
- name = "GTNH Maven"
- url = "http://jenkins.usrv.eu:8081/nexus/content/groups/public/"
- }
- maven {
- url "https://cursemaven.com"
- }
- maven {
- url = "https://jitpack.io"
- }
}
diff --git a/src/main/java/mods/natura/Natura.java b/src/main/java/mods/natura/Natura.java
index 01efd008..62d69da6 100644
--- a/src/main/java/mods/natura/Natura.java
+++ b/src/main/java/mods/natura/Natura.java
@@ -5,21 +5,6 @@
import java.util.Map;
import java.util.Random;
-import mantle.lib.TabTools;
-import mantle.pulsar.control.PulseManager;
-import mods.natura.common.NContent;
-import mods.natura.common.NProxyCommon;
-import mods.natura.common.NaturaTab;
-import mods.natura.common.PHNatura;
-import mods.natura.dimension.NetheriteWorldProvider;
-import mods.natura.gui.NGuiHandler;
-import mods.natura.plugins.PluginController;
-import mods.natura.worldgen.BaseCloudWorldgen;
-import mods.natura.worldgen.BaseCropWorldgen;
-import mods.natura.worldgen.BaseTreeWorldgen;
-import mods.natura.worldgen.retro.TickHandlerWorld;
-import mods.natura.worldgen.retro.WorldHandler;
-
import net.minecraft.block.material.Material;
import net.minecraft.entity.EntityCreature;
import net.minecraft.entity.EntityLiving;
@@ -57,6 +42,20 @@
import cpw.mods.fml.common.gameevent.TickEvent;
import cpw.mods.fml.common.network.NetworkRegistry;
import cpw.mods.fml.common.registry.GameRegistry;
+import mantle.lib.TabTools;
+import mantle.pulsar.control.PulseManager;
+import mods.natura.common.NContent;
+import mods.natura.common.NProxyCommon;
+import mods.natura.common.NaturaTab;
+import mods.natura.common.PHNatura;
+import mods.natura.dimension.NetheriteWorldProvider;
+import mods.natura.gui.NGuiHandler;
+import mods.natura.plugins.PluginController;
+import mods.natura.worldgen.BaseCloudWorldgen;
+import mods.natura.worldgen.BaseCropWorldgen;
+import mods.natura.worldgen.BaseTreeWorldgen;
+import mods.natura.worldgen.retro.TickHandlerWorld;
+import mods.natura.worldgen.retro.WorldHandler;
@Mod(
modid = "Natura",
diff --git a/src/main/java/mods/natura/blocks/CloudBlock.java b/src/main/java/mods/natura/blocks/CloudBlock.java
index b0bb4a69..2488172c 100644
--- a/src/main/java/mods/natura/blocks/CloudBlock.java
+++ b/src/main/java/mods/natura/blocks/CloudBlock.java
@@ -1,9 +1,5 @@
package mods.natura.blocks;
-import mods.natura.Natura;
-import mods.natura.common.NContent;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.block.Block;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLiving;
@@ -16,6 +12,10 @@
import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
+import mods.natura.Natura;
+import mods.natura.common.NContent;
+import mods.natura.common.NaturaTab;
+
public class CloudBlock extends NBlock {
public CloudBlock() {
diff --git a/src/main/java/mods/natura/blocks/GrassBlock.java b/src/main/java/mods/natura/blocks/GrassBlock.java
index 0c7f4962..ab0b5ad2 100644
--- a/src/main/java/mods/natura/blocks/GrassBlock.java
+++ b/src/main/java/mods/natura/blocks/GrassBlock.java
@@ -2,9 +2,6 @@
import java.util.List;
-import mods.natura.client.GrassColorizerAlternate;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.client.renderer.texture.IIconRegister;
@@ -19,6 +16,8 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.client.GrassColorizerAlternate;
+import mods.natura.common.NaturaTab;
public class GrassBlock extends Block {
diff --git a/src/main/java/mods/natura/blocks/GrassSlab.java b/src/main/java/mods/natura/blocks/GrassSlab.java
index 3f8554f7..42e3a23f 100644
--- a/src/main/java/mods/natura/blocks/GrassSlab.java
+++ b/src/main/java/mods/natura/blocks/GrassSlab.java
@@ -2,9 +2,6 @@
import java.util.List;
-import mods.natura.client.GrassColorizerAlternate;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.block.material.Material;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
@@ -18,6 +15,8 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.client.GrassColorizerAlternate;
+import mods.natura.common.NaturaTab;
public class GrassSlab extends NSlabBase {
diff --git a/src/main/java/mods/natura/blocks/NBlock.java b/src/main/java/mods/natura/blocks/NBlock.java
index bafb9ebb..6d0e70db 100644
--- a/src/main/java/mods/natura/blocks/NBlock.java
+++ b/src/main/java/mods/natura/blocks/NBlock.java
@@ -2,8 +2,6 @@
import java.util.List;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.client.renderer.texture.IIconRegister;
@@ -14,6 +12,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NaturaTab;
public class NBlock extends Block {
diff --git a/src/main/java/mods/natura/blocks/NButton.java b/src/main/java/mods/natura/blocks/NButton.java
index bf36c88a..fdbefaee 100644
--- a/src/main/java/mods/natura/blocks/NButton.java
+++ b/src/main/java/mods/natura/blocks/NButton.java
@@ -1,7 +1,5 @@
package mods.natura.blocks;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.block.Block;
import net.minecraft.block.BlockButton;
import net.minecraft.client.renderer.texture.IIconRegister;
@@ -9,6 +7,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NaturaTab;
public class NButton extends BlockButton {
diff --git a/src/main/java/mods/natura/blocks/NFenceGate.java b/src/main/java/mods/natura/blocks/NFenceGate.java
index a1548da7..7169404f 100644
--- a/src/main/java/mods/natura/blocks/NFenceGate.java
+++ b/src/main/java/mods/natura/blocks/NFenceGate.java
@@ -1,7 +1,5 @@
package mods.natura.blocks;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.block.Block;
import net.minecraft.block.BlockFenceGate;
import net.minecraft.client.renderer.texture.IIconRegister;
@@ -9,6 +7,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NaturaTab;
public class NFenceGate extends BlockFenceGate {
diff --git a/src/main/java/mods/natura/blocks/NLadder.java b/src/main/java/mods/natura/blocks/NLadder.java
index 45aaca31..ae836dc2 100644
--- a/src/main/java/mods/natura/blocks/NLadder.java
+++ b/src/main/java/mods/natura/blocks/NLadder.java
@@ -2,8 +2,6 @@
import java.util.List;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.block.BlockLadder;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
@@ -13,6 +11,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NaturaTab;
public class NLadder extends BlockLadder {
diff --git a/src/main/java/mods/natura/blocks/NPressurePlate.java b/src/main/java/mods/natura/blocks/NPressurePlate.java
index 29fd5ccd..791e90da 100644
--- a/src/main/java/mods/natura/blocks/NPressurePlate.java
+++ b/src/main/java/mods/natura/blocks/NPressurePlate.java
@@ -1,7 +1,5 @@
package mods.natura.blocks;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.block.Block;
import net.minecraft.block.BlockPressurePlate;
import net.minecraft.block.material.Material;
@@ -10,6 +8,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NaturaTab;
public class NPressurePlate extends BlockPressurePlate {
diff --git a/src/main/java/mods/natura/blocks/NSlabBase.java b/src/main/java/mods/natura/blocks/NSlabBase.java
index e8c61c99..5211823c 100644
--- a/src/main/java/mods/natura/blocks/NSlabBase.java
+++ b/src/main/java/mods/natura/blocks/NSlabBase.java
@@ -2,8 +2,6 @@
import java.util.List;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.client.renderer.texture.IIconRegister;
@@ -18,6 +16,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NaturaTab;
public class NSlabBase extends Block {
diff --git a/src/main/java/mods/natura/blocks/NStairs.java b/src/main/java/mods/natura/blocks/NStairs.java
index 96909888..782fcc7f 100644
--- a/src/main/java/mods/natura/blocks/NStairs.java
+++ b/src/main/java/mods/natura/blocks/NStairs.java
@@ -1,10 +1,10 @@
package mods.natura.blocks;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.block.Block;
import net.minecraft.block.BlockStairs;
+import mods.natura.common.NaturaTab;
+
public class NStairs extends BlockStairs {
public NStairs(Block par2Block, int par3) {
diff --git a/src/main/java/mods/natura/blocks/NTrapdoor.java b/src/main/java/mods/natura/blocks/NTrapdoor.java
index bc06f68a..1253c707 100644
--- a/src/main/java/mods/natura/blocks/NTrapdoor.java
+++ b/src/main/java/mods/natura/blocks/NTrapdoor.java
@@ -1,7 +1,5 @@
package mods.natura.blocks;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.block.BlockTrapDoor;
import net.minecraft.block.material.Material;
import net.minecraft.client.renderer.texture.IIconRegister;
@@ -9,6 +7,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NaturaTab;
public class NTrapdoor extends BlockTrapDoor {
diff --git a/src/main/java/mods/natura/blocks/crops/BerryBush.java b/src/main/java/mods/natura/blocks/crops/BerryBush.java
index 59e8511c..2829d569 100644
--- a/src/main/java/mods/natura/blocks/crops/BerryBush.java
+++ b/src/main/java/mods/natura/blocks/crops/BerryBush.java
@@ -3,10 +3,6 @@
import java.util.List;
import java.util.Random;
-import mods.natura.client.BerryRender;
-import mods.natura.common.NContent;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.block.Block;
import net.minecraft.block.BlockLeavesBase;
import net.minecraft.block.material.Material;
@@ -28,6 +24,9 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.client.BerryRender;
+import mods.natura.common.NContent;
+import mods.natura.common.NaturaTab;
public class BerryBush extends BlockLeavesBase implements IPlantable {
diff --git a/src/main/java/mods/natura/blocks/crops/CropBlock.java b/src/main/java/mods/natura/blocks/crops/CropBlock.java
index 546a6ebe..8eedc60d 100644
--- a/src/main/java/mods/natura/blocks/crops/CropBlock.java
+++ b/src/main/java/mods/natura/blocks/crops/CropBlock.java
@@ -3,9 +3,6 @@
import java.util.ArrayList;
import java.util.Random;
-import mods.natura.client.CropRender;
-import mods.natura.common.NContent;
-
import net.minecraft.block.Block;
import net.minecraft.block.BlockBush;
import net.minecraft.block.IGrowable;
@@ -22,6 +19,8 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.client.CropRender;
+import mods.natura.common.NContent;
public class CropBlock extends BlockBush implements IGrowable {
diff --git a/src/main/java/mods/natura/blocks/crops/Glowshroom.java b/src/main/java/mods/natura/blocks/crops/Glowshroom.java
index f5e9de41..9768820f 100644
--- a/src/main/java/mods/natura/blocks/crops/Glowshroom.java
+++ b/src/main/java/mods/natura/blocks/crops/Glowshroom.java
@@ -3,10 +3,6 @@
import java.util.List;
import java.util.Random;
-import mods.natura.common.NaturaTab;
-import mods.natura.worldgen.GlowshroomGenBlueGreen;
-import mods.natura.worldgen.GlowshroomGenPurple;
-
import net.minecraft.block.BlockMushroom;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
@@ -18,6 +14,9 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NaturaTab;
+import mods.natura.worldgen.GlowshroomGenBlueGreen;
+import mods.natura.worldgen.GlowshroomGenPurple;
public class Glowshroom extends BlockMushroom {
diff --git a/src/main/java/mods/natura/blocks/crops/HerbBlock.java b/src/main/java/mods/natura/blocks/crops/HerbBlock.java
index 49088178..5679b168 100644
--- a/src/main/java/mods/natura/blocks/crops/HerbBlock.java
+++ b/src/main/java/mods/natura/blocks/crops/HerbBlock.java
@@ -2,9 +2,6 @@
import java.util.Random;
-import mods.natura.common.NContent;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.creativetab.CreativeTabs;
@@ -13,6 +10,9 @@
import net.minecraft.world.World;
import net.minecraftforge.common.EnumPlantType;
+import mods.natura.common.NContent;
+import mods.natura.common.NaturaTab;
+
public class HerbBlock extends CropBlock {
protected HerbBlock() {
diff --git a/src/main/java/mods/natura/blocks/crops/LargeGlowshroom.java b/src/main/java/mods/natura/blocks/crops/LargeGlowshroom.java
index 23076a10..19f96baa 100644
--- a/src/main/java/mods/natura/blocks/crops/LargeGlowshroom.java
+++ b/src/main/java/mods/natura/blocks/crops/LargeGlowshroom.java
@@ -2,8 +2,6 @@
import java.util.Random;
-import mods.natura.common.NContent;
-
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.client.renderer.texture.IIconRegister;
@@ -19,6 +17,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NContent;
public class LargeGlowshroom extends Block {
diff --git a/src/main/java/mods/natura/blocks/crops/NetherBerryBush.java b/src/main/java/mods/natura/blocks/crops/NetherBerryBush.java
index ebee3508..cf96765b 100644
--- a/src/main/java/mods/natura/blocks/crops/NetherBerryBush.java
+++ b/src/main/java/mods/natura/blocks/crops/NetherBerryBush.java
@@ -3,10 +3,6 @@
import java.util.List;
import java.util.Random;
-import mods.natura.client.BerryRender;
-import mods.natura.common.NContent;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.block.Block;
import net.minecraft.block.BlockLeavesBase;
import net.minecraft.block.material.Material;
@@ -27,6 +23,9 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.client.BerryRender;
+import mods.natura.common.NContent;
+import mods.natura.common.NaturaTab;
public class NetherBerryBush extends BlockLeavesBase implements IPlantable {
diff --git a/src/main/java/mods/natura/blocks/crops/ThornVines.java b/src/main/java/mods/natura/blocks/crops/ThornVines.java
index ded6e6f7..5fba08b6 100644
--- a/src/main/java/mods/natura/blocks/crops/ThornVines.java
+++ b/src/main/java/mods/natura/blocks/crops/ThornVines.java
@@ -1,8 +1,5 @@
package mods.natura.blocks.crops;
-import mods.natura.Natura;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.block.BlockVine;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.entity.Entity;
@@ -14,6 +11,8 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.Natura;
+import mods.natura.common.NaturaTab;
public class ThornVines extends BlockVine {
diff --git a/src/main/java/mods/natura/blocks/nether/HeatSand.java b/src/main/java/mods/natura/blocks/nether/HeatSand.java
index d20db320..9ff57b8b 100644
--- a/src/main/java/mods/natura/blocks/nether/HeatSand.java
+++ b/src/main/java/mods/natura/blocks/nether/HeatSand.java
@@ -1,7 +1,5 @@
package mods.natura.blocks.nether;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.block.Block;
import net.minecraft.block.BlockFalling;
import net.minecraft.client.renderer.texture.IIconRegister;
@@ -16,6 +14,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NaturaTab;
public class HeatSand extends BlockFalling {
diff --git a/src/main/java/mods/natura/blocks/nether/NetherGlass.java b/src/main/java/mods/natura/blocks/nether/NetherGlass.java
index c8a8e5f5..61d35093 100644
--- a/src/main/java/mods/natura/blocks/nether/NetherGlass.java
+++ b/src/main/java/mods/natura/blocks/nether/NetherGlass.java
@@ -3,8 +3,6 @@
import java.util.List;
import java.util.Random;
-import mods.natura.common.NContent;
-
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.client.renderer.texture.IIconRegister;
@@ -22,6 +20,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NContent;
public class NetherGlass extends Block {
diff --git a/src/main/java/mods/natura/blocks/nether/TaintedSoil.java b/src/main/java/mods/natura/blocks/nether/TaintedSoil.java
index 66ad62cd..439a458f 100644
--- a/src/main/java/mods/natura/blocks/nether/TaintedSoil.java
+++ b/src/main/java/mods/natura/blocks/nether/TaintedSoil.java
@@ -2,8 +2,6 @@
import static net.minecraftforge.common.util.ForgeDirection.UP;
-import mods.natura.blocks.NBlock;
-
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.init.Blocks;
@@ -12,6 +10,8 @@
import net.minecraftforge.common.IPlantable;
import net.minecraftforge.common.util.ForgeDirection;
+import mods.natura.blocks.NBlock;
+
public class TaintedSoil extends NBlock {
public TaintedSoil() {
diff --git a/src/main/java/mods/natura/blocks/overrides/AlternateBookshelf.java b/src/main/java/mods/natura/blocks/overrides/AlternateBookshelf.java
index 65b40177..6c034b2a 100644
--- a/src/main/java/mods/natura/blocks/overrides/AlternateBookshelf.java
+++ b/src/main/java/mods/natura/blocks/overrides/AlternateBookshelf.java
@@ -2,8 +2,6 @@
import java.util.List;
-import mods.natura.common.NContent;
-
import net.minecraft.block.BlockBookshelf;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
@@ -14,6 +12,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NContent;
public class AlternateBookshelf extends BlockBookshelf {
diff --git a/src/main/java/mods/natura/blocks/overrides/AlternateFence.java b/src/main/java/mods/natura/blocks/overrides/AlternateFence.java
index e2fb7429..ccbcc3de 100644
--- a/src/main/java/mods/natura/blocks/overrides/AlternateFence.java
+++ b/src/main/java/mods/natura/blocks/overrides/AlternateFence.java
@@ -2,9 +2,6 @@
import java.util.List;
-import mods.natura.client.FenceRender;
-import mods.natura.common.NContent;
-
import net.minecraft.block.BlockFence;
import net.minecraft.block.material.Material;
import net.minecraft.client.renderer.texture.IIconRegister;
@@ -16,6 +13,8 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.client.FenceRender;
+import mods.natura.common.NContent;
public class AlternateFence extends BlockFence {
diff --git a/src/main/java/mods/natura/blocks/overrides/AlternateWorkbench.java b/src/main/java/mods/natura/blocks/overrides/AlternateWorkbench.java
index bb50cd20..c160f4e4 100644
--- a/src/main/java/mods/natura/blocks/overrides/AlternateWorkbench.java
+++ b/src/main/java/mods/natura/blocks/overrides/AlternateWorkbench.java
@@ -2,10 +2,6 @@
import java.util.List;
-import mods.natura.Natura;
-import mods.natura.common.NContent;
-import mods.natura.gui.NGuiHandler;
-
import net.minecraft.block.BlockWorkbench;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
@@ -17,6 +13,9 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.Natura;
+import mods.natura.common.NContent;
+import mods.natura.gui.NGuiHandler;
public class AlternateWorkbench extends BlockWorkbench {
diff --git a/src/main/java/mods/natura/blocks/overrides/NetherLever.java b/src/main/java/mods/natura/blocks/overrides/NetherLever.java
index 5f7479f1..f1c6fe0a 100644
--- a/src/main/java/mods/natura/blocks/overrides/NetherLever.java
+++ b/src/main/java/mods/natura/blocks/overrides/NetherLever.java
@@ -1,9 +1,9 @@
package mods.natura.blocks.overrides;
-import mods.natura.client.LeverRender;
-
import net.minecraft.block.BlockLever;
+import mods.natura.client.LeverRender;
+
public class NetherLever extends BlockLever {
public NetherLever() {
diff --git a/src/main/java/mods/natura/blocks/tech/BlazeHopper.java b/src/main/java/mods/natura/blocks/tech/BlazeHopper.java
index 8d077f7c..036ab0b0 100644
--- a/src/main/java/mods/natura/blocks/tech/BlazeHopper.java
+++ b/src/main/java/mods/natura/blocks/tech/BlazeHopper.java
@@ -1,14 +1,13 @@
package mods.natura.blocks.tech;
-import mods.natura.client.HopperRender;
-import mods.natura.common.NContent;
-
import net.minecraft.block.BlockHopper;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.util.IIcon;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.client.HopperRender;
+import mods.natura.common.NContent;
public class BlazeHopper extends BlockHopper {
diff --git a/src/main/java/mods/natura/blocks/tech/NetherPistonBase.java b/src/main/java/mods/natura/blocks/tech/NetherPistonBase.java
index 4cf0aaf4..2add4baf 100644
--- a/src/main/java/mods/natura/blocks/tech/NetherPistonBase.java
+++ b/src/main/java/mods/natura/blocks/tech/NetherPistonBase.java
@@ -2,8 +2,6 @@
import java.util.List;
-import mods.natura.common.NContent;
-
import net.minecraft.block.Block;
import net.minecraft.block.BlockPistonBase;
import net.minecraft.block.BlockPistonMoving;
@@ -25,6 +23,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NContent;
// TODO 1.7 make sure this class still works (extending behavior)
public class NetherPistonBase extends BlockPistonBase {
diff --git a/src/main/java/mods/natura/blocks/tech/NetherrackFurnaceBlock.java b/src/main/java/mods/natura/blocks/tech/NetherrackFurnaceBlock.java
index 5141446d..cfa2603f 100644
--- a/src/main/java/mods/natura/blocks/tech/NetherrackFurnaceBlock.java
+++ b/src/main/java/mods/natura/blocks/tech/NetherrackFurnaceBlock.java
@@ -2,9 +2,6 @@
import java.util.Random;
-import mods.natura.Natura;
-import mods.natura.gui.NGuiHandler;
-
import net.minecraft.block.Block;
import net.minecraft.block.BlockContainer;
import net.minecraft.block.material.Material;
@@ -23,6 +20,8 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.Natura;
+import mods.natura.gui.NGuiHandler;
/**
* Abstract for blocks with inventories.
diff --git a/src/main/java/mods/natura/blocks/tech/NetherrackFurnaceLogic.java b/src/main/java/mods/natura/blocks/tech/NetherrackFurnaceLogic.java
index f2e68796..f698a8d4 100644
--- a/src/main/java/mods/natura/blocks/tech/NetherrackFurnaceLogic.java
+++ b/src/main/java/mods/natura/blocks/tech/NetherrackFurnaceLogic.java
@@ -1,7 +1,5 @@
package mods.natura.blocks.tech;
-import mantle.blocks.BlockUtils;
-
import net.minecraft.block.Block;
import net.minecraft.block.BlockLog;
import net.minecraft.block.material.Material;
@@ -26,6 +24,7 @@
import cpw.mods.fml.common.registry.GameRegistry;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mantle.blocks.BlockUtils;
public class NetherrackFurnaceLogic extends TileEntityFurnace {
diff --git a/src/main/java/mods/natura/blocks/tech/RespawnObelisk.java b/src/main/java/mods/natura/blocks/tech/RespawnObelisk.java
index 88c2f33f..f856416a 100644
--- a/src/main/java/mods/natura/blocks/tech/RespawnObelisk.java
+++ b/src/main/java/mods/natura/blocks/tech/RespawnObelisk.java
@@ -2,8 +2,6 @@
import java.util.Random;
-import mods.natura.Natura;
-
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.client.renderer.texture.IIconRegister;
@@ -16,6 +14,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.Natura;
public class RespawnObelisk extends Block {
diff --git a/src/main/java/mods/natura/blocks/trees/DarkTreeBlock.java b/src/main/java/mods/natura/blocks/trees/DarkTreeBlock.java
index b6f66c99..c17c666e 100644
--- a/src/main/java/mods/natura/blocks/trees/DarkTreeBlock.java
+++ b/src/main/java/mods/natura/blocks/trees/DarkTreeBlock.java
@@ -3,8 +3,6 @@
import java.util.List;
import java.util.Random;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.client.renderer.texture.IIconRegister;
@@ -18,6 +16,8 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NaturaTab;
+import mods.natura.util.Util;
public class DarkTreeBlock extends Block {
@@ -44,17 +44,23 @@ public IIcon getIcon(int side, int metadata) {
// Ends of logs
{
case 0:
- if (side == 0 || side == 1) return icons[tex + 1];
+ if (side == 0 || side == 1) {
+ return Util.getWithFallback(icons, tex + 1);
+ }
break;
case 1:
- if (side == 4 || side == 5) return icons[tex + 1];
+ if (side == 4 || side == 5) {
+ return Util.getWithFallback(icons, tex + 1);
+ }
break;
case 2:
- if (side == 2 || side == 3) return icons[tex + 1];
+ if (side == 2 || side == 3) {
+ return Util.getWithFallback(icons, tex + 1);
+ }
break;
}
- return icons[tex];
+ return Util.getWithFallback(icons, tex);
}
@Override
diff --git a/src/main/java/mods/natura/blocks/trees/FruitTreeBlock.java b/src/main/java/mods/natura/blocks/trees/FruitTreeBlock.java
index c69f5ab9..adf88704 100644
--- a/src/main/java/mods/natura/blocks/trees/FruitTreeBlock.java
+++ b/src/main/java/mods/natura/blocks/trees/FruitTreeBlock.java
@@ -2,12 +2,12 @@
import java.util.Random;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.block.Block;
import net.minecraft.block.BlockLog;
import net.minecraft.item.Item;
+import mods.natura.common.NaturaTab;
+
public class FruitTreeBlock extends BlockLog {
public FruitTreeBlock() {
diff --git a/src/main/java/mods/natura/blocks/trees/LogTwoxTwo.java b/src/main/java/mods/natura/blocks/trees/LogTwoxTwo.java
index a103b07f..8ce3be5d 100644
--- a/src/main/java/mods/natura/blocks/trees/LogTwoxTwo.java
+++ b/src/main/java/mods/natura/blocks/trees/LogTwoxTwo.java
@@ -3,9 +3,6 @@
import java.util.List;
import java.util.Random;
-import mods.natura.common.NContent;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.client.renderer.texture.IIconRegister;
@@ -18,6 +15,8 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NContent;
+import mods.natura.common.NaturaTab;
/*
* This class is for a single tree with a 2x2 base and inside textures
diff --git a/src/main/java/mods/natura/blocks/trees/NDoor.java b/src/main/java/mods/natura/blocks/trees/NDoor.java
index eb8e2f00..59e8952f 100644
--- a/src/main/java/mods/natura/blocks/trees/NDoor.java
+++ b/src/main/java/mods/natura/blocks/trees/NDoor.java
@@ -2,8 +2,6 @@
import java.util.Random;
-import mods.natura.common.NContent;
-
import net.minecraft.block.Block;
import net.minecraft.block.BlockDoor;
import net.minecraft.block.material.Material;
@@ -19,6 +17,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NContent;
public class NDoor extends BlockDoor {
diff --git a/src/main/java/mods/natura/blocks/trees/NLeaves.java b/src/main/java/mods/natura/blocks/trees/NLeaves.java
index 04af65e3..884f2618 100644
--- a/src/main/java/mods/natura/blocks/trees/NLeaves.java
+++ b/src/main/java/mods/natura/blocks/trees/NLeaves.java
@@ -4,9 +4,6 @@
import java.util.List;
import java.util.Random;
-import mods.natura.common.NContent;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.block.Block;
import net.minecraft.block.BlockLeaves;
import net.minecraft.client.renderer.texture.IIconRegister;
@@ -21,6 +18,8 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NContent;
+import mods.natura.common.NaturaTab;
public class NLeaves extends BlockLeaves {
diff --git a/src/main/java/mods/natura/blocks/trees/NLeavesDark.java b/src/main/java/mods/natura/blocks/trees/NLeavesDark.java
index 3111d1c2..ddd6917d 100644
--- a/src/main/java/mods/natura/blocks/trees/NLeavesDark.java
+++ b/src/main/java/mods/natura/blocks/trees/NLeavesDark.java
@@ -3,9 +3,6 @@
import java.util.List;
import java.util.Random;
-import mods.natura.common.NContent;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.init.Blocks;
@@ -18,6 +15,8 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NContent;
+import mods.natura.common.NaturaTab;
public class NLeavesDark extends NLeaves {
diff --git a/src/main/java/mods/natura/blocks/trees/NLeavesNocolor.java b/src/main/java/mods/natura/blocks/trees/NLeavesNocolor.java
index 48631370..61b869cc 100644
--- a/src/main/java/mods/natura/blocks/trees/NLeavesNocolor.java
+++ b/src/main/java/mods/natura/blocks/trees/NLeavesNocolor.java
@@ -4,10 +4,6 @@
import java.util.List;
import java.util.Random;
-import mods.natura.Natura;
-import mods.natura.common.NContent;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.init.Blocks;
@@ -21,6 +17,9 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.Natura;
+import mods.natura.common.NContent;
+import mods.natura.common.NaturaTab;
public class NLeavesNocolor extends NLeaves {
diff --git a/src/main/java/mods/natura/blocks/trees/NSaplingBlock.java b/src/main/java/mods/natura/blocks/trees/NSaplingBlock.java
index 5a71e6d3..b1df30e4 100644
--- a/src/main/java/mods/natura/blocks/trees/NSaplingBlock.java
+++ b/src/main/java/mods/natura/blocks/trees/NSaplingBlock.java
@@ -3,17 +3,6 @@
import java.util.List;
import java.util.Random;
-import mods.natura.common.NContent;
-import mods.natura.common.NaturaTab;
-import mods.natura.worldgen.BloodTreeLargeGen;
-import mods.natura.worldgen.BushTreeGen;
-import mods.natura.worldgen.DarkwoodGen;
-import mods.natura.worldgen.EucalyptusTreeGenShort;
-import mods.natura.worldgen.FusewoodGen;
-import mods.natura.worldgen.RedwoodTreeGen;
-import mods.natura.worldgen.SakuraTreeGen;
-import mods.natura.worldgen.WhiteTreeGen;
-
import net.minecraft.block.Block;
import net.minecraft.block.BlockSapling;
import net.minecraft.client.renderer.texture.IIconRegister;
@@ -30,6 +19,16 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NContent;
+import mods.natura.common.NaturaTab;
+import mods.natura.worldgen.BloodTreeLargeGen;
+import mods.natura.worldgen.BushTreeGen;
+import mods.natura.worldgen.DarkwoodGen;
+import mods.natura.worldgen.EucalyptusTreeGenShort;
+import mods.natura.worldgen.FusewoodGen;
+import mods.natura.worldgen.RedwoodTreeGen;
+import mods.natura.worldgen.SakuraTreeGen;
+import mods.natura.worldgen.WhiteTreeGen;
public class NSaplingBlock extends BlockSapling {
diff --git a/src/main/java/mods/natura/blocks/trees/OverworldLeaves.java b/src/main/java/mods/natura/blocks/trees/OverworldLeaves.java
index 785478f6..be8f8f13 100644
--- a/src/main/java/mods/natura/blocks/trees/OverworldLeaves.java
+++ b/src/main/java/mods/natura/blocks/trees/OverworldLeaves.java
@@ -3,8 +3,6 @@
import java.util.List;
import java.util.Random;
-import mods.natura.common.NContent;
-
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.init.Blocks;
@@ -15,6 +13,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NContent;
public class OverworldLeaves extends NLeaves {
diff --git a/src/main/java/mods/natura/blocks/trees/OverworldSapling.java b/src/main/java/mods/natura/blocks/trees/OverworldSapling.java
index 2ded4f5f..b3e7608e 100644
--- a/src/main/java/mods/natura/blocks/trees/OverworldSapling.java
+++ b/src/main/java/mods/natura/blocks/trees/OverworldSapling.java
@@ -3,11 +3,6 @@
import java.util.List;
import java.util.Random;
-import mods.natura.common.NContent;
-import mods.natura.common.NaturaTab;
-import mods.natura.worldgen.RareTreeGen;
-import mods.natura.worldgen.WillowGen;
-
import net.minecraft.block.Block;
import net.minecraft.block.BlockSapling;
import net.minecraft.client.renderer.texture.IIconRegister;
@@ -24,6 +19,10 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NContent;
+import mods.natura.common.NaturaTab;
+import mods.natura.worldgen.RareTreeGen;
+import mods.natura.worldgen.WillowGen;
public class OverworldSapling extends BlockSapling {
diff --git a/src/main/java/mods/natura/blocks/trees/OverworldTreeBlock.java b/src/main/java/mods/natura/blocks/trees/OverworldTreeBlock.java
index 0b321ab7..61ac2274 100644
--- a/src/main/java/mods/natura/blocks/trees/OverworldTreeBlock.java
+++ b/src/main/java/mods/natura/blocks/trees/OverworldTreeBlock.java
@@ -3,8 +3,6 @@
import java.util.ArrayList;
import java.util.List;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.block.Block;
import net.minecraft.block.BlockLog;
import net.minecraft.client.renderer.texture.IIconRegister;
@@ -18,6 +16,8 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NaturaTab;
+import mods.natura.util.Util;
public class OverworldTreeBlock extends BlockLog {
@@ -43,17 +43,23 @@ public IIcon getIcon(int side, int metadata) {
// Ends of logs
{
case 0:
- if (side == 0 || side == 1) return icons[tex + 1];
+ if (side == 0 || side == 1) {
+ return Util.getWithFallback(icons, tex + 1);
+ }
break;
case 1:
- if (side == 4 || side == 5) return icons[tex + 1];
+ if (side == 4 || side == 5) {
+ return Util.getWithFallback(icons, tex + 1);
+ }
break;
case 2:
- if (side == 2 || side == 3) return icons[tex + 1];
+ if (side == 2 || side == 3) {
+ return Util.getWithFallback(icons, tex + 1);
+ }
break;
}
- return icons[tex];
+ return Util.getWithFallback(icons, tex);
}
@Override
diff --git a/src/main/java/mods/natura/blocks/trees/Planks.java b/src/main/java/mods/natura/blocks/trees/Planks.java
index 226e2d9a..f9e45257 100644
--- a/src/main/java/mods/natura/blocks/trees/Planks.java
+++ b/src/main/java/mods/natura/blocks/trees/Planks.java
@@ -2,8 +2,6 @@
import java.util.List;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.client.renderer.texture.IIconRegister;
@@ -18,6 +16,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NaturaTab;
public class Planks extends Block {
diff --git a/src/main/java/mods/natura/blocks/trees/SaguaroBlock.java b/src/main/java/mods/natura/blocks/trees/SaguaroBlock.java
index a7b56ac4..d7ccc159 100644
--- a/src/main/java/mods/natura/blocks/trees/SaguaroBlock.java
+++ b/src/main/java/mods/natura/blocks/trees/SaguaroBlock.java
@@ -2,11 +2,6 @@
import java.util.Random;
-import mods.natura.client.SaguaroRenderer;
-import mods.natura.common.NContent;
-import mods.natura.common.NaturaTab;
-import mods.natura.worldgen.SaguaroGen;
-
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.client.renderer.texture.IIconRegister;
@@ -24,6 +19,10 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.client.SaguaroRenderer;
+import mods.natura.common.NContent;
+import mods.natura.common.NaturaTab;
+import mods.natura.worldgen.SaguaroGen;
public class SaguaroBlock extends Block implements IPlantable {
diff --git a/src/main/java/mods/natura/blocks/trees/SimpleLog.java b/src/main/java/mods/natura/blocks/trees/SimpleLog.java
index 6a986872..155f784c 100644
--- a/src/main/java/mods/natura/blocks/trees/SimpleLog.java
+++ b/src/main/java/mods/natura/blocks/trees/SimpleLog.java
@@ -2,8 +2,6 @@
import java.util.List;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.Item;
@@ -15,6 +13,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NaturaTab;
public class SimpleLog extends Planks {
diff --git a/src/main/java/mods/natura/blocks/trees/TreeBlock.java b/src/main/java/mods/natura/blocks/trees/TreeBlock.java
index 4315224b..c624d6c3 100644
--- a/src/main/java/mods/natura/blocks/trees/TreeBlock.java
+++ b/src/main/java/mods/natura/blocks/trees/TreeBlock.java
@@ -3,8 +3,6 @@
import java.util.List;
import java.util.Random;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.block.Block;
import net.minecraft.block.BlockLog;
import net.minecraft.client.renderer.texture.IIconRegister;
@@ -18,6 +16,8 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NaturaTab;
+import mods.natura.util.Util;
public class TreeBlock extends BlockLog {
@@ -44,17 +44,23 @@ public IIcon getIcon(int side, int metadata) {
// Ends of logs
{
case 0:
- if (side == 0 || side == 1) return icons[tex + 4];
+ if (side == 0 || side == 1) {
+ return Util.getWithFallback(icons, tex + 4);
+ }
break;
case 1:
- if (side == 4 || side == 5) return icons[tex + 4];
+ if (side == 4 || side == 5) {
+ return Util.getWithFallback(icons, tex + 4);
+ }
break;
case 2:
- if (side == 2 || side == 3) return icons[tex + 4];
+ if (side == 2 || side == 3) {
+ return Util.getWithFallback(icons, tex + 4);
+ }
break;
}
- return icons[tex];
+ return Util.getWithFallback(icons, tex);
}
@Override
diff --git a/src/main/java/mods/natura/blocks/trees/WillowBlock.java b/src/main/java/mods/natura/blocks/trees/WillowBlock.java
index 272c4022..28cdd0d1 100644
--- a/src/main/java/mods/natura/blocks/trees/WillowBlock.java
+++ b/src/main/java/mods/natura/blocks/trees/WillowBlock.java
@@ -3,8 +3,6 @@
import java.util.ArrayList;
import java.util.List;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.block.Block;
import net.minecraft.block.BlockLog;
import net.minecraft.client.renderer.texture.IIconRegister;
@@ -18,6 +16,8 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NaturaTab;
+import mods.natura.util.Util;
public class WillowBlock extends BlockLog {
@@ -42,17 +42,23 @@ public IIcon getIcon(int side, int metadata) {
// Ends of logs
{
case 0:
- if (side == 0 || side == 1) return icons[tex + 1];
+ if (side == 0 || side == 1) {
+ return Util.getWithFallback(icons, tex + 1);
+ }
break;
case 1:
- if (side == 4 || side == 5) return icons[tex + 1];
+ if (side == 4 || side == 5) {
+ return Util.getWithFallback(icons, tex + 1);
+ }
break;
case 2:
- if (side == 2 || side == 3) return icons[tex + 1];
+ if (side == 2 || side == 3) {
+ return Util.getWithFallback(icons, tex + 1);
+ }
break;
}
- return icons[tex];
+ return Util.getWithFallback(icons, tex);
}
@Override
diff --git a/src/main/java/mods/natura/client/GrassColorizerAlternate.java b/src/main/java/mods/natura/client/GrassColorizerAlternate.java
index 58be699e..35828cf9 100644
--- a/src/main/java/mods/natura/client/GrassColorizerAlternate.java
+++ b/src/main/java/mods/natura/client/GrassColorizerAlternate.java
@@ -1,8 +1,8 @@
package mods.natura.client;
-import mods.natura.Natura;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.Natura;
@SideOnly(Side.CLIENT)
public class GrassColorizerAlternate {
diff --git a/src/main/java/mods/natura/client/HopperRender.java b/src/main/java/mods/natura/client/HopperRender.java
index e10c9743..36fd12ce 100644
--- a/src/main/java/mods/natura/client/HopperRender.java
+++ b/src/main/java/mods/natura/client/HopperRender.java
@@ -1,7 +1,5 @@
package mods.natura.client;
-import mods.natura.blocks.tech.BlazeHopper;
-
import net.minecraft.block.Block;
import net.minecraft.block.BlockHopper;
import net.minecraft.client.renderer.EntityRenderer;
@@ -12,6 +10,7 @@
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
import cpw.mods.fml.client.registry.RenderingRegistry;
+import mods.natura.blocks.tech.BlazeHopper;
public class HopperRender implements ISimpleBlockRenderingHandler {
diff --git a/src/main/java/mods/natura/client/NProxyClient.java b/src/main/java/mods/natura/client/NProxyClient.java
index 7a207f9b..e4613b7b 100644
--- a/src/main/java/mods/natura/client/NProxyClient.java
+++ b/src/main/java/mods/natura/client/NProxyClient.java
@@ -1,5 +1,15 @@
package mods.natura.client;
+import net.minecraft.block.Block;
+import net.minecraft.client.Minecraft;
+import net.minecraft.client.renderer.RenderBlocks;
+import net.minecraft.client.renderer.Tessellator;
+import net.minecraft.client.renderer.texture.TextureUtil;
+import net.minecraft.util.ResourceLocation;
+
+import org.lwjgl.opengl.GL11;
+
+import cpw.mods.fml.client.registry.RenderingRegistry;
import mods.natura.client.entity.FlameSpiderBabyRender;
import mods.natura.client.entity.FlameSpiderRender;
import mods.natura.client.entity.FusewoodArrowRender;
@@ -13,17 +23,6 @@
import mods.natura.entity.ImpEntity;
import mods.natura.entity.NitroCreeper;
-import net.minecraft.block.Block;
-import net.minecraft.client.Minecraft;
-import net.minecraft.client.renderer.RenderBlocks;
-import net.minecraft.client.renderer.Tessellator;
-import net.minecraft.client.renderer.texture.TextureUtil;
-import net.minecraft.util.ResourceLocation;
-
-import org.lwjgl.opengl.GL11;
-
-import cpw.mods.fml.client.registry.RenderingRegistry;
-
public class NProxyClient extends NProxyCommon {
@Override
diff --git a/src/main/java/mods/natura/client/SaguaroRenderer.java b/src/main/java/mods/natura/client/SaguaroRenderer.java
index 762b1d04..91b347a2 100644
--- a/src/main/java/mods/natura/client/SaguaroRenderer.java
+++ b/src/main/java/mods/natura/client/SaguaroRenderer.java
@@ -1,7 +1,5 @@
package mods.natura.client;
-import mods.natura.blocks.trees.SaguaroBlock;
-
import net.minecraft.block.Block;
import net.minecraft.block.BlockDirectional;
import net.minecraft.client.renderer.RenderBlocks;
@@ -12,6 +10,7 @@
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
import cpw.mods.fml.client.registry.RenderingRegistry;
+import mods.natura.blocks.trees.SaguaroBlock;
public class SaguaroRenderer implements ISimpleBlockRenderingHandler {
diff --git a/src/main/java/mods/natura/client/entity/FlameSpiderBabyRender.java b/src/main/java/mods/natura/client/entity/FlameSpiderBabyRender.java
index 14795808..087f667e 100644
--- a/src/main/java/mods/natura/client/entity/FlameSpiderBabyRender.java
+++ b/src/main/java/mods/natura/client/entity/FlameSpiderBabyRender.java
@@ -1,7 +1,5 @@
package mods.natura.client.entity;
-import mods.natura.entity.BabyHeatscarSpider;
-
import net.minecraft.client.renderer.entity.RenderSpider;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLivingBase;
@@ -9,6 +7,8 @@
import org.lwjgl.opengl.GL11;
+import mods.natura.entity.BabyHeatscarSpider;
+
public class FlameSpiderBabyRender extends RenderSpider {
public FlameSpiderBabyRender() {
diff --git a/src/main/java/mods/natura/client/entity/FlameSpiderRender.java b/src/main/java/mods/natura/client/entity/FlameSpiderRender.java
index 6e1cfa68..a8b8c530 100644
--- a/src/main/java/mods/natura/client/entity/FlameSpiderRender.java
+++ b/src/main/java/mods/natura/client/entity/FlameSpiderRender.java
@@ -1,7 +1,5 @@
package mods.natura.client.entity;
-import mods.natura.entity.HeatscarSpider;
-
import net.minecraft.client.renderer.entity.RenderSpider;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLivingBase;
@@ -9,6 +7,8 @@
import org.lwjgl.opengl.GL11;
+import mods.natura.entity.HeatscarSpider;
+
public class FlameSpiderRender extends RenderSpider {
public FlameSpiderRender() {
diff --git a/src/main/java/mods/natura/client/entity/FusewoodArrowRender.java b/src/main/java/mods/natura/client/entity/FusewoodArrowRender.java
index 58b95fa6..66dafc94 100644
--- a/src/main/java/mods/natura/client/entity/FusewoodArrowRender.java
+++ b/src/main/java/mods/natura/client/entity/FusewoodArrowRender.java
@@ -1,7 +1,5 @@
package mods.natura.client.entity;
-import mods.natura.entity.FusewoodArrow;
-
import net.minecraft.client.renderer.Tessellator;
import net.minecraft.client.renderer.entity.Render;
import net.minecraft.entity.Entity;
@@ -13,6 +11,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.entity.FusewoodArrow;
@SideOnly(Side.CLIENT)
public class FusewoodArrowRender extends Render {
diff --git a/src/main/java/mods/natura/common/NContent.java b/src/main/java/mods/natura/common/NContent.java
index 87467d1c..19ea42e0 100644
--- a/src/main/java/mods/natura/common/NContent.java
+++ b/src/main/java/mods/natura/common/NContent.java
@@ -4,6 +4,36 @@
import java.util.HashMap;
import java.util.List;
+import net.minecraft.block.Block;
+import net.minecraft.block.BlockDispenser;
+import net.minecraft.block.BlockPressurePlate.Sensitivity;
+import net.minecraft.block.material.Material;
+import net.minecraft.enchantment.Enchantment;
+import net.minecraft.entity.EnumCreatureType;
+import net.minecraft.init.Blocks;
+import net.minecraft.init.Items;
+import net.minecraft.item.Item;
+import net.minecraft.item.Item.ToolMaterial;
+import net.minecraft.item.ItemArmor.ArmorMaterial;
+import net.minecraft.item.ItemStack;
+import net.minecraft.item.crafting.CraftingManager;
+import net.minecraft.item.crafting.FurnaceRecipes;
+import net.minecraft.item.crafting.ShapedRecipes;
+import net.minecraft.item.crafting.ShapelessRecipes;
+import net.minecraft.world.biome.BiomeGenBase;
+import net.minecraftforge.common.BiomeDictionary;
+import net.minecraftforge.common.MinecraftForge;
+import net.minecraftforge.common.util.EnumHelper;
+import net.minecraftforge.fluids.FluidContainerRegistry;
+import net.minecraftforge.fluids.FluidRegistry;
+import net.minecraftforge.oredict.OreDictionary;
+import net.minecraftforge.oredict.ShapedOreRecipe;
+import net.minecraftforge.oredict.ShapelessOreRecipe;
+
+import cpw.mods.fml.common.IFuelHandler;
+import cpw.mods.fml.common.Loader;
+import cpw.mods.fml.common.registry.EntityRegistry;
+import cpw.mods.fml.common.registry.GameRegistry;
import mods.natura.Natura;
import mods.natura.blocks.CloudBlock;
import mods.natura.blocks.GrassBlock;
@@ -109,38 +139,7 @@
import mods.natura.items.tools.NaturaShovel;
import mods.natura.items.tools.NaturaSword;
import mods.natura.util.DispenserBehaviorSpawnEgg;
-
-import net.minecraft.block.Block;
-import net.minecraft.block.BlockDispenser;
-import net.minecraft.block.BlockPressurePlate.Sensitivity;
-import net.minecraft.block.material.Material;
-import net.minecraft.enchantment.Enchantment;
-import net.minecraft.entity.EnumCreatureType;
-import net.minecraft.init.Blocks;
-import net.minecraft.init.Items;
-import net.minecraft.item.Item;
-import net.minecraft.item.Item.ToolMaterial;
-import net.minecraft.item.ItemArmor.ArmorMaterial;
-import net.minecraft.item.ItemStack;
-import net.minecraft.item.crafting.CraftingManager;
-import net.minecraft.item.crafting.FurnaceRecipes;
-import net.minecraft.item.crafting.ShapedRecipes;
-import net.minecraft.item.crafting.ShapelessRecipes;
-import net.minecraft.world.biome.BiomeGenBase;
-import net.minecraftforge.common.BiomeDictionary;
-import net.minecraftforge.common.MinecraftForge;
-import net.minecraftforge.common.util.EnumHelper;
-import net.minecraftforge.fluids.FluidContainerRegistry;
-import net.minecraftforge.fluids.FluidRegistry;
-import net.minecraftforge.oredict.OreDictionary;
-import net.minecraftforge.oredict.ShapedOreRecipe;
-import net.minecraftforge.oredict.ShapelessOreRecipe;
-
import tconstruct.library.crafting.PatternBuilder;
-import cpw.mods.fml.common.IFuelHandler;
-import cpw.mods.fml.common.Loader;
-import cpw.mods.fml.common.registry.EntityRegistry;
-import cpw.mods.fml.common.registry.GameRegistry;
public class NContent implements IFuelHandler {
diff --git a/src/main/java/mods/natura/common/PHNatura.java b/src/main/java/mods/natura/common/PHNatura.java
index 9bbc1546..5bd358de 100644
--- a/src/main/java/mods/natura/common/PHNatura.java
+++ b/src/main/java/mods/natura/common/PHNatura.java
@@ -2,11 +2,10 @@
import java.io.File;
-import mods.natura.Natura;
-
import net.minecraftforge.common.config.Configuration;
import cpw.mods.fml.common.Loader;
+import mods.natura.Natura;
public class PHNatura {
diff --git a/src/main/java/mods/natura/dimension/FireGen.java b/src/main/java/mods/natura/dimension/FireGen.java
index 5d60c1c8..90a495af 100644
--- a/src/main/java/mods/natura/dimension/FireGen.java
+++ b/src/main/java/mods/natura/dimension/FireGen.java
@@ -2,13 +2,13 @@
import java.util.Random;
-import mods.natura.common.NContent;
-
import net.minecraft.block.Block;
import net.minecraft.init.Blocks;
import net.minecraft.world.World;
import net.minecraft.world.gen.feature.WorldGenerator;
+import mods.natura.common.NContent;
+
public class FireGen extends WorldGenerator {
@Override
diff --git a/src/main/java/mods/natura/dimension/NetheriteChunkProvider.java b/src/main/java/mods/natura/dimension/NetheriteChunkProvider.java
index 6bc99977..e2472b9a 100644
--- a/src/main/java/mods/natura/dimension/NetheriteChunkProvider.java
+++ b/src/main/java/mods/natura/dimension/NetheriteChunkProvider.java
@@ -10,10 +10,6 @@
import java.util.List;
import java.util.Random;
-import mods.natura.common.NContent;
-import mods.natura.common.PHNatura;
-import mods.natura.worldgen.FlowerGen;
-
import net.minecraft.block.Block;
import net.minecraft.block.BlockFalling;
import net.minecraft.entity.EnumCreatureType;
@@ -40,6 +36,9 @@
import net.minecraftforge.event.terraingen.TerrainGen;
import cpw.mods.fml.common.eventhandler.Event.Result;
+import mods.natura.common.NContent;
+import mods.natura.common.PHNatura;
+import mods.natura.worldgen.FlowerGen;
public class NetheriteChunkProvider implements IChunkProvider {
diff --git a/src/main/java/mods/natura/dimension/NetheriteWorldProvider.java b/src/main/java/mods/natura/dimension/NetheriteWorldProvider.java
index 4ad1bbb9..d1bdb002 100644
--- a/src/main/java/mods/natura/dimension/NetheriteWorldProvider.java
+++ b/src/main/java/mods/natura/dimension/NetheriteWorldProvider.java
@@ -1,13 +1,13 @@
package mods.natura.dimension;
-import mods.natura.common.PHNatura;
-
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.util.ChunkCoordinates;
import net.minecraft.world.WorldProviderHell;
import net.minecraft.world.biome.BiomeGenBase;
import net.minecraft.world.chunk.IChunkProvider;
+import mods.natura.common.PHNatura;
+
public class NetheriteWorldProvider extends WorldProviderHell {
/**
diff --git a/src/main/java/mods/natura/entity/BabyHeatscarSpider.java b/src/main/java/mods/natura/entity/BabyHeatscarSpider.java
index 7ec5eef0..573af4e9 100644
--- a/src/main/java/mods/natura/entity/BabyHeatscarSpider.java
+++ b/src/main/java/mods/natura/entity/BabyHeatscarSpider.java
@@ -1,7 +1,5 @@
package mods.natura.entity;
-import mods.natura.common.NContent;
-
import net.minecraft.block.Block;
import net.minecraft.block.Block.SoundType;
import net.minecraft.entity.Entity;
@@ -17,6 +15,8 @@
import net.minecraft.world.World;
import net.minecraftforge.common.ForgeHooks;
+import mods.natura.common.NContent;
+
public class BabyHeatscarSpider extends EntitySpider {
public BabyHeatscarSpider(World par1World) {
diff --git a/src/main/java/mods/natura/entity/HeatscarSpider.java b/src/main/java/mods/natura/entity/HeatscarSpider.java
index f4520a63..35f3f27c 100644
--- a/src/main/java/mods/natura/entity/HeatscarSpider.java
+++ b/src/main/java/mods/natura/entity/HeatscarSpider.java
@@ -1,8 +1,5 @@
package mods.natura.entity;
-import mods.natura.common.NContent;
-import mods.natura.common.PHNatura;
-
import net.minecraft.block.Block;
import net.minecraft.block.Block.SoundType;
import net.minecraft.entity.Entity;
@@ -21,6 +18,8 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NContent;
+import mods.natura.common.PHNatura;
public class HeatscarSpider extends EntitySpider {
diff --git a/src/main/java/mods/natura/entity/ImpEntity.java b/src/main/java/mods/natura/entity/ImpEntity.java
index 3d835b2d..07109808 100644
--- a/src/main/java/mods/natura/entity/ImpEntity.java
+++ b/src/main/java/mods/natura/entity/ImpEntity.java
@@ -1,7 +1,5 @@
package mods.natura.entity;
-import mods.natura.common.NContent;
-
import net.minecraft.entity.EntityAgeable;
import net.minecraft.entity.SharedMonsterAttributes;
import net.minecraft.entity.ai.EntityAIAvoidEntity;
@@ -20,6 +18,8 @@
import net.minecraft.world.World;
import net.minecraft.world.WorldProviderHell;
+import mods.natura.common.NContent;
+
public class ImpEntity extends EntityAnimal {
public ImpEntity(World par1World) {
diff --git a/src/main/java/mods/natura/gui/FurnaceContainer.java b/src/main/java/mods/natura/gui/FurnaceContainer.java
index 08530dd2..bf070c56 100644
--- a/src/main/java/mods/natura/gui/FurnaceContainer.java
+++ b/src/main/java/mods/natura/gui/FurnaceContainer.java
@@ -1,7 +1,5 @@
package mods.natura.gui;
-import mods.natura.blocks.tech.NetherrackFurnaceLogic;
-
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.inventory.Container;
@@ -14,6 +12,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.blocks.tech.NetherrackFurnaceLogic;
public class FurnaceContainer extends Container {
diff --git a/src/main/java/mods/natura/gui/FurnaceGui.java b/src/main/java/mods/natura/gui/FurnaceGui.java
index bdfab929..75739c0f 100644
--- a/src/main/java/mods/natura/gui/FurnaceGui.java
+++ b/src/main/java/mods/natura/gui/FurnaceGui.java
@@ -1,7 +1,5 @@
package mods.natura.gui;
-import mods.natura.blocks.tech.NetherrackFurnaceLogic;
-
import net.minecraft.client.gui.inventory.GuiContainer;
import net.minecraft.client.resources.I18n;
import net.minecraft.entity.player.InventoryPlayer;
@@ -12,6 +10,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.blocks.tech.NetherrackFurnaceLogic;
@SideOnly(Side.CLIENT)
public class FurnaceGui extends GuiContainer {
diff --git a/src/main/java/mods/natura/gui/NGuiHandler.java b/src/main/java/mods/natura/gui/NGuiHandler.java
index f0b58e99..e68c43c6 100644
--- a/src/main/java/mods/natura/gui/NGuiHandler.java
+++ b/src/main/java/mods/natura/gui/NGuiHandler.java
@@ -1,11 +1,10 @@
package mods.natura.gui;
-import mods.natura.blocks.tech.NetherrackFurnaceLogic;
-
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.world.World;
import cpw.mods.fml.common.network.IGuiHandler;
+import mods.natura.blocks.tech.NetherrackFurnaceLogic;
public class NGuiHandler implements IGuiHandler {
diff --git a/src/main/java/mods/natura/items/BerryItem.java b/src/main/java/mods/natura/items/BerryItem.java
index b8bbe4dc..9e3396e3 100644
--- a/src/main/java/mods/natura/items/BerryItem.java
+++ b/src/main/java/mods/natura/items/BerryItem.java
@@ -2,8 +2,6 @@
import java.util.List;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.player.EntityPlayer;
@@ -16,6 +14,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NaturaTab;
public class BerryItem extends ItemFood {
diff --git a/src/main/java/mods/natura/items/BerryMedley.java b/src/main/java/mods/natura/items/BerryMedley.java
index f0e3123c..4293fa27 100644
--- a/src/main/java/mods/natura/items/BerryMedley.java
+++ b/src/main/java/mods/natura/items/BerryMedley.java
@@ -2,8 +2,6 @@
import java.util.List;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Items;
@@ -14,6 +12,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NaturaTab;
public class BerryMedley extends ItemFood {
diff --git a/src/main/java/mods/natura/items/BoneBag.java b/src/main/java/mods/natura/items/BoneBag.java
index 153b5dda..b70578fa 100644
--- a/src/main/java/mods/natura/items/BoneBag.java
+++ b/src/main/java/mods/natura/items/BoneBag.java
@@ -2,8 +2,6 @@
import java.util.List;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.block.Block;
import net.minecraft.block.BlockCocoa;
import net.minecraft.block.BlockCrops;
@@ -24,6 +22,7 @@
import cpw.mods.fml.common.eventhandler.Event.Result;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NaturaTab;
public class BoneBag extends Item {
diff --git a/src/main/java/mods/natura/items/BowlStew.java b/src/main/java/mods/natura/items/BowlStew.java
index 42c1249e..6e90d6f4 100644
--- a/src/main/java/mods/natura/items/BowlStew.java
+++ b/src/main/java/mods/natura/items/BowlStew.java
@@ -2,8 +2,6 @@
import java.util.List;
-import mods.natura.common.NContent;
-
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.player.EntityPlayer;
@@ -19,6 +17,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NContent;
public class BowlStew extends ItemFood {
diff --git a/src/main/java/mods/natura/items/CactusJuice.java b/src/main/java/mods/natura/items/CactusJuice.java
index 6a0970cc..d5971d13 100644
--- a/src/main/java/mods/natura/items/CactusJuice.java
+++ b/src/main/java/mods/natura/items/CactusJuice.java
@@ -2,8 +2,6 @@
import java.util.List;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemFood;
@@ -12,6 +10,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NaturaTab;
public class CactusJuice extends ItemFood {
diff --git a/src/main/java/mods/natura/items/ImpMeat.java b/src/main/java/mods/natura/items/ImpMeat.java
index dfffefbb..cad3f469 100644
--- a/src/main/java/mods/natura/items/ImpMeat.java
+++ b/src/main/java/mods/natura/items/ImpMeat.java
@@ -2,8 +2,6 @@
import java.util.List;
-import mods.natura.Natura;
-
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.potion.Potion;
@@ -13,6 +11,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.Natura;
public class ImpMeat extends NSpecialFood {
diff --git a/src/main/java/mods/natura/items/NaturaSeeds.java b/src/main/java/mods/natura/items/NaturaSeeds.java
index 7eca078d..212a3dcb 100644
--- a/src/main/java/mods/natura/items/NaturaSeeds.java
+++ b/src/main/java/mods/natura/items/NaturaSeeds.java
@@ -2,8 +2,6 @@
import java.util.List;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.block.Block;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
@@ -19,6 +17,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NaturaTab;
public class NaturaSeeds extends ItemSeeds {
diff --git a/src/main/java/mods/natura/items/NetherBerryItem.java b/src/main/java/mods/natura/items/NetherBerryItem.java
index 2512cb4f..18ba8567 100644
--- a/src/main/java/mods/natura/items/NetherBerryItem.java
+++ b/src/main/java/mods/natura/items/NetherBerryItem.java
@@ -2,9 +2,6 @@
import java.util.List;
-import mods.natura.Natura;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.player.EntityPlayer;
@@ -19,6 +16,8 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.Natura;
+import mods.natura.common.NaturaTab;
public class NetherBerryItem extends ItemFood {
diff --git a/src/main/java/mods/natura/items/NetherFoodItem.java b/src/main/java/mods/natura/items/NetherFoodItem.java
index 244ef2b8..dc8e6727 100644
--- a/src/main/java/mods/natura/items/NetherFoodItem.java
+++ b/src/main/java/mods/natura/items/NetherFoodItem.java
@@ -2,9 +2,6 @@
import java.util.List;
-import mods.natura.Natura;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.player.EntityPlayer;
@@ -19,6 +16,8 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.Natura;
+import mods.natura.common.NaturaTab;
public class NetherFoodItem extends ItemFood {
diff --git a/src/main/java/mods/natura/items/PlantItem.java b/src/main/java/mods/natura/items/PlantItem.java
index d5e0ed6a..e017386c 100644
--- a/src/main/java/mods/natura/items/PlantItem.java
+++ b/src/main/java/mods/natura/items/PlantItem.java
@@ -2,10 +2,6 @@
import java.util.List;
-import mods.natura.common.NCraftingItem;
-import mods.natura.common.NaturaTab;
-import mods.natura.common.PHNatura;
-
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
@@ -15,6 +11,9 @@
import cpw.mods.fml.common.Loader;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NCraftingItem;
+import mods.natura.common.NaturaTab;
+import mods.natura.common.PHNatura;
public class PlantItem extends NCraftingItem {
diff --git a/src/main/java/mods/natura/items/SeedBag.java b/src/main/java/mods/natura/items/SeedBag.java
index 71326f3b..42cd3f6b 100644
--- a/src/main/java/mods/natura/items/SeedBag.java
+++ b/src/main/java/mods/natura/items/SeedBag.java
@@ -2,8 +2,6 @@
import java.util.List;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.block.Block;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.entity.player.EntityPlayer;
@@ -16,6 +14,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NaturaTab;
public class SeedBag extends Item {
diff --git a/src/main/java/mods/natura/items/SeedFood.java b/src/main/java/mods/natura/items/SeedFood.java
index 254ccab7..2a3524dd 100644
--- a/src/main/java/mods/natura/items/SeedFood.java
+++ b/src/main/java/mods/natura/items/SeedFood.java
@@ -2,9 +2,6 @@
import java.util.List;
-import mods.natura.common.NContent;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.block.Block;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.entity.player.EntityPlayer;
@@ -18,6 +15,8 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NContent;
+import mods.natura.common.NaturaTab;
public class SeedFood extends ItemSeedFood {
diff --git a/src/main/java/mods/natura/items/SpawnEgg.java b/src/main/java/mods/natura/items/SpawnEgg.java
index ba8d0f40..9b92926d 100644
--- a/src/main/java/mods/natura/items/SpawnEgg.java
+++ b/src/main/java/mods/natura/items/SpawnEgg.java
@@ -2,12 +2,6 @@
import java.util.List;
-import mods.natura.common.PHNatura;
-import mods.natura.entity.BabyHeatscarSpider;
-import mods.natura.entity.HeatscarSpider;
-import mods.natura.entity.ImpEntity;
-import mods.natura.entity.NitroCreeper;
-
import net.minecraft.block.Block;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
@@ -23,6 +17,11 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.PHNatura;
+import mods.natura.entity.BabyHeatscarSpider;
+import mods.natura.entity.HeatscarSpider;
+import mods.natura.entity.ImpEntity;
+import mods.natura.entity.NitroCreeper;
public class SpawnEgg extends Item {
diff --git a/src/main/java/mods/natura/items/blocks/BerryBushItem.java b/src/main/java/mods/natura/items/blocks/BerryBushItem.java
index 09937eb3..effa60aa 100644
--- a/src/main/java/mods/natura/items/blocks/BerryBushItem.java
+++ b/src/main/java/mods/natura/items/blocks/BerryBushItem.java
@@ -2,9 +2,6 @@
import java.util.List;
-import mantle.blocks.abstracts.MultiItemBlock;
-import mods.natura.common.NContent;
-
import net.minecraft.block.Block;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
@@ -14,6 +11,8 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mantle.blocks.abstracts.MultiItemBlock;
+import mods.natura.common.NContent;
public class BerryBushItem extends MultiItemBlock {
diff --git a/src/main/java/mods/natura/items/blocks/CloudItem.java b/src/main/java/mods/natura/items/blocks/CloudItem.java
index e1503375..66baa257 100644
--- a/src/main/java/mods/natura/items/blocks/CloudItem.java
+++ b/src/main/java/mods/natura/items/blocks/CloudItem.java
@@ -2,8 +2,6 @@
import java.util.List;
-import mantle.blocks.abstracts.MultiItemBlock;
-
import net.minecraft.block.Block;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
@@ -11,6 +9,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mantle.blocks.abstracts.MultiItemBlock;
public class CloudItem extends MultiItemBlock {
diff --git a/src/main/java/mods/natura/items/blocks/DarkTreeItem.java b/src/main/java/mods/natura/items/blocks/DarkTreeItem.java
index 8dce36b4..86c291f0 100644
--- a/src/main/java/mods/natura/items/blocks/DarkTreeItem.java
+++ b/src/main/java/mods/natura/items/blocks/DarkTreeItem.java
@@ -2,8 +2,6 @@
import java.util.List;
-import mantle.blocks.abstracts.MultiItemBlock;
-
import net.minecraft.block.Block;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
@@ -11,6 +9,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mantle.blocks.abstracts.MultiItemBlock;
public class DarkTreeItem extends MultiItemBlock {
diff --git a/src/main/java/mods/natura/items/blocks/FenceItem.java b/src/main/java/mods/natura/items/blocks/FenceItem.java
index a84040c6..3e36a0d5 100644
--- a/src/main/java/mods/natura/items/blocks/FenceItem.java
+++ b/src/main/java/mods/natura/items/blocks/FenceItem.java
@@ -1,13 +1,12 @@
package mods.natura.items.blocks;
-import mantle.blocks.abstracts.MultiItemBlock;
-import mods.natura.common.NContent;
-
import net.minecraft.block.Block;
import net.minecraft.util.IIcon;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mantle.blocks.abstracts.MultiItemBlock;
+import mods.natura.common.NContent;
public class FenceItem extends MultiItemBlock {
diff --git a/src/main/java/mods/natura/items/blocks/GlowshroomItem.java b/src/main/java/mods/natura/items/blocks/GlowshroomItem.java
index 8d73132a..d20c22cf 100644
--- a/src/main/java/mods/natura/items/blocks/GlowshroomItem.java
+++ b/src/main/java/mods/natura/items/blocks/GlowshroomItem.java
@@ -2,9 +2,6 @@
import java.util.List;
-import mantle.blocks.abstracts.MultiItemBlock;
-import mods.natura.common.NContent;
-
import net.minecraft.block.Block;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
@@ -13,6 +10,8 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mantle.blocks.abstracts.MultiItemBlock;
+import mods.natura.common.NContent;
public class GlowshroomItem extends MultiItemBlock {
diff --git a/src/main/java/mods/natura/items/blocks/GrassBlockItem.java b/src/main/java/mods/natura/items/blocks/GrassBlockItem.java
index f65f131f..acb2dbe0 100644
--- a/src/main/java/mods/natura/items/blocks/GrassBlockItem.java
+++ b/src/main/java/mods/natura/items/blocks/GrassBlockItem.java
@@ -1,9 +1,9 @@
package mods.natura.items.blocks;
-import mantle.blocks.abstracts.MultiItemBlock;
-
import net.minecraft.block.Block;
+import mantle.blocks.abstracts.MultiItemBlock;
+
public class GrassBlockItem extends MultiItemBlock {
public static final String blockType[] = { "grass", "bluegrass", "autumngrass" };
diff --git a/src/main/java/mods/natura/items/blocks/GrassSlabItem.java b/src/main/java/mods/natura/items/blocks/GrassSlabItem.java
index b4e5781d..5cb78500 100644
--- a/src/main/java/mods/natura/items/blocks/GrassSlabItem.java
+++ b/src/main/java/mods/natura/items/blocks/GrassSlabItem.java
@@ -1,9 +1,9 @@
package mods.natura.items.blocks;
-import mantle.blocks.abstracts.MultiItemBlock;
-
import net.minecraft.block.Block;
+import mantle.blocks.abstracts.MultiItemBlock;
+
public class GrassSlabItem extends MultiItemBlock {
public static final String blockType[] = { "grass", "bluegrass", "autumngrass" };
diff --git a/src/main/java/mods/natura/items/blocks/NDoorItem.java b/src/main/java/mods/natura/items/blocks/NDoorItem.java
index f249540c..a85e03e0 100644
--- a/src/main/java/mods/natura/items/blocks/NDoorItem.java
+++ b/src/main/java/mods/natura/items/blocks/NDoorItem.java
@@ -2,9 +2,6 @@
import java.util.List;
-import mods.natura.common.NContent;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.block.Block;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
@@ -19,6 +16,8 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NContent;
+import mods.natura.common.NaturaTab;
public class NDoorItem extends Item {
diff --git a/src/main/java/mods/natura/items/blocks/NLeavesDarkItem.java b/src/main/java/mods/natura/items/blocks/NLeavesDarkItem.java
index 48d66408..f856a413 100644
--- a/src/main/java/mods/natura/items/blocks/NLeavesDarkItem.java
+++ b/src/main/java/mods/natura/items/blocks/NLeavesDarkItem.java
@@ -2,8 +2,6 @@
import java.util.List;
-import mantle.blocks.abstracts.MultiItemBlock;
-
import net.minecraft.block.Block;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
@@ -11,6 +9,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mantle.blocks.abstracts.MultiItemBlock;
public class NLeavesDarkItem extends MultiItemBlock {
diff --git a/src/main/java/mods/natura/items/blocks/NLeavesItem.java b/src/main/java/mods/natura/items/blocks/NLeavesItem.java
index 8a777377..ad7d41ad 100644
--- a/src/main/java/mods/natura/items/blocks/NLeavesItem.java
+++ b/src/main/java/mods/natura/items/blocks/NLeavesItem.java
@@ -2,8 +2,6 @@
import java.util.List;
-import mantle.blocks.abstracts.MultiItemBlock;
-
import net.minecraft.block.Block;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
@@ -11,6 +9,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mantle.blocks.abstracts.MultiItemBlock;
public class NLeavesItem extends MultiItemBlock {
diff --git a/src/main/java/mods/natura/items/blocks/NOverrideItem.java b/src/main/java/mods/natura/items/blocks/NOverrideItem.java
index eb9acfc7..4fac7ff1 100644
--- a/src/main/java/mods/natura/items/blocks/NOverrideItem.java
+++ b/src/main/java/mods/natura/items/blocks/NOverrideItem.java
@@ -1,11 +1,11 @@
package mods.natura.items.blocks;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.block.Block;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.ItemBlock;
+import mods.natura.common.NaturaTab;
+
public class NOverrideItem extends ItemBlock {
public NOverrideItem(Block i) {
diff --git a/src/main/java/mods/natura/items/blocks/NSaplingItem.java b/src/main/java/mods/natura/items/blocks/NSaplingItem.java
index eadd0e5c..8e5a93a4 100644
--- a/src/main/java/mods/natura/items/blocks/NSaplingItem.java
+++ b/src/main/java/mods/natura/items/blocks/NSaplingItem.java
@@ -2,9 +2,6 @@
import java.util.List;
-import mantle.blocks.abstracts.MultiItemBlock;
-import mods.natura.common.NContent;
-
import net.minecraft.block.Block;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Blocks;
@@ -15,6 +12,8 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mantle.blocks.abstracts.MultiItemBlock;
+import mods.natura.common.NContent;
public class NSaplingItem extends MultiItemBlock {
diff --git a/src/main/java/mods/natura/items/blocks/NetherBerryBushItem.java b/src/main/java/mods/natura/items/blocks/NetherBerryBushItem.java
index e161ff08..c7dfc2e1 100644
--- a/src/main/java/mods/natura/items/blocks/NetherBerryBushItem.java
+++ b/src/main/java/mods/natura/items/blocks/NetherBerryBushItem.java
@@ -2,9 +2,6 @@
import java.util.List;
-import mantle.blocks.abstracts.MultiItemBlock;
-import mods.natura.common.NContent;
-
import net.minecraft.block.Block;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Blocks;
@@ -15,6 +12,8 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mantle.blocks.abstracts.MultiItemBlock;
+import mods.natura.common.NContent;
public class NetherBerryBushItem extends MultiItemBlock {
diff --git a/src/main/java/mods/natura/items/blocks/NetherGlassItem.java b/src/main/java/mods/natura/items/blocks/NetherGlassItem.java
index 130daa3b..95d5e474 100644
--- a/src/main/java/mods/natura/items/blocks/NetherGlassItem.java
+++ b/src/main/java/mods/natura/items/blocks/NetherGlassItem.java
@@ -2,9 +2,6 @@
import java.util.List;
-import mantle.blocks.abstracts.MultiItemBlock;
-import mods.natura.common.NContent;
-
import net.minecraft.block.Block;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
@@ -13,6 +10,8 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mantle.blocks.abstracts.MultiItemBlock;
+import mods.natura.common.NContent;
public class NetherGlassItem extends MultiItemBlock {
diff --git a/src/main/java/mods/natura/items/blocks/NoColorLeavesItem.java b/src/main/java/mods/natura/items/blocks/NoColorLeavesItem.java
index 31cabe87..747c7db4 100644
--- a/src/main/java/mods/natura/items/blocks/NoColorLeavesItem.java
+++ b/src/main/java/mods/natura/items/blocks/NoColorLeavesItem.java
@@ -2,8 +2,6 @@
import java.util.List;
-import mantle.blocks.abstracts.MultiItemBlock;
-
import net.minecraft.block.Block;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
@@ -11,6 +9,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mantle.blocks.abstracts.MultiItemBlock;
public class NoColorLeavesItem extends MultiItemBlock {
diff --git a/src/main/java/mods/natura/items/blocks/OmniShapeBlockItem.java b/src/main/java/mods/natura/items/blocks/OmniShapeBlockItem.java
index b1134270..5f1a2fe9 100644
--- a/src/main/java/mods/natura/items/blocks/OmniShapeBlockItem.java
+++ b/src/main/java/mods/natura/items/blocks/OmniShapeBlockItem.java
@@ -1,9 +1,9 @@
package mods.natura.items.blocks;
-import mantle.blocks.abstracts.MultiItemBlock;
-
import net.minecraft.block.Block;
+import mantle.blocks.abstracts.MultiItemBlock;
+
public class OmniShapeBlockItem extends MultiItemBlock {
public static final String blockType[] = { "stair", "stair", "stair", "stair", "stair", "stair", "stair", "stair",
diff --git a/src/main/java/mods/natura/items/blocks/OverworldLeavesItem.java b/src/main/java/mods/natura/items/blocks/OverworldLeavesItem.java
index 8f594704..96eee0b5 100644
--- a/src/main/java/mods/natura/items/blocks/OverworldLeavesItem.java
+++ b/src/main/java/mods/natura/items/blocks/OverworldLeavesItem.java
@@ -2,8 +2,6 @@
import java.util.List;
-import mantle.blocks.abstracts.MultiItemBlock;
-
import net.minecraft.block.Block;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
@@ -11,6 +9,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mantle.blocks.abstracts.MultiItemBlock;
public class OverworldLeavesItem extends MultiItemBlock {
diff --git a/src/main/java/mods/natura/items/blocks/OverworldSaplingItem.java b/src/main/java/mods/natura/items/blocks/OverworldSaplingItem.java
index 82415c5e..2923348f 100644
--- a/src/main/java/mods/natura/items/blocks/OverworldSaplingItem.java
+++ b/src/main/java/mods/natura/items/blocks/OverworldSaplingItem.java
@@ -2,9 +2,6 @@
import java.util.List;
-import mantle.blocks.abstracts.MultiItemBlock;
-import mods.natura.common.NContent;
-
import net.minecraft.block.Block;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
@@ -13,6 +10,8 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mantle.blocks.abstracts.MultiItemBlock;
+import mods.natura.common.NContent;
public class OverworldSaplingItem extends MultiItemBlock {
diff --git a/src/main/java/mods/natura/items/blocks/OverworldTreeItem.java b/src/main/java/mods/natura/items/blocks/OverworldTreeItem.java
index 41315e29..665b67ca 100644
--- a/src/main/java/mods/natura/items/blocks/OverworldTreeItem.java
+++ b/src/main/java/mods/natura/items/blocks/OverworldTreeItem.java
@@ -2,8 +2,6 @@
import java.util.List;
-import mantle.blocks.abstracts.MultiItemBlock;
-
import net.minecraft.block.Block;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
@@ -11,6 +9,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mantle.blocks.abstracts.MultiItemBlock;
public class OverworldTreeItem extends MultiItemBlock {
diff --git a/src/main/java/mods/natura/items/blocks/PlankSlab1Item.java b/src/main/java/mods/natura/items/blocks/PlankSlab1Item.java
index 6f804fad..8be246cb 100644
--- a/src/main/java/mods/natura/items/blocks/PlankSlab1Item.java
+++ b/src/main/java/mods/natura/items/blocks/PlankSlab1Item.java
@@ -2,9 +2,6 @@
import java.util.List;
-import mantle.blocks.abstracts.MultiItemBlock;
-import mods.natura.common.NContent;
-
import net.minecraft.block.Block;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
@@ -13,6 +10,8 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mantle.blocks.abstracts.MultiItemBlock;
+import mods.natura.common.NContent;
public class PlankSlab1Item extends MultiItemBlock {
diff --git a/src/main/java/mods/natura/items/blocks/PlankSlab2Item.java b/src/main/java/mods/natura/items/blocks/PlankSlab2Item.java
index 39d75ced..2011c68a 100644
--- a/src/main/java/mods/natura/items/blocks/PlankSlab2Item.java
+++ b/src/main/java/mods/natura/items/blocks/PlankSlab2Item.java
@@ -2,9 +2,6 @@
import java.util.List;
-import mantle.blocks.abstracts.MultiItemBlock;
-import mods.natura.common.NContent;
-
import net.minecraft.block.Block;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
@@ -13,6 +10,8 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mantle.blocks.abstracts.MultiItemBlock;
+import mods.natura.common.NContent;
public class PlankSlab2Item extends MultiItemBlock {
diff --git a/src/main/java/mods/natura/items/blocks/PlanksItem.java b/src/main/java/mods/natura/items/blocks/PlanksItem.java
index 90e6949c..60e9db00 100644
--- a/src/main/java/mods/natura/items/blocks/PlanksItem.java
+++ b/src/main/java/mods/natura/items/blocks/PlanksItem.java
@@ -2,8 +2,6 @@
import java.util.List;
-import mantle.blocks.abstracts.MultiItemBlock;
-
import net.minecraft.block.Block;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
@@ -11,6 +9,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mantle.blocks.abstracts.MultiItemBlock;
public class PlanksItem extends MultiItemBlock {
diff --git a/src/main/java/mods/natura/items/blocks/RedwoodItem.java b/src/main/java/mods/natura/items/blocks/RedwoodItem.java
index 17d398cd..a97acb01 100644
--- a/src/main/java/mods/natura/items/blocks/RedwoodItem.java
+++ b/src/main/java/mods/natura/items/blocks/RedwoodItem.java
@@ -2,8 +2,6 @@
import java.util.List;
-import mantle.blocks.abstracts.MultiItemBlock;
-
import net.minecraft.block.Block;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
@@ -11,6 +9,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mantle.blocks.abstracts.MultiItemBlock;
public class RedwoodItem extends MultiItemBlock {
diff --git a/src/main/java/mods/natura/items/blocks/TreeItem.java b/src/main/java/mods/natura/items/blocks/TreeItem.java
index d3ce3989..9e072dfd 100644
--- a/src/main/java/mods/natura/items/blocks/TreeItem.java
+++ b/src/main/java/mods/natura/items/blocks/TreeItem.java
@@ -2,8 +2,6 @@
import java.util.List;
-import mantle.blocks.abstracts.MultiItemBlock;
-
import net.minecraft.block.Block;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
@@ -11,6 +9,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mantle.blocks.abstracts.MultiItemBlock;
public class TreeItem extends MultiItemBlock {
diff --git a/src/main/java/mods/natura/items/blocks/WillowItem.java b/src/main/java/mods/natura/items/blocks/WillowItem.java
index a95c4040..b70b15c4 100644
--- a/src/main/java/mods/natura/items/blocks/WillowItem.java
+++ b/src/main/java/mods/natura/items/blocks/WillowItem.java
@@ -2,8 +2,6 @@
import java.util.List;
-import mantle.blocks.abstracts.MultiItemBlock;
-
import net.minecraft.block.Block;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
@@ -11,6 +9,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mantle.blocks.abstracts.MultiItemBlock;
public class WillowItem extends MultiItemBlock {
diff --git a/src/main/java/mods/natura/items/tools/FusewoodBow.java b/src/main/java/mods/natura/items/tools/FusewoodBow.java
index b20d3a02..f66165fb 100644
--- a/src/main/java/mods/natura/items/tools/FusewoodBow.java
+++ b/src/main/java/mods/natura/items/tools/FusewoodBow.java
@@ -1,7 +1,5 @@
package mods.natura.items.tools;
-import mods.natura.entity.FusewoodArrow;
-
import net.minecraft.enchantment.Enchantment;
import net.minecraft.enchantment.EnchantmentHelper;
import net.minecraft.entity.player.EntityPlayer;
@@ -11,6 +9,8 @@
import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.event.entity.player.ArrowLooseEvent;
+import mods.natura.entity.FusewoodArrow;
+
public class FusewoodBow extends NaturaBow {
public FusewoodBow(int damage, String type) {
diff --git a/src/main/java/mods/natura/items/tools/NaturaArmor.java b/src/main/java/mods/natura/items/tools/NaturaArmor.java
index 749402e0..8a428b8b 100644
--- a/src/main/java/mods/natura/items/tools/NaturaArmor.java
+++ b/src/main/java/mods/natura/items/tools/NaturaArmor.java
@@ -2,9 +2,6 @@
import java.util.List;
-import mods.natura.common.NContent;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.Entity;
@@ -14,6 +11,8 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NContent;
+import mods.natura.common.NaturaTab;
public class NaturaArmor extends ItemArmor {
diff --git a/src/main/java/mods/natura/items/tools/NaturaBow.java b/src/main/java/mods/natura/items/tools/NaturaBow.java
index b4d6c222..c77ac83f 100644
--- a/src/main/java/mods/natura/items/tools/NaturaBow.java
+++ b/src/main/java/mods/natura/items/tools/NaturaBow.java
@@ -1,7 +1,5 @@
package mods.natura.items.tools;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemBow;
@@ -10,6 +8,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NaturaTab;
public class NaturaBow extends ItemBow {
diff --git a/src/main/java/mods/natura/items/tools/NaturaHatchet.java b/src/main/java/mods/natura/items/tools/NaturaHatchet.java
index 3d625756..e4cf6896 100644
--- a/src/main/java/mods/natura/items/tools/NaturaHatchet.java
+++ b/src/main/java/mods/natura/items/tools/NaturaHatchet.java
@@ -1,12 +1,11 @@
package mods.natura.items.tools;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.item.ItemAxe;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NaturaTab;
public class NaturaHatchet extends ItemAxe {
diff --git a/src/main/java/mods/natura/items/tools/NaturaKama.java b/src/main/java/mods/natura/items/tools/NaturaKama.java
index 1fbc6a90..35fde09c 100644
--- a/src/main/java/mods/natura/items/tools/NaturaKama.java
+++ b/src/main/java/mods/natura/items/tools/NaturaKama.java
@@ -4,8 +4,6 @@
import java.util.List;
import java.util.Random;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.block.Block;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.enchantment.Enchantment;
@@ -24,6 +22,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NaturaTab;
public class NaturaKama extends ItemSword {
diff --git a/src/main/java/mods/natura/items/tools/NaturaPickaxe.java b/src/main/java/mods/natura/items/tools/NaturaPickaxe.java
index d1fd270f..4ec944d3 100644
--- a/src/main/java/mods/natura/items/tools/NaturaPickaxe.java
+++ b/src/main/java/mods/natura/items/tools/NaturaPickaxe.java
@@ -1,12 +1,11 @@
package mods.natura.items.tools;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.item.ItemPickaxe;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NaturaTab;
public class NaturaPickaxe extends ItemPickaxe {
diff --git a/src/main/java/mods/natura/items/tools/NaturaShovel.java b/src/main/java/mods/natura/items/tools/NaturaShovel.java
index fd816132..23102a6a 100644
--- a/src/main/java/mods/natura/items/tools/NaturaShovel.java
+++ b/src/main/java/mods/natura/items/tools/NaturaShovel.java
@@ -1,12 +1,11 @@
package mods.natura.items.tools;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.item.ItemSpade;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NaturaTab;
public class NaturaShovel extends ItemSpade {
diff --git a/src/main/java/mods/natura/items/tools/NaturaSword.java b/src/main/java/mods/natura/items/tools/NaturaSword.java
index fcd9f2ca..261964f9 100644
--- a/src/main/java/mods/natura/items/tools/NaturaSword.java
+++ b/src/main/java/mods/natura/items/tools/NaturaSword.java
@@ -1,12 +1,11 @@
package mods.natura.items.tools;
-import mods.natura.common.NaturaTab;
-
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.item.ItemSword;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import mods.natura.common.NaturaTab;
public class NaturaSword extends ItemSword {
diff --git a/src/main/java/mods/natura/plugins/fmp/FMPPulse.java b/src/main/java/mods/natura/plugins/fmp/FMPPulse.java
index f2244f09..79a8ac9a 100644
--- a/src/main/java/mods/natura/plugins/fmp/FMPPulse.java
+++ b/src/main/java/mods/natura/plugins/fmp/FMPPulse.java
@@ -1,9 +1,9 @@
package mods.natura.plugins.fmp;
+import cpw.mods.fml.common.event.FMLInitializationEvent;
import mantle.pulsar.pulse.Handler;
import mantle.pulsar.pulse.Pulse;
import mods.natura.Natura;
-import cpw.mods.fml.common.event.FMLInitializationEvent;
@Pulse(id = "Natura FMP Compatibility", modsRequired = ForgeMultiPart.modId)
public class FMPPulse {
diff --git a/src/main/java/mods/natura/plugins/fmp/ForgeMultiPart.java b/src/main/java/mods/natura/plugins/fmp/ForgeMultiPart.java
index d1e89d50..7af96dbf 100644
--- a/src/main/java/mods/natura/plugins/fmp/ForgeMultiPart.java
+++ b/src/main/java/mods/natura/plugins/fmp/ForgeMultiPart.java
@@ -1,11 +1,10 @@
package mods.natura.plugins.fmp;
-import mods.natura.common.NContent;
-
import net.minecraft.block.Block;
import codechicken.microblock.BlockMicroMaterial;
import codechicken.microblock.MicroMaterialRegistry;
+import mods.natura.common.NContent;
public class ForgeMultiPart {
diff --git a/src/main/java/mods/natura/plugins/imc/BuildCraftPulse.java b/src/main/java/mods/natura/plugins/imc/BuildCraftPulse.java
index cdeb60db..a5bf2f45 100644
--- a/src/main/java/mods/natura/plugins/imc/BuildCraftPulse.java
+++ b/src/main/java/mods/natura/plugins/imc/BuildCraftPulse.java
@@ -1,15 +1,14 @@
package mods.natura.plugins.imc;
-import mantle.pulsar.pulse.Handler;
-import mantle.pulsar.pulse.Pulse;
-import mods.natura.common.NContent;
-import mods.natura.common.PHNatura;
-
import net.minecraft.block.Block;
import net.minecraft.item.ItemStack;
import cpw.mods.fml.common.event.FMLInitializationEvent;
import cpw.mods.fml.common.event.FMLInterModComms;
+import mantle.pulsar.pulse.Handler;
+import mantle.pulsar.pulse.Pulse;
+import mods.natura.common.NContent;
+import mods.natura.common.PHNatura;
@Pulse(id = "Natura BuildCraft Compatibility", modsRequired = BuildCraftPulse.modId)
public class BuildCraftPulse {
diff --git a/src/main/java/mods/natura/plugins/imc/ForestryPulse.java b/src/main/java/mods/natura/plugins/imc/ForestryPulse.java
index ee8137ee..4bd54c23 100644
--- a/src/main/java/mods/natura/plugins/imc/ForestryPulse.java
+++ b/src/main/java/mods/natura/plugins/imc/ForestryPulse.java
@@ -1,8 +1,8 @@
package mods.natura.plugins.imc;
+import cpw.mods.fml.common.event.FMLInitializationEvent;
import mantle.pulsar.pulse.Handler;
import mantle.pulsar.pulse.Pulse;
-import cpw.mods.fml.common.event.FMLInitializationEvent;
@Pulse(id = "Natura Forestry Compatibility", modsRequired = ForestryPulse.modId)
public class ForestryPulse {
diff --git a/src/main/java/mods/natura/plugins/imc/TreeCapitatorPulse.java b/src/main/java/mods/natura/plugins/imc/TreeCapitatorPulse.java
index 4d8414f5..4196313b 100644
--- a/src/main/java/mods/natura/plugins/imc/TreeCapitatorPulse.java
+++ b/src/main/java/mods/natura/plugins/imc/TreeCapitatorPulse.java
@@ -1,9 +1,5 @@
package mods.natura.plugins.imc;
-import mantle.pulsar.pulse.Handler;
-import mantle.pulsar.pulse.Pulse;
-import mods.natura.common.NContent;
-
import net.minecraft.block.Block;
import net.minecraft.item.Item;
import net.minecraft.nbt.NBTTagCompound;
@@ -12,6 +8,9 @@
import cpw.mods.fml.common.event.FMLInitializationEvent;
import cpw.mods.fml.common.event.FMLInterModComms;
import cpw.mods.fml.common.registry.GameData;
+import mantle.pulsar.pulse.Handler;
+import mantle.pulsar.pulse.Pulse;
+import mods.natura.common.NContent;
@Pulse(id = "Natura TreeCapitator Compatibility", modsRequired = TreeCapitatorPulse.modId)
public class TreeCapitatorPulse {
diff --git a/src/main/java/mods/natura/plugins/minefactoryreloaded/MFRPulse.java b/src/main/java/mods/natura/plugins/minefactoryreloaded/MFRPulse.java
index 9c47d026..4b78fa9f 100644
--- a/src/main/java/mods/natura/plugins/minefactoryreloaded/MFRPulse.java
+++ b/src/main/java/mods/natura/plugins/minefactoryreloaded/MFRPulse.java
@@ -1,9 +1,9 @@
package mods.natura.plugins.minefactoryreloaded;
+import cpw.mods.fml.common.event.FMLInitializationEvent;
import mantle.pulsar.pulse.Handler;
import mantle.pulsar.pulse.Pulse;
import mods.natura.Natura;
-import cpw.mods.fml.common.event.FMLInitializationEvent;
@Pulse(id = "Natura MFR Compatibility", modsRequired = MFRPulse.modId)
public class MFRPulse {
diff --git a/src/main/java/mods/natura/plugins/minefactoryreloaded/MRFRegistering.java b/src/main/java/mods/natura/plugins/minefactoryreloaded/MRFRegistering.java
index acc71e8a..eb5a9997 100644
--- a/src/main/java/mods/natura/plugins/minefactoryreloaded/MRFRegistering.java
+++ b/src/main/java/mods/natura/plugins/minefactoryreloaded/MRFRegistering.java
@@ -1,5 +1,9 @@
package mods.natura.plugins.minefactoryreloaded;
+import net.minecraft.item.Item;
+import net.minecraft.item.ItemStack;
+import net.minecraft.nbt.NBTTagCompound;
+
import mods.natura.common.NContent;
import mods.natura.common.PHNatura;
import mods.natura.plugins.minefactoryreloaded.fertilizables.FertilizableNaturaCrop;
@@ -12,11 +16,6 @@
import mods.natura.plugins.minefactoryreloaded.plantables.PlantableNaturaCrop;
import mods.natura.plugins.minefactoryreloaded.plantables.PlantableNaturaNetherBerry;
import mods.natura.plugins.minefactoryreloaded.plantables.PlantableStandard;
-
-import net.minecraft.item.Item;
-import net.minecraft.item.ItemStack;
-import net.minecraft.nbt.NBTTagCompound;
-
import powercrystals.minefactoryreloaded.api.FactoryRegistry;
import powercrystals.minefactoryreloaded.api.HarvestType;
diff --git a/src/main/java/mods/natura/plugins/minefactoryreloaded/harvestables/HarvestableNaturaTreeLeaves.java b/src/main/java/mods/natura/plugins/minefactoryreloaded/harvestables/HarvestableNaturaTreeLeaves.java
index 33d65ce9..c36175a1 100644
--- a/src/main/java/mods/natura/plugins/minefactoryreloaded/harvestables/HarvestableNaturaTreeLeaves.java
+++ b/src/main/java/mods/natura/plugins/minefactoryreloaded/harvestables/HarvestableNaturaTreeLeaves.java
@@ -9,10 +9,10 @@
import net.minecraft.item.ItemStack;
import net.minecraft.world.World;
-import powercrystals.minefactoryreloaded.api.HarvestType;
-
import com.google.common.collect.Lists;
+import powercrystals.minefactoryreloaded.api.HarvestType;
+
public class HarvestableNaturaTreeLeaves extends HarvestableStandard {
public HarvestableNaturaTreeLeaves(Block id) {
diff --git a/src/main/java/mods/natura/plugins/minefactoryreloaded/plantables/PlantableNaturaBerry.java b/src/main/java/mods/natura/plugins/minefactoryreloaded/plantables/PlantableNaturaBerry.java
index 4961ec1d..25fa8e6a 100644
--- a/src/main/java/mods/natura/plugins/minefactoryreloaded/plantables/PlantableNaturaBerry.java
+++ b/src/main/java/mods/natura/plugins/minefactoryreloaded/plantables/PlantableNaturaBerry.java
@@ -1,7 +1,5 @@
package mods.natura.plugins.minefactoryreloaded.plantables;
-import mods.natura.common.NContent;
-
import net.minecraft.block.Block;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
@@ -9,6 +7,8 @@
import net.minecraftforge.common.IPlantable;
import net.minecraftforge.common.util.ForgeDirection;
+import mods.natura.common.NContent;
+
public class PlantableNaturaBerry extends PlantableStandard {
public PlantableNaturaBerry(Item sourceId, Block plantedBlockId) {
diff --git a/src/main/java/mods/natura/plugins/minefactoryreloaded/plantables/PlantableNaturaNetherBerry.java b/src/main/java/mods/natura/plugins/minefactoryreloaded/plantables/PlantableNaturaNetherBerry.java
index 67cb2ded..75019cc3 100644
--- a/src/main/java/mods/natura/plugins/minefactoryreloaded/plantables/PlantableNaturaNetherBerry.java
+++ b/src/main/java/mods/natura/plugins/minefactoryreloaded/plantables/PlantableNaturaNetherBerry.java
@@ -1,7 +1,5 @@
package mods.natura.plugins.minefactoryreloaded.plantables;
-import mods.natura.common.NContent;
-
import net.minecraft.block.Block;
import net.minecraft.init.Blocks;
import net.minecraft.item.Item;
@@ -10,6 +8,8 @@
import net.minecraftforge.common.IPlantable;
import net.minecraftforge.common.util.ForgeDirection;
+import mods.natura.common.NContent;
+
public class PlantableNaturaNetherBerry extends PlantableStandard {
public PlantableNaturaNetherBerry(Item sourceId, Block plantedBlockId) {
diff --git a/src/main/java/mods/natura/plugins/nei/NEIPulse.java b/src/main/java/mods/natura/plugins/nei/NEIPulse.java
index 0bf1160b..63e1769d 100644
--- a/src/main/java/mods/natura/plugins/nei/NEIPulse.java
+++ b/src/main/java/mods/natura/plugins/nei/NEIPulse.java
@@ -1,10 +1,10 @@
package mods.natura.plugins.nei;
+import cpw.mods.fml.common.FMLCommonHandler;
+import cpw.mods.fml.common.event.FMLInitializationEvent;
import mantle.pulsar.pulse.Handler;
import mantle.pulsar.pulse.Pulse;
import mods.natura.Natura;
-import cpw.mods.fml.common.FMLCommonHandler;
-import cpw.mods.fml.common.event.FMLInitializationEvent;
@Pulse(id = "Natura NEI Compatibility", modsRequired = NEIPulse.modId)
public class NEIPulse {
diff --git a/src/main/java/mods/natura/plugins/nei/NotEnoughItems.java b/src/main/java/mods/natura/plugins/nei/NotEnoughItems.java
index be2aacc7..6a6fb2f9 100644
--- a/src/main/java/mods/natura/plugins/nei/NotEnoughItems.java
+++ b/src/main/java/mods/natura/plugins/nei/NotEnoughItems.java
@@ -1,15 +1,14 @@
package mods.natura.plugins.nei;
-import mods.natura.common.NContent;
-import mods.natura.common.PHNatura;
-import mods.natura.gui.WorkbenchGui;
-
import net.minecraft.item.ItemStack;
import codechicken.nei.api.API;
import codechicken.nei.recipe.DefaultOverlayHandler;
import cpw.mods.fml.common.FMLCommonHandler;
import cpw.mods.fml.relauncher.Side;
+import mods.natura.common.NContent;
+import mods.natura.common.PHNatura;
+import mods.natura.gui.WorkbenchGui;
public class NotEnoughItems {
diff --git a/src/main/java/mods/natura/plugins/te4/TE4Pulse.java b/src/main/java/mods/natura/plugins/te4/TE4Pulse.java
index d4b89dc8..0e1110a9 100644
--- a/src/main/java/mods/natura/plugins/te4/TE4Pulse.java
+++ b/src/main/java/mods/natura/plugins/te4/TE4Pulse.java
@@ -3,13 +3,6 @@
import java.util.Arrays;
import java.util.List;
-import mantle.pulsar.pulse.Handler;
-import mantle.pulsar.pulse.Pulse;
-import mods.natura.blocks.trees.Planks;
-import mods.natura.common.NContent;
-import mods.natura.common.PHNatura;
-import mods.natura.items.blocks.NDoorItem;
-
import net.minecraft.block.Block;
import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
@@ -18,6 +11,12 @@
import cpw.mods.fml.common.event.FMLInitializationEvent;
import cpw.mods.fml.common.event.FMLInterModComms;
import cpw.mods.fml.common.registry.GameRegistry;
+import mantle.pulsar.pulse.Handler;
+import mantle.pulsar.pulse.Pulse;
+import mods.natura.blocks.trees.Planks;
+import mods.natura.common.NContent;
+import mods.natura.common.PHNatura;
+import mods.natura.items.blocks.NDoorItem;
@Pulse(id = "Natura TE4 Compatibility", modsRequired = TE4Pulse.modId)
public class TE4Pulse {
diff --git a/src/main/java/mods/natura/plugins/thaumcraft/ThaumcraftPulse.java b/src/main/java/mods/natura/plugins/thaumcraft/ThaumcraftPulse.java
index 213c1e83..dfd61000 100644
--- a/src/main/java/mods/natura/plugins/thaumcraft/ThaumcraftPulse.java
+++ b/src/main/java/mods/natura/plugins/thaumcraft/ThaumcraftPulse.java
@@ -1,19 +1,18 @@
package mods.natura.plugins.thaumcraft;
+import net.minecraft.item.ItemStack;
+
+import cpw.mods.fml.common.event.FMLInitializationEvent;
+import cpw.mods.fml.common.event.FMLInterModComms;
+import cpw.mods.fml.common.event.FMLPostInitializationEvent;
import mantle.pulsar.pulse.Handler;
import mantle.pulsar.pulse.Pulse;
import mods.natura.Natura;
import mods.natura.common.NContent;
import mods.natura.common.PHNatura;
-
-import net.minecraft.item.ItemStack;
-
import thaumcraft.api.ThaumcraftApi;
import thaumcraft.api.aspects.Aspect;
import thaumcraft.api.aspects.AspectList;
-import cpw.mods.fml.common.event.FMLInitializationEvent;
-import cpw.mods.fml.common.event.FMLInterModComms;
-import cpw.mods.fml.common.event.FMLPostInitializationEvent;
@Pulse(id = "Natura Thaumcraft Compatibility", modsRequired = ThaumcraftPulse.modId)
public class ThaumcraftPulse {
diff --git a/src/main/java/mods/natura/plugins/waila/NaturaCropDataProvider.java b/src/main/java/mods/natura/plugins/waila/NaturaCropDataProvider.java
index 00566072..568b0c31 100644
--- a/src/main/java/mods/natura/plugins/waila/NaturaCropDataProvider.java
+++ b/src/main/java/mods/natura/plugins/waila/NaturaCropDataProvider.java
@@ -2,11 +2,6 @@
import java.util.List;
-import mcp.mobius.waila.api.IWailaConfigHandler;
-import mcp.mobius.waila.api.IWailaDataAccessor;
-import mcp.mobius.waila.api.IWailaDataProvider;
-import mods.natura.blocks.crops.CropBlock;
-
import net.minecraft.block.Block;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.item.ItemStack;
@@ -15,6 +10,11 @@
import net.minecraft.util.StatCollector;
import net.minecraft.world.World;
+import mcp.mobius.waila.api.IWailaConfigHandler;
+import mcp.mobius.waila.api.IWailaDataAccessor;
+import mcp.mobius.waila.api.IWailaDataProvider;
+import mods.natura.blocks.crops.CropBlock;
+
public class NaturaCropDataProvider implements IWailaDataProvider {
@Override
diff --git a/src/main/java/mods/natura/plugins/waila/WailaPulse.java b/src/main/java/mods/natura/plugins/waila/WailaPulse.java
index be6b3e5c..8d655014 100644
--- a/src/main/java/mods/natura/plugins/waila/WailaPulse.java
+++ b/src/main/java/mods/natura/plugins/waila/WailaPulse.java
@@ -1,10 +1,10 @@
package mods.natura.plugins.waila;
+import cpw.mods.fml.common.event.FMLInitializationEvent;
+import cpw.mods.fml.common.event.FMLInterModComms;
import mantle.pulsar.pulse.Handler;
import mantle.pulsar.pulse.Pulse;
import mods.natura.Natura;
-import cpw.mods.fml.common.event.FMLInitializationEvent;
-import cpw.mods.fml.common.event.FMLInterModComms;
@Pulse(id = "Natura Waila Compatibility", modsRequired = WailaPulse.modId)
public class WailaPulse {
diff --git a/src/main/java/mods/natura/util/DispenserBehaviorSpawnEgg.java b/src/main/java/mods/natura/util/DispenserBehaviorSpawnEgg.java
index 9ecb0257..438be50d 100644
--- a/src/main/java/mods/natura/util/DispenserBehaviorSpawnEgg.java
+++ b/src/main/java/mods/natura/util/DispenserBehaviorSpawnEgg.java
@@ -1,7 +1,5 @@
package mods.natura.util;
-import mods.natura.items.SpawnEgg;
-
import net.minecraft.block.BlockDispenser;
import net.minecraft.dispenser.BehaviorDefaultDispenseItem;
import net.minecraft.dispenser.IBlockSource;
@@ -9,6 +7,8 @@
import net.minecraft.item.ItemStack;
import net.minecraft.util.EnumFacing;
+import mods.natura.items.SpawnEgg;
+
public class DispenserBehaviorSpawnEgg extends BehaviorDefaultDispenseItem {
/**
diff --git a/src/main/java/mods/natura/util/Util.java b/src/main/java/mods/natura/util/Util.java
new file mode 100644
index 00000000..1c5c5de2
--- /dev/null
+++ b/src/main/java/mods/natura/util/Util.java
@@ -0,0 +1,14 @@
+package mods.natura.util;
+
+public class Util {
+
+ public static T getWithFallback(T[] array, int index) {
+ if (array == null || array.length == 0) {
+ throw new IllegalArgumentException("Cannot fallback to array[0]");
+ }
+ if (index >= 0 && index < array.length) {
+ return array[index];
+ }
+ return array[0];
+ }
+}
diff --git a/src/main/java/mods/natura/worldgen/BaseCloudWorldgen.java b/src/main/java/mods/natura/worldgen/BaseCloudWorldgen.java
index 734c0537..1898d938 100644
--- a/src/main/java/mods/natura/worldgen/BaseCloudWorldgen.java
+++ b/src/main/java/mods/natura/worldgen/BaseCloudWorldgen.java
@@ -2,15 +2,14 @@
import java.util.Random;
-import mods.natura.Natura;
-import mods.natura.common.NContent;
-import mods.natura.common.PHNatura;
-
import net.minecraft.world.World;
import net.minecraft.world.biome.BiomeGenBase;
import net.minecraft.world.chunk.IChunkProvider;
import cpw.mods.fml.common.IWorldGenerator;
+import mods.natura.Natura;
+import mods.natura.common.NContent;
+import mods.natura.common.PHNatura;
/*
* Generates clouds in every dimension Current clouds: Normal, Dark, Sulfur, Ash Overworld: Normal Nether: Sulfur, Ash
diff --git a/src/main/java/mods/natura/worldgen/BaseCropWorldgen.java b/src/main/java/mods/natura/worldgen/BaseCropWorldgen.java
index 29d8ea5c..ce04d87a 100644
--- a/src/main/java/mods/natura/worldgen/BaseCropWorldgen.java
+++ b/src/main/java/mods/natura/worldgen/BaseCropWorldgen.java
@@ -2,16 +2,15 @@
import java.util.Random;
-import mods.natura.Natura;
-import mods.natura.common.NContent;
-import mods.natura.common.PHNatura;
-
import net.minecraft.init.Blocks;
import net.minecraft.world.World;
import net.minecraft.world.biome.BiomeGenBase;
import net.minecraft.world.chunk.IChunkProvider;
import cpw.mods.fml.common.IWorldGenerator;
+import mods.natura.Natura;
+import mods.natura.common.NContent;
+import mods.natura.common.PHNatura;
/*
* Adds crops to the overworld Current crops: Barley, Berry bushes
diff --git a/src/main/java/mods/natura/worldgen/BaseTreeWorldgen.java b/src/main/java/mods/natura/worldgen/BaseTreeWorldgen.java
index cb43e688..8cf16267 100644
--- a/src/main/java/mods/natura/worldgen/BaseTreeWorldgen.java
+++ b/src/main/java/mods/natura/worldgen/BaseTreeWorldgen.java
@@ -2,10 +2,6 @@
import java.util.Random;
-import mods.natura.Natura;
-import mods.natura.common.NContent;
-import mods.natura.common.PHNatura;
-
import net.minecraft.block.Block;
import net.minecraft.init.Blocks;
import net.minecraft.world.World;
@@ -13,6 +9,9 @@
import net.minecraft.world.gen.feature.WorldGenerator;
import cpw.mods.fml.common.IWorldGenerator;
+import mods.natura.Natura;
+import mods.natura.common.NContent;
+import mods.natura.common.PHNatura;
public class BaseTreeWorldgen implements IWorldGenerator {
diff --git a/src/main/java/mods/natura/worldgen/BerryBushGen.java b/src/main/java/mods/natura/worldgen/BerryBushGen.java
index 140f50ac..aee78005 100644
--- a/src/main/java/mods/natura/worldgen/BerryBushGen.java
+++ b/src/main/java/mods/natura/worldgen/BerryBushGen.java
@@ -2,14 +2,14 @@
import java.util.Random;
-import mods.natura.common.NContent;
-import mods.natura.common.PHNatura;
-
import net.minecraft.block.Block;
import net.minecraft.init.Blocks;
import net.minecraft.world.World;
import net.minecraft.world.gen.feature.WorldGenerator;
+import mods.natura.common.NContent;
+import mods.natura.common.PHNatura;
+
public class BerryBushGen extends WorldGenerator {
private int metadata;
diff --git a/src/main/java/mods/natura/worldgen/BloodTreeLargeGen.java b/src/main/java/mods/natura/worldgen/BloodTreeLargeGen.java
index 172d3d05..6bd1cbc5 100644
--- a/src/main/java/mods/natura/worldgen/BloodTreeLargeGen.java
+++ b/src/main/java/mods/natura/worldgen/BloodTreeLargeGen.java
@@ -2,13 +2,13 @@
import java.util.Random;
-import mods.natura.common.NContent;
-
import net.minecraft.block.Block;
import net.minecraft.init.Blocks;
import net.minecraft.world.World;
import net.minecraft.world.gen.feature.WorldGenerator;
+import mods.natura.common.NContent;
+
public class BloodTreeLargeGen extends WorldGenerator {
private int mdWood;
diff --git a/src/main/java/mods/natura/worldgen/BushTreeGen.java b/src/main/java/mods/natura/worldgen/BushTreeGen.java
index 10cc4cf7..3968234a 100644
--- a/src/main/java/mods/natura/worldgen/BushTreeGen.java
+++ b/src/main/java/mods/natura/worldgen/BushTreeGen.java
@@ -2,14 +2,14 @@
import java.util.Random;
-import mods.natura.common.NContent;
-import mods.natura.common.PHNatura;
-
import net.minecraft.block.Block;
import net.minecraft.init.Blocks;
import net.minecraft.world.World;
import net.minecraft.world.gen.feature.WorldGenerator;
+import mods.natura.common.NContent;
+import mods.natura.common.PHNatura;
+
public class BushTreeGen extends WorldGenerator {
/** The base height of the tree */
diff --git a/src/main/java/mods/natura/worldgen/DarkwoodGen.java b/src/main/java/mods/natura/worldgen/DarkwoodGen.java
index 5503ccc9..d52e03fa 100644
--- a/src/main/java/mods/natura/worldgen/DarkwoodGen.java
+++ b/src/main/java/mods/natura/worldgen/DarkwoodGen.java
@@ -2,15 +2,15 @@
import java.util.Random;
-import mods.natura.blocks.trees.NSaplingBlock;
-import mods.natura.common.NContent;
-
import net.minecraft.block.Block;
import net.minecraft.init.Blocks;
import net.minecraft.world.World;
import net.minecraft.world.gen.feature.WorldGenerator;
import net.minecraftforge.common.util.ForgeDirection;
+import mods.natura.blocks.trees.NSaplingBlock;
+import mods.natura.common.NContent;
+
public class DarkwoodGen extends WorldGenerator {
/** The minimum height of a generated tree. */
diff --git a/src/main/java/mods/natura/worldgen/EucalyptusTreeGenShort.java b/src/main/java/mods/natura/worldgen/EucalyptusTreeGenShort.java
index b03a19ff..ef44e589 100644
--- a/src/main/java/mods/natura/worldgen/EucalyptusTreeGenShort.java
+++ b/src/main/java/mods/natura/worldgen/EucalyptusTreeGenShort.java
@@ -2,13 +2,13 @@
import java.util.Random;
-import mods.natura.common.NContent;
-
import net.minecraft.block.Block;
import net.minecraft.init.Blocks;
import net.minecraft.world.World;
import net.minecraft.world.gen.feature.WorldGenerator;
+import mods.natura.common.NContent;
+
public class EucalyptusTreeGenShort extends WorldGenerator {
private int mdWood;
diff --git a/src/main/java/mods/natura/worldgen/FusewoodGen.java b/src/main/java/mods/natura/worldgen/FusewoodGen.java
index b070d6d0..9f60b8ed 100644
--- a/src/main/java/mods/natura/worldgen/FusewoodGen.java
+++ b/src/main/java/mods/natura/worldgen/FusewoodGen.java
@@ -2,15 +2,15 @@
import java.util.Random;
-import mods.natura.blocks.trees.NSaplingBlock;
-import mods.natura.common.NContent;
-
import net.minecraft.block.Block;
import net.minecraft.init.Blocks;
import net.minecraft.world.World;
import net.minecraft.world.gen.feature.WorldGenerator;
import net.minecraftforge.common.util.ForgeDirection;
+import mods.natura.blocks.trees.NSaplingBlock;
+import mods.natura.common.NContent;
+
public class FusewoodGen extends WorldGenerator {
/** The minimum height of a generated tree. */
diff --git a/src/main/java/mods/natura/worldgen/GlowshroomGenBlueGreen.java b/src/main/java/mods/natura/worldgen/GlowshroomGenBlueGreen.java
index a3949df2..34c62e31 100644
--- a/src/main/java/mods/natura/worldgen/GlowshroomGenBlueGreen.java
+++ b/src/main/java/mods/natura/worldgen/GlowshroomGenBlueGreen.java
@@ -2,13 +2,13 @@
import java.util.Random;
-import mods.natura.common.NContent;
-
import net.minecraft.block.Block;
import net.minecraft.init.Blocks;
import net.minecraft.world.World;
import net.minecraft.world.gen.feature.WorldGenerator;
+import mods.natura.common.NContent;
+
public class GlowshroomGenBlueGreen extends WorldGenerator {
int mushroomType = -1;
diff --git a/src/main/java/mods/natura/worldgen/GlowshroomGenPurple.java b/src/main/java/mods/natura/worldgen/GlowshroomGenPurple.java
index b7958ffa..5aecc539 100644
--- a/src/main/java/mods/natura/worldgen/GlowshroomGenPurple.java
+++ b/src/main/java/mods/natura/worldgen/GlowshroomGenPurple.java
@@ -2,13 +2,13 @@
import java.util.Random;
-import mods.natura.common.NContent;
-
import net.minecraft.block.Block;
import net.minecraft.init.Blocks;
import net.minecraft.world.World;
import net.minecraft.world.gen.feature.WorldGenerator;
+import mods.natura.common.NContent;
+
public class GlowshroomGenPurple extends WorldGenerator {
public GlowshroomGenPurple(boolean flag) {
diff --git a/src/main/java/mods/natura/worldgen/NetherBerryBushGen.java b/src/main/java/mods/natura/worldgen/NetherBerryBushGen.java
index 9aa661b3..92e8ac95 100644
--- a/src/main/java/mods/natura/worldgen/NetherBerryBushGen.java
+++ b/src/main/java/mods/natura/worldgen/NetherBerryBushGen.java
@@ -2,8 +2,6 @@
import java.util.Random;
-import mods.natura.common.NContent;
-
import net.minecraft.block.Block;
import net.minecraft.init.Blocks;
import net.minecraft.world.World;
@@ -11,6 +9,8 @@
import net.minecraftforge.common.IPlantable;
import net.minecraftforge.common.util.ForgeDirection;
+import mods.natura.common.NContent;
+
public class NetherBerryBushGen extends WorldGenerator {
private Block blockGen;
diff --git a/src/main/java/mods/natura/worldgen/RareTreeGen.java b/src/main/java/mods/natura/worldgen/RareTreeGen.java
index f6386176..cfb20676 100644
--- a/src/main/java/mods/natura/worldgen/RareTreeGen.java
+++ b/src/main/java/mods/natura/worldgen/RareTreeGen.java
@@ -2,15 +2,15 @@
import java.util.Random;
-import mods.natura.common.NContent;
-import mods.natura.common.PHNatura;
-
import net.minecraft.block.Block;
import net.minecraft.init.Blocks;
import net.minecraft.world.World;
import net.minecraft.world.gen.feature.WorldGenerator;
import net.minecraftforge.common.util.ForgeDirection;
+import mods.natura.common.NContent;
+import mods.natura.common.PHNatura;
+
public class RareTreeGen extends WorldGenerator {
public final int minTreeHeight;
diff --git a/src/main/java/mods/natura/worldgen/RedwoodTreeGen.java b/src/main/java/mods/natura/worldgen/RedwoodTreeGen.java
index ce421c8a..1dcf5690 100644
--- a/src/main/java/mods/natura/worldgen/RedwoodTreeGen.java
+++ b/src/main/java/mods/natura/worldgen/RedwoodTreeGen.java
@@ -2,15 +2,15 @@
import java.util.Random;
-import mods.natura.common.NContent;
-import mods.natura.common.PHNatura;
-
import net.minecraft.block.Block;
import net.minecraft.init.Blocks;
import net.minecraft.util.MathHelper;
import net.minecraft.world.World;
import net.minecraft.world.gen.feature.WorldGenerator;
+import mods.natura.common.NContent;
+import mods.natura.common.PHNatura;
+
public class RedwoodTreeGen extends WorldGenerator {
/*
diff --git a/src/main/java/mods/natura/worldgen/SaguaroGen.java b/src/main/java/mods/natura/worldgen/SaguaroGen.java
index 511966bb..ac4c1dce 100644
--- a/src/main/java/mods/natura/worldgen/SaguaroGen.java
+++ b/src/main/java/mods/natura/worldgen/SaguaroGen.java
@@ -2,8 +2,6 @@
import java.util.Random;
-import mods.natura.common.PHNatura;
-
import net.minecraft.block.Block;
import net.minecraft.init.Blocks;
import net.minecraft.world.World;
@@ -11,6 +9,8 @@
import net.minecraftforge.common.IPlantable;
import net.minecraftforge.common.util.ForgeDirection;
+import mods.natura.common.PHNatura;
+
public class SaguaroGen extends WorldGenerator {
boolean useHeight;
diff --git a/src/main/java/mods/natura/worldgen/SakuraTreeGen.java b/src/main/java/mods/natura/worldgen/SakuraTreeGen.java
index 129cd9fb..7eae7f36 100644
--- a/src/main/java/mods/natura/worldgen/SakuraTreeGen.java
+++ b/src/main/java/mods/natura/worldgen/SakuraTreeGen.java
@@ -2,9 +2,6 @@
import java.util.Random;
-import mods.natura.common.NContent;
-import mods.natura.common.PHNatura;
-
import net.minecraft.block.Block;
import net.minecraft.block.BlockSapling;
import net.minecraft.init.Blocks;
@@ -13,6 +10,9 @@
import net.minecraft.world.gen.feature.WorldGenAbstractTree;
import net.minecraftforge.common.util.ForgeDirection;
+import mods.natura.common.NContent;
+import mods.natura.common.PHNatura;
+
public class SakuraTreeGen extends WorldGenAbstractTree {
static final byte[] otherCoordPairs = new byte[] { (byte) 2, (byte) 0, (byte) 0, (byte) 1, (byte) 2, (byte) 1 };
diff --git a/src/main/java/mods/natura/worldgen/WhiteTreeGen.java b/src/main/java/mods/natura/worldgen/WhiteTreeGen.java
index 444f3a9b..4b2b11a1 100644
--- a/src/main/java/mods/natura/worldgen/WhiteTreeGen.java
+++ b/src/main/java/mods/natura/worldgen/WhiteTreeGen.java
@@ -2,8 +2,6 @@
import java.util.Random;
-import mods.natura.common.NContent;
-
import net.minecraft.block.Block;
import net.minecraft.block.BlockSapling;
import net.minecraft.init.Blocks;
@@ -12,6 +10,8 @@
import net.minecraft.world.gen.feature.WorldGenAbstractTree;
import net.minecraftforge.common.util.ForgeDirection;
+import mods.natura.common.NContent;
+
public class WhiteTreeGen extends WorldGenAbstractTree {
// JAVADOC FIELD $$ field_76507_a
diff --git a/src/main/java/mods/natura/worldgen/WillowGen.java b/src/main/java/mods/natura/worldgen/WillowGen.java
index 95b7a278..d7ff17d4 100644
--- a/src/main/java/mods/natura/worldgen/WillowGen.java
+++ b/src/main/java/mods/natura/worldgen/WillowGen.java
@@ -2,15 +2,15 @@
import java.util.Random;
-import mods.natura.common.NContent;
-import mods.natura.common.PHNatura;
-
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.init.Blocks;
import net.minecraft.world.World;
import net.minecraft.world.gen.feature.WorldGenerator;
+import mods.natura.common.NContent;
+import mods.natura.common.PHNatura;
+
public class WillowGen extends WorldGenerator {
public final boolean seekHeight;
diff --git a/src/main/java/mods/natura/worldgen/retro/TickHandlerWorld.java b/src/main/java/mods/natura/worldgen/retro/TickHandlerWorld.java
index c507e491..4762a8b5 100644
--- a/src/main/java/mods/natura/worldgen/retro/TickHandlerWorld.java
+++ b/src/main/java/mods/natura/worldgen/retro/TickHandlerWorld.java
@@ -4,14 +4,13 @@
import java.util.HashMap;
import java.util.Random;
-import mantle.world.ChunkCoord;
-
import net.minecraft.world.World;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import cpw.mods.fml.common.gameevent.TickEvent.Phase;
import cpw.mods.fml.common.gameevent.TickEvent.Type;
import cpw.mods.fml.common.gameevent.TickEvent.WorldTickEvent;
+import mantle.world.ChunkCoord;
public class TickHandlerWorld {
diff --git a/src/main/java/mods/natura/worldgen/retro/WorldHandler.java b/src/main/java/mods/natura/worldgen/retro/WorldHandler.java
index 5b0f3af2..c5ab43bb 100644
--- a/src/main/java/mods/natura/worldgen/retro/WorldHandler.java
+++ b/src/main/java/mods/natura/worldgen/retro/WorldHandler.java
@@ -4,15 +4,14 @@
import java.util.HashSet;
import java.util.Random;
-import mantle.world.ChunkCoord;
-import mods.natura.Natura;
-import mods.natura.worldgen.BaseTreeWorldgen;
-
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.world.World;
import net.minecraftforge.event.world.ChunkDataEvent;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
+import mantle.world.ChunkCoord;
+import mods.natura.Natura;
+import mods.natura.worldgen.BaseTreeWorldgen;
public class WorldHandler {