46 Commits
Author SHA1 Message Date
UltraProdigy 6a25dbe85c Optimize Images & Workflow (#17) 2026-04-03 23:23:33 +02:00
UltraProdigy 89364eeb5c Revert Lang Correction (#16) 2026-01-30 07:22:43 +01:00
Yoshy e64a9f1b53 fix typos (#15) 2026-01-28 06:25:50 -05:00
Nikolay S. f949e1aac0 Registry Name Migration for NewHorizonsCoreMod (#14) 2026-01-17 11:21:27 +01:00
Dream Master 61abcea316 update 2025-07-17 18:12:27 +07:00
koolkrafter5 e307251cbb Remove CodeChickenLib dep (#13) 2025-07-16 21:25:33 +00:00
Martin Robertz 894706fac4 update 2025-05-16 18:48:58 +02:00
Caedis 8fa573be5a Replace Baubles with Baubles Expanded (#12) 2025-05-13 09:27:18 -05:00
Martin Robertz 9e2b3adee1 update 2024-09-01 22:42:13 +02:00
boubou19 78428d71cd Merge pull request #11 from GTNewHorizons/cleanup-recipes
Clean up recipes
2024-09-01 16:25:04 +02:00
Alexander Anishin d74038e7e7 Replaced wildcard imports with regular ones 2024-03-16 15:38:25 +03:00
Alexander Anishin e4c64462cc Used recipes directly instead of searching registered ones 2024-03-16 15:18:05 +03:00
Alexander Anishin e140ea7647 Updated RecipeHandlerAdvancedPlate to reflect the latest changes 2024-03-16 13:12:03 +03:00
Alexander Anishin 0a18e85b91 Updated AdvancedPlateCraftPage to reflect the latest changes
Removed some magic numbers
2024-03-16 12:56:44 +03:00
Alexander Anishin 269e1ed6c7 Used new methods for recipes with OreDictionary inputs 2024-03-16 12:41:10 +03:00
Alexander Anishin d4c7ea7198 Added methods for creating recipes with OreDictionary inputs 2024-03-16 12:38:19 +03:00
Alexander Anishin e02dbcf00e Cleaned up RecipeAdvancedPlate
Allowed usage of OreDictionary entries as inputs
2024-03-16 12:36:19 +03:00
Alexander Anishin 42d3d88a4d Cleaned up creation of Thaumonomicon entries 2024-03-16 11:35:07 +03:00
Alexander Anishin 4bef9b9155 Applied IDE suggestions
Used existing methods to improve readability
2024-03-16 11:22:27 +03:00
Alexander Anishin 6076374d96 Applied spotless 2024-03-16 11:05:29 +03:00
Raven Szewczyk 53e8db0c36 [ci skip] upgraded build system 2024-02-04 19:56:12 +00:00
Martin Robertz 62b24c7852 Merge pull request #7 from EnderProyects/feature/advanced_botany_infu
Feature/advanced botany infu
2023-05-30 16:49:30 +02:00
EnderProyects 6e3518f7d7 Upgrading Lang... for now 2023-05-30 16:48:50 +02:00
EnderProyects f7027afb39 remove research builder since is not used 2023-05-10 19:18:28 +02:00
EnderProyects d996b0ee50 restructure patterns crate code 2023-05-10 18:03:29 +02:00
EnderProyects 10fd18c233 fix code, make it cleaner2 2023-05-09 20:57:22 +02:00
EnderProyects 06978ce586 fix code, make it cleaner 2023-05-09 20:53:03 +02:00
EnderProyects c3b0c37e9c storage ore dicts 2023-05-07 18:42:19 +02:00
EnderProyects 34262482b8 delete unused code, and add botania constants file 2023-05-06 22:43:34 +02:00
EnderProyects 84ca83600b wildcard import removed 2023-05-05 16:11:10 +02:00
EnderProyects a8ccbf56db fix dep 2023-05-04 17:19:38 +02:00
EnderProyects d186229c8d Add catalyst to NEI 2023-05-04 16:56:31 +02:00
EnderProyects 57e1e24281 All recipes upgraded 2023-05-04 02:39:42 +02:00
EnderProyects 538b0b5ec3 All recipes upgraded 2023-05-04 02:38:29 +02:00
EnderProyects 4357871cb6 Fix errors7 2023-05-04 00:54:56 +02:00
EnderProyects ca84372c9b Fix errors5 2023-05-03 23:44:25 +02:00
EnderProyects 3bc02a6883 Fix errors4 2023-05-03 23:15:52 +02:00
EnderProyects dc4dba0e1f Fix errors3 2023-05-03 23:01:39 +02:00
EnderProyects 7cf416560f Fix errors2 2023-05-03 22:42:23 +02:00
EnderProyects 2598057424 Merge branch 'feature/advanced_botany_infu' of https://github.com/EnderProyects/Advanced-Botany into feature/advanced_botany_infu 2023-05-03 15:49:09 +02:00
EnderProyects bfd5ecfcdf Fix errors 2023-05-03 15:48:59 +02:00
EnderProyects 24762702a6 Fix errors 2023-05-03 15:37:24 +02:00
EnderProyects c6b3d48a77 Merge branch 'master' into feature/advanced_botany_infu 2023-05-02 23:18:07 +02:00
EnderProyects 3cc0e3cc6f Recipes updated and changed ingots to plates2 2023-05-02 23:10:50 +02:00
EnderProyects f652668065 Recipes updated and changed ingots to plates 2023-05-02 23:04:10 +02:00
EnderProyects a322d3ac77 Update dependencies.gradle 2023-05-02 17:06:45 +02:00
209 changed files with 1340 additions and 2500 deletions

No files matched your search

+17
View File
@@ -0,0 +1,17 @@
name: Optimize images
on:
pull_request:
branches: [ master, main, release/** ]
paths:
- "**/*.png"
push:
branches: [ master, main, release/** ]
paths:
- "**/*.png"
jobs:
optimize-images:
uses: GTNewHorizons/GTNH-Actions-Workflows/.github/workflows/optimize-images.yml@master
secrets: inherit
+2 -1531
View File
File diff suppressed because it is too large. Load diff
+19 -9
View File
@@ -1,12 +1,22 @@
dependencies {
api('com.github.GTNewHorizons:Botania:1.9.16-GTNH:dev')
api('com.github.GTNewHorizons:Botanic-horizons:1.0.15-GTNH:dev')
api('com.github.GTNewHorizons:Botania:1.13.10-GTNH:dev') {
exclude module: 'Baubles'
}
api('com.github.GTNewHorizons:Botanic-horizons:1.12.3-GTNH:dev')
api('thaumcraft:Thaumcraft:1.7.10-4.2.3.5:dev')
api('com.github.GTNewHorizons:GT5-Unofficial:5.09.42.71:dev')
api('com.github.GTNewHorizons:Baubles:1.0.1.16:dev')
compileOnly("com.github.GTNewHorizons:CodeChickenLib:1.1.8:dev")
compileOnly("com.github.GTNewHorizons:CodeChickenCore:1.1.11:dev")
compileOnly("com.github.GTNewHorizons:NotEnoughItems:2.3.45-GTNH:dev")
compileOnly("com.github.GTNewHorizons:CraftTweaker:3.2.11:dev")
//compileOnly("com.github.stanhebben:MineTweaker3:1.7.10-3.0.10B:dev")
api('com.github.GTNewHorizons:Baubles-Expanded:2.2.6-GTNH:dev')
compileOnly("com.github.GTNewHorizons:CodeChickenCore:1.4.10:dev")
compileOnly("com.github.GTNewHorizons:NotEnoughItems:2.8.50-GTNH:dev")
compileOnly("com.github.GTNewHorizons:CraftTweaker:3.4.2:dev")
}
// deps may transitively add Baubles, so we replace it
project.getConfigurations()
.all(c -> {
final DependencySubstitutions ds = c.getResolutionStrategy()
.getDependencySubstitution();
ds.substitute(ds.module("com.github.GTNewHorizons:Baubles"))
.using(ds.module("com.github.GTNewHorizons:Baubles-Expanded:2.2.6-GTNH"))
.withClassifier("dev")
.because("Baubles-Expanded replaces Baubles");
});
+114 -46
View File
@@ -1,77 +1,111 @@
# ExampleMod tag to use as Blowdryer (Spotless, etc.) settings version, leave empty to disable.
# LOCAL to test local config updates.
gtnh.settings.blowdryerTag = 0.2.0
# Human-readable mod name, available for mcmod.info population.
modName = Advanded Botany
# This is a case-sensitive string to identify your mod. Convention is to use lower case.
# Case-sensitive identifier string, available for mcmod.info population and used for automatic mixin JSON generation.
# Conventionally lowercase.
modId = AdvancedBotany
# Root package of the mod, used to find various classes in other properties,
# mcmod.info substitution, enabling assertions in run tasks, etc.
modGroup = ab
# WHY is there no version field?
# The build script relies on git to provide a version via tags. It is super easy and will enable you to always know the
# code base or your binary. Check out this tutorial: https://blog.mattclemente.com/2017/10/13/versioning-with-git-tags/
# Whether to use modGroup as the maven publishing group.
# When false, com.github.GTNewHorizons is used.
useModGroupForPublishing = false
# Will update your build.gradle automatically whenever an update is available
# Updates your build.gradle and settings.gradle automatically whenever an update is available.
autoUpdateBuildScript = false
# Version of Minecraft to target
minecraftVersion = 1.7.10
# Version of Minecraft Forge to target
forgeVersion = 10.13.4.1614
# Specify a MCP channel and mappings version for dependency deobfuscation and the deobfParams task.
# Specify an MCP channel for dependency deobfuscation and the deobfParams task.
channel = stable
# Specify an MCP mappings version for dependency deobfuscation and the deobfParams task.
mappingsVersion = 12
# Define other MCP mappings for dependency deobfuscation
remoteMappings = https://raw.githubusercontent.com/MinecraftForge/FML/1.7.10/conf/
# Defines other MCP mappings for dependency deobfuscation.
remoteMappings = https\://raw.githubusercontent.com/MinecraftForge/FML/1.7.10/conf/
# Select a username for testing your mod with breakpoints. You may leave this empty for a random username each time you
# restart Minecraft in development. Choose this dependent on your mod:
# Do you need consistent player progressing (for example Thaumcraft)? -> Select a name
# Do you need to test how your custom blocks interacts with a player that is not the owner? -> leave name empty
# Select a default username for testing your mod. You can always override this per-run by running
# `./gradlew runClient --username=AnotherPlayer`, or configuring this command in your IDE.
developmentEnvironmentUserName = Developer
# Enables using modern java syntax (up to version 17) via Jabel, while still targetting JVM 8.
# Enables using modern Java syntax (up to version 17) via Jabel, while still targeting JVM 8.
# See https://github.com/bsideup/jabel for details on how this works.
enableModernJavaSyntax = true
# Enables injecting missing generics into the decompiled source code for a better coding experience
# Turns most publically visible List, Map, etc. into proper List<Type>, Map<K, V> types
# Enables injecting missing generics into the decompiled source code for a better coding experience.
# Turns most publicly visible List, Map, etc. into proper List<E>, Map<K, V> types.
enableGenericInjection = false
# Generate a class with String fields for the mod id, name, version and group name named with the fields below
# Generate a class with a String field for the mod version named as defined below.
# If generateGradleTokenClass is empty or not missing, no such class will be generated.
# If gradleTokenVersion is empty or missing, the field will not be present in the class.
generateGradleTokenClass = ab.Tags
gradleTokenModId = GRADLETOKEN
gradleTokenModName = GRADLETOKEN
# Name of the token containing the project's current version to generate/replace.
gradleTokenVersion = GRADLETOKEN
gradleTokenGroupName =
# [DEPRECATED] Mod ID replacement token.
gradleTokenModId = GRADLETOKEN
# [DEPRECATED] Mod name replacement token.
gradleTokenModName = GRADLETOKEN
# [DEPRECATED] Mod Group replacement token.
gradleTokenGroupName =
# [DEPRECATED]
# Multiple source files can be defined here by providing a comma-seperated list: Class1.java,Class2.java,Class3.java
# Multiple source files can be defined here by providing a comma-separated list: Class1.java,Class2.java,Class3.java
# public static final String VERSION = "GRADLETOKEN_VERSION";
# The string's content will be replaced with your mod's version when compiled. You should use this to specify your mod's
# version in @Mod([...], version = VERSION, [...])
# Leave these properties empty to skip individual token replacements
replaceGradleTokenInFile =
# version in @Mod([...], version = VERSION, [...]).
# Leave these properties empty to skip individual token replacements.
replaceGradleTokenInFile =
# In case your mod provides an API for other mods to implement you may declare its package here. Otherwise, you can
# leave this property empty.
# Example value: apiPackage = api + modGroup = com.myname.mymodid -> com.myname.mymodid.api
# Example value: (apiPackage = api) + (modGroup = com.myname.mymodid) -> com.myname.mymodid.api
apiPackage =
# Specify the configuration file for Forge's access transformers here. It must be placed into /src/main/resources/META-INF/
# There can be multiple files in a comma-separated list.
# Example value: mymodid_at.cfg,nei_at.cfg
# There can be multiple files in a space-separated list.
# Example value: mymodid_at.cfg nei_at.cfg
accessTransformersFile =
# Provides setup for Mixins if enabled. If you don't know what mixins are: Keep it disabled!
usesMixins = false
# Adds some debug arguments like verbose output and export
# Set to a non-empty string to configure mixins in a separate source set under src/VALUE, instead of src/main.
# This can speed up compile times thanks to not running the mixin annotation processor on all input sources.
# Mixin classes will have access to "main" classes, but not the other way around.
separateMixinSourceSet =
# Adds some debug arguments like verbose output and class export.
usesMixinDebug = false
# Specify the location of your implementation of IMixinConfigPlugin. Leave it empty otherwise.
mixinPlugin =
# Specify the package that contains all of your Mixins. You may only place Mixins in this package or the build will fail!
# Specify the package that contains all of your Mixins. The package must exist or
# the build will fail. If you have a package property defined in your mixins.<modid>.json,
# it must match with this or the build will fail.
mixinsPackage =
# Specify the core mod entry class if you use a core mod. This class must implement IFMLLoadingPlugin!
# This parameter is for legacy compatibility only
# Example value: coreModClass = asm.FMLPlugin + modGroup = com.myname.mymodid -> com.myname.mymodid.asm.FMLPlugin
# Example value: (coreModClass = asm.FMLPlugin) + (modGroup = com.myname.mymodid) -> com.myname.mymodid.asm.FMLPlugin
coreModClass =
# If your project is only a consolidation of mixins or a core mod and does NOT contain a 'normal' mod ( = some class
# that is annotated with @Mod) you want this to be true. When in doubt: leave it on false!
containsMixinsAndOrCoreModOnly = false
@@ -79,22 +113,38 @@ containsMixinsAndOrCoreModOnly = false
# Enables Mixins even if this mod doesn't use them, useful if one of the dependencies uses mixins.
forceEnableMixins = false
# If enabled, you may use 'shadowCompile' for dependencies. They will be integrated in your jar. It is your
# responsibility check the licence and request permission for distribution, if required.
# If enabled, you may use 'shadowCompile' for dependencies. They will be integrated into your jar. It is your
# responsibility to check the license and request permission for distribution if required.
usesShadowedDependencies = false
# If disabled, won't remove unused classes from shaded dependencies. Some libraries use reflection to access
# If disabled, won't remove unused classes from shadowed dependencies. Some libraries use reflection to access
# their own classes, making the minimization unreliable.
minimizeShadowedDependencies = true
# If disabled, won't rename the shadowed classes.
relocateShadowedDependencies = true
# Adds the GTNH maven, CurseMaven, IC2/Player maven, and some more well-known 1.7.10 repositories
# Adds CurseMaven, Modrinth, and some more well-known 1.7.10 repositories.
includeWellKnownRepositories = true
# Publishing to modrinth requires you to set the MODRINTH_TOKEN environment variable to your current modrinth API token.
# A list of repositories to exclude from the includeWellKnownRepositories setting. Should be a space separated
# list of strings, with the acceptable keys being(case does not matter):
# cursemaven
# modrinth
excludeWellKnownRepositories =
# Change these to your Maven coordinates if you want to publish to a custom Maven repository instead of the default GTNH Maven.
# Authenticate with the MAVEN_USER and MAVEN_PASSWORD environment variables.
# If you need a more complex setup disable maven publishing here and add a publishing repository to addon.gradle.
usesMavenPublishing = true
# Maven repository to publish the mod to.
# mavenPublishUrl = https\://nexus.gtnewhorizons.com/repository/releases/
# Publishing to Modrinth requires you to set the MODRINTH_TOKEN environment variable to your current Modrinth API token.
#
# The project's ID on Modrinth. Can be either the slug or the ID.
# Leave this empty if you don't want to publish on Modrinth.
# Leave this empty if you don't want to publish to Modrinth.
modrinthProjectId =
# The project's relations on Modrinth. You can use this to refer to other projects on Modrinth.
@@ -103,12 +153,11 @@ modrinthProjectId =
# type can be one of [project, version],
# and the name is the Modrinth project or version slug/id of the other mod.
# Example: required-project:fplib;optional-project:gasstation;incompatible-project:gregtech
# Note: GTNH Mixins is automatically set as a required dependency if usesMixins = true
# Note: UniMixins is automatically set as a required dependency if usesMixins = true.
modrinthRelations =
# Publishing to CurseForge requires you to set the CURSEFORGE_TOKEN environment variable to one of your CurseForge API tokens.
#
# The project's numeric ID on CurseForge. You can find this in the About Project box.
# Leave this empty if you don't want to publish on CurseForge.
curseForgeProjectId =
@@ -118,26 +167,45 @@ curseForgeProjectId =
# Where type can be one of [requiredDependency, embeddedLibrary, optionalDependency, tool, incompatible],
# and the name is the CurseForge project slug of the other mod.
# Example: requiredDependency:railcraft;embeddedLibrary:cofhlib;incompatible:buildcraft
# Note: GTNH Mixins is automatically set as a required dependency if usesMixins = true
# Note: UniMixins is automatically set as a required dependency if usesMixins = true.
curseForgeRelations =
# Optional parameter to customize the produced artifacts. Use this to preserver artifact naming when migrating older
# Optional parameter to customize the produced artifacts. Use this to preserve artifact naming when migrating older
# projects. New projects should not use this parameter.
# customArchiveBaseName =
# Optional parameter to prevent the source code from being published
# noPublishedSources =
# Optional parameter to customize the default working directory used by the runClient* tasks. Relative to the project directory.
# runClientWorkingDirectory = run/client
# Uncomment this to disable spotless checks
# Optional parameter to customize the default working directory used by the runServer* tasks. Relative to the project directory.
# runServerWorkingDirectory = run/server
# Optional parameter to have the build automatically fail if an illegal version is used.
# This can be useful if you e.g. only want to allow versions in the form of '1.1.xxx'.
# The check is ONLY performed if the version is a git tag.
# Note: the specified string must be escaped, so e.g. 1\\.1\\.\\d+ instead of 1\.1\.\d+
# versionPattern =
# Uncomment to prevent the source code from being published.
# noPublishedSources = true
# Uncomment this to disable Spotless checks.
# This should only be uncommented to keep it easier to sync with upstream/other forks.
# That is, if there is no other active fork/upstream, NEVER change this.
# disableSpotless = true
# Override the IDEA build type. Valid value is "" (leave blank, do not override), "idea" (force use native IDEA build), "gradle"
# Uncomment this to disable Checkstyle checks (currently wildcard import check).
# disableCheckstyle = true
# Override the IDEA build type. Valid values are: "" (leave blank, do not override), "idea" (force use native IDEA build), "gradle"
# (force use delegated build).
# This is meant to be set in $HOME/.gradle/gradle.properties.
# e.g. add "systemProp.org.gradle.project.ideaOverrideBuildType=idea" will override the build type to be always native build.
# e.g. add "systemProp.org.gradle.project.ideaOverrideBuildType=idea" will override the build type to be native build.
# WARNING: If you do use this option, it will overwrite whatever you have in your existing projects. This might not be what you want!
# Usually there is no need to uncomment this here as other developers do not necessarily use the same build type as you.
# ideaOverrideBuildType = idea
# Whether IDEA should run spotless checks when pressing the Build button.
# This is meant to be set in $HOME/.gradle/gradle.properties.
# ideaCheckSpotlessOnBuild = true
Binary file not shown.
+2 -1
View File
@@ -1,6 +1,7 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.0.1-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.14.3-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
Vendored Regular → Executable
+20 -13
View File
@@ -15,6 +15,8 @@
# See the License for the specific language governing permissions and
# limitations under the License.
#
# SPDX-License-Identifier: Apache-2.0
#
##############################################################################
#
@@ -55,7 +57,7 @@
# Darwin, MinGW, and NonStop.
#
# (3) This script is generated from the Groovy template
# https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
# https://github.com/gradle/gradle/blob/HEAD/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
# within the Gradle project.
#
# You can find Gradle at https://github.com/gradle/gradle/.
@@ -83,10 +85,8 @@ done
# This is normally unused
# shellcheck disable=SC2034
APP_BASE_NAME=${0##*/}
APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD=maximum
@@ -133,10 +133,13 @@ location of your Java installation."
fi
else
JAVACMD=java
which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
if ! command -v java >/dev/null 2>&1
then
die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
Please set the JAVA_HOME variable in your environment to match the
location of your Java installation."
fi
fi
# Increase the maximum file descriptors if we can.
@@ -144,7 +147,7 @@ if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
case $MAX_FD in #(
max*)
# In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked.
# shellcheck disable=SC3045
# shellcheck disable=SC2039,SC3045
MAX_FD=$( ulimit -H -n ) ||
warn "Could not query maximum file descriptor limit"
esac
@@ -152,7 +155,7 @@ if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
'' | soft) :;; #(
*)
# In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked.
# shellcheck disable=SC3045
# shellcheck disable=SC2039,SC3045
ulimit -n "$MAX_FD" ||
warn "Could not set maximum file descriptor limit to $MAX_FD"
esac
@@ -197,11 +200,15 @@ if "$cygwin" || "$msys" ; then
done
fi
# Collect all arguments for the java command;
# * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of
# shell script including quotes and variable substitutions, so put them in
# double quotes to make sure that they get re-expanded; and
# * put everything else in single quotes, so that it's not re-expanded.
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
# Collect all arguments for the java command:
# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
# and any embedded shellness will be escaped.
# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be
# treated as '${Hostname}' itself on the command line.
set -- \
"-Dorg.gradle.appname=$APP_BASE_NAME" \
Vendored
+12 -10
View File
@@ -13,6 +13,8 @@
@rem See the License for the specific language governing permissions and
@rem limitations under the License.
@rem
@rem SPDX-License-Identifier: Apache-2.0
@rem
@if "%DEBUG%"=="" @echo off
@rem ##########################################################################
@@ -43,11 +45,11 @@ set JAVA_EXE=java.exe
%JAVA_EXE% -version >NUL 2>&1
if %ERRORLEVEL% equ 0 goto execute
echo.
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
echo.
echo Please set the JAVA_HOME variable in your environment to match the
echo location of your Java installation.
echo. 1>&2
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2
echo. 1>&2
echo Please set the JAVA_HOME variable in your environment to match the 1>&2
echo location of your Java installation. 1>&2
goto fail
@@ -57,11 +59,11 @@ set JAVA_EXE=%JAVA_HOME%/bin/java.exe
if exist "%JAVA_EXE%" goto execute
echo.
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
echo.
echo Please set the JAVA_HOME variable in your environment to match the
echo location of your Java installation.
echo. 1>&2
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2
echo. 1>&2
echo Please set the JAVA_HOME variable in your environment to match the 1>&2
echo location of your Java installation. 1>&2
goto fail
+5 -10
View File
@@ -4,10 +4,10 @@ pluginManagement {
maven {
// RetroFuturaGradle
name "GTNH Maven"
url "http://jenkins.usrv.eu:8081/nexus/content/groups/public/"
allowInsecureProtocol = true
url "https://nexus.gtnewhorizons.com/repository/public/"
mavenContent {
includeGroup("com.gtnewhorizons.retrofuturagradle")
includeGroup("com.gtnewhorizons")
includeGroupByRegex("com\\.gtnewhorizons\\..+")
}
}
gradlePluginPortal()
@@ -17,12 +17,7 @@ pluginManagement {
}
plugins {
id 'com.diffplug.blowdryerSetup' version '1.6.0'
id 'org.gradle.toolchains.foojay-resolver-convention' version '0.4.0' // Provides java toolchains
id 'com.gtnewhorizons.gtnhsettingsconvention' version '1.0.49'
}
blowdryerSetup {
repoSubfolder 'gtnhShared'
github('GTNewHorizons/ExampleMod1.7.10', 'tag', '0.2.0')
//devLocal '.' // Use this when testing config updates locally
}
+22 -6
View File
@@ -18,12 +18,12 @@ import ab.common.core.handler.ConfigABHandler;
public class AdvancedBotanyAPI {
public static List<RecipeAdvancedPlate> advancedPlateRecipes = new ArrayList<RecipeAdvancedPlate>();
public static List<RecipeAncientAlphirine> alphirineRecipes = new ArrayList<RecipeAncientAlphirine>();
public static List<TerraFarmlandList> farmlandList = new ArrayList<TerraFarmlandList>();
public static List<Achievement> achievements = new ArrayList<Achievement>();
public static List<ItemStack> relicList = new ArrayList<ItemStack>();
public static List<ItemStack> diceList = new ArrayList<ItemStack>();
public static List<RecipeAdvancedPlate> advancedPlateRecipes = new ArrayList<>();
public static List<RecipeAncientAlphirine> alphirineRecipes = new ArrayList<>();
public static List<TerraFarmlandList> farmlandList = new ArrayList<>();
public static List<Achievement> achievements = new ArrayList<>();
public static List<ItemStack> relicList = new ArrayList<>();
public static List<ItemStack> diceList = new ArrayList<>();
public static Item.ToolMaterial mithrilToolMaterial = EnumHelper.addToolMaterial("MITHRIL", 7, -1, 8.0F, 4.0F, 24);
public static ItemArmor.ArmorMaterial nebulaArmorMaterial = EnumHelper.addArmorMaterial(
@@ -47,6 +47,22 @@ public class AdvancedBotanyAPI {
return recipe;
}
public static RecipeAdvancedPlate registerAdvancedPlateRecipe(ItemStack output, int mana, int color,
Object... inputs) {
RecipeAdvancedPlate recipe = new RecipeAdvancedPlate(output, mana, color, inputs);
advancedPlateRecipes.add(recipe);
return recipe;
}
public static RecipeAdvancedPlate registerAdvancedPlateRecipe(String output, int mana, int color,
Object... inputs) {
RecipeAdvancedPlate recipe = RecipeAdvancedPlate.fromOreDictOutput(output, mana, color, inputs);
if (recipe != null) {
advancedPlateRecipes.add(recipe);
}
return recipe;
}
public static RecipeAncientAlphirine registerAlphirineRecipe(ItemStack output, ItemStack input, int chance) {
RecipeAncientAlphirine recipe = new RecipeAncientAlphirine(output, input, chance);
alphirineRecipes.add(recipe);
@@ -1,33 +1,26 @@
package ab.api.recipe;
import java.util.ArrayList;
import java.util.List;
import net.minecraft.inventory.IInventory;
import net.minecraft.item.ItemStack;
import net.minecraftforge.oredict.OreDictionary;
public class RecipeAdvancedPlate {
import vazkii.botania.api.recipe.RecipePetals;
private ItemStack output;
private int color;
private List<ItemStack> inputs;
private int mana;
public class RecipeAdvancedPlate extends RecipePetals {
public RecipeAdvancedPlate(ItemStack output, int mana, int color, ItemStack... inputs) {
this.output = output;
private final int color;
private final int mana;
public static RecipeAdvancedPlate fromOreDictOutput(String output, int mana, int color, Object... inputs) {
List<ItemStack> ores = OreDictionary.getOres(output);
return !ores.isEmpty() ? new RecipeAdvancedPlate(ores.get(0), mana, color, inputs) : null;
}
public RecipeAdvancedPlate(ItemStack output, int mana, int color, Object... inputs) {
super(output, inputs);
this.mana = mana;
this.color = color;
List<ItemStack> inputsToSet = new ArrayList();
for (ItemStack obj : inputs) inputsToSet.add(obj);
this.inputs = inputsToSet;
}
public List<ItemStack> getInputs() {
return new ArrayList(this.inputs);
}
public ItemStack getOutput() {
return this.output;
}
public int getManaUsage() {
@@ -37,31 +30,4 @@ public class RecipeAdvancedPlate {
public int getColor() {
return this.color;
}
public boolean matches(IInventory inv) {
List<ItemStack> inputsMissing = new ArrayList(this.inputs);
for (int i = 1; i < inv.getSizeInventory(); i++) {
ItemStack stack = inv.getStackInSlot(i);
if (stack == null) break;
int stackIndex = -1;
for (int j = 0; j < inputsMissing.size(); j++) {
ItemStack input = inputsMissing.get(j);
if (input instanceof ItemStack && simpleAreStacksEqual(input.copy(), stack)) {
stackIndex = j;
break;
}
}
if (stackIndex != -1) {
inputsMissing.remove(stackIndex);
} else {
return false;
}
}
return inputsMissing.isEmpty();
}
boolean simpleAreStacksEqual(ItemStack input, ItemStack stack) {
if (input.getItemDamage() == 32767) input.setItemDamage(stack.getItemDamage());
return (input.getItem() == stack.getItem() && input.getItemDamage() == stack.getItemDamage());
}
}
@@ -10,21 +10,22 @@ import net.minecraft.client.renderer.texture.TextureManager;
import net.minecraft.item.ItemStack;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.StatCollector;
import net.minecraftforge.oredict.OreDictionary;
import org.lwjgl.opengl.GL11;
import vazkii.botania.api.internal.IGuiLexiconEntry;
import vazkii.botania.api.lexicon.LexiconEntry;
import vazkii.botania.api.lexicon.LexiconRecipeMappings;
import vazkii.botania.client.core.handler.ClientTickHandler;
import vazkii.botania.common.core.handler.ConfigHandler;
import vazkii.botania.common.lexicon.page.PageRecipe;
import ab.api.AdvancedBotanyAPI;
import ab.api.recipe.RecipeAdvancedPlate;
import ab.client.core.ClientHelper;
import ab.common.lib.register.BlockListAB;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import vazkii.botania.api.internal.IGuiLexiconEntry;
import vazkii.botania.api.lexicon.LexiconEntry;
import vazkii.botania.api.lexicon.LexiconRecipeMappings;
import vazkii.botania.client.core.handler.ClientTickHandler;
import vazkii.botania.common.core.handler.ConfigHandler;
import vazkii.botania.common.lexicon.page.PageRecipe;
public class AdvancedPlateCraftPage extends PageRecipe {
@@ -68,14 +69,24 @@ public class AdvancedPlateCraftPage extends PageRecipe {
TextureManager render = (Minecraft.getMinecraft()).renderEngine;
renderItemAtGridPos(gui, 3, 0, recipe.getOutput(), false);
renderItemAtGridPos(gui, 2, 1, new ItemStack(BlockListAB.blockABPlate), false);
List<ItemStack> inputs = recipe.getInputs();
List<Object> inputs = recipe.getInputs();
int degreePerInput = (int) (360.0F / inputs.size());
float currentDegree = ConfigHandler.lexiconRotatingItems ? (GuiScreen.isShiftKeyDown() ? this.ticksElapsed
: (this.ticksElapsed + ClientTickHandler.partialTicks)) : 0.0F;
for (ItemStack obj : inputs) {
ItemStack copy = obj.copy();
if (copy.getItemDamage() == 32767) copy.setItemDamage(0);
renderItemAtAngle(gui, currentDegree, copy);
for (Object obj : inputs) {
ItemStack copy = null;
if (obj instanceof String oreName) {
List<ItemStack> ores = OreDictionary.getOres(oreName);
if (!ores.isEmpty()) {
copy = ores.get(0).copy();
}
} else if (obj instanceof ItemStack itemStack) {
copy = itemStack.copy();
}
if (copy != null) {
if (copy.getItemDamage() == OreDictionary.WILDCARD_VALUE) copy.setItemDamage(0);
renderItemAtAngle(gui, currentDegree, copy);
}
currentDegree += degreePerInput;
}
renderManaBar(gui, mx, my);
@@ -116,7 +127,7 @@ public class AdvancedPlateCraftPage extends PageRecipe {
}
public List<ItemStack> getDisplayedRecipes() {
ArrayList<ItemStack> list = new ArrayList<ItemStack>();
ArrayList<ItemStack> list = new ArrayList<>();
list.add(recipe.getOutput());
return list;
}
@@ -14,16 +14,16 @@ import net.minecraft.util.StatCollector;
import org.lwjgl.opengl.GL11;
import vazkii.botania.api.internal.IGuiLexiconEntry;
import vazkii.botania.api.lexicon.LexiconEntry;
import vazkii.botania.api.lexicon.LexiconRecipeMappings;
import vazkii.botania.common.item.block.ItemBlockSpecialFlower;
import vazkii.botania.common.lexicon.page.PageRecipe;
import ab.api.AdvancedBotanyAPI;
import ab.api.recipe.RecipeAncientAlphirine;
import ab.client.core.ClientHelper;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import vazkii.botania.api.internal.IGuiLexiconEntry;
import vazkii.botania.api.lexicon.LexiconEntry;
import vazkii.botania.api.lexicon.LexiconRecipeMappings;
import vazkii.botania.common.item.block.ItemBlockSpecialFlower;
import vazkii.botania.common.lexicon.page.PageRecipe;
public class AlphirineCraftPage extends PageRecipe {
@@ -18,11 +18,11 @@ import net.minecraftforge.client.event.RenderWorldLastEvent;
import org.lwjgl.opengl.GL11;
import ab.api.IBoundRender;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import vazkii.botania.api.wand.ICoordBoundItem;
import vazkii.botania.api.wand.IWireframeAABBProvider;
import vazkii.botania.client.core.handler.ClientTickHandler;
import ab.api.IBoundRender;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
public class BoundRenderHandler {
@@ -18,13 +18,13 @@ import net.minecraft.util.StatCollector;
import org.lwjgl.input.Mouse;
import org.lwjgl.opengl.GL11;
import vazkii.botania.client.core.handler.ClientTickHandler;
import vazkii.botania.common.lib.LibObfuscation;
import ab.api.IRankItem;
import ab.client.core.handler.PlayerItemUsingSound.ClientSoundHandler;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import cpw.mods.fml.common.gameevent.TickEvent;
import cpw.mods.fml.relauncher.ReflectionHelper;
import vazkii.botania.client.core.handler.ClientTickHandler;
import vazkii.botania.common.lib.LibObfuscation;
public class ClientHandler {
@@ -8,11 +8,11 @@ import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.MovingObjectPosition;
import net.minecraftforge.client.event.RenderGameOverlayEvent;
import vazkii.botania.common.item.ItemLexicon;
import vazkii.botania.common.item.ItemTwigWand;
import ab.api.IRenderHud;
import ab.common.item.equipment.ItemBlackHalo;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import vazkii.botania.common.item.ItemLexicon;
import vazkii.botania.common.item.ItemTwigWand;
public class HudRenderHandler {
@@ -14,12 +14,12 @@ import net.minecraftforge.client.event.RenderPlayerEvent;
import org.lwjgl.opengl.GL11;
import vazkii.botania.api.item.IPhantomInkable;
import vazkii.botania.client.core.handler.ClientTickHandler;
import ab.client.core.ClientHelper;
import ab.common.item.equipment.armor.ItemNebulaArmor;
import ab.common.item.equipment.armor.ItemNebulaHelm;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import vazkii.botania.api.item.IPhantomInkable;
import vazkii.botania.client.core.handler.ClientTickHandler;
public class PlayerRendererHandler {
@@ -3,20 +3,47 @@ package ab.client.core.proxy;
import net.minecraftforge.client.MinecraftForgeClient;
import net.minecraftforge.common.MinecraftForge;
import vazkii.botania.common.Botania;
import ab.client.core.handler.BoundRenderHandler;
import ab.client.core.handler.ClientHandler;
import ab.client.core.handler.HudRenderHandler;
import ab.client.core.handler.PlayerRendererHandler;
import ab.client.render.block.*;
import ab.client.render.entity.*;
import ab.client.render.block.RenderBlockABSpreader;
import ab.client.render.block.RenderBlockEngineerHopper;
import ab.client.render.block.RenderBlockManaCharger;
import ab.client.render.block.RenderBlockManaContainer;
import ab.client.render.block.RenderBlockManaCrystalCube;
import ab.client.render.block.RenderBlockNidavellirForge;
import ab.client.render.entity.EntityNullRender;
import ab.client.render.entity.RenderEntityAdvancedSpark;
import ab.client.render.entity.RenderEntityAlphirinePortal;
import ab.client.render.item.RenderItemAntigravityCharm;
import ab.client.render.item.RenderItemSphereNavigation;
import ab.client.render.tile.*;
import ab.common.block.tile.*;
import ab.client.render.tile.RenderTileABSpreader;
import ab.client.render.tile.RenderTileBoardFate;
import ab.client.render.tile.RenderTileEngineerHopper;
import ab.client.render.tile.RenderTileGameBoard;
import ab.client.render.tile.RenderTileMagicCraftingCrate;
import ab.client.render.tile.RenderTileManaCharger;
import ab.client.render.tile.RenderTileManaContainer;
import ab.client.render.tile.RenderTileManaCrystalCube;
import ab.client.render.tile.RenderTileNidavellirForge;
import ab.common.block.tile.TileABSpreader;
import ab.common.block.tile.TileBoardFate;
import ab.common.block.tile.TileEngineerHopper;
import ab.common.block.tile.TileGameBoard;
import ab.common.block.tile.TileMagicCraftCrate;
import ab.common.block.tile.TileManaCharger;
import ab.common.block.tile.TileManaContainer;
import ab.common.block.tile.TileManaCrystalCube;
import ab.common.block.tile.TileNidavellirForge;
import ab.common.core.handler.ConfigABHandler;
import ab.common.core.proxy.CommonProxy;
import ab.common.entity.*;
import ab.common.entity.EntityAdvancedSpark;
import ab.common.entity.EntityAlphirinePortal;
import ab.common.entity.EntityManaVine;
import ab.common.entity.EntityNebulaBlaze;
import ab.common.entity.EntitySeed;
import ab.common.entity.EntitySword;
import ab.common.lib.register.BlockListAB;
import ab.common.lib.register.ItemListAB;
import cpw.mods.fml.client.registry.ClientRegistry;
@@ -25,6 +52,7 @@ import cpw.mods.fml.common.FMLCommonHandler;
import cpw.mods.fml.common.event.FMLInitializationEvent;
import cpw.mods.fml.common.event.FMLPostInitializationEvent;
import cpw.mods.fml.common.event.FMLPreInitializationEvent;
import vazkii.botania.common.Botania;
public class ClientProxy extends CommonProxy {
@@ -6,8 +6,8 @@ import net.minecraft.inventory.Container;
import net.minecraft.inventory.Slot;
import net.minecraft.item.ItemStack;
import vazkii.botania.client.gui.SlotLocked;
import ab.common.item.relic.ItemTalismanHiddenRiches;
import vazkii.botania.client.gui.SlotLocked;
public class ContainerItemChest extends Container {
@@ -7,10 +7,10 @@ import net.minecraft.item.ItemStack;
import org.lwjgl.opengl.GL11;
import vazkii.botania.client.core.handler.LightningHandler;
import vazkii.botania.common.core.helper.Vector3;
import ab.client.render.tile.RenderTileManaCharger;
import ab.common.block.tile.TileManaCharger;
import vazkii.botania.client.core.handler.LightningHandler;
import vazkii.botania.common.core.helper.Vector3;
public class ModelManaCharger extends ModelBase {
@@ -6,6 +6,7 @@ import java.util.List;
import net.minecraft.item.ItemStack;
import net.minecraft.util.StatCollector;
import net.minecraftforge.oredict.OreDictionary;
import org.lwjgl.opengl.GL11;
@@ -22,7 +23,7 @@ public class RecipeHandlerAdvancedPlate extends TemplateRecipeHandler {
public class CachedAdvancedPlateRecipe extends TemplateRecipeHandler.CachedRecipe {
public List<PositionedStack> inputs = new ArrayList<PositionedStack>();
public List<PositionedStack> inputs = new ArrayList<>();
public PositionedStack output;
public int manaUsage;
@@ -33,13 +34,17 @@ public class RecipeHandlerAdvancedPlate extends TemplateRecipeHandler {
this.manaUsage = recipe.getManaUsage();
}
public void setIngredients(List<ItemStack> inputs) {
public void setIngredients(List<Object> inputs) {
float degreePerInput = 360.0F / inputs.size();
float currentDegree = -90.0F;
for (Object o : inputs) {
for (Object obj : inputs) {
int posX = (int) Math.round(73.0D + Math.cos(currentDegree * Math.PI / 180.0D) * 32.0D);
int posY = (int) Math.round(55.0D + Math.sin(currentDegree * Math.PI / 180.0D) * 32.0D);
this.inputs.add(new PositionedStack(o, posX, posY));
if (obj instanceof String oreName) {
this.inputs.add(new PositionedStack(OreDictionary.getOres(oreName), posX, posY));
} else if (obj instanceof ItemStack itemStack) {
this.inputs.add(new PositionedStack(itemStack, posX, posY));
}
currentDegree += degreePerInput;
}
}
@@ -66,11 +71,8 @@ public class RecipeHandlerAdvancedPlate extends TemplateRecipeHandler {
}
public void loadTransferRects() {
this.transferRects.add(
new TemplateRecipeHandler.RecipeTransferRect(
new Rectangle(72, 54, 18, 18),
getRecipeID(),
new Object[0]));
this.transferRects
.add(new TemplateRecipeHandler.RecipeTransferRect(new Rectangle(72, 54, 18, 18), getRecipeID()));
}
public int recipiesPerPage() {
@@ -10,7 +10,6 @@ import net.minecraft.util.StatCollector;
import org.lwjgl.opengl.GL11;
import vazkii.botania.common.item.block.ItemBlockSpecialFlower;
import ab.api.AdvancedBotanyAPI;
import ab.api.recipe.RecipeAncientAlphirine;
import ab.client.core.ClientHelper;
@@ -18,6 +17,7 @@ import codechicken.lib.gui.GuiDraw;
import codechicken.nei.NEIServerUtils;
import codechicken.nei.PositionedStack;
import codechicken.nei.recipe.TemplateRecipeHandler;
import vazkii.botania.common.item.block.ItemBlockSpecialFlower;
public class RecipeHandlerAlphirine extends TemplateRecipeHandler {
@@ -2,10 +2,10 @@ package ab.client.render.entity;
import net.minecraft.util.IIcon;
import vazkii.botania.client.render.entity.RenderSparkBase;
import vazkii.botania.common.item.ItemSparkUpgrade;
import ab.common.entity.EntityAdvancedSpark;
import ab.common.item.ItemAdvancedSpark;
import vazkii.botania.client.render.entity.RenderSparkBase;
import vazkii.botania.common.item.ItemSparkUpgrade;
public class RenderEntityAdvancedSpark extends RenderSparkBase<EntityAdvancedSpark> {
@@ -11,9 +11,9 @@ import net.minecraft.util.ResourceLocation;
import org.lwjgl.opengl.GL11;
import vazkii.botania.client.core.handler.ClientTickHandler;
import ab.client.core.ClientHelper;
import ab.common.block.BlockLebethronWood;
import vazkii.botania.client.core.handler.ClientTickHandler;
public class RenderEntityAlphirinePortal extends Render {
@@ -10,8 +10,8 @@ import net.minecraftforge.client.IItemRenderer;
import org.lwjgl.opengl.GL11;
import vazkii.botania.common.core.helper.ItemNBTHelper;
import ab.common.item.ItemAntigravityCharm;
import vazkii.botania.common.core.helper.ItemNBTHelper;
public class RenderItemAntigravityCharm implements IItemRenderer {
@@ -12,12 +12,12 @@ import net.minecraft.util.ResourceLocation;
import org.lwjgl.opengl.GL11;
import ab.common.block.tile.TileABSpreader;
import vazkii.botania.api.mana.ILens;
import vazkii.botania.client.core.handler.ClientTickHandler;
import vazkii.botania.client.core.proxy.ClientProxy;
import vazkii.botania.client.model.ModelSpreader;
import vazkii.botania.client.render.item.RenderLens;
import ab.common.block.tile.TileABSpreader;
public class RenderTileABSpreader extends TileEntitySpecialRenderer {
@@ -10,9 +10,9 @@ import net.minecraft.util.ResourceLocation;
import org.lwjgl.opengl.GL11;
import vazkii.botania.client.core.handler.ClientTickHandler;
import ab.client.model.ModelDiceFate;
import ab.common.block.tile.TileBoardFate;
import vazkii.botania.client.core.handler.ClientTickHandler;
public class RenderTileBoardFate extends TileEntitySpecialRenderer {
@@ -9,8 +9,8 @@ import net.minecraft.util.ResourceLocation;
import org.lwjgl.opengl.GL11;
import vazkii.botania.client.core.handler.ClientTickHandler;
import ab.client.model.ModelEngineerHopper;
import vazkii.botania.client.core.handler.ClientTickHandler;
public class RenderTileEngineerHopper extends TileEntitySpecialRenderer {
@@ -10,9 +10,9 @@ import net.minecraft.util.ResourceLocation;
import org.lwjgl.opengl.GL11;
import vazkii.botania.client.core.handler.ClientTickHandler;
import ab.client.model.ModelDiceFate;
import ab.common.block.tile.TileGameBoard;
import vazkii.botania.client.core.handler.ClientTickHandler;
public class RenderTileGameBoard extends TileEntitySpecialRenderer {
@@ -18,10 +18,10 @@ import net.minecraft.util.ResourceLocation;
import org.lwjgl.opengl.GL11;
import vazkii.botania.client.core.handler.ClientTickHandler;
import ab.common.block.BlockMagicCraftCrate;
import ab.common.block.tile.TileMagicCraftCrate;
import ab.common.lib.register.BlockListAB;
import vazkii.botania.client.core.handler.ClientTickHandler;
public class RenderTileMagicCraftingCrate extends TileEntitySpecialRenderer {
@@ -19,9 +19,9 @@ import net.minecraftforge.client.ForgeHooksClient;
import org.lwjgl.opengl.GL11;
import vazkii.botania.client.core.handler.ClientTickHandler;
import ab.client.model.ModelManaCharger;
import ab.common.block.tile.TileManaCharger;
import vazkii.botania.client.core.handler.ClientTickHandler;
public class RenderTileManaCharger extends TileEntitySpecialRenderer {
@@ -12,12 +12,12 @@ import net.minecraft.world.World;
import org.lwjgl.opengl.GL11;
import vazkii.botania.client.core.handler.ClientTickHandler;
import vazkii.botania.client.core.helper.ShaderHelper;
import vazkii.botania.common.block.mana.BlockPool;
import ab.client.core.ClientHelper;
import ab.client.model.ModelManaContainer;
import ab.common.block.tile.TileManaContainer;
import vazkii.botania.client.core.handler.ClientTickHandler;
import vazkii.botania.client.core.helper.ShaderHelper;
import vazkii.botania.common.block.mana.BlockPool;
public class RenderTileManaContainer extends TileEntitySpecialRenderer {
@@ -16,9 +16,9 @@ import net.minecraft.util.ResourceLocation;
import org.lwjgl.opengl.GL11;
import vazkii.botania.client.core.handler.ClientTickHandler;
import ab.client.model.ModelNidavellirForge;
import ab.common.block.tile.TileNidavellirForge;
import vazkii.botania.client.core.handler.ClientTickHandler;
public class RenderTileNidavellirForge extends TileEntitySpecialRenderer {
@@ -20,16 +20,16 @@ import net.minecraft.util.IIcon;
import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
import ab.AdvancedBotany;
import ab.common.block.tile.TileABSpreader;
import ab.common.lib.register.BlockListAB;
import ab.common.lib.register.RecipeListAB;
import vazkii.botania.api.lexicon.ILexiconable;
import vazkii.botania.api.lexicon.LexiconEntry;
import vazkii.botania.api.wand.IWandHUD;
import vazkii.botania.api.wand.IWandable;
import vazkii.botania.api.wand.IWireframeAABBProvider;
import vazkii.botania.common.item.ModItems;
import ab.AdvancedBotany;
import ab.common.block.tile.TileABSpreader;
import ab.common.lib.register.BlockListAB;
import ab.common.lib.register.RecipeListAB;
public class BlockABSpreader extends BlockContainer
implements IWandable, IWandHUD, IWireframeAABBProvider, ILexiconable {
@@ -8,9 +8,9 @@ import net.minecraft.util.AxisAlignedBB;
import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
import vazkii.botania.common.Botania;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import vazkii.botania.common.Botania;
public class BlockAntigravitation extends Block {
@@ -18,15 +18,15 @@ import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.IIcon;
import net.minecraft.world.World;
import vazkii.botania.api.lexicon.ILexiconable;
import vazkii.botania.api.lexicon.LexiconEntry;
import vazkii.botania.common.achievement.IPickupAchievement;
import ab.AdvancedBotany;
import ab.common.block.tile.TileBoardFate;
import ab.common.block.tile.TileGameBoard;
import ab.common.block.tile.TileInventory;
import ab.common.lib.register.AchievementRegister;
import ab.common.lib.register.RecipeListAB;
import vazkii.botania.api.lexicon.ILexiconable;
import vazkii.botania.api.lexicon.LexiconEntry;
import vazkii.botania.common.achievement.IPickupAchievement;
public class BlockBoardFate extends BlockContainer implements IPickupAchievement, ILexiconable {
@@ -14,16 +14,16 @@ import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.IIcon;
import net.minecraft.world.World;
import vazkii.botania.api.lexicon.ILexiconable;
import vazkii.botania.api.lexicon.LexiconEntry;
import vazkii.botania.api.wand.IWandHUD;
import vazkii.botania.api.wand.IWandable;
import vazkii.botania.common.block.ModBlocks;
import ab.AdvancedBotany;
import ab.common.block.tile.TileEngineerHopper;
import ab.common.block.tile.TileInventory;
import ab.common.lib.register.BlockListAB;
import ab.common.lib.register.RecipeListAB;
import vazkii.botania.api.lexicon.ILexiconable;
import vazkii.botania.api.lexicon.LexiconEntry;
import vazkii.botania.api.wand.IWandHUD;
import vazkii.botania.api.wand.IWandable;
import vazkii.botania.common.block.ModBlocks;
public class BlockEngineerHopper extends BlockContainer implements IWandable, IWandHUD, ILexiconable {
@@ -13,11 +13,11 @@ import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
import net.minecraftforge.common.util.ForgeDirection;
import vazkii.botania.api.lexicon.ILexiconable;
import vazkii.botania.api.lexicon.LexiconEntry;
import ab.common.core.CommonHelper;
import ab.common.lib.register.BlockListAB;
import ab.common.lib.register.RecipeListAB;
import vazkii.botania.api.lexicon.ILexiconable;
import vazkii.botania.api.lexicon.LexiconEntry;
public class BlockFreyrLiana extends BlockBush implements ILexiconable {
@@ -18,14 +18,14 @@ import net.minecraft.util.MovingObjectPosition;
import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
import vazkii.botania.api.internal.VanillaPacketDispatcher;
import vazkii.botania.api.lexicon.ILexiconable;
import vazkii.botania.api.lexicon.LexiconEntry;
import ab.AdvancedBotany;
import ab.common.block.tile.TileLebethronCore;
import ab.common.lib.register.RecipeListAB;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import vazkii.botania.api.internal.VanillaPacketDispatcher;
import vazkii.botania.api.lexicon.ILexiconable;
import vazkii.botania.api.lexicon.LexiconEntry;
public class BlockLebethronWood extends Block implements ILexiconable, ITileEntityProvider {
@@ -8,9 +8,9 @@ import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World;
import vazkii.botania.common.Botania;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import vazkii.botania.common.Botania;
public class BlockLuminousFreyrLiana extends BlockFreyrLiana {
@@ -22,6 +22,10 @@ import net.minecraft.world.World;
import org.lwjgl.opengl.GL11;
import org.lwjgl.opengl.GL12;
import ab.AdvancedBotany;
import ab.common.block.tile.TileMagicCraftCrate;
import ab.common.item.ItemCraftingPattern;
import ab.common.lib.register.RecipeListAB;
import thaumcraft.api.aspects.Aspect;
import thaumcraft.api.aspects.AspectList;
import thaumcraft.client.lib.UtilsFX;
@@ -32,10 +36,6 @@ import vazkii.botania.api.lexicon.LexiconEntry;
import vazkii.botania.api.wand.IWandHUD;
import vazkii.botania.api.wand.IWandable;
import vazkii.botania.common.block.BlockModContainer;
import ab.AdvancedBotany;
import ab.common.block.tile.TileMagicCraftCrate;
import ab.common.item.ItemCraftingPattern;
import ab.common.lib.register.RecipeListAB;
public class BlockMagicCraftCrate extends BlockModContainer implements IWandable, IWandHUD, ILexiconable {
@@ -14,17 +14,17 @@ import net.minecraft.util.IIcon;
import net.minecraft.util.Vec3;
import net.minecraft.world.World;
import ab.AdvancedBotany;
import ab.common.block.tile.TileInventory;
import ab.common.block.tile.TileManaCharger;
import ab.common.lib.register.BlockListAB;
import ab.common.lib.register.RecipeListAB;
import vazkii.botania.api.lexicon.ILexiconable;
import vazkii.botania.api.lexicon.LexiconEntry;
import vazkii.botania.api.mana.IManaItem;
import vazkii.botania.api.wand.IWandHUD;
import vazkii.botania.api.wand.IWandable;
import vazkii.botania.common.block.ModBlocks;
import ab.AdvancedBotany;
import ab.common.block.tile.TileInventory;
import ab.common.block.tile.TileManaCharger;
import ab.common.lib.register.BlockListAB;
import ab.common.lib.register.RecipeListAB;
public class BlockManaCharger extends BlockContainer implements IWandHUD, IWandable, ILexiconable {
@@ -14,15 +14,15 @@ import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.IIcon;
import net.minecraft.world.World;
import ab.AdvancedBotany;
import ab.common.block.tile.TileManaContainer;
import ab.common.lib.register.BlockListAB;
import ab.common.lib.register.RecipeListAB;
import vazkii.botania.api.lexicon.ILexiconable;
import vazkii.botania.api.lexicon.LexiconEntry;
import vazkii.botania.api.wand.IWandHUD;
import vazkii.botania.api.wand.IWandable;
import vazkii.botania.common.block.ModBlocks;
import ab.AdvancedBotany;
import ab.common.block.tile.TileManaContainer;
import ab.common.lib.register.BlockListAB;
import ab.common.lib.register.RecipeListAB;
public class BlockManaContainer extends BlockContainer implements IWandHUD, IWandable, ILexiconable {
@@ -12,14 +12,14 @@ import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.IIcon;
import net.minecraft.world.World;
import vazkii.botania.api.lexicon.ILexiconable;
import vazkii.botania.api.lexicon.LexiconEntry;
import vazkii.botania.common.block.ModBlocks;
import vazkii.botania.common.item.ItemTwigWand;
import ab.AdvancedBotany;
import ab.common.block.tile.TileManaCrystalCube;
import ab.common.lib.register.BlockListAB;
import ab.common.lib.register.RecipeListAB;
import vazkii.botania.api.lexicon.ILexiconable;
import vazkii.botania.api.lexicon.LexiconEntry;
import vazkii.botania.common.block.ModBlocks;
import vazkii.botania.common.item.ItemTwigWand;
public class BlockManaCrystalCube extends BlockContainer implements ILexiconable {
@@ -15,14 +15,14 @@ import net.minecraft.util.Vec3;
import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
import vazkii.botania.api.lexicon.ILexiconable;
import vazkii.botania.api.lexicon.LexiconEntry;
import vazkii.botania.common.block.ModBlocks;
import ab.AdvancedBotany;
import ab.common.block.tile.TileInventory;
import ab.common.block.tile.TileNidavellirForge;
import ab.common.lib.register.BlockListAB;
import ab.common.lib.register.RecipeListAB;
import vazkii.botania.api.lexicon.ILexiconable;
import vazkii.botania.api.lexicon.LexiconEntry;
import vazkii.botania.common.block.ModBlocks;
public class BlockNidavellirForge extends BlockContainer implements ILexiconable {
@@ -19,13 +19,13 @@ import net.minecraft.world.World;
import net.minecraftforge.common.IPlantable;
import net.minecraftforge.common.util.ForgeDirection;
import vazkii.botania.api.lexicon.ILexiconable;
import vazkii.botania.api.lexicon.LexiconEntry;
import ab.api.AdvancedBotanyAPI;
import ab.api.TerraFarmlandList;
import ab.common.lib.register.RecipeListAB;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import vazkii.botania.api.lexicon.ILexiconable;
import vazkii.botania.api.lexicon.LexiconEntry;
public class BlockTerraFarmland extends Block implements ILexiconable {
@@ -8,14 +8,14 @@ import net.minecraft.item.ItemStack;
import net.minecraft.util.AxisAlignedBB;
import net.minecraft.world.World;
import vazkii.botania.api.lexicon.LexiconEntry;
import vazkii.botania.api.subtile.RadiusDescriptor;
import vazkii.botania.api.subtile.SubTileFunctional;
import vazkii.botania.common.item.ItemLexicon;
import ab.api.AdvancedBotanyAPI;
import ab.api.recipe.RecipeAncientAlphirine;
import ab.common.entity.EntityAlphirinePortal;
import ab.common.lib.register.RecipeListAB;
import vazkii.botania.api.lexicon.LexiconEntry;
import vazkii.botania.api.subtile.RadiusDescriptor;
import vazkii.botania.api.subtile.SubTileFunctional;
import vazkii.botania.common.item.ItemLexicon;
public class SubTileAncientAlphirine extends SubTileFunctional {
@@ -5,12 +5,12 @@ import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.world.World;
import ab.common.block.tile.TileGameBoard;
import ab.common.lib.register.RecipeListAB;
import vazkii.botania.api.lexicon.LexiconEntry;
import vazkii.botania.api.subtile.RadiusDescriptor;
import vazkii.botania.api.subtile.SubTileGenerating;
import vazkii.botania.common.item.block.ItemBlockSpecialFlower;
import ab.common.block.tile.TileGameBoard;
import ab.common.lib.register.RecipeListAB;
public class SubTileArdentAzarcissus extends SubTileGenerating {
@@ -9,6 +9,7 @@ import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.AxisAlignedBB;
import net.minecraft.world.World;
import ab.common.lib.register.RecipeListAB;
import thaumcraft.api.aspects.Aspect;
import thaumcraft.api.aspects.AspectList;
import thaumcraft.common.Thaumcraft;
@@ -17,7 +18,6 @@ import thaumcraft.common.lib.network.playerdata.PacketAspectPool;
import vazkii.botania.api.lexicon.LexiconEntry;
import vazkii.botania.api.subtile.RadiusDescriptor;
import vazkii.botania.api.subtile.SubTileFunctional;
import ab.common.lib.register.RecipeListAB;
public class SubTileAspecolus extends SubTileFunctional {
@@ -14,12 +14,12 @@ import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
import net.minecraftforge.common.util.ForgeDirection;
import ab.common.core.handler.ConfigABHandler;
import ab.common.lib.register.RecipeListAB;
import vazkii.botania.api.lexicon.LexiconEntry;
import vazkii.botania.api.subtile.RadiusDescriptor;
import vazkii.botania.api.subtile.SubTileGenerating;
import vazkii.botania.common.block.tile.TileSpecialFlower;
import ab.common.core.handler.ConfigABHandler;
import ab.common.lib.register.RecipeListAB;
public class SubTileDictarius extends SubTileGenerating {
@@ -8,13 +8,13 @@ import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.AxisAlignedBB;
import net.minecraft.world.World;
import ab.common.lib.register.RecipeListAB;
import thaumcraft.api.aspects.Aspect;
import thaumcraft.common.entities.EntityAspectOrb;
import vazkii.botania.api.lexicon.LexiconEntry;
import vazkii.botania.api.subtile.RadiusDescriptor;
import vazkii.botania.api.subtile.SubTileFunctional;
import vazkii.botania.common.block.ModBlocks;
import ab.common.lib.register.RecipeListAB;
public class SubTilePureGladiolus extends SubTileFunctional {
@@ -11,13 +11,13 @@ import net.minecraft.util.StatCollector;
import org.lwjgl.opengl.GL11;
import ab.common.core.handler.ConfigABHandler;
import vazkii.botania.api.mana.BurstProperties;
import vazkii.botania.api.mana.ILensEffect;
import vazkii.botania.api.mana.IManaReceiver;
import vazkii.botania.client.core.handler.HUDHandler;
import vazkii.botania.common.block.tile.mana.TileSpreader;
import vazkii.botania.common.entity.EntityManaBurst;
import ab.common.core.handler.ConfigABHandler;
public class TileABSpreader extends TileSpreader {
@@ -13,11 +13,11 @@ import net.minecraft.util.ChatStyle;
import net.minecraft.util.EnumChatFormatting;
import net.minecraft.util.Vec3;
import ab.api.AdvancedBotanyAPI;
import ab.common.core.handler.ConfigABHandler;
import vazkii.botania.api.internal.VanillaPacketDispatcher;
import vazkii.botania.api.item.IRelic;
import vazkii.botania.common.item.relic.ItemRelic;
import ab.api.AdvancedBotanyAPI;
import ab.common.core.handler.ConfigABHandler;
public class TileBoardFate extends TileInventory {
@@ -19,9 +19,9 @@ import net.minecraftforge.common.util.ForgeDirection;
import org.lwjgl.opengl.GL11;
import vazkii.botania.common.item.ModItems;
import ab.api.IBoundRender;
import ab.client.core.ClientHelper;
import vazkii.botania.common.item.ModItems;
public class TileEngineerHopper extends TileInventory implements IHopper, IBoundRender {
@@ -15,9 +15,9 @@ import net.minecraft.util.ChatComponentTranslation;
import net.minecraft.util.ChatStyle;
import net.minecraft.util.EnumChatFormatting;
import ab.api.IRenderHud;
import vazkii.botania.api.internal.VanillaPacketDispatcher;
import vazkii.botania.common.block.tile.TileMod;
import ab.api.IRenderHud;
public class TileGameBoard extends TileMod implements IRenderHud {
@@ -17,13 +17,13 @@ import net.minecraft.world.World;
import org.lwjgl.opengl.GL11;
import ab.api.IRenderHud;
import ab.common.lib.register.BlockListAB;
import vazkii.botania.api.internal.VanillaPacketDispatcher;
import vazkii.botania.api.lexicon.multiblock.Multiblock;
import vazkii.botania.api.lexicon.multiblock.MultiblockSet;
import vazkii.botania.common.Botania;
import vazkii.botania.common.block.tile.TileMod;
import ab.api.IRenderHud;
import ab.common.lib.register.BlockListAB;
public class TileLebethronCore extends TileMod implements IRenderHud {
@@ -14,6 +14,7 @@ import net.minecraft.network.play.server.S35PacketUpdateTileEntity;
import net.minecraft.world.World;
import net.minecraftforge.common.MinecraftForge;
import cpw.mods.fml.common.gameevent.PlayerEvent.ItemCraftedEvent;
import thaumcraft.api.aspects.AspectList;
import thaumcraft.common.items.relics.ItemThaumonomicon;
import thaumcraft.common.items.wands.ItemWandCasting;
@@ -21,7 +22,6 @@ import thaumcraft.common.lib.crafting.ThaumcraftCraftingManager;
import thaumcraft.common.tiles.TileMagicWorkbench;
import vazkii.botania.api.internal.VanillaPacketDispatcher;
import vazkii.botania.common.item.ModItems;
import cpw.mods.fml.common.gameevent.PlayerEvent.ItemCraftedEvent;
public class TileMagicCraftCrate extends TileMagicWorkbench implements ISidedInventory, IInventory {
@@ -15,15 +15,15 @@ import net.minecraft.util.StatCollector;
import org.lwjgl.opengl.GL11;
import ab.api.IRenderHud;
import ab.client.core.ClientHelper;
import ab.common.core.handler.ConfigABHandler;
import vazkii.botania.api.internal.VanillaPacketDispatcher;
import vazkii.botania.api.mana.IManaItem;
import vazkii.botania.api.mana.IManaReceiver;
import vazkii.botania.api.mana.spark.ISparkAttachable;
import vazkii.botania.api.wand.IWandBindable;
import vazkii.botania.common.block.ModBlocks;
import ab.api.IRenderHud;
import ab.client.core.ClientHelper;
import ab.common.core.handler.ConfigABHandler;
public class TileManaCharger extends TileInventory implements ISidedInventory, IRenderHud, IWandBindable {
@@ -15,13 +15,13 @@ import net.minecraft.network.play.server.S35PacketUpdateTileEntity;
import net.minecraft.util.AxisAlignedBB;
import net.minecraft.util.StatCollector;
import ab.client.core.ClientHelper;
import ab.common.core.handler.ConfigABHandler;
import vazkii.botania.api.mana.IManaPool;
import vazkii.botania.api.mana.spark.ISparkAttachable;
import vazkii.botania.api.mana.spark.ISparkEntity;
import vazkii.botania.common.Botania;
import vazkii.botania.common.block.tile.TileMod;
import ab.client.core.ClientHelper;
import ab.common.core.handler.ConfigABHandler;
public class TileManaContainer extends TileMod implements IManaPool, ISparkAttachable {
@@ -7,12 +7,12 @@ import net.minecraft.client.gui.ScaledResolution;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.StatCollector;
import ab.api.IRenderHud;
import ab.client.core.ClientHelper;
import vazkii.botania.api.mana.spark.ISparkAttachable;
import vazkii.botania.api.mana.spark.ISparkEntity;
import vazkii.botania.api.mana.spark.SparkHelper;
import vazkii.botania.common.block.tile.TileMod;
import ab.api.IRenderHud;
import ab.client.core.ClientHelper;
public class TileManaCrystalCube extends TileMod implements IRenderHud {
@@ -11,6 +11,8 @@ import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.AxisAlignedBB;
import ab.api.AdvancedBotanyAPI;
import ab.api.recipe.RecipeAdvancedPlate;
import vazkii.botania.api.internal.VanillaPacketDispatcher;
import vazkii.botania.api.mana.IManaPool;
import vazkii.botania.api.mana.spark.ISparkAttachable;
@@ -18,8 +20,6 @@ import vazkii.botania.api.mana.spark.ISparkEntity;
import vazkii.botania.api.mana.spark.SparkHelper;
import vazkii.botania.client.core.handler.ClientTickHandler;
import vazkii.botania.common.Botania;
import ab.api.AdvancedBotanyAPI;
import ab.api.recipe.RecipeAdvancedPlate;
public class TileNidavellirForge extends TileInventory implements ISparkAttachable, ISidedInventory {
@@ -10,6 +10,7 @@ import ab.common.lib.register.EntityListAB;
import ab.common.lib.register.FlowerRegister;
import ab.common.lib.register.ItemListAB;
import ab.common.minetweaker.MineTweakerConfig;
import ab.nei.IMCForNEI;
import ab.utils.CraftingManager;
import ab.utils.ModHelperManager;
import cpw.mods.fml.common.Loader;
@@ -34,6 +35,7 @@ public class CommonProxy {
public void init(FMLInitializationEvent event) {
NetworkRegistry.INSTANCE.registerGuiHandler(AdvancedBotany.instance, new GuiHandler());
NetworkHandler.registerPackets();
IMCForNEI.IMCSender();
ModHelperManager.init();
}
@@ -19,6 +19,8 @@ import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.MathHelper;
import net.minecraft.world.World;
import ab.common.lib.register.ItemListAB;
import baubles.common.lib.PlayerHandler;
import vazkii.botania.api.mana.IManaItem;
import vazkii.botania.api.mana.spark.ISparkAttachable;
import vazkii.botania.api.mana.spark.ISparkEntity;
@@ -26,8 +28,6 @@ import vazkii.botania.api.mana.spark.SparkHelper;
import vazkii.botania.common.Botania;
import vazkii.botania.common.core.helper.Vector3;
import vazkii.botania.common.item.ModItems;
import ab.common.lib.register.ItemListAB;
import baubles.common.lib.PlayerHandler;
public class EntityAdvancedSpark extends Entity implements ISparkEntity {
@@ -17,15 +17,15 @@ import net.minecraft.util.MovingObjectPosition;
import net.minecraft.util.Vec3;
import net.minecraft.world.World;
import vazkii.botania.common.Botania;
import vazkii.botania.common.core.handler.ConfigHandler;
import vazkii.botania.common.lib.LibObfuscation;
import ab.client.core.ClientHelper;
import ab.common.core.CommonHelper;
import ab.common.lib.register.BlockListAB;
import cpw.mods.fml.relauncher.ReflectionHelper;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import vazkii.botania.common.Botania;
import vazkii.botania.common.core.handler.ConfigHandler;
import vazkii.botania.common.lib.LibObfuscation;
public class EntityManaVine extends EntityThrowable {
@@ -13,9 +13,9 @@ import net.minecraft.util.DamageSource;
import net.minecraft.util.MovingObjectPosition;
import net.minecraft.world.World;
import vazkii.botania.common.Botania;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import vazkii.botania.common.Botania;
public class EntityNebulaBlaze extends EntityThrowable {
@@ -17,11 +17,11 @@ import net.minecraft.world.World;
import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.event.world.BlockEvent;
import vazkii.botania.common.Botania;
import vazkii.botania.common.item.ItemGrassSeeds;
import ab.common.item.equipment.ItemSprawlRod;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import vazkii.botania.common.Botania;
import vazkii.botania.common.item.ItemGrassSeeds;
public class EntitySeed extends EntityThrowable {
@@ -13,9 +13,9 @@ import net.minecraft.util.DamageSource;
import net.minecraft.util.MovingObjectPosition;
import net.minecraft.world.World;
import vazkii.botania.common.Botania;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import vazkii.botania.common.Botania;
public class EntitySword extends EntityThrowable {
@@ -16,11 +16,11 @@ import net.minecraft.potion.PotionEffect;
import net.minecraft.util.IIcon;
import net.minecraft.world.World;
import vazkii.botania.api.recipe.IFlowerComponent;
import ab.AdvancedBotany;
import ab.api.AdvancedBotanyAPI;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import vazkii.botania.api.recipe.IFlowerComponent;
public class ItemABResource extends Item implements IFlowerComponent {
@@ -8,13 +8,13 @@ import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.IIcon;
import net.minecraft.world.World;
import ab.common.entity.EntityAdvancedSpark;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import vazkii.botania.api.internal.VanillaPacketDispatcher;
import vazkii.botania.api.mana.IManaGivingItem;
import vazkii.botania.api.mana.spark.ISparkAttachable;
import vazkii.botania.api.mana.spark.ISparkEntity;
import ab.common.entity.EntityAdvancedSpark;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
public class ItemAdvancedSpark extends ItemMod implements IManaGivingItem {
@@ -13,11 +13,11 @@ import net.minecraft.util.AxisAlignedBB;
import net.minecraft.util.IIcon;
import net.minecraft.world.World;
import vazkii.botania.common.core.helper.ItemNBTHelper;
import ab.common.core.CommonHelper;
import ab.common.lib.register.BlockListAB;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import vazkii.botania.common.core.helper.ItemNBTHelper;
public class ItemAntigravityCharm extends ItemMod {
@@ -13,11 +13,11 @@ import net.minecraft.util.DamageSource;
import net.minecraft.util.MathHelper;
import net.minecraft.util.Vec3;
import vazkii.botania.api.mana.ManaItemHandler;
import vazkii.botania.common.Botania;
import ab.AdvancedBotany;
import ab.api.AdvancedBotanyAPI;
import ab.client.core.handler.PlayerItemUsingSound.ClientSoundHandler;
import vazkii.botania.api.mana.ManaItemHandler;
import vazkii.botania.common.Botania;
public class ItemAquaSword extends ItemSword {
@@ -14,12 +14,6 @@ import net.minecraft.stats.StatBase;
import net.minecraft.util.StatCollector;
import net.minecraft.world.World;
import vazkii.botania.api.item.ICosmeticAttachable;
import vazkii.botania.api.item.IPhantomInkable;
import vazkii.botania.client.core.helper.RenderHelper;
import vazkii.botania.common.achievement.ModAchievements;
import vazkii.botania.common.core.helper.ItemNBTHelper;
import vazkii.botania.common.entity.EntityDoppleganger;
import ab.AdvancedBotany;
import baubles.api.BaubleType;
import baubles.api.IBauble;
@@ -27,6 +21,12 @@ import baubles.common.container.InventoryBaubles;
import baubles.common.lib.PlayerHandler;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import vazkii.botania.api.item.ICosmeticAttachable;
import vazkii.botania.api.item.IPhantomInkable;
import vazkii.botania.client.core.helper.RenderHelper;
import vazkii.botania.common.achievement.ModAchievements;
import vazkii.botania.common.core.helper.ItemNBTHelper;
import vazkii.botania.common.entity.EntityDoppleganger;
public abstract class ItemBauble extends Item implements IBauble, ICosmeticAttachable, IPhantomInkable {
@@ -29,15 +29,15 @@ import net.minecraftforge.common.MinecraftForge;
import org.lwjgl.opengl.GL11;
import ab.common.item.ItemMod;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import vazkii.botania.api.item.IBlockProvider;
import vazkii.botania.client.core.handler.ClientTickHandler;
import vazkii.botania.common.core.helper.InventoryHelper;
import vazkii.botania.common.core.helper.ItemNBTHelper;
import vazkii.botania.common.item.ItemBlackHoleTalisman;
import ab.common.item.ItemMod;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
public class ItemBlackHalo extends ItemMod implements IBlockProvider {
@@ -4,10 +4,10 @@ import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import vazkii.botania.api.mana.IManaGivingItem;
import vazkii.botania.api.mana.ManaItemHandler;
import ab.AdvancedBotany;
import baubles.api.BaubleType;
import vazkii.botania.api.mana.IManaGivingItem;
import vazkii.botania.api.mana.ManaItemHandler;
public class ItemManaFlower extends ItemBauble implements IManaGivingItem {
@@ -10,11 +10,11 @@ import net.minecraft.item.ItemTool;
import net.minecraft.util.IIcon;
import net.minecraft.world.World;
import vazkii.botania.common.core.helper.ItemNBTHelper;
import ab.AdvancedBotany;
import ab.api.AdvancedBotanyAPI;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import vazkii.botania.common.core.helper.ItemNBTHelper;
public class ItemMithrillMultiTool extends ItemTool {
@@ -8,10 +8,10 @@ import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.world.World;
import baubles.api.BaubleType;
import vazkii.botania.api.mana.IManaItem;
import vazkii.botania.api.mana.IManaTooltipDisplay;
import vazkii.botania.common.core.helper.ItemNBTHelper;
import baubles.api.BaubleType;
public class ItemMithrillRing extends ItemBauble implements IManaItem, IManaTooltipDisplay {
@@ -6,11 +6,11 @@ import net.minecraft.item.EnumRarity;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World;
import vazkii.botania.api.mana.IManaUsingItem;
import vazkii.botania.api.mana.ManaItemHandler;
import ab.api.AdvancedBotanyAPI;
import ab.common.entity.EntityNebulaBlaze;
import ab.common.item.ItemMod;
import vazkii.botania.api.mana.IManaUsingItem;
import vazkii.botania.api.mana.ManaItemHandler;
public class ItemNebulaBlaze extends ItemMod implements IManaUsingItem {
@@ -23,15 +23,15 @@ import net.minecraft.world.chunk.Chunk;
import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.event.entity.living.EnderTeleportEvent;
import vazkii.botania.api.mana.IManaUsingItem;
import vazkii.botania.api.mana.ManaItemHandler;
import vazkii.botania.common.Botania;
import vazkii.botania.common.core.helper.Vector3;
import ab.api.AdvancedBotanyAPI;
import ab.client.core.ClientHelper;
import ab.client.core.handler.PlayerItemUsingSound.ClientSoundHandler;
import ab.common.core.handler.ConfigABHandler;
import ab.common.item.ItemMod;
import vazkii.botania.api.mana.IManaUsingItem;
import vazkii.botania.api.mana.ManaItemHandler;
import vazkii.botania.common.Botania;
import vazkii.botania.common.core.helper.Vector3;
public class ItemNebulaRod extends ItemMod implements IManaUsingItem {
@@ -29,20 +29,20 @@ import net.minecraft.util.StatCollector;
import net.minecraft.util.Vec3;
import net.minecraft.world.World;
import com.google.common.collect.Multimap;
import ab.AdvancedBotany;
import ab.api.AdvancedBotanyAPI;
import ab.api.IRankItem;
import ab.common.core.handler.ConfigABHandler;
import ab.common.core.handler.NetworkHandler;
import ab.common.entity.EntitySword;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import vazkii.botania.api.mana.IManaUsingItem;
import vazkii.botania.api.mana.ManaItemHandler;
import vazkii.botania.common.Botania;
import vazkii.botania.common.core.helper.ItemNBTHelper;
import ab.AdvancedBotany;
import ab.api.AdvancedBotanyAPI;
import ab.api.IRankItem;
import ab.common.core.handler.*;
import ab.common.entity.EntitySword;
import com.google.common.collect.Multimap;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
public class ItemSpaceBlade extends ItemSword implements IRankItem, IManaUsingItem {
@@ -9,13 +9,13 @@ import net.minecraft.item.ItemStack;
import net.minecraft.util.Vec3;
import net.minecraft.world.World;
import ab.common.core.handler.ConfigABHandler;
import ab.common.entity.EntitySeed;
import ab.common.item.ItemMod;
import vazkii.botania.api.mana.IManaUsingItem;
import vazkii.botania.api.mana.ManaItemHandler;
import vazkii.botania.common.Botania;
import vazkii.botania.common.item.ModItems;
import ab.common.core.handler.ConfigABHandler;
import ab.common.entity.EntitySeed;
import ab.common.item.ItemMod;
public class ItemSprawlRod extends ItemMod implements IManaUsingItem {
@@ -11,15 +11,15 @@ import net.minecraft.world.World;
import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.event.entity.player.UseHoeEvent;
import ab.AdvancedBotany;
import ab.common.lib.register.BlockListAB;
import cpw.mods.fml.common.eventhandler.Event.Result;
import vazkii.botania.api.BotaniaAPI;
import vazkii.botania.api.mana.IManaUsingItem;
import vazkii.botania.api.mana.ManaItemHandler;
import vazkii.botania.common.Botania;
import vazkii.botania.common.block.ModBlocks;
import vazkii.botania.common.item.ModItems;
import ab.AdvancedBotany;
import ab.common.lib.register.BlockListAB;
import cpw.mods.fml.common.eventhandler.Event.Result;
public class ItemTerraHoe extends ItemHoe implements IManaUsingItem {
@@ -15,17 +15,17 @@ import net.minecraft.util.StatCollector;
import net.minecraft.world.World;
import net.minecraftforge.common.ISpecialArmor;
import vazkii.botania.api.mana.IManaItem;
import vazkii.botania.api.mana.IManaTooltipDisplay;
import vazkii.botania.api.mana.ManaItemHandler;
import vazkii.botania.common.core.helper.ItemNBTHelper;
import vazkii.botania.common.item.equipment.armor.manasteel.ItemManasteelArmor;
import ab.AdvancedBotany;
import ab.api.AdvancedBotanyAPI;
import ab.client.model.armor.ModelArmorNebula;
import ab.common.lib.register.ItemListAB;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import vazkii.botania.api.mana.IManaItem;
import vazkii.botania.api.mana.IManaTooltipDisplay;
import vazkii.botania.api.mana.ManaItemHandler;
import vazkii.botania.common.core.helper.ItemNBTHelper;
import vazkii.botania.common.item.equipment.armor.manasteel.ItemManasteelArmor;
public class ItemNebulaArmor extends ItemManasteelArmor implements IManaItem, IManaTooltipDisplay {
@@ -9,8 +9,8 @@ import net.minecraft.world.World;
import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.event.entity.living.LivingEvent;
import vazkii.botania.common.Botania;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import vazkii.botania.common.Botania;
public class ItemNebulaBoots extends ItemNebulaArmor {
@@ -13,6 +13,7 @@ import net.minecraftforge.event.entity.living.LivingEvent;
import com.google.common.collect.HashMultimap;
import com.google.common.collect.Multimap;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
public class ItemNebulaChest extends ItemNebulaArmor {
@@ -14,15 +14,15 @@ import net.minecraft.util.EnumChatFormatting;
import net.minecraft.util.StatCollector;
import net.minecraft.world.World;
import com.google.common.collect.HashMultimap;
import com.google.common.collect.Multimap;
import vazkii.botania.api.BotaniaAPI;
import vazkii.botania.api.mana.IManaDiscountArmor;
import vazkii.botania.api.mana.IManaGivingItem;
import vazkii.botania.api.mana.IManaItem;
import vazkii.botania.common.core.helper.ItemNBTHelper;
import com.google.common.collect.HashMultimap;
import com.google.common.collect.Multimap;
public class ItemNebulaHelm extends ItemNebulaArmor implements IManaDiscountArmor, IManaGivingItem {
private static final String TAG_COSMIC_FACE = "enableCosmicFace";
@@ -3,10 +3,10 @@ package ab.common.item.equipment.armor;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.item.ItemStack;
import thaumcraft.api.IGoggles;
import thaumcraft.api.nodes.IRevealer;
import cpw.mods.fml.common.Optional.Interface;
import cpw.mods.fml.common.Optional.InterfaceList;
import thaumcraft.api.IGoggles;
import thaumcraft.api.nodes.IRevealer;
@InterfaceList({ @Interface(modid = "Thaumcraft", iface = "thaumcraft.api.IGoggles", striprefs = true),
@Interface(modid = "Thaumcraft", iface = "thaumcraft.api.nodes.IRevealer", striprefs = true) })
@@ -9,13 +9,13 @@ import net.minecraft.item.EnumRarity;
import net.minecraft.item.ItemStack;
import net.minecraft.util.StatCollector;
import vazkii.botania.common.item.equipment.armor.manasteel.ItemManasteelArmor;
import ab.AdvancedBotany;
import ab.api.AdvancedBotanyAPI;
import ab.client.model.armor.ModelArmorWildHunt;
import ab.common.lib.register.ItemListAB;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import vazkii.botania.common.item.equipment.armor.manasteel.ItemManasteelArmor;
public class ItemWildHuntArmor extends ItemManasteelArmor {
@@ -5,9 +5,9 @@ import net.minecraft.item.EnumAction;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World;
import ab.common.entity.EntityManaVine;
import vazkii.botania.api.mana.IManaUsingItem;
import vazkii.botania.api.mana.ManaItemHandler;
import ab.common.entity.EntityManaVine;
public class ItemFreyrSlingshot extends ItemModRelic implements IManaUsingItem {
@@ -11,8 +11,6 @@ import net.minecraft.world.World;
import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.event.entity.living.LivingDropsEvent;
import vazkii.botania.api.mana.ManaItemHandler;
import vazkii.botania.common.core.helper.ItemNBTHelper;
import ab.client.core.handler.PlayerItemUsingSound.ClientSoundHandler;
import ab.common.core.handler.ConfigABHandler;
import ab.common.core.handler.NetworkHandler;
@@ -20,6 +18,8 @@ import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import cpw.mods.fml.relauncher.ReflectionHelper;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import vazkii.botania.api.mana.ManaItemHandler;
import vazkii.botania.common.core.helper.ItemNBTHelper;
public class ItemHornPlenty extends ItemModRelic {
@@ -8,10 +8,10 @@ import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.util.StatCollector;
import vazkii.botania.common.item.relic.ItemRelic;
import ab.AdvancedBotany;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import vazkii.botania.common.item.relic.ItemRelic;
public class ItemModRelic extends ItemRelic {
@@ -20,13 +20,13 @@ import net.minecraftforge.event.entity.living.LivingAttackEvent;
import org.lwjgl.opengl.GL11;
import vazkii.botania.client.core.handler.ClientTickHandler;
import vazkii.botania.common.core.helper.ItemNBTHelper;
import ab.client.core.ClientHelper;
import ab.common.entity.EntityAnonymousSteve;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import vazkii.botania.client.core.handler.ClientTickHandler;
import vazkii.botania.common.core.helper.ItemNBTHelper;
public class ItemPocketWardrobe extends ItemModRelic {
@@ -16,14 +16,14 @@ import net.minecraft.util.MathHelper;
import net.minecraft.util.StatCollector;
import net.minecraft.world.World;
import vazkii.botania.api.mana.ManaItemHandler;
import vazkii.botania.common.Botania;
import vazkii.botania.common.core.helper.ItemNBTHelper;
import ab.client.core.handler.ItemsRemainingRender;
import ab.common.core.handler.ConfigABHandler;
import ab.common.core.handler.NetworkHandler;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import vazkii.botania.api.mana.ManaItemHandler;
import vazkii.botania.common.Botania;
import vazkii.botania.common.core.helper.ItemNBTHelper;
public class ItemSphereNavigation extends ItemModRelic {
@@ -23,13 +23,13 @@ import net.minecraftforge.common.MinecraftForge;
import org.lwjgl.opengl.GL11;
import vazkii.botania.client.core.handler.ClientTickHandler;
import vazkii.botania.common.core.helper.ItemNBTHelper;
import ab.AdvancedBotany;
import ab.client.core.ClientHelper;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import vazkii.botania.client.core.handler.ClientTickHandler;
import vazkii.botania.common.core.helper.ItemNBTHelper;
public class ItemTalismanHiddenRiches extends ItemModRelic {
@@ -2,7 +2,6 @@ package ab.common.lib.register;
import net.minecraft.block.Block;
import vazkii.botania.common.Botania;
import ab.common.block.BlockABSpreader;
import ab.common.block.BlockABStorage;
import ab.common.block.BlockAntigravitation;
@@ -31,6 +30,7 @@ import ab.common.core.handler.ConfigABHandler;
import ab.common.item.block.ItemBlockBase;
import ab.common.item.block.ItemBlockBoard;
import cpw.mods.fml.common.registry.GameRegistry;
import vazkii.botania.common.Botania;
public class BlockListAB {
@@ -1,14 +1,14 @@
package ab.common.lib.register;
import vazkii.botania.api.BotaniaAPI;
import vazkii.botania.api.subtile.SubTileEntity;
import vazkii.botania.common.Botania;
import ab.common.block.subtile.ABSubTileSignature;
import ab.common.block.subtile.SubTileAncientAlphirine;
import ab.common.block.subtile.SubTileArdentAzarcissus;
import ab.common.block.subtile.SubTileAspecolus;
import ab.common.block.subtile.SubTileDictarius;
import ab.common.block.subtile.SubTilePureGladiolus;
import vazkii.botania.api.BotaniaAPI;
import vazkii.botania.api.subtile.SubTileEntity;
import vazkii.botania.common.Botania;
public class FlowerRegister {
@@ -2,10 +2,22 @@ package ab.common.lib.register;
import net.minecraft.item.Item;
import vazkii.botania.common.Botania;
import ab.common.core.handler.ConfigABHandler;
import ab.common.item.*;
import ab.common.item.equipment.*;
import ab.common.item.ItemABResource;
import ab.common.item.ItemAdvancedSpark;
import ab.common.item.ItemAntigravityCharm;
import ab.common.item.ItemCraftingPattern;
import ab.common.item.equipment.ItemAquaSword;
import ab.common.item.equipment.ItemBlackHalo;
import ab.common.item.equipment.ItemManaFlower;
import ab.common.item.equipment.ItemMithrillMultiTool;
import ab.common.item.equipment.ItemMithrillRing;
import ab.common.item.equipment.ItemNebulaBlaze;
import ab.common.item.equipment.ItemNebulaRing;
import ab.common.item.equipment.ItemNebulaRod;
import ab.common.item.equipment.ItemSpaceBlade;
import ab.common.item.equipment.ItemSprawlRod;
import ab.common.item.equipment.ItemTerraHoe;
import ab.common.item.equipment.armor.ItemNebulaBoots;
import ab.common.item.equipment.armor.ItemNebulaChest;
import ab.common.item.equipment.armor.ItemNebulaHelm;
@@ -17,6 +29,7 @@ import ab.common.item.relic.ItemPocketWardrobe;
import ab.common.item.relic.ItemSphereNavigation;
import ab.common.item.relic.ItemTalismanHiddenRiches;
import cpw.mods.fml.common.registry.GameRegistry;
import vazkii.botania.common.Botania;
public class ItemListAB {
File diff suppressed because it is too large. Load diff
@@ -1,16 +1,15 @@
package ab.common.minetweaker;
import net.minecraft.item.ItemStack;
import ab.api.AdvancedBotanyAPI;
import ab.api.recipe.RecipeAdvancedPlate;
import minetweaker.IUndoableAction;
import minetweaker.MineTweakerAPI;
import minetweaker.api.item.IItemStack;
import minetweaker.api.minecraft.MineTweakerMC;
import net.minecraft.item.ItemStack;
import stanhebben.zenscript.annotations.ZenClass;
import stanhebben.zenscript.annotations.ZenMethod;
import ab.api.AdvancedBotanyAPI;
import ab.api.recipe.RecipeAdvancedPlate;
@ZenClass("mods.advBotany.AdvancedPlate")
public class AdvancedPlateMT {
@@ -2,19 +2,18 @@ package ab.common.minetweaker;
import java.util.List;
import net.minecraft.item.ItemStack;
import ab.api.recipe.lexicon.AdvancedPlateCraftPage;
import minetweaker.IUndoableAction;
import minetweaker.MineTweakerAPI;
import minetweaker.api.item.IItemStack;
import minetweaker.api.minecraft.MineTweakerMC;
import net.minecraft.item.ItemStack;
import stanhebben.zenscript.annotations.ZenClass;
import stanhebben.zenscript.annotations.ZenMethod;
import vazkii.botania.api.BotaniaAPI;
import vazkii.botania.api.lexicon.LexiconEntry;
import vazkii.botania.api.lexicon.LexiconPage;
import ab.api.recipe.lexicon.AdvancedPlateCraftPage;
@ZenClass("mods.advBotany.AdvancedPlatePage")
public class AdvancedPlatePageMT {
@@ -1,16 +1,15 @@
package ab.common.minetweaker;
import net.minecraft.item.ItemStack;
import ab.api.AdvancedBotanyAPI;
import ab.api.recipe.RecipeAncientAlphirine;
import minetweaker.IUndoableAction;
import minetweaker.MineTweakerAPI;
import minetweaker.api.item.IItemStack;
import minetweaker.api.minecraft.MineTweakerMC;
import net.minecraft.item.ItemStack;
import stanhebben.zenscript.annotations.ZenClass;
import stanhebben.zenscript.annotations.ZenMethod;
import ab.api.AdvancedBotanyAPI;
import ab.api.recipe.RecipeAncientAlphirine;
@ZenClass("mods.advBotany.AncientAlphirine")
public class AlphirineMT {
Loaded 100 of 209 files, more files were not shown because too many files have changed in this diff. Show more