diff options
| author | Lance5057 <lance5057@gmail.com> | 2018-02-21 16:18:09 -0600 |
|---|---|---|
| committer | Lance5057 <lance5057@gmail.com> | 2018-02-21 16:18:09 -0600 |
| commit | 991ba7366b68ee2c9e1249efd73a6cc90291d32e (patch) | |
| tree | 5aa77a36ff1a22e0b5920926a7d09958418f2fee | |
| parent | 870fd36d28dc8160a36e49dff173ba2b000618b9 (diff) | |
Armor Renderering works!
69 files changed, 1382 insertions, 1594 deletions
@@ -1,74 +1,73 @@ <?xml version="1.0" encoding="UTF-8"?> <classpath> - <classpathentry path="src/main/java" kind="src"/> - <classpathentry path="src/main/resources" kind="src"/> - <classpathentry path="src/api/java" kind="src"/> - <classpathentry path="bin" kind="output"/> - <classpathentry path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8/" kind="con"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/minecraft/deobfedDeps/deobf/slimeknights/mantle/Mantle/1.12-1.3.1.22/Mantle-1.12-1.3.1.22.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/minecraft/deobfedDeps/deobf/slimeknights/mantle/Mantle/1.12-1.3.1.22/Mantle-1.12-1.3.1.22-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/minecraft/deobfedDeps/deobf/slimeknights/TConstruct/1.12-2.7.4.42/TConstruct-1.12-2.7.4.42.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/minecraft/deobfedDeps/deobf/slimeknights/TConstruct/1.12-2.7.4.42/TConstruct-1.12-2.7.4.42-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/minecraft/deobfedDeps/deobf/mezz/jei/jei_1.12/4.7.5.86/jei_1.12-4.7.5.86.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/minecraft/deobfedDeps/deobf/mezz/jei/jei_1.12/4.7.5.86/jei_1.12-4.7.5.86-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/minecraft/deobfedDeps/deobf/com/github/Azanor/Baubles/master-SNAPSHOT/Baubles-master-SNAPSHOT.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/minecraft/deobfedDeps/deobf/com/github/Azanor/Baubles/master-SNAPSHOT/Baubles-master-SNAPSHOT-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/minecraft/net/minecraftforge/forge/1.12-14.21.1.2443/snapshot/20170801/forgeSrc-1.12-14.21.1.2443.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/minecraft/net/minecraftforge/forge/1.12-14.21.1.2443/snapshot/20170801/forgeSrc-1.12-14.21.1.2443-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.google.code.findbugs/jsr305/3.0.1/f7be08ec23c21485b9b5a1cf1654c2ec8c58168d/jsr305-3.0.1.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.google.code.findbugs/jsr305/3.0.1/a2926c057ca3b662b9db194c869bdbe7d3bb8aef/jsr305-3.0.1-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.mojang/patchy/1.1/aef610b34a1be37fa851825f12372b78424d8903/patchy-1.1.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.mojang/patchy/1.1/5e398295fbcb8fb590e3e3bddace13f659792e50/patchy-1.1-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/oshi-project/oshi-core/1.1/9ddf7b048a8d701be231c0f4f95fd986198fd2d8/oshi-core-1.1.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/oshi-project/oshi-core/1.1/1ec1ab1e6ac5a1572edfd0dd9ac95e83684b8a65/oshi-core-1.1-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/net.java.dev.jna/jna/4.4.0/cb208278274bf12ebdb56c61bd7407e6f774d65a/jna-4.4.0.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/net.java.dev.jna/jna/4.4.0/9d45d3dc35711eef7267d8b4fc2c0dc482ef9fd2/jna-4.4.0-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/net.java.dev.jna/platform/3.4.0/e3f70017be8100d3d6923f50b3d2ee17714e9c13/platform-3.4.0.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/net.java.dev.jna/platform/3.4.0/2f42653596d0044f0ab456620cba54c9cf53c5ca/platform-3.4.0-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.ibm.icu/icu4j-core-mojang/51.2/63d216a9311cca6be337c1e458e587f99d382b84/icu4j-core-mojang-51.2.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.ibm.icu/icu4j-core-mojang/51.2/814397ccbafff1132758e551c37396c528d7f2d7/icu4j-core-mojang-51.2-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/net.sf.jopt-simple/jopt-simple/5.0.3/cdd846cfc4e0f7eefafc02c0f5dce32b9303aa2a/jopt-simple-5.0.3.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/net.sf.jopt-simple/jopt-simple/5.0.3/36d4348605fd4605d36c8641495f3e78756e454b/jopt-simple-5.0.3-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/io.netty/netty-all/4.1.9.Final/97860965d6a0a6b98e7f569f3f966727b8db75/netty-all-4.1.9.Final.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/io.netty/netty-all/4.1.9.Final/69b921f5e296428c88c2ea4418e630443a699b06/netty-all-4.1.9.Final-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.google.guava/guava/21.0/3a3d111be1be1b745edfa7d91678a12d7ed38709/guava-21.0.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.google.guava/guava/21.0/b9ed26b8c23fe7cd3e6b463b34e54e5c6d9536d5/guava-21.0-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.apache.commons/commons-lang3/3.5/6c6c702c89bfff3cd9e80b04d668c5e190d588c6/commons-lang3-3.5.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.apache.commons/commons-lang3/3.5/f7d878153e86a1cdddf6b37850e00a9f8bff726f/commons-lang3-3.5-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/commons-io/commons-io/2.5/2852e6e05fbb95076fc091f6d1780f1f8fe35e0f/commons-io-2.5.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/commons-io/commons-io/2.5/caf033a4a7c37b4a8ff3ea084cba591539b0b69/commons-io-2.5-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/commons-codec/commons-codec/1.10/4b95f4897fa13f2cd904aee711aeafc0c5295cd8/commons-codec-1.10.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/commons-codec/commons-codec/1.10/11fb3d88ae7e3b757d70237064210ceb954a5a04/commons-codec-1.10-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/net.java.jutils/jutils/1.0.0/e12fe1fda814bd348c1579329c86943d2cd3c6a6/jutils-1.0.0.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/net.java.jutils/jutils/1.0.0/d18678a00b216863206a1bb6190507e02a32971b/jutils-1.0.0-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.google.code.gson/gson/2.8.0/c4ba5371a29ac9b2ad6129b1d39ea38750043eff/gson-2.8.0.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.google.code.gson/gson/2.8.0/baf95d8519fc1a11d388f8543cb40cd2bb9d66dc/gson-2.8.0-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.mojang/authlib/1.5.25/9834cdf236c22e84b946bba989e2f94ef5897c3c/authlib-1.5.25.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.mojang/authlib/1.5.25/18840707f662a3236542716fff61c659584f3e6c/authlib-1.5.25-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.mojang/realms/1.10.17/e6a623bf93a230b503b0e3ae18c196fcd5aa3299/realms-1.10.17.jar" kind="lib"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.apache.commons/commons-compress/1.8.1/a698750c16740fd5b3871425f4cb3bbaa87f529d/commons-compress-1.8.1.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.apache.commons/commons-compress/1.8.1/3caea4421428752206c7a94c3e3097f0c47f1bb8/commons-compress-1.8.1-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.apache.httpcomponents/httpclient/4.3.3/18f4247ff4572a074444572cee34647c43e7c9c7/httpclient-4.3.3.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.apache.httpcomponents/httpclient/4.3.3/65cba03c4f6207f2885f88206fcf52c53f8d111b/httpclient-4.3.3-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/commons-logging/commons-logging/1.1.3/f6f66e966c70a83ffbdb6f17a0919eaf7c8aca7f/commons-logging-1.1.3.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/commons-logging/commons-logging/1.1.3/28bb0405fddaf04f15058fbfbe01fe2780d7d3b6/commons-logging-1.1.3-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.apache.httpcomponents/httpcore/4.3.2/31fbbff1ddbf98f3aa7377c94d33b0447c646b6e/httpcore-4.3.2.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.apache.httpcomponents/httpcore/4.3.2/4809f38359edeea9487f747e09aa58ec8d3a54c5/httpcore-4.3.2-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/it.unimi.dsi/fastutil/7.1.0/9835253257524c1be7ab50c057aa2d418fb72082/fastutil-7.1.0.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/it.unimi.dsi/fastutil/7.1.0/4a33438326f2fea664656d63d655c349d4131e14/fastutil-7.1.0-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.apache.logging.log4j/log4j-api/2.8.1/e801d13612e22cad62a3f4f3fe7fdbe6334a8e72/log4j-api-2.8.1.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.apache.logging.log4j/log4j-api/2.8.1/a5edb6b8c77843c8be98e0cb1f875699e76ee122/log4j-api-2.8.1-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.apache.logging.log4j/log4j-core/2.8.1/4ac28ff2f1ddf05dae3043a190451e8c46b73c31/log4j-core-2.8.1.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.apache.logging.log4j/log4j-core/2.8.1/a0a7f683da620c345b502fff04d1e46cde2e8d9/log4j-core-2.8.1-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.mojang/text2speech/1.10.3/48fd510879dff266c3815947de66e3d4809f8668/text2speech-1.10.3.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.mojang/text2speech/1.10.3/404339fe43d1011ee046a249b0ec7ae9ce04a834/text2speech-1.10.3-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/net.minecraft/launchwrapper/1.12/111e7bea9c968cdb3d06ef4632bf7ff0824d0f36/launchwrapper-1.12.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/net.minecraft/launchwrapper/1.12/fd80cad9a1b967ce2ff20529dc54e520d5338d7/launchwrapper-1.12-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/jline/jline/2.13/2d9530d0a25daffaffda7c35037b046b627bb171/jline-2.13.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/jline/jline/2.13/e290282bf7683ae3307e85bdc5d5e08424dfb893/jline-2.13-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.ow2.asm/asm-debug-all/5.2/3354e11e2b34215f06dab629ab88e06aca477c19/asm-debug-all-5.2.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.ow2.asm/asm-debug-all/5.2/ed60d4287d18996bc940f26656c570532b20d863/asm-debug-all-5.2-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.typesafe.akka/akka-actor_2.11/2.3.3/ed62e9fc709ca0f2ff1a3220daa8b70a2870078e/akka-actor_2.11-2.3.3.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.typesafe.akka/akka-actor_2.11/2.3.3/9dbceb71c4fd943b4eb4607847261075a989d47f/akka-actor_2.11-2.3.3-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.typesafe/config/1.2.1/f771f71fdae3df231bcd54d5ca2d57f0bf93f467/config-1.2.1.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.typesafe/config/1.2.1/bdacf4f82ce9b29cd474bfde2e91eeb0ca623d28/config-1.2.1-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang/scala-actors-migration_2.11/1.1.0/dfa8bc42b181d5b9f1a5dd147f8ae308b893eb6f/scala-actors-migration_2.11-1.1.0.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang/scala-actors-migration_2.11/1.1.0/6bccac72dae4d369537e313d12087c1ca295e84f/scala-actors-migration_2.11-1.1.0-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang/scala-compiler/2.11.1/56ea2e6c025e0821f28d73ca271218b8dd04926a/scala-compiler-2.11.1.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang/scala-compiler/2.11.1/b031d401aabbf7f5f725db500575da3dff90065f/scala-compiler-2.11.1-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang.plugins/scala-continuations-library_2.11/1.0.2/e517c53a7e9acd6b1668c5a35eccbaa3bab9aac/scala-continuations-library_2.11-1.0.2.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang.plugins/scala-continuations-library_2.11/1.0.2/495afc106eeaa1b3367f6be0bc3768c398e4d360/scala-continuations-library_2.11-1.0.2-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang.plugins/scala-continuations-plugin_2.11.1/1.0.2/f361a3283452c57fa30c1ee69448995de23c60f7/scala-continuations-plugin_2.11.1-1.0.2.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang.plugins/scala-continuations-plugin_2.11.1/1.0.2/c6f3c092ab731f3cf83fdb376ebc465a243c1f4c/scala-continuations-plugin_2.11.1-1.0.2-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang/scala-library/2.11.1/e11da23da3eabab9f4777b9220e60d44c1aab6a/scala-library-2.11.1.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang/scala-library/2.11.1/8355e4b6841f772a287167666bad6e9860ac4d3c/scala-library-2.11.1-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang.modules/scala-parser-combinators_2.11/1.0.1/f05d7345bf5a58924f2837c6c1f4d73a938e1ff0/scala-parser-combinators_2.11-1.0.1.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang.modules/scala-parser-combinators_2.11/1.0.1/34d013c02d0b73794ba2911552896dd9c00f34c3/scala-parser-combinators_2.11-1.0.1-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang/scala-reflect/2.11.1/6580347e61cc7f8e802941e7fde40fa83b8badeb/scala-reflect-2.11.1.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang/scala-reflect/2.11.1/d4c5628e197a0d6af8e9b93a9be32190c547bc8a/scala-reflect-2.11.1-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang.modules/scala-swing_2.11/1.0.1/b1cdd92bd47b1e1837139c1c53020e86bb9112ae/scala-swing_2.11-1.0.1.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang.modules/scala-swing_2.11/1.0.1/d4bda4281db2ec74b105c5acf2326d160b79164e/scala-swing_2.11-1.0.1-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang.modules/scala-xml_2.11/1.0.2/820fbca7e524b530fdadc594c39d49a21ea0337e/scala-xml_2.11-1.0.2.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang.modules/scala-xml_2.11/1.0.2/312c3557d1ca0b34820f3b3fc5404a47936ceb26/scala-xml_2.11-1.0.2-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/lzma/lzma/0.0.1/521616dc7487b42bef0e803bd2fa3faf668101d7/lzma-0.0.1.jar" kind="lib"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/net.sf.trove4j/trove4j/3.0.3/42ccaf4761f0dfdfa805c9e340d99a755907e2dd/trove4j-3.0.3.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/net.sf.trove4j/trove4j/3.0.3/109c5be93362e6e651e417c51d1863477a22969c/trove4j-3.0.3-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.paulscode/codecjorbis/20101023/c73b5636faf089d9f00e8732a829577de25237ee/codecjorbis-20101023.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.paulscode/codecjorbis/20101023/4ca2436396bc14ebd78b7db1d4e11ca607c8705e/codecjorbis-20101023-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.paulscode/codecwav/20101023/12f031cfe88fef5c1dd36c563c0a3a69bd7261da/codecwav-20101023.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.paulscode/codecwav/20101023/71ec00b9b9c1a6a2c3a8a25f481a23ddb5b21ddb/codecwav-20101023-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.paulscode/libraryjavasound/20101123/5c5e304366f75f9eaa2e8cca546a1fb6109348b3/libraryjavasound-20101123.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.paulscode/libraryjavasound/20101123/945ff5711de27751cf699641d1ea316ba6cf7589/libraryjavasound-20101123-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.paulscode/librarylwjglopenal/20100824/73e80d0794c39665aec3f62eee88ca91676674ef/librarylwjglopenal-20100824.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.paulscode/librarylwjglopenal/20100824/ecfc8dac1d41bef748997e4edf563d486923ee1e/librarylwjglopenal-20100824-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.paulscode/soundsystem/20120107/419c05fe9be71f792b2d76cfc9b67f1ed0fec7f6/soundsystem-20120107.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.paulscode/soundsystem/20120107/1b9f4eb11ef11fede7fd76a2e5e8203c2a8adcd/soundsystem-20120107-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/net.java.jinput/jinput/2.0.5/39c7796b469a600f72380316f6b1f11db6c2c7c4/jinput-2.0.5.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/net.java.jinput/jinput/2.0.5/82604cfeb87b9ab70ed70aa19a137de8ceb21504/jinput-2.0.5-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.lwjgl.lwjgl/lwjgl/2.9.4-nightly-20150209/697517568c68e78ae0b4544145af031c81082dfe/lwjgl-2.9.4-nightly-20150209.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.lwjgl.lwjgl/lwjgl/2.9.4-nightly-20150209/7da2cff65127b558a66e8e38456174161723d3a7/lwjgl-2.9.4-nightly-20150209-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.lwjgl.lwjgl/lwjgl_util/2.9.4-nightly-20150209/d51a7c040a721d13efdfbd34f8b257b2df882ad0/lwjgl_util-2.9.4-nightly-20150209.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.lwjgl.lwjgl/lwjgl_util/2.9.4-nightly-20150209/2e3787f55c68a245e994f88755795b3a7684b3/lwjgl_util-2.9.4-nightly-20150209-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/java3d/vecmath/1.5.2/79846ba34cbd89e2422d74d53752f993dcc2ccaf/vecmath-1.5.2.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/java3d/vecmath/1.5.2/42442b23189fbef9353c1751055610b63dd57e85/vecmath-1.5.2-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/ca.weblite/java-objc-bridge/1.0.0/6ef160c3133a78de015830860197602ca1c855d3/java-objc-bridge-1.0.0.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/ca.weblite/java-objc-bridge/1.0.0/865837a198189aee737019561ece842827f24278/java-objc-bridge-1.0.0-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.fusesource.jansi/jansi/1.11/655c643309c2f45a56a747fda70e3fadf57e9f11/jansi-1.11.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.fusesource.jansi/jansi/1.11/2f0e4b53b6b0eec426dad7118bf54b3deb58000b/jansi-1.11-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang/scala-actors/2.11.0/8ccfb6541de179bb1c4d45cf414acee069b7f78b/scala-actors-2.11.0.jar" kind="lib" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang/scala-actors/2.11.0/e1dfa274766d5278166b0d660294fe96396693b2/scala-actors-2.11.0-sources.jar"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/net.java.jinput/jinput-platform/2.0.5/7ff832a6eb9ab6a767f1ade2b548092d0fa64795/jinput-platform-2.0.5-natives-linux.jar" kind="lib"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/net.java.jinput/jinput-platform/2.0.5/385ee093e01f587f30ee1c8a2ee7d408fd732e16/jinput-platform-2.0.5-natives-windows.jar" kind="lib"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/net.java.jinput/jinput-platform/2.0.5/53f9c919f34d2ca9de8c51fc4e1e8282029a9232/jinput-platform-2.0.5-natives-osx.jar" kind="lib"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.lwjgl.lwjgl/lwjgl-platform/2.9.4-nightly-20150209/b84d5102b9dbfabfeb5e43c7e2828d98a7fc80e0/lwjgl-platform-2.9.4-nightly-20150209-natives-windows.jar" kind="lib"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.lwjgl.lwjgl/lwjgl-platform/2.9.4-nightly-20150209/931074f46c795d2f7b30ed6395df5715cfd7675b/lwjgl-platform-2.9.4-nightly-20150209-natives-linux.jar" kind="lib"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.lwjgl.lwjgl/lwjgl-platform/2.9.4-nightly-20150209/bcab850f8f487c3f4c4dbabde778bb82bd1a40ed/lwjgl-platform-2.9.4-nightly-20150209-natives-osx.jar" kind="lib"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/minecraft/deobfedDeps/compileDummy.jar" kind="lib"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/minecraft/deobfedDeps/providedDummy.jar" kind="lib"/> - <classpathentry path="C:/Users/Tyler/.gradle/caches/minecraft/net/minecraftforge/forge/1.12-14.21.1.2443/start" kind="lib"/> + <classpathentry kind="src" path="src/main/java"/> + <classpathentry kind="src" path="src/main/resources"/> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8/"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/minecraft/deobfedDeps/deobf/slimeknights/mantle/Mantle/1.12-1.3.1.22/Mantle-1.12-1.3.1.22.jar" sourcepath="C:/Users/Tyler/.gradle/caches/minecraft/deobfedDeps/deobf/slimeknights/mantle/Mantle/1.12-1.3.1.22/Mantle-1.12-1.3.1.22-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/minecraft/deobfedDeps/deobf/slimeknights/TConstruct/1.12-2.7.4.42/TConstruct-1.12-2.7.4.42.jar" sourcepath="C:/Users/Tyler/.gradle/caches/minecraft/deobfedDeps/deobf/slimeknights/TConstruct/1.12-2.7.4.42/TConstruct-1.12-2.7.4.42-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/minecraft/deobfedDeps/deobf/mezz/jei/jei_1.12/4.7.5.86/jei_1.12-4.7.5.86.jar" sourcepath="C:/Users/Tyler/.gradle/caches/minecraft/deobfedDeps/deobf/mezz/jei/jei_1.12/4.7.5.86/jei_1.12-4.7.5.86-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/minecraft/deobfedDeps/deobf/com/github/Azanor/Baubles/master-SNAPSHOT/Baubles-master-SNAPSHOT.jar" sourcepath="C:/Users/Tyler/.gradle/caches/minecraft/deobfedDeps/deobf/com/github/Azanor/Baubles/master-SNAPSHOT/Baubles-master-SNAPSHOT-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/minecraft/net/minecraftforge/forge/1.12-14.21.1.2443/snapshot/20170801/forgeSrc-1.12-14.21.1.2443.jar" sourcepath="C:/Users/Tyler/.gradle/caches/minecraft/net/minecraftforge/forge/1.12-14.21.1.2443/snapshot/20170801/forgeSrc-1.12-14.21.1.2443-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.google.code.findbugs/jsr305/3.0.1/f7be08ec23c21485b9b5a1cf1654c2ec8c58168d/jsr305-3.0.1.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.google.code.findbugs/jsr305/3.0.1/a2926c057ca3b662b9db194c869bdbe7d3bb8aef/jsr305-3.0.1-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.mojang/patchy/1.1/aef610b34a1be37fa851825f12372b78424d8903/patchy-1.1.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.mojang/patchy/1.1/5e398295fbcb8fb590e3e3bddace13f659792e50/patchy-1.1-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/oshi-project/oshi-core/1.1/9ddf7b048a8d701be231c0f4f95fd986198fd2d8/oshi-core-1.1.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/oshi-project/oshi-core/1.1/1ec1ab1e6ac5a1572edfd0dd9ac95e83684b8a65/oshi-core-1.1-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/net.java.dev.jna/jna/4.4.0/cb208278274bf12ebdb56c61bd7407e6f774d65a/jna-4.4.0.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/net.java.dev.jna/jna/4.4.0/9d45d3dc35711eef7267d8b4fc2c0dc482ef9fd2/jna-4.4.0-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/net.java.dev.jna/platform/3.4.0/e3f70017be8100d3d6923f50b3d2ee17714e9c13/platform-3.4.0.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/net.java.dev.jna/platform/3.4.0/2f42653596d0044f0ab456620cba54c9cf53c5ca/platform-3.4.0-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.ibm.icu/icu4j-core-mojang/51.2/63d216a9311cca6be337c1e458e587f99d382b84/icu4j-core-mojang-51.2.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.ibm.icu/icu4j-core-mojang/51.2/814397ccbafff1132758e551c37396c528d7f2d7/icu4j-core-mojang-51.2-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/net.sf.jopt-simple/jopt-simple/5.0.3/cdd846cfc4e0f7eefafc02c0f5dce32b9303aa2a/jopt-simple-5.0.3.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/net.sf.jopt-simple/jopt-simple/5.0.3/36d4348605fd4605d36c8641495f3e78756e454b/jopt-simple-5.0.3-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/io.netty/netty-all/4.1.9.Final/97860965d6a0a6b98e7f569f3f966727b8db75/netty-all-4.1.9.Final.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/io.netty/netty-all/4.1.9.Final/69b921f5e296428c88c2ea4418e630443a699b06/netty-all-4.1.9.Final-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.google.guava/guava/21.0/3a3d111be1be1b745edfa7d91678a12d7ed38709/guava-21.0.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.google.guava/guava/21.0/b9ed26b8c23fe7cd3e6b463b34e54e5c6d9536d5/guava-21.0-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.apache.commons/commons-lang3/3.5/6c6c702c89bfff3cd9e80b04d668c5e190d588c6/commons-lang3-3.5.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.apache.commons/commons-lang3/3.5/f7d878153e86a1cdddf6b37850e00a9f8bff726f/commons-lang3-3.5-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/commons-io/commons-io/2.5/2852e6e05fbb95076fc091f6d1780f1f8fe35e0f/commons-io-2.5.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/commons-io/commons-io/2.5/caf033a4a7c37b4a8ff3ea084cba591539b0b69/commons-io-2.5-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/commons-codec/commons-codec/1.10/4b95f4897fa13f2cd904aee711aeafc0c5295cd8/commons-codec-1.10.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/commons-codec/commons-codec/1.10/11fb3d88ae7e3b757d70237064210ceb954a5a04/commons-codec-1.10-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/net.java.jutils/jutils/1.0.0/e12fe1fda814bd348c1579329c86943d2cd3c6a6/jutils-1.0.0.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/net.java.jutils/jutils/1.0.0/d18678a00b216863206a1bb6190507e02a32971b/jutils-1.0.0-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.google.code.gson/gson/2.8.0/c4ba5371a29ac9b2ad6129b1d39ea38750043eff/gson-2.8.0.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.google.code.gson/gson/2.8.0/baf95d8519fc1a11d388f8543cb40cd2bb9d66dc/gson-2.8.0-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.mojang/authlib/1.5.25/9834cdf236c22e84b946bba989e2f94ef5897c3c/authlib-1.5.25.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.mojang/authlib/1.5.25/18840707f662a3236542716fff61c659584f3e6c/authlib-1.5.25-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.mojang/realms/1.10.17/e6a623bf93a230b503b0e3ae18c196fcd5aa3299/realms-1.10.17.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.apache.commons/commons-compress/1.8.1/a698750c16740fd5b3871425f4cb3bbaa87f529d/commons-compress-1.8.1.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.apache.commons/commons-compress/1.8.1/3caea4421428752206c7a94c3e3097f0c47f1bb8/commons-compress-1.8.1-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.apache.httpcomponents/httpclient/4.3.3/18f4247ff4572a074444572cee34647c43e7c9c7/httpclient-4.3.3.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.apache.httpcomponents/httpclient/4.3.3/65cba03c4f6207f2885f88206fcf52c53f8d111b/httpclient-4.3.3-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/commons-logging/commons-logging/1.1.3/f6f66e966c70a83ffbdb6f17a0919eaf7c8aca7f/commons-logging-1.1.3.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/commons-logging/commons-logging/1.1.3/28bb0405fddaf04f15058fbfbe01fe2780d7d3b6/commons-logging-1.1.3-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.apache.httpcomponents/httpcore/4.3.2/31fbbff1ddbf98f3aa7377c94d33b0447c646b6e/httpcore-4.3.2.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.apache.httpcomponents/httpcore/4.3.2/4809f38359edeea9487f747e09aa58ec8d3a54c5/httpcore-4.3.2-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/it.unimi.dsi/fastutil/7.1.0/9835253257524c1be7ab50c057aa2d418fb72082/fastutil-7.1.0.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/it.unimi.dsi/fastutil/7.1.0/4a33438326f2fea664656d63d655c349d4131e14/fastutil-7.1.0-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.apache.logging.log4j/log4j-api/2.8.1/e801d13612e22cad62a3f4f3fe7fdbe6334a8e72/log4j-api-2.8.1.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.apache.logging.log4j/log4j-api/2.8.1/a5edb6b8c77843c8be98e0cb1f875699e76ee122/log4j-api-2.8.1-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.apache.logging.log4j/log4j-core/2.8.1/4ac28ff2f1ddf05dae3043a190451e8c46b73c31/log4j-core-2.8.1.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.apache.logging.log4j/log4j-core/2.8.1/a0a7f683da620c345b502fff04d1e46cde2e8d9/log4j-core-2.8.1-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.mojang/text2speech/1.10.3/48fd510879dff266c3815947de66e3d4809f8668/text2speech-1.10.3.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.mojang/text2speech/1.10.3/404339fe43d1011ee046a249b0ec7ae9ce04a834/text2speech-1.10.3-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/net.minecraft/launchwrapper/1.12/111e7bea9c968cdb3d06ef4632bf7ff0824d0f36/launchwrapper-1.12.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/net.minecraft/launchwrapper/1.12/fd80cad9a1b967ce2ff20529dc54e520d5338d7/launchwrapper-1.12-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/jline/jline/2.13/2d9530d0a25daffaffda7c35037b046b627bb171/jline-2.13.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/jline/jline/2.13/e290282bf7683ae3307e85bdc5d5e08424dfb893/jline-2.13-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.ow2.asm/asm-debug-all/5.2/3354e11e2b34215f06dab629ab88e06aca477c19/asm-debug-all-5.2.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.ow2.asm/asm-debug-all/5.2/ed60d4287d18996bc940f26656c570532b20d863/asm-debug-all-5.2-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.typesafe.akka/akka-actor_2.11/2.3.3/ed62e9fc709ca0f2ff1a3220daa8b70a2870078e/akka-actor_2.11-2.3.3.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.typesafe.akka/akka-actor_2.11/2.3.3/9dbceb71c4fd943b4eb4607847261075a989d47f/akka-actor_2.11-2.3.3-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.typesafe/config/1.2.1/f771f71fdae3df231bcd54d5ca2d57f0bf93f467/config-1.2.1.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.typesafe/config/1.2.1/bdacf4f82ce9b29cd474bfde2e91eeb0ca623d28/config-1.2.1-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang/scala-actors-migration_2.11/1.1.0/dfa8bc42b181d5b9f1a5dd147f8ae308b893eb6f/scala-actors-migration_2.11-1.1.0.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang/scala-actors-migration_2.11/1.1.0/6bccac72dae4d369537e313d12087c1ca295e84f/scala-actors-migration_2.11-1.1.0-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang/scala-compiler/2.11.1/56ea2e6c025e0821f28d73ca271218b8dd04926a/scala-compiler-2.11.1.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang/scala-compiler/2.11.1/b031d401aabbf7f5f725db500575da3dff90065f/scala-compiler-2.11.1-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang.plugins/scala-continuations-library_2.11/1.0.2/e517c53a7e9acd6b1668c5a35eccbaa3bab9aac/scala-continuations-library_2.11-1.0.2.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang.plugins/scala-continuations-library_2.11/1.0.2/495afc106eeaa1b3367f6be0bc3768c398e4d360/scala-continuations-library_2.11-1.0.2-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang.plugins/scala-continuations-plugin_2.11.1/1.0.2/f361a3283452c57fa30c1ee69448995de23c60f7/scala-continuations-plugin_2.11.1-1.0.2.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang.plugins/scala-continuations-plugin_2.11.1/1.0.2/c6f3c092ab731f3cf83fdb376ebc465a243c1f4c/scala-continuations-plugin_2.11.1-1.0.2-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang/scala-library/2.11.1/e11da23da3eabab9f4777b9220e60d44c1aab6a/scala-library-2.11.1.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang/scala-library/2.11.1/8355e4b6841f772a287167666bad6e9860ac4d3c/scala-library-2.11.1-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang.modules/scala-parser-combinators_2.11/1.0.1/f05d7345bf5a58924f2837c6c1f4d73a938e1ff0/scala-parser-combinators_2.11-1.0.1.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang.modules/scala-parser-combinators_2.11/1.0.1/34d013c02d0b73794ba2911552896dd9c00f34c3/scala-parser-combinators_2.11-1.0.1-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang/scala-reflect/2.11.1/6580347e61cc7f8e802941e7fde40fa83b8badeb/scala-reflect-2.11.1.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang/scala-reflect/2.11.1/d4c5628e197a0d6af8e9b93a9be32190c547bc8a/scala-reflect-2.11.1-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang.modules/scala-swing_2.11/1.0.1/b1cdd92bd47b1e1837139c1c53020e86bb9112ae/scala-swing_2.11-1.0.1.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang.modules/scala-swing_2.11/1.0.1/d4bda4281db2ec74b105c5acf2326d160b79164e/scala-swing_2.11-1.0.1-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang.modules/scala-xml_2.11/1.0.2/820fbca7e524b530fdadc594c39d49a21ea0337e/scala-xml_2.11-1.0.2.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang.modules/scala-xml_2.11/1.0.2/312c3557d1ca0b34820f3b3fc5404a47936ceb26/scala-xml_2.11-1.0.2-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/lzma/lzma/0.0.1/521616dc7487b42bef0e803bd2fa3faf668101d7/lzma-0.0.1.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/net.sf.trove4j/trove4j/3.0.3/42ccaf4761f0dfdfa805c9e340d99a755907e2dd/trove4j-3.0.3.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/net.sf.trove4j/trove4j/3.0.3/109c5be93362e6e651e417c51d1863477a22969c/trove4j-3.0.3-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.paulscode/codecjorbis/20101023/c73b5636faf089d9f00e8732a829577de25237ee/codecjorbis-20101023.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.paulscode/codecjorbis/20101023/4ca2436396bc14ebd78b7db1d4e11ca607c8705e/codecjorbis-20101023-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.paulscode/codecwav/20101023/12f031cfe88fef5c1dd36c563c0a3a69bd7261da/codecwav-20101023.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.paulscode/codecwav/20101023/71ec00b9b9c1a6a2c3a8a25f481a23ddb5b21ddb/codecwav-20101023-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.paulscode/libraryjavasound/20101123/5c5e304366f75f9eaa2e8cca546a1fb6109348b3/libraryjavasound-20101123.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.paulscode/libraryjavasound/20101123/945ff5711de27751cf699641d1ea316ba6cf7589/libraryjavasound-20101123-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.paulscode/librarylwjglopenal/20100824/73e80d0794c39665aec3f62eee88ca91676674ef/librarylwjglopenal-20100824.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.paulscode/librarylwjglopenal/20100824/ecfc8dac1d41bef748997e4edf563d486923ee1e/librarylwjglopenal-20100824-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.paulscode/soundsystem/20120107/419c05fe9be71f792b2d76cfc9b67f1ed0fec7f6/soundsystem-20120107.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/com.paulscode/soundsystem/20120107/1b9f4eb11ef11fede7fd76a2e5e8203c2a8adcd/soundsystem-20120107-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/net.java.jinput/jinput/2.0.5/39c7796b469a600f72380316f6b1f11db6c2c7c4/jinput-2.0.5.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/net.java.jinput/jinput/2.0.5/82604cfeb87b9ab70ed70aa19a137de8ceb21504/jinput-2.0.5-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.lwjgl.lwjgl/lwjgl/2.9.4-nightly-20150209/697517568c68e78ae0b4544145af031c81082dfe/lwjgl-2.9.4-nightly-20150209.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.lwjgl.lwjgl/lwjgl/2.9.4-nightly-20150209/7da2cff65127b558a66e8e38456174161723d3a7/lwjgl-2.9.4-nightly-20150209-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.lwjgl.lwjgl/lwjgl_util/2.9.4-nightly-20150209/d51a7c040a721d13efdfbd34f8b257b2df882ad0/lwjgl_util-2.9.4-nightly-20150209.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.lwjgl.lwjgl/lwjgl_util/2.9.4-nightly-20150209/2e3787f55c68a245e994f88755795b3a7684b3/lwjgl_util-2.9.4-nightly-20150209-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/java3d/vecmath/1.5.2/79846ba34cbd89e2422d74d53752f993dcc2ccaf/vecmath-1.5.2.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/java3d/vecmath/1.5.2/42442b23189fbef9353c1751055610b63dd57e85/vecmath-1.5.2-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/ca.weblite/java-objc-bridge/1.0.0/6ef160c3133a78de015830860197602ca1c855d3/java-objc-bridge-1.0.0.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/ca.weblite/java-objc-bridge/1.0.0/865837a198189aee737019561ece842827f24278/java-objc-bridge-1.0.0-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.fusesource.jansi/jansi/1.11/655c643309c2f45a56a747fda70e3fadf57e9f11/jansi-1.11.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.fusesource.jansi/jansi/1.11/2f0e4b53b6b0eec426dad7118bf54b3deb58000b/jansi-1.11-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang/scala-actors/2.11.0/8ccfb6541de179bb1c4d45cf414acee069b7f78b/scala-actors-2.11.0.jar" sourcepath="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.scala-lang/scala-actors/2.11.0/e1dfa274766d5278166b0d660294fe96396693b2/scala-actors-2.11.0-sources.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/net.java.jinput/jinput-platform/2.0.5/7ff832a6eb9ab6a767f1ade2b548092d0fa64795/jinput-platform-2.0.5-natives-linux.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/net.java.jinput/jinput-platform/2.0.5/385ee093e01f587f30ee1c8a2ee7d408fd732e16/jinput-platform-2.0.5-natives-windows.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/net.java.jinput/jinput-platform/2.0.5/53f9c919f34d2ca9de8c51fc4e1e8282029a9232/jinput-platform-2.0.5-natives-osx.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.lwjgl.lwjgl/lwjgl-platform/2.9.4-nightly-20150209/b84d5102b9dbfabfeb5e43c7e2828d98a7fc80e0/lwjgl-platform-2.9.4-nightly-20150209-natives-windows.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.lwjgl.lwjgl/lwjgl-platform/2.9.4-nightly-20150209/931074f46c795d2f7b30ed6395df5715cfd7675b/lwjgl-platform-2.9.4-nightly-20150209-natives-linux.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/modules-2/files-2.1/org.lwjgl.lwjgl/lwjgl-platform/2.9.4-nightly-20150209/bcab850f8f487c3f4c4dbabde778bb82bd1a40ed/lwjgl-platform-2.9.4-nightly-20150209-natives-osx.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/minecraft/deobfedDeps/compileDummy.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/minecraft/deobfedDeps/providedDummy.jar"/> + <classpathentry kind="lib" path="C:/Users/Tyler/.gradle/caches/minecraft/net/minecraftforge/forge/1.12-14.21.1.2443/start"/> + <classpathentry kind="output" path="bin"/> </classpath> diff --git a/build.gradle b/build.gradle index dd1fb11..142fd44 100644 --- a/build.gradle +++ b/build.gradle @@ -56,7 +56,7 @@ plugins { id "net.minecraftforge.gradle.forge" version "2.0.2" } */ -version = "1.4.2.7a" +version = "1.4.2.8a" group= "lance5057.tDefense" // http://maven.apache.org/guides/mini/guide-naming-conventions.html archivesBaseName = "tinkersdefense" diff --git a/src/main/java/com/example/examplemod/ExampleMod.java b/src/main/java/com/example/examplemod/ExampleMod.java deleted file mode 100644 index 42a155b..0000000 --- a/src/main/java/com/example/examplemod/ExampleMod.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.example.examplemod; - -import net.minecraft.init.Blocks; -import net.minecraftforge.fml.common.Mod; -import net.minecraftforge.fml.common.Mod.EventHandler; -import net.minecraftforge.fml.common.event.FMLInitializationEvent; -import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; -import org.apache.logging.log4j.Logger; - -@Mod(modid = ExampleMod.MODID, name = ExampleMod.NAME, version = ExampleMod.VERSION) -public class ExampleMod -{ - public static final String MODID = "examplemod"; - public static final String NAME = "Example Mod"; - public static final String VERSION = "1.0"; - - private static Logger logger; - - @EventHandler - public void preInit(FMLPreInitializationEvent event) - { - logger = event.getModLog(); - } - - @EventHandler - public void init(FMLInitializationEvent event) - { - // some example code - logger.info("DIRT BLOCK >> {}", Blocks.DIRT.getRegistryName()); - } -} diff --git a/src/main/java/lance5057/tDefense/Reference.java b/src/main/java/lance5057/tDefense/Reference.java index 0600126..8f94aed 100644 --- a/src/main/java/lance5057/tDefense/Reference.java +++ b/src/main/java/lance5057/tDefense/Reference.java @@ -4,7 +4,7 @@ public class Reference { public static final String MOD_ID = "tinkersdefense"; - public static final String VERSION = "1.4.2.6a"; + public static final String VERSION = "1.4.2.8a"; public static final String MOD_NAME = "Tinkers' Defense"; } diff --git a/src/main/java/lance5057/tDefense/TD_Commands.java b/src/main/java/lance5057/tDefense/TD_Commands.java index 4e89780..1629b98 100644 --- a/src/main/java/lance5057/tDefense/TD_Commands.java +++ b/src/main/java/lance5057/tDefense/TD_Commands.java @@ -6,7 +6,6 @@ import java.util.List; import javax.annotation.Nullable; import net.minecraft.command.CommandBase; -import net.minecraft.command.CommandException; import net.minecraft.command.ICommand; import net.minecraft.command.ICommandSender; import net.minecraft.server.MinecraftServer; diff --git a/src/main/java/lance5057/tDefense/TD_Config.java b/src/main/java/lance5057/tDefense/TD_Config.java index 43a511a..69ca8b7 100644 --- a/src/main/java/lance5057/tDefense/TD_Config.java +++ b/src/main/java/lance5057/tDefense/TD_Config.java @@ -1,15 +1,10 @@ package lance5057.tDefense; -import lance5057.tDefense.util.Color16Util; import net.minecraftforge.common.config.Config; import net.minecraftforge.common.config.ConfigManager; -import net.minecraftforge.common.config.Configuration; import net.minecraftforge.fml.client.event.ConfigChangedEvent; import net.minecraftforge.fml.common.Mod; -import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; -import scala.Int; -import slimeknights.tconstruct.library.materials.Material; @Config(modid = Reference.MOD_ID) public class TD_Config diff --git a/src/main/java/lance5057/tDefense/TinkersDefense.java b/src/main/java/lance5057/tDefense/TinkersDefense.java index 0a95930..fee4e43 100644 --- a/src/main/java/lance5057/tDefense/TinkersDefense.java +++ b/src/main/java/lance5057/tDefense/TinkersDefense.java @@ -5,13 +5,10 @@ import lance5057.tDefense.core.parts.TDParts; import lance5057.tDefense.core.tools.TDTools; import lance5057.tDefense.holiday.HolidayBase; import lance5057.tDefense.proxy.CommonProxy; -import lance5057.tDefense.util.ModuleBase; import lance5057.tDefense.util.RegEvents; import net.minecraft.init.Items; import net.minecraft.item.ItemStack; import net.minecraftforge.fml.common.Mod; -import net.minecraftforge.fml.common.Mod.EventHandler; -import net.minecraftforge.fml.common.Mod.Instance; import net.minecraftforge.fml.common.SidedProxy; import net.minecraftforge.fml.common.event.FMLInitializationEvent; import net.minecraftforge.fml.common.event.FMLPostInitializationEvent; @@ -22,7 +19,7 @@ import scala.reflect.internal.Trees.Modifiers; import slimeknights.mantle.client.CreativeTab; -@Mod(modid = Reference.MOD_ID, version = Reference.VERSION, name = Reference.MOD_NAME) +@Mod(modid = Reference.MOD_ID, version = Reference.VERSION, name = Reference.MOD_NAME, dependencies = "required-after:tconstruct") public class TinkersDefense { private static int modGuiIndex = 0; diff --git a/src/main/java/lance5057/tDefense/core/blocks/fluid/TDFluid.java b/src/main/java/lance5057/tDefense/core/blocks/fluid/TDFluid.java index 966756d..6e8e79e 100644 --- a/src/main/java/lance5057/tDefense/core/blocks/fluid/TDFluid.java +++ b/src/main/java/lance5057/tDefense/core/blocks/fluid/TDFluid.java @@ -2,8 +2,6 @@ package lance5057.tDefense.core.blocks.fluid; import lance5057.tDefense.Reference; import net.minecraft.util.ResourceLocation; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.IBlockAccess; import slimeknights.tconstruct.library.fluid.FluidMolten; public class TDFluid extends FluidMolten diff --git a/src/main/java/lance5057/tDefense/core/materials/ArmorMaterialStats.java b/src/main/java/lance5057/tDefense/core/materials/ArmorMaterialStats.java new file mode 100644 index 0000000..031384f --- /dev/null +++ b/src/main/java/lance5057/tDefense/core/materials/ArmorMaterialStats.java @@ -0,0 +1,132 @@ +package lance5057.tDefense.core.materials; + +import java.util.List; + +import com.google.common.collect.Lists; + +import net.minecraft.util.text.TextFormatting; +import slimeknights.tconstruct.library.Util; +import slimeknights.tconstruct.library.client.CustomFontColor; +import slimeknights.tconstruct.library.materials.AbstractMaterialStats; + +public class ArmorMaterialStats extends AbstractMaterialStats { + public final static String LOC_Durability = "stat.armor.durability.name"; + public final static String LOC_ArmorRating = "stat.armor.rating.name"; + public final static String LOC_ArmorToughness = "stat.armor.toughness.name"; + public final static String LOC_MagicPotency = "stat.armor.potency.name"; + + public final static String LOC_DurabilityDesc = "stat.armor.durability.desc"; + public final static String LOC_ArmorRatingDesc = "stat.armor.rating.desc"; + public final static String LOC_ArmorToughnessDesc = "stat.armor.toughness.desc"; + public final static String LOC_MagicPotencyDesc = "stat.cloth.potency.desc"; + + public final static String COLOR_Durability = CustomFontColor.valueToColorCode(1f); + public final static String COLOR_ArmorRating = CustomFontColor.encodeColor(215, 100, 100); + public final static String COLOR_ArmorToughness = CustomFontColor.encodeColor(215, 100, 100); + public final static String COLOR_MagicPotency = CustomFontColor.encodeColor(215, 100, 100); + + public final int durability; // usually between 1 and 1000 + public final int rating; // 1 - 20 + public final int toughness; + public final float potency; + + public ArmorMaterialStats(int durability, int rating, int toughness, float potency, String TYPE) { + super(TYPE); + this.durability = durability; + this.rating = rating; + this.toughness = toughness; + this.potency = potency; + } + + @Override + public List<String> getLocalizedInfo() { + List<String> info = Lists.newArrayList(); + + info.add(formatDurability(durability)); + info.add(formatArmorRating(rating)); + info.add(formatArmorToughness(toughness)); + info.add(formatMagicPotency(potency)); + + return info; + } + + public static String formatDurability(int durability) { + return formatNumber(LOC_Durability, COLOR_Durability, durability); + } + + public static String formatDurability(int durability, int ref) { + return String.format("%s: %s%s%s/%s%s", Util.translate(LOC_Durability), + CustomFontColor.valueToColorCode((float) durability / (float) ref), Util.df.format(durability), + TextFormatting.GRAY.toString(), COLOR_Durability, Util.df.format(ref)) + TextFormatting.RESET; + } + + public static String formatArmorRating(int percent) { + return formatNumber(LOC_ArmorRating, COLOR_ArmorRating, percent); + } + + public static String formatArmorToughness(int percent) { + return formatNumber(LOC_ArmorToughness, COLOR_ArmorToughness, percent); + } + + public static String formatMagicPotency(float potency2) + { + return formatNumber(LOC_MagicPotency, COLOR_MagicPotency, potency2); + } + + @Override + public List<String> getLocalizedDesc() { + List<String> info = Lists.newArrayList(); + + info.add(Util.translate(LOC_DurabilityDesc)); + info.add(Util.translate(LOC_ArmorRatingDesc)); + info.add(Util.translate(LOC_ArmorToughnessDesc)); + info.add(Util.translate(LOC_MagicPotencyDesc)); + + return info; + } + + public class HelmMaterialStats extends ArmorMaterialStats { + public final static String TYPE = "helm"; + + public HelmMaterialStats(int durability, int rating, int toughness, float potency) { + super(durability, rating, toughness,potency, TYPE); + } + + } + + public class ChestMaterialStats extends ArmorMaterialStats { + public final static String TYPE = "chest"; + + public ChestMaterialStats(int durability, int rating, int toughness, float potency) { + super(durability, rating, toughness,potency, TYPE); + } + + } + + public class LegsMaterialStats extends ArmorMaterialStats { + public final static String TYPE = "legs"; + + public LegsMaterialStats(int durability, int rating, int toughness, float potency) { + super(durability, rating, toughness,potency, TYPE); + } + + } + + public class FeetMaterialStats extends ArmorMaterialStats { + public final static String TYPE = "feet"; + + public FeetMaterialStats(int durability, int rating, int toughness, float potency) { + super(durability, rating, toughness,potency, TYPE); + } + + } + + public class ClothMaterialStats extends ArmorMaterialStats { + public final static String TYPE = "cloth"; + + public ClothMaterialStats(int durability, int rating, int toughness, float potency) { + super(durability, rating, toughness,potency, TYPE); + } + + } +} diff --git a/src/main/java/lance5057/tDefense/core/materials/BootsMaterialStats.java b/src/main/java/lance5057/tDefense/core/materials/BootsMaterialStats.java deleted file mode 100644 index 69d07bb..0000000 --- a/src/main/java/lance5057/tDefense/core/materials/BootsMaterialStats.java +++ /dev/null @@ -1,89 +0,0 @@ -package lance5057.tDefense.core.materials; - -import java.util.List; - -import com.google.common.collect.Lists; - -import net.minecraft.util.text.TextFormatting; -import slimeknights.tconstruct.library.Util; -import slimeknights.tconstruct.library.client.CustomFontColor; -import slimeknights.tconstruct.library.materials.AbstractMaterialStats; - -public class BootsMaterialStats extends AbstractMaterialStats -{ - public final static String TYPE = "boots"; - - public final static String LOC_Durability = "stat.boots.armor.durability.name"; - public final static String LOC_ArmorRating = "stat.boots.armor.rating.name"; - public final static String LOC_ArmorToughness = "stat.boots.armor.toughness.name"; - - public final static String LOC_DurabilityDesc = "stat.boots.armor.durability.desc"; - public final static String LOC_ArmorRatingDesc = "stat.boots.armor.rating.desc"; - public final static String LOC_ArmorToughnessDesc = "stat.boots.armor.toughness.desc"; - - public final static String COLOR_Durability = CustomFontColor.valueToColorCode(1f); - public final static String COLOR_ArmorRating = CustomFontColor.encodeColor(215, 100, 100); - public final static String COLOR_ArmorToughness = CustomFontColor.encodeColor(215, 100, 100); - - public final int durability; // usually between 1 and 1000 - public final int rating; // 1 - 20 - public final int toughness; - - public BootsMaterialStats(int durability, int rating, int toughness) - { - super(TYPE); - this.durability = durability; - this.rating = rating; - this.toughness = toughness; - } - - @Override - public List<String> getLocalizedInfo() - { - List<String> info = Lists.newArrayList(); - - info.add(formatDurability(durability)); - info.add(formatArmorRating(rating)); - info.add(formatArmorToughness(toughness)); - - return info; - } - - public static String formatDurability(int durability) - { - return formatNumber(LOC_Durability, COLOR_Durability, durability); - } - - public static String formatDurability(int durability, int ref) - { - return String.format("%s: %s%s%s/%s%s", - Util.translate(LOC_Durability), - CustomFontColor.valueToColorCode((float) durability / (float) ref), - Util.df.format(durability), - TextFormatting.GRAY.toString(), - COLOR_Durability, - Util.df.format(ref)) + TextFormatting.RESET; - } - - public static String formatArmorRating(int percent) - { - return formatNumber(LOC_ArmorRating, COLOR_ArmorRating, percent); - } - - public static String formatArmorToughness(int percent) - { - return formatNumber(LOC_ArmorToughness, COLOR_ArmorToughness, percent); - } - - @Override - public List<String> getLocalizedDesc() - { - List<String> info = Lists.newArrayList(); - - info.add(Util.translate(LOC_DurabilityDesc)); - info.add(Util.translate(LOC_ArmorRatingDesc)); - info.add(Util.translate(LOC_ArmorToughnessDesc)); - - return info; - } -} diff --git a/src/main/java/lance5057/tDefense/core/materials/ChestMaterialStats.java b/src/main/java/lance5057/tDefense/core/materials/ChestMaterialStats.java deleted file mode 100644 index e1fe811..0000000 --- a/src/main/java/lance5057/tDefense/core/materials/ChestMaterialStats.java +++ /dev/null @@ -1,89 +0,0 @@ -package lance5057.tDefense.core.materials; - -import java.util.List; - -import com.google.common.collect.Lists; - -import net.minecraft.util.text.TextFormatting; -import slimeknights.tconstruct.library.Util; -import slimeknights.tconstruct.library.client.CustomFontColor; -import slimeknights.tconstruct.library.materials.AbstractMaterialStats; - -public class ChestMaterialStats extends AbstractMaterialStats -{ - public final static String TYPE = "chest"; - - public final static String LOC_Durability = "stat.chest.armor.durability.name"; - public final static String LOC_ArmorRating = "stat.chest.armor.rating.name"; - public final static String LOC_ArmorToughness = "stat.chest.armor.toughness.name"; - - public final static String LOC_DurabilityDesc = "stat.chest.armor.durability.desc"; - public final static String LOC_ArmorRatingDesc = "stat.chest.armor.rating.desc"; - public final static String LOC_ArmorToughnessDesc = "stat.chest.armor.toughness.desc"; - - public final static String COLOR_Durability = CustomFontColor.valueToColorCode(1f); - public final static String COLOR_ArmorRating = CustomFontColor.encodeColor(215, 100, 100); - public final static String COLOR_ArmorToughness = CustomFontColor.encodeColor(215, 100, 100); - - public final int durability; // usually between 1 and 1000 - public final int rating; // 1 - 20 - public final int toughness; - - public ChestMaterialStats(int durability, int rating, int toughness) - { - super(TYPE); - this.durability = durability; - this.rating = rating; - this.toughness = toughness; - } - - @Override - public List<String> getLocalizedInfo() - { - List<String> info = Lists.newArrayList(); - - info.add(formatDurability(durability)); - info.add(formatArmorRating(rating)); - info.add(formatArmorToughness(toughness)); - - return info; - } - - public static String formatDurability(int durability) - { - return formatNumber(LOC_Durability, COLOR_Durability, durability); - } - - public static String formatDurability(int durability, int ref) - { - return String.format("%s: %s%s%s/%s%s", - Util.translate(LOC_Durability), - CustomFontColor.valueToColorCode((float) durability / (float) ref), - Util.df.format(durability), - TextFormatting.GRAY.toString(), - COLOR_Durability, - Util.df.format(ref)) + TextFormatting.RESET; - } - - public static String formatArmorRating(int percent) - { - return formatNumber(LOC_ArmorRating, COLOR_ArmorRating, percent); - } - - public static String formatArmorToughness(int percent) - { - return formatNumber(LOC_ArmorToughness, COLOR_ArmorToughness, percent); - } - - @Override - public List<String> getLocalizedDesc() - { - List<String> info = Lists.newArrayList(); - - info.add(Util.translate(LOC_DurabilityDesc)); - info.add(Util.translate(LOC_ArmorRatingDesc)); - info.add(Util.translate(LOC_ArmorToughnessDesc)); - - return info; - } -} diff --git a/src/main/java/lance5057/tDefense/core/materials/ClothMaterialStats.java b/src/main/java/lance5057/tDefense/core/materials/ClothMaterialStats.java deleted file mode 100644 index f3f953d..0000000 --- a/src/main/java/lance5057/tDefense/core/materials/ClothMaterialStats.java +++ /dev/null @@ -1,77 +0,0 @@ -package lance5057.tDefense.core.materials; - -import java.util.List; - -import com.google.common.collect.Lists; - -import net.minecraft.util.text.TextFormatting; -import slimeknights.tconstruct.library.Util; -import slimeknights.tconstruct.library.client.CustomFontColor; -import slimeknights.tconstruct.library.materials.AbstractMaterialStats; - -public class ClothMaterialStats extends AbstractMaterialStats -{ - public final static String TYPE = "chest"; - - public final static String LOC_Durability = "stat.cloth.durability.name"; - public final static String LOC_MagicPotency = "stat.cloth.potency.name"; - - public final static String LOC_DurabilityDesc = "stat.cloth.durability.desc"; - public final static String LOC_MagicPotencyDesc = "stat.cloth.potency.desc"; - - public final static String COLOR_Durability = CustomFontColor.valueToColorCode(1f); - public final static String COLOR_MagicPotency = CustomFontColor.encodeColor(215, 100, 100); - - public final int durability; // usually between 1 and 1000 - public final float potency; // 1 - 100 - - public ClothMaterialStats(int durability, float potency) - { - super(TYPE); - this.durability = durability; - this.potency = potency; - } - - @Override - public List<String> getLocalizedInfo() - { - List<String> info = Lists.newArrayList(); - - info.add(formatDurability(durability)); - info.add(formatMagicPotency(potency)); - - return info; - } - - public static String formatDurability(int durability) - { - return formatNumber(LOC_Durability, COLOR_Durability, durability); - } - - public static String formatDurability(int durability, int ref) - { - return String.format("%s: %s%s%s/%s%s", - Util.translate(LOC_Durability), - CustomFontColor.valueToColorCode((float) durability / (float) ref), - Util.df.format(durability), - TextFormatting.GRAY.toString(), - COLOR_Durability, - Util.df.format(ref)) + TextFormatting.RESET; - } - - public static String formatMagicPotency(float potency2) - { - return formatNumber(LOC_MagicPotency, COLOR_MagicPotency, potency2); - } - - @Override - public List<String> getLocalizedDesc() - { - List<String> info = Lists.newArrayList(); - - info.add(Util.translate(LOC_DurabilityDesc)); - info.add(Util.translate(LOC_MagicPotencyDesc)); - - return info; - } -}
\ No newline at end of file diff --git a/src/main/java/lance5057/tDefense/core/materials/HelmMaterialStats.java b/src/main/java/lance5057/tDefense/core/materials/HelmMaterialStats.java deleted file mode 100644 index c094aca..0000000 --- a/src/main/java/lance5057/tDefense/core/materials/HelmMaterialStats.java +++ /dev/null @@ -1,89 +0,0 @@ -package lance5057.tDefense.core.materials; - -import java.util.List; - -import com.google.common.collect.Lists; - -import net.minecraft.util.text.TextFormatting; -import slimeknights.tconstruct.library.Util; -import slimeknights.tconstruct.library.client.CustomFontColor; -import slimeknights.tconstruct.library.materials.AbstractMaterialStats; - -public class HelmMaterialStats extends AbstractMaterialStats -{ - public final static String TYPE = "helm"; - - public final static String LOC_Durability = "stat.helm.armor.durability.name"; - public final static String LOC_ArmorRating = "stat.helm.armor.rating.name"; - public final static String LOC_ArmorToughness = "stat.helm.armor.toughness.name"; - - public final static String LOC_DurabilityDesc = "stat.helm.armor.durability.desc"; - public final static String LOC_ArmorRatingDesc = "stat.helm.armor.rating.desc"; - public final static String LOC_ArmorToughnessDesc = "stat.helm.armor.toughness.desc"; - - public final static String COLOR_Durability = CustomFontColor.valueToColorCode(1f); - public final static String COLOR_ArmorRating = CustomFontColor.encodeColor(215, 100, 100); - public final static String COLOR_ArmorToughness = CustomFontColor.encodeColor(215, 100, 100); - - public final int durability; // usually between 1 and 1000 - public final int rating; // 1 - 20 - public final int toughness; - - public HelmMaterialStats(int durability, int rating, int toughness) - { - super(TYPE); - this.durability = durability; - this.rating = rating; - this.toughness = toughness; - } - - @Override - public List<String> getLocalizedInfo() - { - List<String> info = Lists.newArrayList(); - - info.add(formatDurability(durability)); - info.add(formatArmorRating(rating)); - info.add(formatArmorToughness(toughness)); - - return info; - } - - public static String formatDurability(int durability) - { - return formatNumber(LOC_Durability, COLOR_Durability, durability); - } - - public static String formatDurability(int durability, int ref) - { - return String.format("%s: %s%s%s/%s%s", - Util.translate(LOC_Durability), - CustomFontColor.valueToColorCode((float) durability / (float) ref), - Util.df.format(durability), - TextFormatting.GRAY.toString(), - COLOR_Durability, - Util.df.format(ref)) + TextFormatting.RESET; - } - - public static String formatArmorRating(int percent) - { - return formatNumber(LOC_ArmorRating, COLOR_ArmorRating, percent); - } - - public static String formatArmorToughness(int percent) - { - return formatNumber(LOC_ArmorToughness, COLOR_ArmorToughness, percent); - } - - @Override - public List<String> getLocalizedDesc() - { - List<String> info = Lists.newArrayList(); - - info.add(Util.translate(LOC_DurabilityDesc)); - info.add(Util.translate(LOC_ArmorRatingDesc)); - info.add(Util.translate(LOC_ArmorToughnessDesc)); - - return info; - } -} diff --git a/src/main/java/lance5057/tDefense/core/materials/LegsMaterialStats.java b/src/main/java/lance5057/tDefense/core/materials/LegsMaterialStats.java deleted file mode 100644 index e59545e..0000000 --- a/src/main/java/lance5057/tDefense/core/materials/LegsMaterialStats.java +++ /dev/null @@ -1,89 +0,0 @@ -package lance5057.tDefense.core.materials; - -import java.util.List; - -import com.google.common.collect.Lists; - -import net.minecraft.util.text.TextFormatting; -import slimeknights.tconstruct.library.Util; -import slimeknights.tconstruct.library.client.CustomFontColor; -import slimeknights.tconstruct.library.materials.AbstractMaterialStats; - -public class LegsMaterialStats extends AbstractMaterialStats -{ - public final static String TYPE = "legs"; - - public final static String LOC_Durability = "stat.legs.armor.durability.name"; - public final static String LOC_ArmorRating = "stat.legs.armor.rating.name"; - public final static String LOC_ArmorToughness = "stat.legs.armor.toughness.name"; - - public final static String LOC_DurabilityDesc = "stat.legs.armor.durability.desc"; - public final static String LOC_ArmorRatingDesc = "stat.legs.armor.rating.desc"; - public final static String LOC_ArmorToughnessDesc = "stat.legs.armor.toughness.desc"; - - public final static String COLOR_Durability = CustomFontColor.valueToColorCode(1f); - public final static String COLOR_ArmorRating = CustomFontColor.encodeColor(215, 100, 100); - public final static String COLOR_ArmorToughness = CustomFontColor.encodeColor(215, 100, 100); - - public final int durability; // usually between 1 and 1000 - public final int rating; // 1 - 20 - public final int toughness; - - public LegsMaterialStats(int durability, int rating, int toughness) - { - super(TYPE); - this.durability = durability; - this.rating = rating; - this.toughness = toughness; - } - - @Override - public List<String> getLocalizedInfo() - { - List<String> info = Lists.newArrayList(); - - info.add(formatDurability(durability)); - info.add(formatArmorRating(rating)); - info.add(formatArmorToughness(toughness)); - - return info; - } - - public static String formatDurability(int durability) - { - return formatNumber(LOC_Durability, COLOR_Durability, durability); - } - - public static String formatDurability(int durability, int ref) - { - return String.format("%s: %s%s%s/%s%s", - Util.translate(LOC_Durability), - CustomFontColor.valueToColorCode((float) durability / (float) ref), - Util.df.format(durability), - TextFormatting.GRAY.toString(), - COLOR_Durability, - Util.df.format(ref)) + TextFormatting.RESET; - } - - public static String formatArmorRating(int percent) - { - return formatNumber(LOC_ArmorRating, COLOR_ArmorRating, percent); - } - - public static String formatArmorToughness(int percent) - { - return formatNumber(LOC_ArmorToughness, COLOR_ArmorToughness, percent); - } - - @Override - public List<String> getLocalizedDesc() - { - List<String> info = Lists.newArrayList(); - - info.add(Util.translate(LOC_DurabilityDesc)); - info.add(Util.translate(LOC_ArmorRatingDesc)); - info.add(Util.translate(LOC_ArmorToughnessDesc)); - - return info; - } -} diff --git a/src/main/java/lance5057/tDefense/core/materials/ShieldMaterialStats.java b/src/main/java/lance5057/tDefense/core/materials/ShieldMaterialStats.java index 42831eb..bad520d 100644 --- a/src/main/java/lance5057/tDefense/core/materials/ShieldMaterialStats.java +++ b/src/main/java/lance5057/tDefense/core/materials/ShieldMaterialStats.java @@ -2,16 +2,12 @@ package lance5057.tDefense.core.materials; import java.util.List; -import net.minecraft.util.text.TextFormatting; - import com.google.common.collect.Lists; -import slimeknights.tconstruct.library.TinkerRegistry; +import net.minecraft.util.text.TextFormatting; import slimeknights.tconstruct.library.Util; import slimeknights.tconstruct.library.client.CustomFontColor; import slimeknights.tconstruct.library.materials.AbstractMaterialStats; -import slimeknights.tconstruct.library.materials.Material; -import slimeknights.tconstruct.library.utils.HarvestLevels; public class ShieldMaterialStats extends AbstractMaterialStats { diff --git a/src/main/java/lance5057/tDefense/core/materials/TDMaterials.java b/src/main/java/lance5057/tDefense/core/materials/TDMaterials.java index 4be694b..c444cba 100644 --- a/src/main/java/lance5057/tDefense/core/materials/TDMaterials.java +++ b/src/main/java/lance5057/tDefense/core/materials/TDMaterials.java @@ -55,188 +55,239 @@ import slimeknights.tconstruct.smeltery.block.BlockMolten; import slimeknights.tconstruct.tools.TinkerMaterials; @Mod.EventBusSubscriber(modid = Reference.MOD_ID) -public class TDMaterials -{ +public class TDMaterials { // public static final List<Material> materials = Lists.newArrayList(); - - String SHIELD = ShieldMaterialStats.TYPE; - String HELM = HelmMaterialStats.TYPE; - String CHEST = ChestMaterialStats.TYPE; - String LEGS = LegsMaterialStats.TYPE; - String BOOTS = BootsMaterialStats.TYPE; - String BAUBLE = BaubleMaterialStats.TYPE; - - public static final Map<String, Material> materials = new THashMap<>(); - public static final Map<String, MaterialIntegration> materialIntegrations = new THashMap<>(); - public static final Collection<String> deferredMaterials = new THashSet<>(); - - public static final Map<String, Integer> colors = new THashMap(); - public static final Map<String, FluidMolten> fluids = new THashMap(); - - public static Material black; - public static Material red; - public static Material green; - public static Material brown; - public static Material blue; - public static Material purple; - public static Material cyan; - public static Material lightgray; - public static Material gray; - public static Material pink; - public static Material lime; - public static Material yellow; - public static Material lightblue; - public static Material magenta; - public static Material orange; - public static Material white; - - public static FluidMolten fluidVile = fluids.put("vile", (FluidMolten) new FluidMolten("vile", 0x111111).setTemperature(0)); - public static FluidMolten fluidVibrant = fluids.put("vibrant", new FluidMolten("vibrant", 0x76ff00)); - public static FluidMolten fluidSlush = fluids.put("slush", (FluidMolten) new FluidMolten("slush", 0xbfefff).setTemperature(0)); - public static FluidMolten fluidQuartz = fluids.put("quartz", (FluidMolten) new FluidMolten("quartz", 0xdddddd).setTemperature(75)); - public static FluidMolten fluidChorusJuice = fluids.put("chorusjuice", new FluidMolten("chorusjuice", 0xd982ff)); - public static FluidMolten fluidDragonsBreath = fluids.put("dragonsbreath", new FluidMolten("dragonsbreath", 0x7f00b7)); + ArmorMaterialStats ams = new ArmorMaterialStats(0, 0, 0, 0, ""); + + String SHIELD = ShieldMaterialStats.TYPE; + String HELM = ArmorMaterialStats.HelmMaterialStats.TYPE; + String CHEST = ArmorMaterialStats.ChestMaterialStats.TYPE; + String LEGS = ArmorMaterialStats.LegsMaterialStats.TYPE; + String BOOTS = ArmorMaterialStats.FeetMaterialStats.TYPE; + String BAUBLE = BaubleMaterialStats.TYPE; + + public static final Map<String, Material> materials = new THashMap<>(); + public static final Map<String, MaterialIntegration> materialIntegrations = new THashMap<>(); + public static final Collection<String> deferredMaterials = new THashSet<>(); + + public static final Map<String, Integer> colors = new THashMap(); + public static final Map<String, FluidMolten> fluids = new THashMap(); + + public static Material black; + public static Material red; + public static Material green; + public static Material brown; + public static Material blue; + public static Material purple; + public static Material cyan; + public static Material lightgray; + public static Material gray; + public static Material pink; + public static Material lime; + public static Material yellow; + public static Material lightblue; + public static Material magenta; + public static Material orange; + public static Material white; + + public static FluidMolten fluidVile = fluids.put("vile", + (FluidMolten) new FluidMolten("vile", 0x111111).setTemperature(0)); + public static FluidMolten fluidVibrant = fluids.put("vibrant", new FluidMolten("vibrant", 0x76ff00)); + public static FluidMolten fluidSlush = fluids.put("slush", + (FluidMolten) new FluidMolten("slush", 0xbfefff).setTemperature(0)); + public static FluidMolten fluidQuartz = fluids.put("quartz", + (FluidMolten) new FluidMolten("quartz", 0xdddddd).setTemperature(75)); + public static FluidMolten fluidChorusJuice = fluids.put("chorusjuice", new FluidMolten("chorusjuice", 0xd982ff)); + public static FluidMolten fluidDragonsBreath = fluids.put("dragonsbreath", + new FluidMolten("dragonsbreath", 0x7f00b7)); List<TDMatHelper> materials_master = new ArrayList<>(); // Base List<TDMatHelper> materials_base = new ArrayList<>(Arrays.asList( - new TDMatHelper("aeonsteel", 0xa470e0, fluids.put("aeonsteel", new FluidMolten("aeonsteel", 0xa470e0)), true).setHead(new HeadMaterialStats(500, 15.00f, 4.0f, HarvestLevels.COBALT)) - .setHandle(new HandleMaterialStats(1.1f, 0)) - .setExtra(new ExtraMaterialStats(50)) - .setShield(new ShieldMaterialStats(500 / 4, 33)) - .setBow(new BowMaterialStats(0.75f, 1.0f, 2.5f)), - new TDMatHelper("queensgold", 0xdcff00, fluids.put("queensgold", new FluidMolten("queensgold", 0xdcff00)), true).setHead(new HeadMaterialStats(70, 3.00f, 3.00f, HarvestLevels.IRON)) - .setHandle(new HandleMaterialStats(1.05f, 35)) - .setExtra(new ExtraMaterialStats(20)) - .setShield(new ShieldMaterialStats(70 / 4, 33)) - .setBow(new BowMaterialStats(1.1f, 1.0f, 0.5f)), - new TDMatHelper("dogbearium", 0x6d3300, fluids.put("dogbearium", new FluidMolten("dogbearium", 0x6d3300)), true).setHead(new HeadMaterialStats(150, 5.00f, 9.00f, HarvestLevels.DIAMOND)) - .setHandle(new HandleMaterialStats(0.85f, 75)) - .setExtra(new ExtraMaterialStats(75)) - .setShield(new ShieldMaterialStats(70 / 4, 33)) - .setBow(new BowMaterialStats(0.1f, 0.5f, 5.5f)), - new TDMatHelper("sinisterium", 0x210000, fluids.put("sinisterium", new FluidMolten("sinisterium", 0x210000)), true).setHead(new HeadMaterialStats(224, 5.00f, 5.00f, HarvestLevels.DIAMOND)) - .setHandle(new HandleMaterialStats(0.75f, 99)) - .setExtra(new ExtraMaterialStats(99)) - .setShield(new ShieldMaterialStats(224 / 4, 33)) - .setBow(new BowMaterialStats(2.1f, 1.6f, 7.2f)), - new TDMatHelper("nihilite", 0x000021, fluids.put("nihilite", new FluidMolten("nihilite", 0x000021)), true).setHead(new HeadMaterialStats(400, 9.7f, 7.1f, HarvestLevels.COBALT)) - .setHandle(new HandleMaterialStats(0.9f, 70)) - .setExtra(new ExtraMaterialStats(74)) - .setShield(new ShieldMaterialStats(400 / 4, 33)) - .setBow(new BowMaterialStats(0.9f, 1.7f, -1f)), - new TDMatHelper("orichalcum", 0xffc700, fluids.put("orichalcum", new FluidMolten("orichalcum", 0xffc700)), true).setHead(new HeadMaterialStats(180, 5.3f, 6.23f, HarvestLevels.OBSIDIAN)) - .setHandle(new HandleMaterialStats(1.1f, 25)) - .setExtra(new ExtraMaterialStats(35)) - .setShield(new ShieldMaterialStats(180 / 4, 33)) - .setBow(new BowMaterialStats(1.9f, 1.9f, 2.3f)), - new TDMatHelper("pandorium", 0x7f6a00, fluids.put("pandorium", new FluidMolten("pandorium", 0x7f6a00)), true).setHead(new HeadMaterialStats(999, 10.2f, 8.72f, HarvestLevels.OBSIDIAN)) - .setHandle(new HandleMaterialStats(0.4f, 999)) - .setExtra(new ExtraMaterialStats(99)) - .setShield(new ShieldMaterialStats(999 / 4, 33)) - .setBow(new BowMaterialStats(3f, 0.9f, 9f)), - new TDMatHelper("rosegold", 0xff9b84, fluids.put("rosegold", new FluidMolten("rosegold", 0xff9b84)), true).setHead(new HeadMaterialStats(99, 4f, 1f, HarvestLevels.STONE)) - .setHandle(new HandleMaterialStats(1.5f, -90)) - .setExtra(new ExtraMaterialStats(-90)) - .setShield(new ShieldMaterialStats(99 / 4, 33)) - .setBow(new BowMaterialStats(0.1f, 0.1f, -2f)), - new TDMatHelper("platinum", 0xe8e8e8, fluids.put("platinum", new FluidMolten("platinum", 0xe8e8e8)), true).setHead(new HeadMaterialStats(99, 3.7f, 4f, HarvestLevels.IRON)) - .setHandle(new HandleMaterialStats(1.5f, -90)) - .setExtra(new ExtraMaterialStats(-90)) - .setShield(new ShieldMaterialStats(99 / 4, 33)) - .setBow(new BowMaterialStats(0.1f, 0.1f, -2f)), - new TDMatHelper("brass", 0xdbb332, fluids.put("brass", new FluidMolten("brass", 0xdbb332)), true).setHead(new HeadMaterialStats(380, 5f, 3f, HarvestLevels.IRON)) - .setHandle(new HandleMaterialStats(0.85f, 90)) - .setExtra(new ExtraMaterialStats(75)) - .setShield(new ShieldMaterialStats(380 / 4, 33)) - .setBow(new BowMaterialStats(0.1f, 0.5f, -1f)), - new TDMatHelper("silver", 0x9e9e9e, new FluidMolten("silver", 0x9e9e9e), false), - new TDMatHelper("gold", 0xfff428, TinkerFluids.gold, true).setIngot(Items.GOLD_INGOT) - .setNugget(Items.GOLD_NUGGET) - .setHead(new HeadMaterialStats(100, 1f, 1f, HarvestLevels.STONE)) - .setHandle(new HandleMaterialStats(0.25f, 10)) - .setExtra(new ExtraMaterialStats(25)) - .setShield(new ShieldMaterialStats(100 / 4, 33)) - .setBow(new BowMaterialStats(0.2f, 0.4f, -1f)), - new TDMatHelper("valyriansteel", 0xe2d9e2, fluids.put("valyriansteel", new FluidMolten("valyriansteel", 0xe2d9e2)), true).setHead(new HeadMaterialStats(610, 7f, 7f, HarvestLevels.OBSIDIAN)) - .setHandle(new HandleMaterialStats(0.9f, 180)) - .setExtra(new ExtraMaterialStats(125)) - .setShield(new ShieldMaterialStats(610 / 4, 33)) - .setBow(new BowMaterialStats(1.6f, 1.5f, 3f)), - new TDMatHelper("froststeel", 0xc6dcff, fluids.put("froststeel", new FluidMolten("froststeel", 0xc6dcff)), true).setHead(new HeadMaterialStats(610, 7f, 7f, HarvestLevels.OBSIDIAN)) - .setHandle(new HandleMaterialStats(1.1f, 110)) - .setExtra(new ExtraMaterialStats(125)) - .setShield(new ShieldMaterialStats(610 / 4, 33)) - .setBow(new BowMaterialStats(1.6f, 1.5f, 3f)), - // new TDMatHelper("resonatingcrystal", 0xffffff, - // fluids.put("resonatingcrystal", new FluidMolten("resonatingcrystal", - // 0xffffff)), true), - new TDMatHelper("pureardite", 0xff4300, fluids.put("pureardite", new FluidMolten("pureardite", 0xff4300)), true).setHead(new HeadMaterialStats(1200, 3.5f, 3.6f, HarvestLevels.COBALT)) - .setHandle(new HandleMaterialStats(1.4f, -200)) - .setExtra(new ExtraMaterialStats(450)) - .setShield(new ShieldMaterialStats(1200 / 4, 33)) - .setBow(new BowMaterialStats(0.45f, 0.8f, 1f)), - new TDMatHelper("purecobalt", 0x547eff, fluids.put("purecobalt", new FluidMolten("purecobalt", 0x547eff)), true).setHead(new HeadMaterialStats(780, 13f, 4.1f, HarvestLevels.COBALT)) - .setHandle(new HandleMaterialStats(1.4f, 100)) - .setExtra(new ExtraMaterialStats(300)) - .setShield(new ShieldMaterialStats(780 / 4, 33)) - .setBow(new BowMaterialStats(0.3f, 1.3f, 3f)), - new TDMatHelper("puremanyullyn", 0xd044ff, fluids.put("puremanyullyn", new FluidMolten("puremanyullyn", 0xd044ff)), true).setHead(new HeadMaterialStats(820, 7.02f, 9.1f, HarvestLevels.COBALT)) - .setHandle(new HandleMaterialStats(0.5f, 350)) - .setExtra(new ExtraMaterialStats(350)) - .setShield(new ShieldMaterialStats(820 / 4, 33)) - .setBow(new BowMaterialStats(0.65f, 1.2f, 4f)), - new TDMatHelper("glass", 0xffffff, TinkerFluids.glass, true).setHead(new HeadMaterialStats(6, 4f, 7f, HarvestLevels.STONE)) - .setHandle(new HandleMaterialStats(0.1f, -45)) - .setExtra(new ExtraMaterialStats(-45)) - .setShield(new ShieldMaterialStats(6 / 4, 33)) - .setBow(new BowMaterialStats(0.1f, 0.1f, -2f)), - new TDMatHelper("ice", 0xdcff00, false), - new TDMatHelper("purifiedgold", 0xffe242, fluids.put("purifiedgold", new FluidMolten("purifiedgold", 0xffe242)), true), - new TDMatHelper("purifiedsilver", 0xefefef, fluids.put("purifiedsilver", new FluidMolten("purifiedsilver", 0xefefef)), true))); + new TDMatHelper("aeonsteel", 0xa470e0, fluids.put("aeonsteel", new FluidMolten("aeonsteel", 0xa470e0)), + true).setHead(new HeadMaterialStats(500, 15.00f, 4.0f, HarvestLevels.COBALT)) + .setHandle(new HandleMaterialStats(1.1f, 0)).setExtra(new ExtraMaterialStats(50)) + .setShield(new ShieldMaterialStats(500 / 4, 85)) + .setBow(new BowMaterialStats(0.75f, 1.0f, 2.5f)) + .setHelm(ams.new HelmMaterialStats(500, 2, 2, 0f)) + .setChest(ams.new ChestMaterialStats(500, 6, 3, 0f)) + .setLegs(ams.new LegsMaterialStats(500, 5, 3, 0f)) + .setBoots(ams.new FeetMaterialStats(500, 3, 2, 0f)), + new TDMatHelper("queensgold", 0xdcff00, fluids.put("queensgold", new FluidMolten("queensgold", 0xdcff00)), + true).setHead(new HeadMaterialStats(70, 3.00f, 3.00f, HarvestLevels.IRON)) + .setHandle(new HandleMaterialStats(1.05f, -45)).setExtra(new ExtraMaterialStats(20)) + .setShield(new ShieldMaterialStats(70 / 4, 57)) + .setBow(new BowMaterialStats(1.1f, 1.0f, 0.5f)) + .setHelm(ams.new HelmMaterialStats(70, 2, 1, 20f)) + .setChest(ams.new ChestMaterialStats(70, 6, 2, 30f)) + .setLegs(ams.new LegsMaterialStats(70, 5, 2, 20f)) + .setBoots(ams.new FeetMaterialStats(70, 2, 1, 15f)), + new TDMatHelper("dogbearium", 0x6d3300, fluids.put("dogbearium", new FluidMolten("dogbearium", 0x6d3300)), + true).setHead(new HeadMaterialStats(150, 5.00f, 9.00f, HarvestLevels.DIAMOND)) + .setHandle(new HandleMaterialStats(0.85f, 75)).setExtra(new ExtraMaterialStats(75)) + .setShield(new ShieldMaterialStats(150 / 4, 75)) + .setBow(new BowMaterialStats(0.1f, 0.5f, 5.5f)) + .setHelm(ams.new HelmMaterialStats(150, 3, 3, -60f)) + .setChest(ams.new ChestMaterialStats(150, 8, 4, -60f)) + .setLegs(ams.new LegsMaterialStats(150, 6, 4, -60f)) + .setBoots(ams.new FeetMaterialStats(150, 3, 3, -60f)), + new TDMatHelper("sinisterium", 0x210000, + fluids.put("sinisterium", new FluidMolten("sinisterium", 0x210000)), true) + .setHead(new HeadMaterialStats(224, 5.00f, 5.00f, HarvestLevels.DIAMOND)) + .setHandle(new HandleMaterialStats(0.75f, 99)).setExtra(new ExtraMaterialStats(99)) + .setShield(new ShieldMaterialStats(224 / 4, 55)) + .setBow(new BowMaterialStats(2.1f, 1.6f, 7.2f)) + .setHelm(ams.new HelmMaterialStats(224, 2, 0, 9.5f)) + .setChest(ams.new ChestMaterialStats(224, 6, 0, 10.5f)) + .setLegs(ams.new LegsMaterialStats(224, 5, 0, 10.0f)) + .setBoots(ams.new FeetMaterialStats(224, 2, 0, 9.5f)), + new TDMatHelper("nihilite", 0x000021, fluids.put("nihilite", new FluidMolten("nihilite", 0x000021)), true) + .setHead(new HeadMaterialStats(400, 9.7f, 7.1f, HarvestLevels.COBALT)) + .setHandle(new HandleMaterialStats(0.9f, 70)).setExtra(new ExtraMaterialStats(74)) + .setShield(new ShieldMaterialStats(400 / 4, 95)).setBow(new BowMaterialStats(0.9f, 1.7f, -1f)) + .setHelm(ams.new HelmMaterialStats(400, 2, 0, 19)) + .setChest(ams.new ChestMaterialStats(400, 5, 0, 15)) + .setLegs(ams.new LegsMaterialStats(400, 4, 0, 15)) + .setBoots(ams.new FeetMaterialStats(400, 2, 0, 19)), + new TDMatHelper("orichalcum", 0xffc700, fluids.put("orichalcum", new FluidMolten("orichalcum", 0xffc700)), + true).setHead(new HeadMaterialStats(180, 5.3f, 6.23f, HarvestLevels.OBSIDIAN)) + .setHandle(new HandleMaterialStats(1.1f, 25)).setExtra(new ExtraMaterialStats(35)) + .setShield(new ShieldMaterialStats(180 / 4, 70)) + .setBow(new BowMaterialStats(1.9f, 1.9f, 2.3f)) + .setHelm(ams.new HelmMaterialStats(180, 2, 2, 20.5f)) + .setChest(ams.new ChestMaterialStats(180, 6, 3, 20.5f)) + .setLegs(ams.new LegsMaterialStats(180, 5, 3, 20.5f)) + .setBoots(ams.new FeetMaterialStats(180, 2, 3, 20.5f)), + new TDMatHelper("pandorium", 0x7f6a00, fluids.put("pandorium", new FluidMolten("pandorium", 0x7f6a00)), + true).setHead(new HeadMaterialStats(999, 10.2f, 8.72f, HarvestLevels.OBSIDIAN)) + .setHandle(new HandleMaterialStats(0.4f, 999)).setExtra(new ExtraMaterialStats(99)) + .setShield(new ShieldMaterialStats(999 / 4, 100)).setBow(new BowMaterialStats(3f, 0.9f, 9f)) + .setHelm(ams.new HelmMaterialStats(999, 3, 3, -70.0f)) + .setChest(ams.new ChestMaterialStats(999, 8, 4, -70.0f)) + .setLegs(ams.new LegsMaterialStats(999, 6, 4, -70.0f)) + .setBoots(ams.new FeetMaterialStats(999, 3, 3, -70.0f)), + new TDMatHelper("rosegold", 0xff9b84, fluids.put("rosegold", new FluidMolten("rosegold", 0xff9b84)), true) + .setHead(new HeadMaterialStats(99, 4f, 1f, HarvestLevels.STONE)) + .setHandle(new HandleMaterialStats(1.5f, -90)).setExtra(new ExtraMaterialStats(-90)) + .setShield(new ShieldMaterialStats(99 / 4, 24)).setBow(new BowMaterialStats(0.1f, 0.1f, -2f)) + .setHelm(ams.new HelmMaterialStats(99, 1, 0, 23.0f)) + .setChest(ams.new ChestMaterialStats(99, 4, 0, 23.0f)) + .setLegs(ams.new LegsMaterialStats(99, 3, 0, 23.0f)) + .setBoots(ams.new FeetMaterialStats(99, 1, 0, 23.0f)), + new TDMatHelper("platinum", 0xe8e8e8, fluids.put("platinum", new FluidMolten("platinum", 0xe8e8e8)), true) + .setHead(new HeadMaterialStats(99, 3.7f, 4f, HarvestLevels.IRON)) + .setHandle(new HandleMaterialStats(1.5f, -90)).setExtra(new ExtraMaterialStats(-90)) + .setShield(new ShieldMaterialStats(99 / 4, 14)).setBow(new BowMaterialStats(0.1f, 0.1f, -2f)) + .setHelm(ams.new HelmMaterialStats(99, 1, 1, 19.0f)) + .setChest(ams.new ChestMaterialStats(99, 4, 1, 19.0f)) + .setLegs(ams.new LegsMaterialStats(99, 3, 1, 19.0f)) + .setBoots(ams.new FeetMaterialStats(99, 1, 1, 19.0f)), + new TDMatHelper("brass", 0xdbb332, fluids.put("brass", new FluidMolten("brass", 0xdbb332)), true) + .setHead(new HeadMaterialStats(380, 5f, 3f, HarvestLevels.IRON)) + .setHandle(new HandleMaterialStats(0.85f, 90)).setExtra(new ExtraMaterialStats(75)) + .setShield(new ShieldMaterialStats(380 / 4, 50)).setBow(new BowMaterialStats(0.1f, 0.5f, -1f)) + .setHelm(ams.new HelmMaterialStats(380, 2, 1, 4.5f)) + .setChest(ams.new ChestMaterialStats(380, 3, 2, 4.5f)) + .setLegs(ams.new LegsMaterialStats(380, 2, 2, 4.5f)) + .setBoots(ams.new FeetMaterialStats(380, 2, 2, 4.5f)), + new TDMatHelper("silver", 0x9e9e9e, new FluidMolten("silver", 0x9e9e9e), false), + new TDMatHelper("gold", 0xfff428, TinkerFluids.gold, true).setIngot(Items.GOLD_INGOT) + .setNugget(Items.GOLD_NUGGET).setHead(new HeadMaterialStats(100, 1f, 1f, HarvestLevels.STONE)) + .setHandle(new HandleMaterialStats(0.25f, 10)).setExtra(new ExtraMaterialStats(25)) + .setShield(new ShieldMaterialStats(100 / 4, 14)).setBow(new BowMaterialStats(0.2f, 0.4f, -1f)) + .setHelm(ams.new HelmMaterialStats(100, 1, 0, 33f)) + .setChest(ams.new ChestMaterialStats(100, 4, 0, 33f)) + .setLegs(ams.new LegsMaterialStats(100, 3, 0, 33f)) + .setBoots(ams.new FeetMaterialStats(100, 1, 0, 33f)), + new TDMatHelper("valyriansteel", 0xe2d9e2, + fluids.put("valyriansteel", new FluidMolten("valyriansteel", 0xe2d9e2)), true) + .setHead(new HeadMaterialStats(610, 7f, 7f, HarvestLevels.OBSIDIAN)) + .setHandle(new HandleMaterialStats(0.9f, 180)).setExtra(new ExtraMaterialStats(125)) + .setShield(new ShieldMaterialStats(610 / 4, 85)) + .setBow(new BowMaterialStats(1.6f, 1.5f, 3f)) + .setHelm(ams.new HelmMaterialStats(610, 3, 3, 0)) + .setChest(ams.new ChestMaterialStats(610, 7, 4, 0)) + .setLegs(ams.new LegsMaterialStats(610, 6, 2, 0)) + .setBoots(ams.new FeetMaterialStats(610, 3, 3, 0)), + new TDMatHelper("froststeel", 0xc6dcff, fluids.put("froststeel", new FluidMolten("froststeel", 0xc6dcff)), + true).setHead(new HeadMaterialStats(610, 7f, 7f, HarvestLevels.OBSIDIAN)) + .setHandle(new HandleMaterialStats(1.1f, 110)).setExtra(new ExtraMaterialStats(125)) + .setShield(new ShieldMaterialStats(610 / 4, 85)) + .setBow(new BowMaterialStats(1.6f, 1.5f, 3f)) + .setHelm(ams.new HelmMaterialStats(610, 2, 2, 0)) + .setChest(ams.new ChestMaterialStats(610, 6, 3, 0)) + .setLegs(ams.new LegsMaterialStats(610, 5, 2, 0)) + .setBoots(ams.new FeetMaterialStats(610, 3, 1, 0)), + new TDMatHelper("pureardite", 0xff4300, fluids.put("pureardite", new FluidMolten("pureardite", 0xff4300)), + true).setHead(new HeadMaterialStats(1200, 3.5f, 3.6f, HarvestLevels.COBALT)) + .setHandle(new HandleMaterialStats(1.4f, -200)).setExtra(new ExtraMaterialStats(450)) + .setShield(new ShieldMaterialStats(1200 / 4, 33)) + .setBow(new BowMaterialStats(0.45f, 0.8f, 1f)), + new TDMatHelper("purecobalt", 0x547eff, fluids.put("purecobalt", new FluidMolten("purecobalt", 0x547eff)), + true).setHead(new HeadMaterialStats(780, 13f, 4.1f, HarvestLevels.COBALT)) + .setHandle(new HandleMaterialStats(1.4f, 100)).setExtra(new ExtraMaterialStats(300)) + .setShield(new ShieldMaterialStats(780 / 4, 33)) + .setBow(new BowMaterialStats(0.3f, 1.3f, 3f)), + new TDMatHelper("puremanyullyn", 0xd044ff, + fluids.put("puremanyullyn", new FluidMolten("puremanyullyn", 0xd044ff)), true) + .setHead(new HeadMaterialStats(820, 7.02f, 9.1f, HarvestLevels.COBALT)) + .setHandle(new HandleMaterialStats(0.5f, 350)).setExtra(new ExtraMaterialStats(350)) + .setShield(new ShieldMaterialStats(820 / 4, 33)) + .setBow(new BowMaterialStats(0.65f, 1.2f, 4f)), + new TDMatHelper("glass", 0xffffff, TinkerFluids.glass, true) + .setHead(new HeadMaterialStats(6, 4f, 7f, HarvestLevels.STONE)) + .setHandle(new HandleMaterialStats(0.1f, -45)).setExtra(new ExtraMaterialStats(-45)) + .setShield(new ShieldMaterialStats(6 / 4, 33)).setBow(new BowMaterialStats(0.1f, 0.1f, -2f)), + new TDMatHelper("ice", 0xdcff00, false), + new TDMatHelper("purifiedgold", 0xffe242, + fluids.put("purifiedgold", new FluidMolten("purifiedgold", 0xffe242)), true), + new TDMatHelper("purifiedsilver", 0xefefef, + fluids.put("purifiedsilver", new FluidMolten("purifiedsilver", 0xefefef)), true))); // Jokes - List<TDMatHelper> materials_joke = new ArrayList<>(Arrays.asList(new TDMatHelper("cheese", 0xffe900, fluids.put("cheese", new FluidMolten("cheese", 0xffe900)), true), - new TDMatHelper("bread", 0x89732a), - new TDMatHelper("melon", 0xff77a4))); + List<TDMatHelper> materials_joke = new ArrayList<>(Arrays.asList( + new TDMatHelper("cheese", 0xffe900, fluids.put("cheese", new FluidMolten("cheese", 0xffe900)), true), + new TDMatHelper("bread", 0x89732a), new TDMatHelper("melon", 0xff77a4))); // Holiday - List<TDMatHelper> materials_xmas = new ArrayList<>(Arrays.asList(new TDMatHelper("redcandy", 0xff0000).setNugget(TinkersDefense.holiday.item_redmintcane), - new TDMatHelper("greencandy", 0x00ff00).setNugget(TinkersDefense.holiday.item_greenmintcane))); + List<TDMatHelper> materials_xmas = new ArrayList<>( + Arrays.asList(new TDMatHelper("redcandy", 0xff0000).setNugget(TinkersDefense.holiday.item_redmintcane), + new TDMatHelper("greencandy", 0x00ff00).setNugget(TinkersDefense.holiday.item_greenmintcane))); // Gems List<TDMatHelper> materials_gems = new ArrayList<>(Arrays.asList(new TDMatHelper("sapphire", 0x6e00ff), - new TDMatHelper("ruby", 0xff0061, true, true), - new TDMatHelper("emerald", 0x16cc4f, true, true).setGem(Items.EMERALD), - new TDMatHelper("diamond", 0x96ecf2, true, true).setGem(Items.DIAMOND), - new TDMatHelper("starsapphire", 0x6e00ff, true, true), - new TDMatHelper("starruby", 0xff0061, true, true), - new TDMatHelper("citrine", 0xffe877, true, true), - new TDMatHelper("ghasttear", 0xe8fbff, true, true), - new TDMatHelper("quartz", 0xede8e8, true, true), - new TDMatHelper("glowstonecrystal", 0xfff956, true, true), - new TDMatHelper("enderpearl", 0x2bad3a, true, true), - new TDMatHelper("amethyst", 0xb436e2, true, true), - new TDMatHelper("lapis", 0x4349bc, true, true).setGem(new ItemStack(Items.DYE, 1, 4)), - new TDMatHelper("topaz", 0xffc551, true, true), - new TDMatHelper("garnet", 0x9e1c1c, true, true), - new TDMatHelper("opal", 0xe2e2e2, true, true), - new TDMatHelper("tanzanite", 0x8860e5, true, true), - new TDMatHelper("amber", 0xdba827, true, true))); + new TDMatHelper("ruby", 0xff0061, true, true), + new TDMatHelper("emerald", 0x16cc4f, true, true).setGem(Items.EMERALD), + new TDMatHelper("diamond", 0x96ecf2, true, true).setGem(Items.DIAMOND), + new TDMatHelper("starsapphire", 0x6e00ff, true, true), new TDMatHelper("starruby", 0xff0061, true, true), + new TDMatHelper("citrine", 0xffe877, true, true), new TDMatHelper("ghasttear", 0xe8fbff, true, true), + new TDMatHelper("quartz", 0xede8e8, true, true), new TDMatHelper("glowstonecrystal", 0xfff956, true, true), + new TDMatHelper("enderpearl", 0x2bad3a, true, true), new TDMatHelper("amethyst", 0xb436e2, true, true), + new TDMatHelper("lapis", 0x4349bc, true, true).setGem(new ItemStack(Items.DYE, 1, 4)), + new TDMatHelper("topaz", 0xffc551, true, true), new TDMatHelper("garnet", 0x9e1c1c, true, true), + new TDMatHelper("opal", 0xe2e2e2, true, true), new TDMatHelper("tanzanite", 0x8860e5, true, true), + new TDMatHelper("amber", 0xdba827, true, true))); // Cornucopia - List<TDMatHelper> materials_cornucopia = new ArrayList<>(Arrays.asList(new TDMatHelper("gallite", 0x198c09, fluids.put("gallite", new FluidMolten("gallite", 0x198c09)), true), - new TDMatHelper("sundrop", 0xfff987, fluids.put("sundrop", new FluidMolten("sundrop", 0xfff987)), true), - new TDMatHelper("voidite", 0x450059, fluids.put("voidite", new FluidMolten("voidite", 0x450059)), true), - new TDMatHelper("solarium", 0xffff31, fluids.put("solarium", new FluidMolten("solarium", 0xffff31)), true), - new TDMatHelper("dragonsteel", 0x55914d, fluids.put("dragonsteel", new FluidMolten("dragonsteel", 0x55914d)), true), - new TDMatHelper("blacksteel", 0x383838, fluids.put("blacksteel", new FluidMolten("blacksteel", 0x383838)), true), - new TDMatHelper("abyssalium", 0x000633, fluids.put("abyssalium", new FluidMolten("abyssalium", 0x000633)), true), - new TDMatHelper("depthsilver", 0x646782, fluids.put("depthsilver", new FluidMolten("depthsilver", 0x646782)), true), - new TDMatHelper("moonsilver", 0x777777, fluids.put("moonsilver", new FluidMolten("moonsilver", 0x777777)), true), - new TDMatHelper("novagold", 0xffc300, fluids.put("novagold", new FluidMolten("novagold", 0xffc300)), true))); + List<TDMatHelper> materials_cornucopia = new ArrayList<>(Arrays.asList( + new TDMatHelper("gallite", 0x198c09, fluids.put("gallite", new FluidMolten("gallite", 0x198c09)), true), + new TDMatHelper("sundrop", 0xfff987, fluids.put("sundrop", new FluidMolten("sundrop", 0xfff987)), true), + new TDMatHelper("voidite", 0x450059, fluids.put("voidite", new FluidMolten("voidite", 0x450059)), true), + new TDMatHelper("solarium", 0xffff31, fluids.put("solarium", new FluidMolten("solarium", 0xffff31)), true), + new TDMatHelper("dragonsteel", 0x55914d, + fluids.put("dragonsteel", new FluidMolten("dragonsteel", 0x55914d)), true), + new TDMatHelper("blacksteel", 0x383838, fluids.put("blacksteel", new FluidMolten("blacksteel", 0x383838)), + true), + new TDMatHelper("abyssalium", 0x000633, fluids.put("abyssalium", new FluidMolten("abyssalium", 0x000633)), + true), + new TDMatHelper("depthsilver", 0x646782, + fluids.put("depthsilver", new FluidMolten("depthsilver", 0x646782)), true), + new TDMatHelper("moonsilver", 0x777777, fluids.put("moonsilver", new FluidMolten("moonsilver", 0x777777)), + true), + new TDMatHelper("novagold", 0xffc300, fluids.put("novagold", new FluidMolten("novagold", 0xffc300)), + true))); // // Blood Magic // List<String> materials_bm = new ArrayList<>( // Arrays.asList("blankslate", "reinforcedslate", "imbued", "demonic", @@ -251,11 +302,11 @@ public class TDMaterials // List<String> materials_pam = new // ArrayList<>(Arrays.asList("hardenedleather")); - public static TDOreDictItem ingot; - public static TDOreDictItem dust; - public static TDOreDictItem nugget; - public static TDOreDictItem grain; - public static TDOreDictItem gem; + public static TDOreDictItem ingot; + public static TDOreDictItem dust; + public static TDOreDictItem nugget; + public static TDOreDictItem grain; + public static TDOreDictItem gem; // public static final AbstractTrait axelover = new TraitAxeLover(); // public static final AbstractTrait dulling = new TraitDulling(); @@ -263,46 +314,39 @@ public class TDMaterials // public static final AbstractTrait barbed = new TraitBarbed(); // public static final AbstractTrait dogtoy = new TraitDogToy(); - static ArrayList<Item> itemList = new ArrayList<Item>(); - static ArrayList<Block> blockList = new ArrayList<Block>(); + static ArrayList<Item> itemList = new ArrayList<Item>(); + static ArrayList<Block> blockList = new ArrayList<Block>(); - private static Material mat(String name, int color) - { + private static Material mat(String name, int color) { Material mat = new Material(name, color); // materials.add(mat); return mat; } - List<String> getMatNames(List<TDMatHelper> mats) - { + List<String> getMatNames(List<TDMatHelper> mats) { List<String> r = new ArrayList<String>(); - for (TDMatHelper m : mats) - { + for (TDMatHelper m : mats) { r.add(m.name); } return r; } - List<Integer> getMatColors(List<TDMatHelper> mats) - { + List<Integer> getMatColors(List<TDMatHelper> mats) { List<Integer> r = new ArrayList<Integer>(); - for (TDMatHelper m : mats) - { + for (TDMatHelper m : mats) { r.add(m.color); } return r; } - List<FluidMolten> getMatFluids(List<TDMatHelper> mats) - { + List<FluidMolten> getMatFluids(List<TDMatHelper> mats) { List<FluidMolten> r = new ArrayList<FluidMolten>(); - for (TDMatHelper m : mats) - { + for (TDMatHelper m : mats) { r.add(m.fluid); } @@ -310,8 +354,7 @@ public class TDMaterials } @Subscribe - public void preInit(FMLPreInitializationEvent event) - { + public void preInit(FMLPreInitializationEvent event) { if (TinkersDefense.config.materials.enableBaseMaterials) this.materials_master.addAll(materials_base); @@ -337,8 +380,7 @@ public class TDMaterials List<TDMatHelper> gemMaster = new ArrayList<TDMatHelper>(); List<TDMatHelper> ingotMaster = new ArrayList<TDMatHelper>(); - for (TDMatHelper i : materials_master) - { + for (TDMatHelper i : materials_master) { if (i.isGem) gemMaster.add(i); else @@ -351,229 +393,225 @@ public class TDMaterials registerClothMaterials(); Material.UNKNOWN.addStats(new ShieldMaterialStats(35, 33)); - Material.UNKNOWN.addStats(new HelmMaterialStats(35, 1, 0)); - Material.UNKNOWN.addStats(new ChestMaterialStats(35, 1, 0)); - Material.UNKNOWN.addStats(new LegsMaterialStats(35, 1, 0)); - Material.UNKNOWN.addStats(new BootsMaterialStats(35, 1, 0)); - Material.UNKNOWN.addStats(new ClothMaterialStats(35, 0)); + Material.UNKNOWN.addStats(ams.new HelmMaterialStats(35, 1, 0, 0)); + Material.UNKNOWN.addStats(ams.new ChestMaterialStats(35, 1, 0, 0)); + Material.UNKNOWN.addStats(ams.new LegsMaterialStats(35, 1, 0, 0)); + Material.UNKNOWN.addStats(ams.new FeetMaterialStats(35, 1, 0, 0)); + Material.UNKNOWN.addStats(ams.new ClothMaterialStats(35, 0, 0, 0)); Material.UNKNOWN.addStats(new BaubleMaterialStats(35)); - TinkerRegistry.addMaterialStats(this.white, new ClothMaterialStats(100, 10)); - TinkerRegistry.addMaterialStats(this.black, new ClothMaterialStats(100, 10)); - TinkerRegistry.addMaterialStats(this.blue, new ClothMaterialStats(100, 10)); - TinkerRegistry.addMaterialStats(this.brown, new ClothMaterialStats(100, 10)); - TinkerRegistry.addMaterialStats(this.cyan, new ClothMaterialStats(100, 10)); - TinkerRegistry.addMaterialStats(this.gray, new ClothMaterialStats(100, 10)); - TinkerRegistry.addMaterialStats(this.green, new ClothMaterialStats(100, 10)); - TinkerRegistry.addMaterialStats(this.lightblue, new ClothMaterialStats(100, 10)); - TinkerRegistry.addMaterialStats(this.lightgray, new ClothMaterialStats(100, 10)); - TinkerRegistry.addMaterialStats(this.lime, new ClothMaterialStats(100, 10)); - TinkerRegistry.addMaterialStats(this.magenta, new ClothMaterialStats(100, 10)); - TinkerRegistry.addMaterialStats(this.orange, new ClothMaterialStats(100, 10)); - TinkerRegistry.addMaterialStats(this.pink, new ClothMaterialStats(100, 10)); - TinkerRegistry.addMaterialStats(this.purple, new ClothMaterialStats(100, 10)); - TinkerRegistry.addMaterialStats(this.red, new ClothMaterialStats(100, 10)); - TinkerRegistry.addMaterialStats(this.yellow, new ClothMaterialStats(100, 10)); - - TinkerRegistry.addMaterialStats(TinkerMaterials.wood, new ShieldMaterialStats(35, 33)); - TinkerRegistry.addMaterialStats(TinkerMaterials.wood, new HelmMaterialStats(35, 2, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.wood, new ChestMaterialStats(35, 5, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.wood, new LegsMaterialStats(35, 3, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.wood, new BootsMaterialStats(35, 1, 0)); + TinkerRegistry.addMaterialStats(this.white, ams.new ClothMaterialStats(100, 10, 0, 25)); + TinkerRegistry.addMaterialStats(this.black, ams.new ClothMaterialStats(100, 10, 0, 25)); + TinkerRegistry.addMaterialStats(this.blue, ams.new ClothMaterialStats(100, 10, 0, 25)); + TinkerRegistry.addMaterialStats(this.brown, ams.new ClothMaterialStats(100, 10, 0, 25)); + TinkerRegistry.addMaterialStats(this.cyan, ams.new ClothMaterialStats(100, 10, 0, 25)); + TinkerRegistry.addMaterialStats(this.gray, ams.new ClothMaterialStats(100, 10, 0, 25)); + TinkerRegistry.addMaterialStats(this.green, ams.new ClothMaterialStats(100, 10, 0, 25)); + TinkerRegistry.addMaterialStats(this.lightblue, ams.new ClothMaterialStats(100, 10, 0, 25)); + TinkerRegistry.addMaterialStats(this.lightgray, ams.new ClothMaterialStats(100, 10, 0, 25)); + TinkerRegistry.addMaterialStats(this.lime, ams.new ClothMaterialStats(100, 10, 0, 25)); + TinkerRegistry.addMaterialStats(this.magenta, ams.new ClothMaterialStats(100, 10, 0, 25)); + TinkerRegistry.addMaterialStats(this.orange, ams.new ClothMaterialStats(100, 10, 0, 25)); + TinkerRegistry.addMaterialStats(this.pink, ams.new ClothMaterialStats(100, 10, 0, 25)); + TinkerRegistry.addMaterialStats(this.purple, ams.new ClothMaterialStats(100, 10, 0, 25)); + TinkerRegistry.addMaterialStats(this.red, ams.new ClothMaterialStats(100, 10, 0, 25)); + TinkerRegistry.addMaterialStats(this.yellow, ams.new ClothMaterialStats(100, 10, 0, 25)); + + TinkerRegistry.addMaterialStats(TinkerMaterials.wood, new ShieldMaterialStats(35, 25)); + TinkerRegistry.addMaterialStats(TinkerMaterials.wood, ams.new HelmMaterialStats(35, 1, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.wood, ams.new ChestMaterialStats(35, 3, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.wood, ams.new LegsMaterialStats(35, 2, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.wood, ams.new FeetMaterialStats(35, 1, 0, 0)); // TinkerMaterials.wood.addTrait(axelover, SHIELD); - TinkerRegistry.addMaterialStats(TinkerMaterials.stone, new ShieldMaterialStats(120, 33)); - TinkerRegistry.addMaterialStats(TinkerMaterials.stone, new HelmMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.stone, new ChestMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.stone, new LegsMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.stone, new BootsMaterialStats(35, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.stone, new ShieldMaterialStats(120, 30)); + TinkerRegistry.addMaterialStats(TinkerMaterials.stone, ams.new HelmMaterialStats(120, 2, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.stone, ams.new ChestMaterialStats(120, 4, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.stone, ams.new LegsMaterialStats(120, 3, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.stone, ams.new FeetMaterialStats(120, 2, 0, 0)); // TinkerRegistry.addMaterialTrait(TinkerMaterials.stone, dulling, // SHIELD); // TinkerMaterials.stone.addTrait(dulling, SHIELD); - TinkerRegistry.addMaterialStats(TinkerMaterials.flint, new ShieldMaterialStats(150, 33)); - TinkerRegistry.addMaterialStats(TinkerMaterials.flint, new HelmMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.flint, new ChestMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.flint, new LegsMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.flint, new BootsMaterialStats(35, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.flint, new ShieldMaterialStats(150, 30)); + TinkerRegistry.addMaterialStats(TinkerMaterials.flint, ams.new HelmMaterialStats(150, 2, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.flint, ams.new ChestMaterialStats(150, 4, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.flint, ams.new LegsMaterialStats(150, 3, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.flint, ams.new FeetMaterialStats(150, 2, 0, 0)); // TinkerRegistry.addMaterialTrait(TinkerMaterials.flint, firestarter, // SHIELD); - TinkerRegistry.addMaterialStats(TinkerMaterials.cactus, new ShieldMaterialStats(210, 33)); - TinkerRegistry.addMaterialStats(TinkerMaterials.cactus, new HelmMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.cactus, new ChestMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.cactus, new LegsMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.cactus, new BootsMaterialStats(35, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.cactus, new ShieldMaterialStats(210, 25)); + TinkerRegistry.addMaterialStats(TinkerMaterials.cactus, ams.new HelmMaterialStats(210, 1, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.cactus, ams.new ChestMaterialStats(210, 3, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.cactus, ams.new LegsMaterialStats(210, 2, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.cactus, ams.new FeetMaterialStats(210, 1, 0, 0)); // TinkerRegistry.addMaterialTrait(TinkerMaterials.cactus, barbed, // SHIELD); - TinkerRegistry.addMaterialStats(TinkerMaterials.bone, new ShieldMaterialStats(200, 33)); - TinkerRegistry.addMaterialStats(TinkerMaterials.bone, new HelmMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.bone, new ChestMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.bone, new LegsMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.bone, new BootsMaterialStats(35, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.bone, new ShieldMaterialStats(200, 40)); + TinkerRegistry.addMaterialStats(TinkerMaterials.bone, ams.new HelmMaterialStats(200, 2, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.bone, ams.new ChestMaterialStats(200, 4, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.bone, ams.new LegsMaterialStats(200, 4, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.bone, ams.new FeetMaterialStats(200, 2, 0, 0)); // TinkerRegistry.addMaterialTrait(TinkerMaterials.bone, dogtoy, // SHIELD); - TinkerRegistry.addMaterialStats(TinkerMaterials.obsidian, new ShieldMaterialStats(139, 33)); - TinkerRegistry.addMaterialStats(TinkerMaterials.obsidian, new HelmMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.obsidian, new ChestMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.obsidian, new LegsMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.obsidian, new BootsMaterialStats(35, 0, 0)); - - TinkerRegistry.addMaterialStats(TinkerMaterials.prismarine, new ShieldMaterialStats(430, 33)); - TinkerRegistry.addMaterialStats(TinkerMaterials.prismarine, new HelmMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.prismarine, new ChestMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.prismarine, new LegsMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.prismarine, new BootsMaterialStats(35, 0, 0)); - - TinkerRegistry.addMaterialStats(TinkerMaterials.endstone, new ShieldMaterialStats(420, 33)); - TinkerRegistry.addMaterialStats(TinkerMaterials.endstone, new HelmMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.endstone, new ChestMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.endstone, new LegsMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.endstone, new BootsMaterialStats(35, 0, 0)); - - TinkerRegistry.addMaterialStats(TinkerMaterials.paper, new ShieldMaterialStats(12, 33)); - TinkerRegistry.addMaterialStats(TinkerMaterials.paper, new HelmMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.paper, new ChestMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.paper, new LegsMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.paper, new BootsMaterialStats(35, 0, 0)); - - TinkerRegistry.addMaterialStats(TinkerMaterials.sponge, new ShieldMaterialStats(550, 33)); - TinkerRegistry.addMaterialStats(TinkerMaterials.sponge, new HelmMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.sponge, new ChestMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.sponge, new LegsMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.sponge, new BootsMaterialStats(35, 0, 0)); - - TinkerRegistry.addMaterialStats(TinkerMaterials.firewood, new ShieldMaterialStats(550, 33)); - TinkerRegistry.addMaterialStats(TinkerMaterials.firewood, new HelmMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.firewood, new ChestMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.firewood, new LegsMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.firewood, new BootsMaterialStats(35, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.obsidian, new ShieldMaterialStats(139, 50)); + TinkerRegistry.addMaterialStats(TinkerMaterials.obsidian, ams.new HelmMaterialStats(139, 2, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.obsidian, ams.new ChestMaterialStats(139, 6, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.obsidian, ams.new LegsMaterialStats(139, 5, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.obsidian, ams.new FeetMaterialStats(139, 2, 0, 0)); + + TinkerRegistry.addMaterialStats(TinkerMaterials.prismarine, new ShieldMaterialStats(430, 45)); + TinkerRegistry.addMaterialStats(TinkerMaterials.prismarine, ams.new HelmMaterialStats(430, 2, 0, 2.5f)); + TinkerRegistry.addMaterialStats(TinkerMaterials.prismarine, ams.new ChestMaterialStats(430, 5, 0, 3.5f)); + TinkerRegistry.addMaterialStats(TinkerMaterials.prismarine, ams.new LegsMaterialStats(430, 5, 0, 3.0f)); + TinkerRegistry.addMaterialStats(TinkerMaterials.prismarine, ams.new FeetMaterialStats(430, 2, 0, 2.5f)); + + TinkerRegistry.addMaterialStats(TinkerMaterials.endstone, new ShieldMaterialStats(420, 50)); + TinkerRegistry.addMaterialStats(TinkerMaterials.endstone, ams.new HelmMaterialStats(420, 3, 1, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.endstone, ams.new ChestMaterialStats(420, 6, 1, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.endstone, ams.new LegsMaterialStats(420, 5, 1, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.endstone, ams.new FeetMaterialStats(420, 3, 1, 0)); + + TinkerRegistry.addMaterialStats(TinkerMaterials.paper, new ShieldMaterialStats(12, 10)); + TinkerRegistry.addMaterialStats(TinkerMaterials.paper, ams.new HelmMaterialStats(12, 1, 0, 4)); + TinkerRegistry.addMaterialStats(TinkerMaterials.paper, ams.new ChestMaterialStats(12, 2, 0, 5.5f)); + TinkerRegistry.addMaterialStats(TinkerMaterials.paper, ams.new LegsMaterialStats(12, 1, 0, 5)); + TinkerRegistry.addMaterialStats(TinkerMaterials.paper, ams.new FeetMaterialStats(12, 1, 0, 4)); + + TinkerRegistry.addMaterialStats(TinkerMaterials.sponge, new ShieldMaterialStats(550, 20)); + TinkerRegistry.addMaterialStats(TinkerMaterials.sponge, ams.new HelmMaterialStats(550, 1, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.sponge, ams.new ChestMaterialStats(550, 2, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.sponge, ams.new LegsMaterialStats(550, 2, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.sponge, ams.new FeetMaterialStats(550, 1, 0, 0)); + + TinkerRegistry.addMaterialStats(TinkerMaterials.firewood, new ShieldMaterialStats(550, 25)); + TinkerRegistry.addMaterialStats(TinkerMaterials.firewood, ams.new HelmMaterialStats(550, 1, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.firewood, ams.new ChestMaterialStats(550, 3, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.firewood, ams.new LegsMaterialStats(550, 2, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.firewood, ams.new FeetMaterialStats(550, 1, 0, 0)); // Slime - TinkerRegistry.addMaterialStats(TinkerMaterials.slime, new ShieldMaterialStats(1000, 33)); - TinkerRegistry.addMaterialStats(TinkerMaterials.slime, new HelmMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.slime, new ChestMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.slime, new LegsMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.slime, new BootsMaterialStats(35, 0, 0)); - - TinkerRegistry.addMaterialStats(TinkerMaterials.blueslime, new ShieldMaterialStats(780, 33)); - TinkerRegistry.addMaterialStats(TinkerMaterials.blueslime, new HelmMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.blueslime, new ChestMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.blueslime, new LegsMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.blueslime, new BootsMaterialStats(35, 0, 0)); - - TinkerRegistry.addMaterialStats(TinkerMaterials.knightslime, new ShieldMaterialStats(850, 33)); - TinkerRegistry.addMaterialStats(TinkerMaterials.knightslime, new HelmMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.knightslime, new ChestMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.knightslime, new LegsMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.knightslime, new BootsMaterialStats(35, 0, 0)); - - TinkerRegistry.addMaterialStats(TinkerMaterials.magmaslime, new ShieldMaterialStats(600, 33)); - TinkerRegistry.addMaterialStats(TinkerMaterials.magmaslime, new HelmMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.magmaslime, new ChestMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.magmaslime, new LegsMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.magmaslime, new BootsMaterialStats(35, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.slime, new ShieldMaterialStats(1000, 5)); + TinkerRegistry.addMaterialStats(TinkerMaterials.slime, ams.new HelmMaterialStats(1000, 1, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.slime, ams.new ChestMaterialStats(1000, 2, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.slime, ams.new LegsMaterialStats(1000, 2, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.slime, ams.new FeetMaterialStats(1000, 1, 0, 0)); + + TinkerRegistry.addMaterialStats(TinkerMaterials.blueslime, new ShieldMaterialStats(780, 7)); + TinkerRegistry.addMaterialStats(TinkerMaterials.blueslime, ams.new HelmMaterialStats(780, 1, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.blueslime, ams.new ChestMaterialStats(780, 2, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.blueslime, ams.new LegsMaterialStats(780, 2, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.blueslime, ams.new FeetMaterialStats(780, 1, 0, 0)); + + TinkerRegistry.addMaterialStats(TinkerMaterials.knightslime, new ShieldMaterialStats(850, 27)); + TinkerRegistry.addMaterialStats(TinkerMaterials.knightslime, ams.new HelmMaterialStats(850, 2, 1, 1.5f)); + TinkerRegistry.addMaterialStats(TinkerMaterials.knightslime, ams.new ChestMaterialStats(850, 6, 1, 2.5f)); + TinkerRegistry.addMaterialStats(TinkerMaterials.knightslime, ams.new LegsMaterialStats(850, 5, 1, 2.0f)); + TinkerRegistry.addMaterialStats(TinkerMaterials.knightslime, ams.new FeetMaterialStats(850, 2, 1, 1.5f)); + + TinkerRegistry.addMaterialStats(TinkerMaterials.magmaslime, new ShieldMaterialStats(600, 6)); + TinkerRegistry.addMaterialStats(TinkerMaterials.magmaslime, ams.new HelmMaterialStats(600, 1, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.magmaslime, ams.new ChestMaterialStats(600, 2, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.magmaslime, ams.new LegsMaterialStats(600, 2, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.magmaslime, ams.new FeetMaterialStats(600, 1, 0, 0)); // Nether - TinkerRegistry.addMaterialStats(TinkerMaterials.netherrack, new ShieldMaterialStats(270, 33)); - TinkerRegistry.addMaterialStats(TinkerMaterials.netherrack, new HelmMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.netherrack, new ChestMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.netherrack, new LegsMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.netherrack, new BootsMaterialStats(35, 0, 0)); - - TinkerRegistry.addMaterialStats(TinkerMaterials.cobalt, new ShieldMaterialStats(780, 33)); - TinkerRegistry.addMaterialStats(TinkerMaterials.cobalt, new HelmMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.cobalt, new ChestMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.cobalt, new LegsMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.cobalt, new BootsMaterialStats(35, 0, 0)); - - TinkerRegistry.addMaterialStats(TinkerMaterials.ardite, new ShieldMaterialStats(990, 33)); - TinkerRegistry.addMaterialStats(TinkerMaterials.ardite, new HelmMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.ardite, new ChestMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.ardite, new LegsMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.ardite, new BootsMaterialStats(35, 0, 0)); - - TinkerRegistry.addMaterialStats(TinkerMaterials.manyullyn, new ShieldMaterialStats(820, 33)); - TinkerRegistry.addMaterialStats(TinkerMaterials.manyullyn, new HelmMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.manyullyn, new ChestMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.manyullyn, new LegsMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.manyullyn, new BootsMaterialStats(35, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.netherrack, new ShieldMaterialStats(270, 20)); + TinkerRegistry.addMaterialStats(TinkerMaterials.netherrack, ams.new HelmMaterialStats(270, 1, 0, -12)); + TinkerRegistry.addMaterialStats(TinkerMaterials.netherrack, ams.new ChestMaterialStats(270, 3, 0, -12)); + TinkerRegistry.addMaterialStats(TinkerMaterials.netherrack, ams.new LegsMaterialStats(270, 2, 0, -12)); + TinkerRegistry.addMaterialStats(TinkerMaterials.netherrack, ams.new FeetMaterialStats(270, 1, 0, -12)); + + TinkerRegistry.addMaterialStats(TinkerMaterials.cobalt, new ShieldMaterialStats(780, 55)); + TinkerRegistry.addMaterialStats(TinkerMaterials.cobalt, ams.new HelmMaterialStats(780, 3, 0, 5)); + TinkerRegistry.addMaterialStats(TinkerMaterials.cobalt, ams.new ChestMaterialStats(780, 7, 0, 5)); + TinkerRegistry.addMaterialStats(TinkerMaterials.cobalt, ams.new LegsMaterialStats(780, 5, 0, 5)); + TinkerRegistry.addMaterialStats(TinkerMaterials.cobalt, ams.new FeetMaterialStats(780, 3, 0, 5)); + + TinkerRegistry.addMaterialStats(TinkerMaterials.ardite, new ShieldMaterialStats(990, 75)); + TinkerRegistry.addMaterialStats(TinkerMaterials.ardite, ams.new HelmMaterialStats(990, 3, 3, -100)); + TinkerRegistry.addMaterialStats(TinkerMaterials.ardite, ams.new ChestMaterialStats(990, 8, 4, -100)); + TinkerRegistry.addMaterialStats(TinkerMaterials.ardite, ams.new LegsMaterialStats(990, 6, 4, -100)); + TinkerRegistry.addMaterialStats(TinkerMaterials.ardite, ams.new FeetMaterialStats(990, 3, 3, -100)); + + TinkerRegistry.addMaterialStats(TinkerMaterials.manyullyn, new ShieldMaterialStats(820, 60)); + TinkerRegistry.addMaterialStats(TinkerMaterials.manyullyn, ams.new HelmMaterialStats(820, 3, 2, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.manyullyn, ams.new ChestMaterialStats(820, 8, 2, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.manyullyn, ams.new LegsMaterialStats(820, 6, 2, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.manyullyn, ams.new FeetMaterialStats(820, 3, 2, 0)); // Metals - TinkerRegistry.addMaterialStats(TinkerMaterials.iron, new ShieldMaterialStats(204, 33)); - TinkerRegistry.addMaterialStats(TinkerMaterials.iron, new HelmMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.iron, new ChestMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.iron, new LegsMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.iron, new BootsMaterialStats(35, 0, 0)); - - TinkerRegistry.addMaterialStats(TinkerMaterials.pigiron, new ShieldMaterialStats(380, 33)); - TinkerRegistry.addMaterialStats(TinkerMaterials.pigiron, new HelmMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.pigiron, new ChestMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.pigiron, new LegsMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.pigiron, new BootsMaterialStats(35, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.iron, new ShieldMaterialStats(204, 50)); + TinkerRegistry.addMaterialStats(TinkerMaterials.iron, ams.new HelmMaterialStats(204, 2, 0, -4)); + TinkerRegistry.addMaterialStats(TinkerMaterials.iron, ams.new ChestMaterialStats(204, 6, 0, -5)); + TinkerRegistry.addMaterialStats(TinkerMaterials.iron, ams.new LegsMaterialStats(204, 5, 0, -4)); + TinkerRegistry.addMaterialStats(TinkerMaterials.iron, ams.new FeetMaterialStats(204, 2, 0, -3)); + + TinkerRegistry.addMaterialStats(TinkerMaterials.pigiron, new ShieldMaterialStats(380, 52)); + TinkerRegistry.addMaterialStats(TinkerMaterials.pigiron, ams.new HelmMaterialStats(380, 2, 0, 0.5f)); + TinkerRegistry.addMaterialStats(TinkerMaterials.pigiron, ams.new ChestMaterialStats(380, 6, 0, 1.5f)); + TinkerRegistry.addMaterialStats(TinkerMaterials.pigiron, ams.new LegsMaterialStats(380, 5, 0, 1)); + TinkerRegistry.addMaterialStats(TinkerMaterials.pigiron, ams.new FeetMaterialStats(380, 2, 0, 0.5f)); // Mod Integration - TinkerRegistry.addMaterialStats(TinkerMaterials.copper, new ShieldMaterialStats(210, 33)); - TinkerRegistry.addMaterialStats(TinkerMaterials.copper, new HelmMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.copper, new ChestMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.copper, new LegsMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.copper, new BootsMaterialStats(35, 0, 0)); - - TinkerRegistry.addMaterialStats(TinkerMaterials.bronze, new ShieldMaterialStats(430, 33)); - TinkerRegistry.addMaterialStats(TinkerMaterials.bronze, new HelmMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.bronze, new ChestMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.bronze, new LegsMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.bronze, new BootsMaterialStats(35, 0, 0)); - - TinkerRegistry.addMaterialStats(TinkerMaterials.lead, new ShieldMaterialStats(334, 33)); - TinkerRegistry.addMaterialStats(TinkerMaterials.lead, new HelmMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.lead, new ChestMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.lead, new LegsMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.lead, new BootsMaterialStats(35, 0, 0)); + TinkerRegistry.addMaterialStats(TinkerMaterials.copper, new ShieldMaterialStats(210, 34)); + TinkerRegistry.addMaterialStats(TinkerMaterials.copper, ams.new HelmMaterialStats(210, 1, 0, 3)); + TinkerRegistry.addMaterialStats(TinkerMaterials.copper, ams.new ChestMaterialStats(210, 4, 0, 3)); + TinkerRegistry.addMaterialStats(TinkerMaterials.copper, ams.new LegsMaterialStats(210, 3, 0, 3)); + TinkerRegistry.addMaterialStats(TinkerMaterials.copper, ams.new FeetMaterialStats(210, 1, 0, 3)); + + TinkerRegistry.addMaterialStats(TinkerMaterials.bronze, new ShieldMaterialStats(430, 50)); + TinkerRegistry.addMaterialStats(TinkerMaterials.bronze, ams.new HelmMaterialStats(430, 2, 0, 0.5f)); + TinkerRegistry.addMaterialStats(TinkerMaterials.bronze, ams.new ChestMaterialStats(430, 6, 0, 0.5f)); + TinkerRegistry.addMaterialStats(TinkerMaterials.bronze, ams.new LegsMaterialStats(430, 5, 0, 0.5f)); + TinkerRegistry.addMaterialStats(TinkerMaterials.bronze, ams.new FeetMaterialStats(430, 2, 0, 0.5f)); + + TinkerRegistry.addMaterialStats(TinkerMaterials.lead, new ShieldMaterialStats(334, 42)); + TinkerRegistry.addMaterialStats(TinkerMaterials.lead, ams.new HelmMaterialStats(334, 1, 0, -20)); + TinkerRegistry.addMaterialStats(TinkerMaterials.lead, ams.new ChestMaterialStats(334, 5, 0, -20)); + TinkerRegistry.addMaterialStats(TinkerMaterials.lead, ams.new LegsMaterialStats(334, 4, 0, -20)); + TinkerRegistry.addMaterialStats(TinkerMaterials.lead, ams.new FeetMaterialStats(334, 1, 0, -20)); TinkerRegistry.addMaterialStats(TinkerMaterials.silver, new ShieldMaterialStats(250, 33)); - TinkerRegistry.addMaterialStats(TinkerMaterials.silver, new HelmMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.silver, new ChestMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.silver, new LegsMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.silver, new BootsMaterialStats(35, 0, 0)); - - TinkerRegistry.addMaterialStats(TinkerMaterials.electrum, new ShieldMaterialStats(50, 33)); - TinkerRegistry.addMaterialStats(TinkerMaterials.electrum, new HelmMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.electrum, new ChestMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.electrum, new LegsMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.electrum, new BootsMaterialStats(35, 0, 0)); - - TinkerRegistry.addMaterialStats(TinkerMaterials.steel, new ShieldMaterialStats(540, 33)); - TinkerRegistry.addMaterialStats(TinkerMaterials.steel, new HelmMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.steel, new ChestMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.steel, new LegsMaterialStats(35, 0, 0)); - TinkerRegistry.addMaterialStats(TinkerMaterials.steel, new BootsMaterialStats(35, 0, 0)); - - for (String s : fluids.keySet()) - { + TinkerRegistry.addMaterialStats(TinkerMaterials.silver, ams.new HelmMaterialStats(250, 1, 0, 1.5f)); + TinkerRegistry.addMaterialStats(TinkerMaterials.silver, ams.new ChestMaterialStats(250, 3, 0, 1.5f)); + TinkerRegistry.addMaterialStats(TinkerMaterials.silver, ams.new LegsMaterialStats(250, 2, 0, 1.5f)); + TinkerRegistry.addMaterialStats(TinkerMaterials.silver, ams.new FeetMaterialStats(250, 1, 0, 1.5f)); + + TinkerRegistry.addMaterialStats(TinkerMaterials.electrum, new ShieldMaterialStats(50, 22)); + TinkerRegistry.addMaterialStats(TinkerMaterials.electrum, ams.new HelmMaterialStats(50, 1, 0, 2.5f)); + TinkerRegistry.addMaterialStats(TinkerMaterials.electrum, ams.new ChestMaterialStats(50, 3, 0, 2.5f)); + TinkerRegistry.addMaterialStats(TinkerMaterials.electrum, ams.new LegsMaterialStats(50, 2, 0, 2.5f)); + TinkerRegistry.addMaterialStats(TinkerMaterials.electrum, ams.new FeetMaterialStats(50, 1, 0, 2.5f)); + + TinkerRegistry.addMaterialStats(TinkerMaterials.steel, new ShieldMaterialStats(540, 55)); + TinkerRegistry.addMaterialStats(TinkerMaterials.steel, ams.new HelmMaterialStats(540, 3, 1, -12)); + TinkerRegistry.addMaterialStats(TinkerMaterials.steel, ams.new ChestMaterialStats(540, 7, 1, -12)); + TinkerRegistry.addMaterialStats(TinkerMaterials.steel, ams.new LegsMaterialStats(540, 6, 1, -12)); + TinkerRegistry.addMaterialStats(TinkerMaterials.steel, ams.new FeetMaterialStats(540, 3, 1, -12)); + + for (String s : fluids.keySet()) { createFluid(s, fluids.get(s)); FluidRegistry.registerFluid(fluids.get(s)); FluidRegistry.addBucketForFluid(fluids.get(s)); } - for (TDMatHelper m : materials_master) - { + for (TDMatHelper m : materials_master) { Material test = TinkerRegistry.getMaterial(m.name); - if (m.createMat && test.getIdentifier() == "unknown" && !TinkersDefense.config.materials.isBlacklisted(m.name)) + if (m.createMat && test.getIdentifier() == "unknown" + && !TinkersDefense.config.materials.isBlacklisted(m.name)) createMaterial(m); } // TAIGA TEST // Collection<Material> mats = TinkerRegistry.getAllMaterials(); - for (Material m : TinkerRegistry.getAllMaterials()) - { - if (!m.hasStats(SHIELD)) - { - if (m.hasStats(MaterialTypes.HEAD)) - { + for (Material m : TinkerRegistry.getAllMaterials()) { + if (!m.hasStats(SHIELD)) { + if (m.hasStats(MaterialTypes.HEAD)) { int dur = ((HeadMaterialStats) m.getStats(MaterialTypes.HEAD)).durability; m.addStats(new ShieldMaterialStats(dur, 33)); } @@ -582,41 +620,33 @@ public class TDMaterials } - void createMaterial(TDMatHelper tdmat) - { + void createMaterial(TDMatHelper tdmat) { Material mat = new Material(tdmat.name, tdmat.color); - if (tdmat.isGem) - { - if (tdmat.gem == null) - { + if (tdmat.isGem) { + if (tdmat.gem == null) { mat.addItem("gem" + tdmat.name.substring(0, 1).toUpperCase() + tdmat.name.substring(1)); mat.addItem(gem.getItembyName(tdmat.name), 1, Material.VALUE_Ingot); } else mat.addItem(tdmat.gem, 1, Material.VALUE_Ingot); - } else - { - if (tdmat.ingot == null) - { + } else { + if (tdmat.ingot == null) { mat.addItem("ingot" + tdmat.name.substring(0, 1).toUpperCase() + tdmat.name.substring(1)); mat.addItem(ingot.getItembyName(tdmat.name), 1, Material.VALUE_Ingot); } else mat.addItem(tdmat.ingot, 1, Material.VALUE_Ingot); } - if (tdmat.nugget == null) - { + if (tdmat.nugget == null) { mat.addItem("nugget" + tdmat.name.substring(0, 1).toUpperCase() + tdmat.name.substring(1)); mat.addItem(nugget.getItembyName(tdmat.name), 1, Material.VALUE_Nugget); } else mat.addItem(tdmat.nugget, 1, Material.VALUE_Nugget); - if (tdmat.dust == null) - { + if (tdmat.dust == null) { mat.addItem("dust" + tdmat.name.substring(0, 1).toUpperCase() + tdmat.name.substring(1)); mat.addItem(nugget.getItembyName(tdmat.name), 1, Material.VALUE_Ingot); } else mat.addItem(tdmat.nugget, 1, Material.VALUE_Ingot); - if (tdmat.grain == null) - { + if (tdmat.grain == null) { mat.addItem("grain" + tdmat.name.substring(0, 1).toUpperCase() + tdmat.name.substring(1)); mat.addItem(nugget.getItembyName(tdmat.name), 1, Material.VALUE_Ingot / 4); } else @@ -652,8 +682,7 @@ public class TDMaterials TinkerRegistry.integrate(new MaterialIntegration(mat).toolforge()).preInit(); } - void setStats(Material m, TDMatHelper tdm) - { + void setStats(Material m, TDMatHelper tdm) { if (tdm.head != null) TinkerRegistry.addMaterialStats(m, tdm.head); else @@ -680,10 +709,21 @@ public class TDMaterials if (tdm.shield != null) TinkerRegistry.addMaterialStats(m, tdm.shield); + + if (tdm.helm != null) + TinkerRegistry.addMaterialStats(m, tdm.helm); + + if (tdm.chest != null) + TinkerRegistry.addMaterialStats(m, tdm.chest); + + if (tdm.legs != null) + TinkerRegistry.addMaterialStats(m, tdm.legs); + + if (tdm.boots != null) + TinkerRegistry.addMaterialStats(m, tdm.boots); } - public void registerItems(final RegistryEvent.Register<Item> event) - { + public void registerItems(final RegistryEvent.Register<Item> event) { final IForgeRegistry registry = event.getRegistry(); registry.register(ingot); @@ -694,18 +734,27 @@ public class TDMaterials } @Subscribe - public void init(FMLInitializationEvent event) - { + public void init(FMLInitializationEvent event) { for (int i = 0; i < ingot.mats.size(); i++) - OreDictionary.registerOre("ingot" + ingot.mats.get(i).substring(0, 1).toUpperCase() + ingot.mats.get(i).substring(1), new ItemStack(ingot, 1, i)); + OreDictionary.registerOre( + "ingot" + ingot.mats.get(i).substring(0, 1).toUpperCase() + ingot.mats.get(i).substring(1), + new ItemStack(ingot, 1, i)); for (int i = 0; i < nugget.mats.size(); i++) - OreDictionary.registerOre("nugget" + nugget.mats.get(i).substring(0, 1).toUpperCase() + nugget.mats.get(i).substring(1), new ItemStack(nugget, 1, i)); + OreDictionary.registerOre( + "nugget" + nugget.mats.get(i).substring(0, 1).toUpperCase() + nugget.mats.get(i).substring(1), + new ItemStack(nugget, 1, i)); for (int i = 0; i < dust.mats.size(); i++) - OreDictionary.registerOre("dust" + dust.mats.get(i).substring(0, 1).toUpperCase() + dust.mats.get(i).substring(1), new ItemStack(dust, 1, i)); + OreDictionary.registerOre( + "dust" + dust.mats.get(i).substring(0, 1).toUpperCase() + dust.mats.get(i).substring(1), + new ItemStack(dust, 1, i)); for (int i = 0; i < grain.mats.size(); i++) - OreDictionary.registerOre("grain" + grain.mats.get(i).substring(0, 1).toUpperCase() + grain.mats.get(i).substring(1), new ItemStack(grain, 1, i)); + OreDictionary.registerOre( + "grain" + grain.mats.get(i).substring(0, 1).toUpperCase() + grain.mats.get(i).substring(1), + new ItemStack(grain, 1, i)); for (int i = 0; i < gem.mats.size(); i++) - OreDictionary.registerOre("gem" + gem.mats.get(i).substring(0, 1).toUpperCase() + gem.mats.get(i).substring(1), new ItemStack(gem, 1, i)); + OreDictionary.registerOre( + "gem" + gem.mats.get(i).substring(0, 1).toUpperCase() + gem.mats.get(i).substring(1), + new ItemStack(gem, 1, i)); TinkerRegistry.registerMelting(Items.CHORUS_FRUIT, fluids.get("chorusjuice"), Material.VALUE_Nugget); TinkerRegistry.registerMelting(Items.DRAGON_BREATH, fluids.get("dragonsbreath"), Material.VALUE_Ingot); @@ -717,109 +766,112 @@ public class TDMaterials TinkerRegistry.registerMelting(Blocks.QUARTZ_BLOCK, fluids.get("quartz"), Material.VALUE_Ingot * 4); TinkerRegistry.registerMelting(Items.QUARTZ, fluids.get("quartz"), Material.VALUE_Ingot); - TinkerRegistry.registerTableCasting(new ItemStack(Items.QUARTZ, 1, 0), ItemStack.EMPTY, (Fluid) fluids.get("quartz"), Material.VALUE_Ingot); - - TinkerRegistry.registerBasinCasting(new ItemStack(Blocks.QUARTZ_BLOCK, 1, 0), ItemStack.EMPTY, (Fluid) fluids.get("quartz"), Material.VALUE_Ingot * 4); - TinkerRegistry.registerBasinCasting(new ItemStack(Blocks.ICE, 1, 0), ItemStack.EMPTY, (Fluid) fluids.get("slush"), Material.VALUE_Ingot); - - TinkerRegistry.registerAlloy(new FluidStack(fluids.get("aeonsteel"), 4), new FluidStack(fluids.get("chorusjuice"), 1), new FluidStack(TinkerFluids.cobalt, 3)); - TinkerRegistry.registerAlloy(new FluidStack(fluids.get("queensgold"), 2), new FluidStack(TinkerFluids.gold, 1), new FluidStack(TinkerFluids.knightslime, 1)); - TinkerRegistry.registerAlloy(new FluidStack(fluids.get("dogbearium"), 4), new FluidStack(TinkerFluids.ardite, 1), new FluidStack(fluids.get("dragonsbreath"), 3)); - TinkerRegistry.registerAlloy(new FluidStack(fluids.get("sinisterium"), 6), new FluidStack(TinkerFluids.blood, 1), new FluidStack(fluids.get("vile"), 2), new FluidStack(TinkerFluids.iron, 4)); - TinkerRegistry.registerAlloy(new FluidStack(fluids.get("nihilite"), 3), new FluidStack(TinkerFluids.cobalt, 1), new FluidStack(fluids.get("vile"), 2)); + TinkerRegistry.registerTableCasting(new ItemStack(Items.QUARTZ, 1, 0), ItemStack.EMPTY, + (Fluid) fluids.get("quartz"), Material.VALUE_Ingot); + + TinkerRegistry.registerBasinCasting(new ItemStack(Blocks.QUARTZ_BLOCK, 1, 0), ItemStack.EMPTY, + (Fluid) fluids.get("quartz"), Material.VALUE_Ingot * 4); + TinkerRegistry.registerBasinCasting(new ItemStack(Blocks.ICE, 1, 0), ItemStack.EMPTY, + (Fluid) fluids.get("slush"), Material.VALUE_Ingot); + + TinkerRegistry.registerAlloy(new FluidStack(fluids.get("aeonsteel"), 4), + new FluidStack(fluids.get("chorusjuice"), 1), new FluidStack(TinkerFluids.cobalt, 3)); + TinkerRegistry.registerAlloy(new FluidStack(fluids.get("queensgold"), 2), new FluidStack(TinkerFluids.gold, 1), + new FluidStack(TinkerFluids.knightslime, 1)); + TinkerRegistry.registerAlloy(new FluidStack(fluids.get("dogbearium"), 4), + new FluidStack(TinkerFluids.ardite, 1), new FluidStack(fluids.get("dragonsbreath"), 3)); + TinkerRegistry.registerAlloy(new FluidStack(fluids.get("sinisterium"), 6), + new FluidStack(TinkerFluids.blood, 1), new FluidStack(fluids.get("vile"), 2), + new FluidStack(TinkerFluids.iron, 4)); + TinkerRegistry.registerAlloy(new FluidStack(fluids.get("nihilite"), 3), new FluidStack(TinkerFluids.cobalt, 1), + new FluidStack(fluids.get("vile"), 2)); TinkerRegistry.registerAlloy(new FluidStack(fluids.get("orichalcum"), 6), - new FluidStack(TinkerFluids.bronze, 4), - new FluidStack(fluids.get("vibrant"), 2), - new FluidStack(TinkerFluids.gold, 1)); - TinkerRegistry.registerAlloy(new FluidStack(fluids.get("pandorium"), 3), new FluidStack(TinkerFluids.ardite, 1), new FluidStack(fluids.get("vibrant"), 2)); - TinkerRegistry.registerAlloy(new FluidStack(fluids.get("rosegold"), 4), new FluidStack(TinkerFluids.gold, 1), new FluidStack(TinkerFluids.copper, 3)); - TinkerRegistry.registerAlloy(new FluidStack(fluids.get("brass"), 3), new FluidStack(TinkerFluids.copper, 2), new FluidStack(TinkerFluids.zinc, 2)); + new FluidStack(TinkerFluids.bronze, 4), new FluidStack(fluids.get("vibrant"), 2), + new FluidStack(TinkerFluids.gold, 1)); + TinkerRegistry.registerAlloy(new FluidStack(fluids.get("pandorium"), 3), new FluidStack(TinkerFluids.ardite, 1), + new FluidStack(fluids.get("vibrant"), 2)); + TinkerRegistry.registerAlloy(new FluidStack(fluids.get("rosegold"), 4), new FluidStack(TinkerFluids.gold, 1), + new FluidStack(TinkerFluids.copper, 3)); + TinkerRegistry.registerAlloy(new FluidStack(fluids.get("brass"), 3), new FluidStack(TinkerFluids.copper, 2), + new FluidStack(TinkerFluids.zinc, 2)); TinkerRegistry.registerAlloy(new FluidStack(fluids.get("valyriansteel"), 4), - new FluidStack(TinkerFluids.steel, 2), - new FluidStack(TinkerFluids.obsidian, 2), - new FluidStack(fluids.get("dragonsbreath"), 1)); - TinkerRegistry.registerAlloy(new FluidStack(fluids.get("froststeel"), 4), - new FluidStack(TinkerFluids.steel, 2), - new FluidStack(TinkerFluids.cobalt, 2), - new FluidStack(fluids.get("slush"), 1)); + new FluidStack(TinkerFluids.steel, 2), new FluidStack(TinkerFluids.obsidian, 2), + new FluidStack(fluids.get("dragonsbreath"), 1)); + TinkerRegistry.registerAlloy(new FluidStack(fluids.get("froststeel"), 4), new FluidStack(TinkerFluids.steel, 2), + new FluidStack(TinkerFluids.cobalt, 2), new FluidStack(fluids.get("slush"), 1)); TinkerRegistry.registerAlloy(new FluidStack(fluids.get("pureardite"), 1), - new FluidStack(TinkerFluids.ardite, 1), - new FluidStack(fluids.get("dragonsbreath"), 2), - new FluidStack(TinkerFluids.blood, 2), - new FluidStack(fluids.get("purifiedgold"), 2)); + new FluidStack(TinkerFluids.ardite, 1), new FluidStack(fluids.get("dragonsbreath"), 2), + new FluidStack(TinkerFluids.blood, 2), new FluidStack(fluids.get("purifiedgold"), 2)); TinkerRegistry.registerAlloy(new FluidStack(fluids.get("purecobalt"), 1), - new FluidStack(TinkerFluids.cobalt, 1), - new FluidStack(fluids.get("dragonsbreath"), 2), - new FluidStack(fluids.get("slush"), 2), - new FluidStack(fluids.get("purifiedsilver"), 2)); - TinkerRegistry.registerAlloy(new FluidStack(fluids.get("puremanyullyn"), 2), new FluidStack(fluids.get("pureardite"), 1), new FluidStack(fluids.get("purecobalt"), 1)); + new FluidStack(TinkerFluids.cobalt, 1), new FluidStack(fluids.get("dragonsbreath"), 2), + new FluidStack(fluids.get("slush"), 2), new FluidStack(fluids.get("purifiedsilver"), 2)); + TinkerRegistry.registerAlloy(new FluidStack(fluids.get("puremanyullyn"), 2), + new FluidStack(fluids.get("pureardite"), 1), new FluidStack(fluids.get("purecobalt"), 1)); TinkerRegistry.registerAlloy(new FluidStack(fluids.get("purifiedgold"), 1), - new FluidStack(TinkerFluids.gold, 1), - new FluidStack(fluids.get("quartz"), 8), - new FluidStack(TinkerFluids.glass, 2), - new FluidStack(TinkerFluids.purpleSlime, 2)); + new FluidStack(TinkerFluids.gold, 1), new FluidStack(fluids.get("quartz"), 8), + new FluidStack(TinkerFluids.glass, 2), new FluidStack(TinkerFluids.purpleSlime, 2)); TinkerRegistry.registerAlloy(new FluidStack(fluids.get("purifiedsilver"), 1), - new FluidStack(TinkerFluids.silver, 1), - new FluidStack(fluids.get("quartz"), 8), - new FluidStack(TinkerFluids.glass, 2), - new FluidStack(TinkerFluids.purpleSlime, 2)); - TinkerRegistry.registerAlloy(new FluidStack(fluids.get("solarium"), 1), new FluidStack(TinkerFluids.steel, 1), new FluidStack(fluids.get("sundrop"), 1)); - TinkerRegistry.registerAlloy(new FluidStack(fluids.get("dragonsteel"), 1), new FluidStack(TinkerFluids.steel, 1), new FluidStack(fluids.get("gallite"), 1)); - TinkerRegistry.registerAlloy(new FluidStack(fluids.get("blacksteel"), 1), new FluidStack(TinkerFluids.steel, 1), new FluidStack(fluids.get("voidite"), 1)); - TinkerRegistry.registerAlloy(new FluidStack(fluids.get("abyssalium"), 1), new FluidStack(fluids.get("voidite"), 1), new FluidStack(fluids.get("sundrop"), 1)); - TinkerRegistry.registerAlloy(new FluidStack(fluids.get("depthsilver"), 1), new FluidStack(TinkerFluids.silver, 1), new FluidStack(fluids.get("abyssalium"), 1)); - TinkerRegistry.registerAlloy(new FluidStack(fluids.get("moonsilver"), 1), new FluidStack(TinkerFluids.silver, 1), new FluidStack(fluids.get("voidite"), 1)); - TinkerRegistry.registerAlloy(new FluidStack(fluids.get("novagold"), 1), new FluidStack(TinkerFluids.gold, 1), new FluidStack(fluids.get("sundrop"), 1)); + new FluidStack(TinkerFluids.silver, 1), new FluidStack(fluids.get("quartz"), 8), + new FluidStack(TinkerFluids.glass, 2), new FluidStack(TinkerFluids.purpleSlime, 2)); + TinkerRegistry.registerAlloy(new FluidStack(fluids.get("solarium"), 1), new FluidStack(TinkerFluids.steel, 1), + new FluidStack(fluids.get("sundrop"), 1)); + TinkerRegistry.registerAlloy(new FluidStack(fluids.get("dragonsteel"), 1), + new FluidStack(TinkerFluids.steel, 1), new FluidStack(fluids.get("gallite"), 1)); + TinkerRegistry.registerAlloy(new FluidStack(fluids.get("blacksteel"), 1), new FluidStack(TinkerFluids.steel, 1), + new FluidStack(fluids.get("voidite"), 1)); + TinkerRegistry.registerAlloy(new FluidStack(fluids.get("abyssalium"), 1), + new FluidStack(fluids.get("voidite"), 1), new FluidStack(fluids.get("sundrop"), 1)); + TinkerRegistry.registerAlloy(new FluidStack(fluids.get("depthsilver"), 1), + new FluidStack(TinkerFluids.silver, 1), new FluidStack(fluids.get("abyssalium"), 1)); + TinkerRegistry.registerAlloy(new FluidStack(fluids.get("moonsilver"), 1), + new FluidStack(TinkerFluids.silver, 1), new FluidStack(fluids.get("voidite"), 1)); + TinkerRegistry.registerAlloy(new FluidStack(fluids.get("novagold"), 1), new FluidStack(TinkerFluids.gold, 1), + new FluidStack(fluids.get("sundrop"), 1)); } @Subscribe - public void postInit(FMLPostInitializationEvent event) - { + public void postInit(FMLPostInitializationEvent event) { } @SideOnly(Side.CLIENT) @SubscribeEvent - public static void registerModels(ModelRegistryEvent event) - { - for (int i = 0; i < dust.mats.size(); i++) - { - ModelLoader.setCustomModelResourceLocation(dust, i, new ModelResourceLocation(Reference.MOD_ID + ":dust", "inventory")); + public static void registerModels(ModelRegistryEvent event) { + for (int i = 0; i < dust.mats.size(); i++) { + ModelLoader.setCustomModelResourceLocation(dust, i, + new ModelResourceLocation(Reference.MOD_ID + ":dust", "inventory")); } - for (int i = 0; i < ingot.mats.size(); i++) - { - ModelLoader.setCustomModelResourceLocation(ingot, i, new ModelResourceLocation(Reference.MOD_ID + ":ingot", "inventory")); + for (int i = 0; i < ingot.mats.size(); i++) { + ModelLoader.setCustomModelResourceLocation(ingot, i, + new ModelResourceLocation(Reference.MOD_ID + ":ingot", "inventory")); } - for (int i = 0; i < gem.mats.size(); i++) - { - ModelLoader.setCustomModelResourceLocation(gem, i, new ModelResourceLocation(Reference.MOD_ID + ":gem", "inventory")); + for (int i = 0; i < gem.mats.size(); i++) { + ModelLoader.setCustomModelResourceLocation(gem, i, + new ModelResourceLocation(Reference.MOD_ID + ":gem", "inventory")); } - for (int i = 0; i < nugget.mats.size(); i++) - { - ModelLoader.setCustomModelResourceLocation(nugget, i, new ModelResourceLocation(Reference.MOD_ID + ":nugget", "inventory")); + for (int i = 0; i < nugget.mats.size(); i++) { + ModelLoader.setCustomModelResourceLocation(nugget, i, + new ModelResourceLocation(Reference.MOD_ID + ":nugget", "inventory")); } - for (int i = 0; i < grain.mats.size(); i++) - { - ModelLoader.setCustomModelResourceLocation(grain, i, new ModelResourceLocation(Reference.MOD_ID + ":grain", "inventory")); + for (int i = 0; i < grain.mats.size(); i++) { + ModelLoader.setCustomModelResourceLocation(grain, i, + new ModelResourceLocation(Reference.MOD_ID + ":grain", "inventory")); } } @SubscribeEvent - public static void registerBlocks(final RegistryEvent.Register<Block> event) - { - for (Block i : blockList) - { + public static void registerBlocks(final RegistryEvent.Register<Block> event) { + for (Block i : blockList) { event.getRegistry().register(i); } } - static void createFluid(String name, FluidMolten fluid) - { + static void createFluid(String name, FluidMolten fluid) { FluidRegistry.registerFluid(fluid); BlockMolten block = new BlockMolten(fluid); @@ -835,8 +887,7 @@ public class TDMaterials FluidRegistry.addBucketForFluid(fluid); } - private void registerClothMaterials() - { + private void registerClothMaterials() { black = new Material("blackCloth", 0x191616); red = new Material("redCloth", 0x963430); green = new Material("greeCloth", 0x35461B); @@ -854,7 +905,7 @@ public class TDMaterials orange = new Material("orangeCloth", 0xDB7D3E); white = new Material("whiteCloth", 0xDDDDDD); - //Material.UNKNOWN.addStats(new MaterialCloth(100)); + // Material.UNKNOWN.addStats(new MaterialCloth(100)); black.addItem(new ItemStack(Blocks.WOOL, 1, 15), 1, Material.VALUE_Ingot); red.addItem(new ItemStack(Blocks.WOOL, 1, 14), 1, Material.VALUE_Ingot); green.addItem(new ItemStack(Blocks.WOOL, 1, 13), 1, Material.VALUE_Ingot); @@ -889,23 +940,23 @@ public class TDMaterials orange.setRepresentativeItem(new ItemStack(Blocks.WOOL, 1, 1)); white.setRepresentativeItem(new ItemStack(Blocks.WOOL, 1, 0)); -// TinkerRegistry.addMaterial(black); -// TinkerRegistry.addMaterial(red); -// TinkerRegistry.addMaterial(green); -// TinkerRegistry.addMaterial(brown); -// TinkerRegistry.addMaterial(blue); -// TinkerRegistry.addMaterial(purple); -// TinkerRegistry.addMaterial(cyan); -// TinkerRegistry.addMaterial(lightgray); -// TinkerRegistry.addMaterial(gray); -// TinkerRegistry.addMaterial(pink); -// TinkerRegistry.addMaterial(lime); -// TinkerRegistry.addMaterial(yellow); -// TinkerRegistry.addMaterial(lightblue); -// TinkerRegistry.addMaterial(magenta); -// TinkerRegistry.addMaterial(orange); -// TinkerRegistry.addMaterial(white); - + // TinkerRegistry.addMaterial(black); + // TinkerRegistry.addMaterial(red); + // TinkerRegistry.addMaterial(green); + // TinkerRegistry.addMaterial(brown); + // TinkerRegistry.addMaterial(blue); + // TinkerRegistry.addMaterial(purple); + // TinkerRegistry.addMaterial(cyan); + // TinkerRegistry.addMaterial(lightgray); + // TinkerRegistry.addMaterial(gray); + // TinkerRegistry.addMaterial(pink); + // TinkerRegistry.addMaterial(lime); + // TinkerRegistry.addMaterial(yellow); + // TinkerRegistry.addMaterial(lightblue); + // TinkerRegistry.addMaterial(magenta); + // TinkerRegistry.addMaterial(orange); + // TinkerRegistry.addMaterial(white); + materials.put("white", white); materials.put("orange", orange); materials.put("magenta", magenta); @@ -922,7 +973,7 @@ public class TDMaterials materials.put("green", green); materials.put("red", red); materials.put("black", black); - + TinkerRegistry.integrate(new MaterialIntegration(white).toolforge()).preInit(); TinkerRegistry.integrate(new MaterialIntegration(orange).toolforge()).preInit(); TinkerRegistry.integrate(new MaterialIntegration(magenta).toolforge()).preInit(); @@ -939,38 +990,34 @@ public class TDMaterials TinkerRegistry.integrate(new MaterialIntegration(green).toolforge()).preInit(); TinkerRegistry.integrate(new MaterialIntegration(red).toolforge()).preInit(); TinkerRegistry.integrate(new MaterialIntegration(black).toolforge()).preInit(); - -// TinkerRegistry.addMaterialStats(black, new MaterialCloth(100)); -// TinkerRegistry.addMaterialStats(red, new MaterialCloth(100)); -// TinkerRegistry.addMaterialStats(green, new MaterialCloth(100)); -// TinkerRegistry.addMaterialStats(brown, new MaterialCloth(100)); -// TinkerRegistry.addMaterialStats(blue, new MaterialCloth(100)); -// TinkerRegistry.addMaterialStats(purple, new MaterialCloth(100)); -// TinkerRegistry.addMaterialStats(cyan, new MaterialCloth(100)); -// TinkerRegistry.addMaterialStats(lightgray, new MaterialCloth(100)); -// TinkerRegistry.addMaterialStats(gray, new MaterialCloth(100)); -// TinkerRegistry.addMaterialStats(pink, new MaterialCloth(100)); -// TinkerRegistry.addMaterialStats(lime, new MaterialCloth(100)); -// TinkerRegistry.addMaterialStats(yellow, new MaterialCloth(100)); -// TinkerRegistry.addMaterialStats(lightblue, new MaterialCloth(100)); -// TinkerRegistry.addMaterialStats(magenta, new MaterialCloth(100)); -// TinkerRegistry.addMaterialStats(orange, new MaterialCloth(100)); -// TinkerRegistry.addMaterialStats(white, new MaterialCloth(100)); + + // TinkerRegistry.addMaterialStats(black, new MaterialCloth(100)); + // TinkerRegistry.addMaterialStats(red, new MaterialCloth(100)); + // TinkerRegistry.addMaterialStats(green, new MaterialCloth(100)); + // TinkerRegistry.addMaterialStats(brown, new MaterialCloth(100)); + // TinkerRegistry.addMaterialStats(blue, new MaterialCloth(100)); + // TinkerRegistry.addMaterialStats(purple, new MaterialCloth(100)); + // TinkerRegistry.addMaterialStats(cyan, new MaterialCloth(100)); + // TinkerRegistry.addMaterialStats(lightgray, new MaterialCloth(100)); + // TinkerRegistry.addMaterialStats(gray, new MaterialCloth(100)); + // TinkerRegistry.addMaterialStats(pink, new MaterialCloth(100)); + // TinkerRegistry.addMaterialStats(lime, new MaterialCloth(100)); + // TinkerRegistry.addMaterialStats(yellow, new MaterialCloth(100)); + // TinkerRegistry.addMaterialStats(lightblue, new MaterialCloth(100)); + // TinkerRegistry.addMaterialStats(magenta, new MaterialCloth(100)); + // TinkerRegistry.addMaterialStats(orange, new MaterialCloth(100)); + // TinkerRegistry.addMaterialStats(white, new MaterialCloth(100)); } // PlusTIC to the rescue - public static void integrate(Map<String, Material> materials, Map<String, MaterialIntegration> materialIntegrations, Collection<String> excludedMaterials) - { - materials.forEach((k, v) -> - { - if (!materialIntegrations.containsKey(k) && !excludedMaterials.contains(k)) - { + public static void integrate(Map<String, Material> materials, Map<String, MaterialIntegration> materialIntegrations, + Collection<String> excludedMaterials) { + materials.forEach((k, v) -> { + if (!materialIntegrations.containsKey(k) && !excludedMaterials.contains(k)) { MaterialIntegration mi; - if (v.getFluid() != null && v.getFluid() != TinkerFluids.emerald) - { + if (v.getFluid() != null && v.getFluid() != TinkerFluids.emerald) { mi = new MaterialIntegration(v, v.getFluid(), StringUtils.capitalize(k)).toolforge(); - } else - { + } else { mi = new MaterialIntegration(v); } mi.integrate(); diff --git a/src/main/java/lance5057/tDefense/core/materials/traits/TraitAxeLover.java b/src/main/java/lance5057/tDefense/core/materials/traits/TraitAxeLover.java index 17d1811..1bc3c31 100644 --- a/src/main/java/lance5057/tDefense/core/materials/traits/TraitAxeLover.java +++ b/src/main/java/lance5057/tDefense/core/materials/traits/TraitAxeLover.java @@ -2,12 +2,10 @@ package lance5057.tDefense.core.materials.traits; import java.util.Optional; -import lance5057.tDefense.util.TDToolHelper; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityLiving; import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.inventory.InventoryHelper; import net.minecraft.item.ItemAxe; import net.minecraft.item.ItemStack; import net.minecraft.util.EnumHand; @@ -16,7 +14,6 @@ import net.minecraft.util.text.TextFormatting; import net.minecraftforge.event.entity.living.LivingHurtEvent; import slimeknights.mantle.util.RecipeMatch.Match; import slimeknights.tconstruct.library.traits.AbstractTrait; -import slimeknights.tconstruct.library.utils.ToolHelper; import slimeknights.tconstruct.tools.tools.Hatchet; import slimeknights.tconstruct.tools.tools.LumberAxe; import slimeknights.tconstruct.tools.tools.Mattock; diff --git a/src/main/java/lance5057/tDefense/core/materials/traits/TraitDogToy.java b/src/main/java/lance5057/tDefense/core/materials/traits/TraitDogToy.java index 81b608d..8cad49c 100644 --- a/src/main/java/lance5057/tDefense/core/materials/traits/TraitDogToy.java +++ b/src/main/java/lance5057/tDefense/core/materials/traits/TraitDogToy.java @@ -4,7 +4,6 @@ import java.util.Optional; import net.minecraft.block.BlockFence; import net.minecraft.block.state.IBlockState; -import net.minecraft.entity.Entity; import net.minecraft.entity.EntityLiving; import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.IEntityLivingData; diff --git a/src/main/java/lance5057/tDefense/core/materials/traits/TraitFirestarter.java b/src/main/java/lance5057/tDefense/core/materials/traits/TraitFirestarter.java index 90bc373..ba30a9b 100644 --- a/src/main/java/lance5057/tDefense/core/materials/traits/TraitFirestarter.java +++ b/src/main/java/lance5057/tDefense/core/materials/traits/TraitFirestarter.java @@ -12,13 +12,11 @@ import net.minecraft.item.ItemStack; import net.minecraft.util.NonNullList; import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.Vec3d; -import net.minecraft.util.math.Vec3i; import net.minecraft.util.text.TextFormatting; import net.minecraftforge.event.entity.living.LivingHurtEvent; import slimeknights.mantle.util.RecipeMatch.Match; import slimeknights.tconstruct.library.tools.ToolCore; import slimeknights.tconstruct.library.traits.AbstractTrait; -import slimeknights.tconstruct.library.utils.ToolHelper; public class TraitFirestarter extends AbstractTrait { diff --git a/src/main/java/lance5057/tDefense/core/renderers/BaubleRenderer.java b/src/main/java/lance5057/tDefense/core/renderers/BaubleRenderer.java index 7f69ff3..2d0ce84 100644 --- a/src/main/java/lance5057/tDefense/core/renderers/BaubleRenderer.java +++ b/src/main/java/lance5057/tDefense/core/renderers/BaubleRenderer.java @@ -1,21 +1,7 @@ package lance5057.tDefense.core.renderers; -import lance5057.tDefense.core.tools.bases.Shield; -import lance5057.tDefense.core.tools.basic.Zweihander; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.GlStateManager; -import net.minecraft.client.renderer.OpenGlHelper; -import net.minecraft.client.renderer.block.model.ItemCameraTransforms; import net.minecraft.client.renderer.entity.layers.LayerRenderer; -import net.minecraft.client.renderer.texture.TextureMap; import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.inventory.EntityEquipmentSlot; -import net.minecraft.item.ItemShield; -import net.minecraft.item.ItemStack; -import net.minecraft.item.ItemSword; -import net.minecraft.util.EnumHand; -import slimeknights.tconstruct.library.tools.ToolCore; -import slimeknights.tconstruct.tools.melee.item.Cleaver; public class BaubleRenderer implements LayerRenderer<EntityPlayer> { diff --git a/src/main/java/lance5057/tDefense/core/tools/TDToolEvents.java b/src/main/java/lance5057/tDefense/core/tools/TDToolEvents.java index 30876a0..c677926 100644 --- a/src/main/java/lance5057/tDefense/core/tools/TDToolEvents.java +++ b/src/main/java/lance5057/tDefense/core/tools/TDToolEvents.java @@ -1,13 +1,8 @@ package lance5057.tDefense.core.tools; -import lance5057.tDefense.Reference; -import lance5057.tDefense.core.tools.armor.straps.ItemStraps; -import lance5057.tDefense.core.tools.armor.straps.ItemStrapsInv; import lance5057.tDefense.core.tools.bases.Shield; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.event.AttachCapabilitiesEvent; import net.minecraftforge.event.entity.living.LivingHurtEvent; import net.minecraftforge.fml.common.eventhandler.EventPriority; import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; diff --git a/src/main/java/lance5057/tDefense/core/tools/armor/cloth/TinkersHood.java b/src/main/java/lance5057/tDefense/core/tools/armor/cloth/TinkersHood.java index 8a7db4e..bd5258e 100644 --- a/src/main/java/lance5057/tDefense/core/tools/armor/cloth/TinkersHood.java +++ b/src/main/java/lance5057/tDefense/core/tools/armor/cloth/TinkersHood.java @@ -1,73 +1,77 @@ package lance5057.tDefense.core.tools.armor.cloth; -import lance5057.tDefense.Reference; -import lance5057.tDefense.core.materials.ClothMaterialStats; -import lance5057.tDefense.core.materials.HelmMaterialStats; +import java.util.List; + +import lance5057.tDefense.core.materials.ArmorMaterialStats.ClothMaterialStats; +import lance5057.tDefense.core.materials.ArmorMaterialStats.HelmMaterialStats; import lance5057.tDefense.core.parts.TDParts; import lance5057.tDefense.core.tools.armor.renderers.cloth.ModelTinkersHood; import lance5057.tDefense.core.tools.bases.ArmorCore; +import lance5057.tDefense.util.ArmorNBT; import net.minecraft.client.model.ModelBiped; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLivingBase; import net.minecraft.item.ItemStack; -import net.minecraft.util.ResourceLocation; +import net.minecraft.nbt.NBTTagCompound; import net.minecraft.world.World; import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.SideOnly; +import slimeknights.tconstruct.library.materials.Material; import slimeknights.tconstruct.library.tinkering.PartMaterialType; -import slimeknights.tconstruct.library.tools.ToolCore; -public class TinkersHood extends ArmorCore -{ +public class TinkersHood extends ArmorCore { int induceDamage = 0; - public TinkersHood() - { - super(new PartMaterialType(TDParts.cloth, ClothMaterialStats.TYPE), new PartMaterialType(TDParts.cloth, ClothMaterialStats.TYPE), PartMaterialType.extra(TDParts.rivets)); + public TinkersHood() { + super(new PartMaterialType(TDParts.cloth, ClothMaterialStats.TYPE), + new PartMaterialType(TDParts.cloth, ClothMaterialStats.TYPE), PartMaterialType.extra(TDParts.rivets)); setUnlocalizedName("tinkerhood"); } @Override - public void onUpdate(ItemStack stack, World world, Entity entity, int par4, boolean par5) - { + public void onUpdate(ItemStack stack, World world, Entity entity, int par4, boolean par5) { super.onUpdate(stack, world, entity, par4, par5); } @Override - public float damagePotential() - { + public float damagePotential() { // TODO Auto-generated method stub return 0; } @Override - public double attackSpeed() - { + public double attackSpeed() { // TODO Auto-generated method stub return 0; } @SideOnly(Side.CLIENT) @Override - public String getArmorTexture(ItemStack stack, int layer) - { + public String getArmorTexture(ItemStack stack, int layer) { String s = ""; - switch(layer) - { - case 0: s = "textures/armor/hood/_hood_cloth.png"; break; - case 1: s = "textures/armor/hood/_hood_trim.png"; break; - case 2: s = "textures/armor/hood/_hood_metal.png"; break; + switch (layer) { + case 0: + s = "textures/armor/hood/_hood_cloth.png"; + break; + case 1: + s = "textures/armor/hood/_hood_trim.png"; + break; + case 2: + s = "textures/armor/hood/_hood_metal.png"; + break; } return s; } @SideOnly(Side.CLIENT) @Override - public ModelBiped getArmorModel(ItemStack stack) - { + public ModelBiped getArmorModel(ItemStack stack) { return new ModelTinkersHood(stack); } + @Override + public NBTTagCompound buildTag(List<Material> materials) { + ArmorNBT data = buildDefaultArmorTag(materials, HelmMaterialStats.TYPE); + return data.get(); + } } diff --git a/src/main/java/lance5057/tDefense/core/tools/armor/cloth/TinkersRobe.java b/src/main/java/lance5057/tDefense/core/tools/armor/cloth/TinkersRobe.java index e7ae1d9..806349e 100644 --- a/src/main/java/lance5057/tDefense/core/tools/armor/cloth/TinkersRobe.java +++ b/src/main/java/lance5057/tDefense/core/tools/armor/cloth/TinkersRobe.java @@ -1,15 +1,21 @@ package lance5057.tDefense.core.tools.armor.cloth; -import lance5057.tDefense.core.materials.ClothMaterialStats; +import java.util.List; + +import lance5057.tDefense.core.materials.ArmorMaterialStats.ClothMaterialStats; +import lance5057.tDefense.core.materials.ArmorMaterialStats.LegsMaterialStats; import lance5057.tDefense.core.parts.TDParts; import lance5057.tDefense.core.tools.armor.renderers.cloth.ModelTinkersRobe; import lance5057.tDefense.core.tools.bases.ArmorCore; +import lance5057.tDefense.util.ArmorNBT; import net.minecraft.client.model.ModelBiped; import net.minecraft.entity.Entity; import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NBTTagCompound; import net.minecraft.world.World; import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.SideOnly; +import slimeknights.tconstruct.library.materials.Material; import slimeknights.tconstruct.library.tinkering.PartMaterialType; public class TinkersRobe extends ArmorCore @@ -65,5 +71,9 @@ public class TinkersRobe extends ArmorCore return new ModelTinkersRobe(stack); } - + @Override + public NBTTagCompound buildTag(List<Material> materials) { + ArmorNBT data = buildDefaultArmorTag(materials, LegsMaterialStats.TYPE); + return data.get(); + } } diff --git a/src/main/java/lance5057/tDefense/core/tools/armor/cloth/TinkersShawl.java b/src/main/java/lance5057/tDefense/core/tools/armor/cloth/TinkersShawl.java index e51ab21..72d425f 100644 --- a/src/main/java/lance5057/tDefense/core/tools/armor/cloth/TinkersShawl.java +++ b/src/main/java/lance5057/tDefense/core/tools/armor/cloth/TinkersShawl.java @@ -1,17 +1,21 @@ package lance5057.tDefense.core.tools.armor.cloth; -import lance5057.tDefense.core.materials.ClothMaterialStats; -import lance5057.tDefense.core.materials.HelmMaterialStats; +import java.util.List; + +import lance5057.tDefense.core.materials.ArmorMaterialStats.ChestMaterialStats; +import lance5057.tDefense.core.materials.ArmorMaterialStats.ClothMaterialStats; import lance5057.tDefense.core.parts.TDParts; -import lance5057.tDefense.core.tools.armor.renderers.cloth.ModelTinkersRobe; import lance5057.tDefense.core.tools.armor.renderers.cloth.ModelTinkersShawl; import lance5057.tDefense.core.tools.bases.ArmorCore; +import lance5057.tDefense.util.ArmorNBT; import net.minecraft.client.model.ModelBiped; import net.minecraft.entity.Entity; import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NBTTagCompound; import net.minecraft.world.World; import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.SideOnly; +import slimeknights.tconstruct.library.materials.Material; import slimeknights.tconstruct.library.tinkering.PartMaterialType; public class TinkersShawl extends ArmorCore @@ -72,4 +76,9 @@ public class TinkersShawl extends ArmorCore return new ModelTinkersShawl(stack); } + @Override + public NBTTagCompound buildTag(List<Material> materials) { + ArmorNBT data = buildDefaultArmorTag(materials, ChestMaterialStats.TYPE); + return data.get(); + } } diff --git a/src/main/java/lance5057/tDefense/core/tools/armor/cloth/TinkersShoes.java b/src/main/java/lance5057/tDefense/core/tools/armor/cloth/TinkersShoes.java index 6d2e956..c5a8cea 100644 --- a/src/main/java/lance5057/tDefense/core/tools/armor/cloth/TinkersShoes.java +++ b/src/main/java/lance5057/tDefense/core/tools/armor/cloth/TinkersShoes.java @@ -1,17 +1,21 @@ package lance5057.tDefense.core.tools.armor.cloth; -import lance5057.tDefense.core.materials.ClothMaterialStats; -import lance5057.tDefense.core.materials.HelmMaterialStats; +import java.util.List; + +import lance5057.tDefense.core.materials.ArmorMaterialStats.ClothMaterialStats; +import lance5057.tDefense.core.materials.ArmorMaterialStats.FeetMaterialStats; import lance5057.tDefense.core.parts.TDParts; -import lance5057.tDefense.core.tools.armor.renderers.cloth.ModelTinkersShawl; import lance5057.tDefense.core.tools.armor.renderers.cloth.ModelTinkersShoes; import lance5057.tDefense.core.tools.bases.ArmorCore; +import lance5057.tDefense.util.ArmorNBT; import net.minecraft.client.model.ModelBiped; import net.minecraft.entity.Entity; import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NBTTagCompound; import net.minecraft.world.World; import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.SideOnly; +import slimeknights.tconstruct.library.materials.Material; import slimeknights.tconstruct.library.tinkering.PartMaterialType; import slimeknights.tconstruct.tools.TinkerTools; @@ -70,5 +74,9 @@ public class TinkersShoes extends ArmorCore return new ModelTinkersShoes(stack); } - + @Override + public NBTTagCompound buildTag(List<Material> materials) { + ArmorNBT data = buildDefaultArmorTag(materials, FeetMaterialStats.TYPE); + return data.get(); + } } diff --git a/src/main/java/lance5057/tDefense/core/tools/armor/heavy/TinkersBreastplate.java b/src/main/java/lance5057/tDefense/core/tools/armor/heavy/TinkersBreastplate.java index 6b5d20b..212d53c 100644 --- a/src/main/java/lance5057/tDefense/core/tools/armor/heavy/TinkersBreastplate.java +++ b/src/main/java/lance5057/tDefense/core/tools/armor/heavy/TinkersBreastplate.java @@ -1,13 +1,18 @@ package lance5057.tDefense.core.tools.armor.heavy; -import lance5057.tDefense.core.materials.ChestMaterialStats; +import java.util.List; + +import lance5057.tDefense.core.materials.ArmorMaterialStats.ChestMaterialStats; import lance5057.tDefense.core.parts.TDParts; import lance5057.tDefense.core.tools.armor.renderers.heavy.ModelTinkersBreastplate; import lance5057.tDefense.core.tools.bases.ArmorCore; +import lance5057.tDefense.util.ArmorNBT; import net.minecraft.client.model.ModelBiped; import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NBTTagCompound; import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.SideOnly; +import slimeknights.tconstruct.library.materials.Material; import slimeknights.tconstruct.library.tinkering.PartMaterialType; import slimeknights.tconstruct.tools.TinkerTools; @@ -43,4 +48,10 @@ public class TinkersBreastplate extends ArmorCore { return new ModelTinkersBreastplate(stack); } + + @Override + public NBTTagCompound buildTag(List<Material> materials) { + ArmorNBT data = buildDefaultArmorTag(materials, ChestMaterialStats.TYPE); + return data.get(); + } } diff --git a/src/main/java/lance5057/tDefense/core/tools/armor/heavy/TinkersGrieves.java b/src/main/java/lance5057/tDefense/core/tools/armor/heavy/TinkersGrieves.java index 29900c1..c74ee9e 100644 --- a/src/main/java/lance5057/tDefense/core/tools/armor/heavy/TinkersGrieves.java +++ b/src/main/java/lance5057/tDefense/core/tools/armor/heavy/TinkersGrieves.java @@ -1,14 +1,19 @@ package lance5057.tDefense.core.tools.armor.heavy; -import lance5057.tDefense.core.materials.ClothMaterialStats; -import lance5057.tDefense.core.materials.LegsMaterialStats; +import java.util.List; + +import lance5057.tDefense.core.materials.ArmorMaterialStats.ClothMaterialStats; +import lance5057.tDefense.core.materials.ArmorMaterialStats.LegsMaterialStats; import lance5057.tDefense.core.parts.TDParts; import lance5057.tDefense.core.tools.armor.renderers.heavy.ModelTinkersGrieves; import lance5057.tDefense.core.tools.bases.ArmorCore; +import lance5057.tDefense.util.ArmorNBT; import net.minecraft.client.model.ModelBiped; import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NBTTagCompound; import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.SideOnly; +import slimeknights.tconstruct.library.materials.Material; import slimeknights.tconstruct.library.tinkering.PartMaterialType; public class TinkersGrieves extends ArmorCore @@ -43,4 +48,10 @@ public class TinkersGrieves extends ArmorCore { return new ModelTinkersGrieves(stack); } + + @Override + public NBTTagCompound buildTag(List<Material> materials) { + ArmorNBT data = buildDefaultArmorTag(materials, LegsMaterialStats.TYPE); + return data.get(); + } } diff --git a/src/main/java/lance5057/tDefense/core/tools/armor/heavy/TinkersHelm.java b/src/main/java/lance5057/tDefense/core/tools/armor/heavy/TinkersHelm.java index 4b5d6f1..87b143b 100644 --- a/src/main/java/lance5057/tDefense/core/tools/armor/heavy/TinkersHelm.java +++ b/src/main/java/lance5057/tDefense/core/tools/armor/heavy/TinkersHelm.java @@ -1,13 +1,18 @@ package lance5057.tDefense.core.tools.armor.heavy; -import lance5057.tDefense.core.materials.HelmMaterialStats; +import java.util.List; + +import lance5057.tDefense.core.materials.ArmorMaterialStats.HelmMaterialStats; import lance5057.tDefense.core.parts.TDParts; import lance5057.tDefense.core.tools.armor.renderers.heavy.ModelTinkersHelm; import lance5057.tDefense.core.tools.bases.ArmorCore; +import lance5057.tDefense.util.ArmorNBT; import net.minecraft.client.model.ModelBiped; import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NBTTagCompound; import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.SideOnly; +import slimeknights.tconstruct.library.materials.Material; import slimeknights.tconstruct.library.tinkering.PartMaterialType; import slimeknights.tconstruct.tools.TinkerTools; @@ -43,4 +48,10 @@ public class TinkersHelm extends ArmorCore { return new ModelTinkersHelm(stack); } + + @Override + public NBTTagCompound buildTag(List<Material> materials) { + ArmorNBT data = buildDefaultArmorTag(materials, HelmMaterialStats.TYPE); + return data.get(); + } } diff --git a/src/main/java/lance5057/tDefense/core/tools/armor/heavy/TinkersSabatons.java b/src/main/java/lance5057/tDefense/core/tools/armor/heavy/TinkersSabatons.java index 8ef9f2d..ec5b5ba 100644 --- a/src/main/java/lance5057/tDefense/core/tools/armor/heavy/TinkersSabatons.java +++ b/src/main/java/lance5057/tDefense/core/tools/armor/heavy/TinkersSabatons.java @@ -1,22 +1,27 @@ package lance5057.tDefense.core.tools.armor.heavy; -import lance5057.tDefense.core.materials.BootsMaterialStats; -import lance5057.tDefense.core.materials.ClothMaterialStats; +import java.util.List; + +import lance5057.tDefense.core.materials.ArmorMaterialStats.ClothMaterialStats; +import lance5057.tDefense.core.materials.ArmorMaterialStats.FeetMaterialStats; import lance5057.tDefense.core.parts.TDParts; import lance5057.tDefense.core.tools.armor.renderers.heavy.ModelTinkersSabatons; import lance5057.tDefense.core.tools.bases.ArmorCore; +import lance5057.tDefense.util.ArmorNBT; import net.minecraft.client.model.ModelBiped; import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NBTTagCompound; import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.SideOnly; +import slimeknights.tconstruct.library.materials.Material; import slimeknights.tconstruct.library.tinkering.PartMaterialType; public class TinkersSabatons extends ArmorCore { public TinkersSabatons() { - super(new PartMaterialType(TDParts.armorPlate, BootsMaterialStats.TYPE), - new PartMaterialType(TDParts.armorPlate, BootsMaterialStats.TYPE), + super(new PartMaterialType(TDParts.armorPlate, FeetMaterialStats.TYPE), + new PartMaterialType(TDParts.armorPlate, FeetMaterialStats.TYPE), PartMaterialType.handle(TDParts.filigree), new PartMaterialType(TDParts.cloth, ClothMaterialStats.TYPE)); setUnlocalizedName("tinkerssabatons"); @@ -43,4 +48,10 @@ public class TinkersSabatons extends ArmorCore { return new ModelTinkersSabatons(stack); } + + @Override + public NBTTagCompound buildTag(List<Material> materials) { + ArmorNBT data = buildDefaultArmorTag(materials, FeetMaterialStats.TYPE); + return data.get(); + } } diff --git a/src/main/java/lance5057/tDefense/core/tools/armor/light/TinkersBoots.java b/src/main/java/lance5057/tDefense/core/tools/armor/light/TinkersBoots.java index 5a433ab..0c1778b 100644 --- a/src/main/java/lance5057/tDefense/core/tools/armor/light/TinkersBoots.java +++ b/src/main/java/lance5057/tDefense/core/tools/armor/light/TinkersBoots.java @@ -1,21 +1,26 @@ package lance5057.tDefense.core.tools.armor.light; -import lance5057.tDefense.core.materials.BootsMaterialStats; -import lance5057.tDefense.core.materials.ClothMaterialStats; +import java.util.List; + +import lance5057.tDefense.core.materials.ArmorMaterialStats.ClothMaterialStats; +import lance5057.tDefense.core.materials.ArmorMaterialStats.FeetMaterialStats; import lance5057.tDefense.core.parts.TDParts; import lance5057.tDefense.core.tools.armor.renderers.light.ModelTinkersBoots; import lance5057.tDefense.core.tools.bases.ArmorCore; +import lance5057.tDefense.util.ArmorNBT; import net.minecraft.client.model.ModelBiped; import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NBTTagCompound; import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.SideOnly; +import slimeknights.tconstruct.library.materials.Material; import slimeknights.tconstruct.library.tinkering.PartMaterialType; public class TinkersBoots extends ArmorCore { public TinkersBoots() { - super(new PartMaterialType(TDParts.chainmail, BootsMaterialStats.TYPE), + super(new PartMaterialType(TDParts.chainmail, FeetMaterialStats.TYPE), new PartMaterialType(TDParts.cloth, ClothMaterialStats.TYPE), PartMaterialType.handle(TDParts.rivets)); setUnlocalizedName("tinkersboots"); @@ -41,4 +46,10 @@ public class TinkersBoots extends ArmorCore { return new ModelTinkersBoots(stack); } + + @Override + public NBTTagCompound buildTag(List<Material> materials) { + ArmorNBT data = buildDefaultArmorTag(materials, FeetMaterialStats.TYPE); + return data.get(); + } } diff --git a/src/main/java/lance5057/tDefense/core/tools/armor/renderers/ArmorRenderer.java b/src/main/java/lance5057/tDefense/core/tools/armor/renderers/ArmorRenderer.java index bcd2de7..558cad2 100644 --- a/src/main/java/lance5057/tDefense/core/tools/armor/renderers/ArmorRenderer.java +++ b/src/main/java/lance5057/tDefense/core/tools/armor/renderers/ArmorRenderer.java @@ -1,5 +1,6 @@ package lance5057.tDefense.core.tools.armor.renderers; +import java.awt.image.BufferedImage; import java.util.List; import org.lwjgl.opengl.GL11; @@ -7,7 +8,9 @@ import org.lwjgl.opengl.GL11; import lance5057.tDefense.Reference; import lance5057.tDefense.core.tools.armor.renderers.shaders.ArmorShader; import lance5057.tDefense.core.tools.bases.ArmorCore; +import net.minecraft.client.Minecraft; import net.minecraft.client.model.ModelBiped; +import net.minecraft.client.renderer.texture.DynamicTexture; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.item.EntityArmorStand; @@ -18,58 +21,66 @@ import slimeknights.tconstruct.library.materials.Material; import slimeknights.tconstruct.library.utils.TagUtil; import slimeknights.tconstruct.library.utils.TinkerUtil; -public class ArmorRenderer extends ModelBiped -{ +public class ArmorRenderer extends ModelBiped { // public String[] partNames; - public ItemStack stack; - public String defaultFolder; + public ItemStack stack; + public String defaultFolder; + DynamicTexture texture; // public List<ModelRenderer> boxes = new ArrayList<ModelRenderer>(); public NBTTagCompound defaultTags = new NBTTagCompound(); - public ArmorRenderer(float a, float b, int c, int d, ItemStack stack) - { + public ArmorRenderer(float a, float b, int c, int d, ItemStack stack) { super(a, b, c, d); - + this.stack = stack; + + initTexture(); } - @Override - public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) - { - GL11.glPushMatrix(); + public void initTexture() { + BufferedImage buffImg = new BufferedImage(this.textureWidth, this.textureHeight, BufferedImage.TYPE_INT_ARGB); - for (int i = 0; i < TinkerUtil.getMaterialsFromTagList(TagUtil.getBaseMaterialsTagList(stack)).size(); i++) - { - GL11.glPushMatrix(); - - EntityLivingBase e = (EntityLivingBase) entity; + for (int i = 0; i < TinkerUtil.getMaterialsFromTagList(TagUtil.getBaseMaterialsTagList(stack)).size(); i++) { String s = stack.getItem().getRegistryName().getResourceDomain(); List<Material> mats = TinkerUtil.getMaterialsFromTagList(TagUtil.getBaseMaterialsTagList(stack)); String o = mats.get(i).renderInfo.getTextureSuffix(); - ArmorShader.selectRenderer(mats.get(i).renderInfo, new ResourceLocation(Reference.MOD_ID, ((ArmorCore) stack.getItem()).getArmorTexture(stack, i))); + ArmorShader.selectRenderer(buffImg, mats.get(i).renderInfo, + new ResourceLocation(Reference.MOD_ID, ((ArmorCore) stack.getItem()).getArmorTexture(stack, i))); + } + + texture = new DynamicTexture(buffImg); + } - super.render(entity, f, f1, f2, f3, f4, f5); + @Override + public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { + GL11.glPushMatrix(); - GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); - GL11.glDisable(GL11.GL_BLEND); - GL11.glPopMatrix(); + EntityLivingBase e = (EntityLivingBase) entity; + if (texture != null) { + Minecraft.getMinecraft().getTextureManager() + .bindTexture(Minecraft.getMinecraft().getTextureManager().getDynamicTextureLocation("tdarmor", texture)); + } + else + { + initTexture(); } + super.render(entity, f, f1, f2, f3, f4, f5); + GL11.glPopMatrix(); GL11.glColor3d(1.0, 1.0, 1.0); } - //Mojang plz + // Mojang plz @Override - public void setRotationAngles(float limbSwing, float limbSwingAmount, float ageInTicks, float netHeadYaw, float headPitch, float scaleFactor, Entity entityIn) - { - if (entityIn instanceof EntityArmorStand) - { + public void setRotationAngles(float limbSwing, float limbSwingAmount, float ageInTicks, float netHeadYaw, + float headPitch, float scaleFactor, Entity entityIn) { + if (entityIn instanceof EntityArmorStand) { EntityArmorStand entityarmorstand = (EntityArmorStand) entityIn; this.bipedHead.rotateAngleX = 0.017453292F * entityarmorstand.getHeadRotation().getX(); this.bipedHead.rotateAngleY = 0.017453292F * entityarmorstand.getHeadRotation().getY(); @@ -94,6 +105,7 @@ public class ArmorRenderer extends ModelBiped this.bipedRightLeg.setRotationPoint(-1.9F, 11.0F, 0.0F); copyModelAngles(this.bipedHead, this.bipedHeadwear); } else - super.setRotationAngles(limbSwing, limbSwingAmount, ageInTicks, netHeadYaw, headPitch, scaleFactor, entityIn); + super.setRotationAngles(limbSwing, limbSwingAmount, ageInTicks, netHeadYaw, headPitch, scaleFactor, + entityIn); } } diff --git a/src/main/java/lance5057/tDefense/core/tools/armor/renderers/cloth/ModelTinkersHood.java b/src/main/java/lance5057/tDefense/core/tools/armor/renderers/cloth/ModelTinkersHood.java index f9c55b1..54b2c6d 100644 --- a/src/main/java/lance5057/tDefense/core/tools/armor/renderers/cloth/ModelTinkersHood.java +++ b/src/main/java/lance5057/tDefense/core/tools/armor/renderers/cloth/ModelTinkersHood.java @@ -1,9 +1,7 @@ package lance5057.tDefense.core.tools.armor.renderers.cloth; import lance5057.tDefense.core.tools.armor.renderers.ArmorRenderer; -import net.minecraft.client.model.ModelBase; import net.minecraft.client.model.ModelRenderer; -import net.minecraft.entity.Entity; import net.minecraft.item.ItemStack; /** diff --git a/src/main/java/lance5057/tDefense/core/tools/armor/renderers/cloth/ModelTinkersRobe.java b/src/main/java/lance5057/tDefense/core/tools/armor/renderers/cloth/ModelTinkersRobe.java index 3157a09..e5f179a 100644 --- a/src/main/java/lance5057/tDefense/core/tools/armor/renderers/cloth/ModelTinkersRobe.java +++ b/src/main/java/lance5057/tDefense/core/tools/armor/renderers/cloth/ModelTinkersRobe.java @@ -1,9 +1,7 @@ package lance5057.tDefense.core.tools.armor.renderers.cloth; import lance5057.tDefense.core.tools.armor.renderers.ArmorRenderer; -import net.minecraft.client.model.ModelBase; import net.minecraft.client.model.ModelRenderer; -import net.minecraft.entity.Entity; import net.minecraft.item.ItemStack; /** diff --git a/src/main/java/lance5057/tDefense/core/tools/armor/renderers/cloth/ModelTinkersShawl.java b/src/main/java/lance5057/tDefense/core/tools/armor/renderers/cloth/ModelTinkersShawl.java index 67ca62e..1dc721f 100644 --- a/src/main/java/lance5057/tDefense/core/tools/armor/renderers/cloth/ModelTinkersShawl.java +++ b/src/main/java/lance5057/tDefense/core/tools/armor/renderers/cloth/ModelTinkersShawl.java @@ -1,9 +1,7 @@ package lance5057.tDefense.core.tools.armor.renderers.cloth; import lance5057.tDefense.core.tools.armor.renderers.ArmorRenderer; -import net.minecraft.client.model.ModelBase; import net.minecraft.client.model.ModelRenderer; -import net.minecraft.entity.Entity; import net.minecraft.item.ItemStack; /** diff --git a/src/main/java/lance5057/tDefense/core/tools/armor/renderers/cloth/ModelTinkersShoes.java b/src/main/java/lance5057/tDefense/core/tools/armor/renderers/cloth/ModelTinkersShoes.java index e5f6682..2f4a230 100644 --- a/src/main/java/lance5057/tDefense/core/tools/armor/renderers/cloth/ModelTinkersShoes.java +++ b/src/main/java/lance5057/tDefense/core/tools/armor/renderers/cloth/ModelTinkersShoes.java @@ -2,7 +2,6 @@ package lance5057.tDefense.core.tools.armor.renderers.cloth; import lance5057.tDefense.core.tools.armor.renderers.ArmorRenderer; import net.minecraft.client.model.ModelRenderer; -import net.minecraft.entity.Entity; import net.minecraft.item.ItemStack; /** diff --git a/src/main/java/lance5057/tDefense/core/tools/armor/renderers/heavy/ModelTinkersBreastplate.java b/src/main/java/lance5057/tDefense/core/tools/armor/renderers/heavy/ModelTinkersBreastplate.java index b59a189..4b3c5a6 100644 --- a/src/main/java/lance5057/tDefense/core/tools/armor/renderers/heavy/ModelTinkersBreastplate.java +++ b/src/main/java/lance5057/tDefense/core/tools/armor/renderers/heavy/ModelTinkersBreastplate.java @@ -2,7 +2,6 @@ package lance5057.tDefense.core.tools.armor.renderers.heavy; import lance5057.tDefense.core.tools.armor.renderers.ArmorRenderer; import net.minecraft.client.model.ModelRenderer; -import net.minecraft.entity.Entity; import net.minecraft.item.ItemStack; /** @@ -21,14 +20,14 @@ public class ModelTinkersBreastplate extends ArmorRenderer { public ModelRenderer Pauldron2R; public ModelTinkersBreastplate(ItemStack stack) { - super(0.25f, 0, 96, 64, stack); + super(0.25f, 0, 128, 64, stack); this.textureWidth = 128; this.textureHeight = 64; -// this.ArmL = new ModelRenderer(this, 92, 12); -// this.ArmL.setRotationPoint(0.0F, 0.0F, 0.0F); -// this.ArmL.addBox(-1.0F, -2.3F, -3.0F, 5, 6, 6, 0.0F); -// this.bipedLeftArm.addChild(ArmL); + this.ArmL = new ModelRenderer(this, 92, 12); + this.ArmL.setRotationPoint(0.0F, 0.0F, 0.0F); + this.ArmL.addBox(-1.0F, -2.3F, -3.0F, 5, 6, 6, 0.0F); + this.bipedLeftArm.addChild(ArmL); this.PauldronR = new ModelRenderer(this, 88, 0); this.PauldronR.mirror = true; @@ -42,11 +41,11 @@ public class ModelTinkersBreastplate extends ArmorRenderer { this.Plackart.addBox(-4.0F, 5.0F, -3.0F, 8, 7, 6, 0.3F); this.bipedBody.addChild(Plackart); -// this.ArmR = new ModelRenderer(this, 92, 12); -// this.ArmR.mirror = true; -// this.ArmR.setRotationPoint(0.0F, 0.0F, 0.0F); -// this.ArmR.addBox(-4.0F, -2.3F, -3.0F, 5, 6, 6, 0.0F); -// this.bipedRightArm.addChild(ArmR); + this.ArmR = new ModelRenderer(this, 92, 12); + this.ArmR.mirror = true; + this.ArmR.setRotationPoint(0.0F, 0.0F, 0.0F); + this.ArmR.addBox(-4.0F, -2.3F, -3.0F, 5, 6, 6, 0.0F); + this.bipedRightArm.addChild(ArmR); this.BackPlate = new ModelRenderer(this, 64, 24); this.BackPlate.setRotationPoint(0.0F, 0.0F, 0.0F); diff --git a/src/main/java/lance5057/tDefense/core/tools/armor/renderers/heavy/ModelTinkersGrieves.java b/src/main/java/lance5057/tDefense/core/tools/armor/renderers/heavy/ModelTinkersGrieves.java index e78670f..b14db14 100644 --- a/src/main/java/lance5057/tDefense/core/tools/armor/renderers/heavy/ModelTinkersGrieves.java +++ b/src/main/java/lance5057/tDefense/core/tools/armor/renderers/heavy/ModelTinkersGrieves.java @@ -2,7 +2,6 @@ package lance5057.tDefense.core.tools.armor.renderers.heavy; import lance5057.tDefense.core.tools.armor.renderers.ArmorRenderer; import net.minecraft.client.model.ModelRenderer; -import net.minecraft.entity.Entity; import net.minecraft.item.ItemStack; /** diff --git a/src/main/java/lance5057/tDefense/core/tools/armor/renderers/heavy/ModelTinkersHelm.java b/src/main/java/lance5057/tDefense/core/tools/armor/renderers/heavy/ModelTinkersHelm.java index 69808fd..937bcc4 100644 --- a/src/main/java/lance5057/tDefense/core/tools/armor/renderers/heavy/ModelTinkersHelm.java +++ b/src/main/java/lance5057/tDefense/core/tools/armor/renderers/heavy/ModelTinkersHelm.java @@ -2,7 +2,6 @@ package lance5057.tDefense.core.tools.armor.renderers.heavy; import lance5057.tDefense.core.tools.armor.renderers.ArmorRenderer; import net.minecraft.client.model.ModelRenderer; -import net.minecraft.entity.Entity; import net.minecraft.item.ItemStack; /** diff --git a/src/main/java/lance5057/tDefense/core/tools/armor/renderers/heavy/ModelTinkersSabatons.java b/src/main/java/lance5057/tDefense/core/tools/armor/renderers/heavy/ModelTinkersSabatons.java index 87092a8..0ec9aaa 100644 --- a/src/main/java/lance5057/tDefense/core/tools/armor/renderers/heavy/ModelTinkersSabatons.java +++ b/src/main/java/lance5057/tDefense/core/tools/armor/renderers/heavy/ModelTinkersSabatons.java @@ -2,7 +2,6 @@ package lance5057.tDefense.core.tools.armor.renderers.heavy; import lance5057.tDefense.core.tools.armor.renderers.ArmorRenderer; import net.minecraft.client.model.ModelRenderer; -import net.minecraft.entity.Entity; import net.minecraft.item.ItemStack; /** diff --git a/src/main/java/lance5057/tDefense/core/tools/armor/renderers/light/ModelTinkersBoots.java b/src/main/java/lance5057/tDefense/core/tools/armor/renderers/light/ModelTinkersBoots.java index 5b292f2..8412491 100644 --- a/src/main/java/lance5057/tDefense/core/tools/armor/renderers/light/ModelTinkersBoots.java +++ b/src/main/java/lance5057/tDefense/core/tools/armor/renderers/light/ModelTinkersBoots.java @@ -1,7 +1,6 @@ package lance5057.tDefense.core.tools.armor.renderers.light; import lance5057.tDefense.core.tools.armor.renderers.ArmorRenderer; -import net.minecraft.client.model.ModelBase; import net.minecraft.client.model.ModelRenderer; import net.minecraft.entity.Entity; import net.minecraft.item.ItemStack; diff --git a/src/main/java/lance5057/tDefense/core/tools/armor/renderers/shaders/ArmorShader.java b/src/main/java/lance5057/tDefense/core/tools/armor/renderers/shaders/ArmorShader.java index de1e004..5a1e803 100644 --- a/src/main/java/lance5057/tDefense/core/tools/armor/renderers/shaders/ArmorShader.java +++ b/src/main/java/lance5057/tDefense/core/tools/armor/renderers/shaders/ArmorShader.java @@ -1,67 +1,183 @@ package lance5057.tDefense.core.tools.armor.renderers.shaders; -import org.lwjgl.opengl.GL11; +import static org.lwjgl.opengl.GL11.GL_BLEND; +import static org.lwjgl.opengl.GL11.GL_ONE_MINUS_SRC_ALPHA; +import static org.lwjgl.opengl.GL11.GL_QUADS; +import static org.lwjgl.opengl.GL11.GL_SRC_ALPHA; +import static org.lwjgl.opengl.GL11.glBegin; +import static org.lwjgl.opengl.GL11.glBlendFunc; +import static org.lwjgl.opengl.GL11.glColor3d; +import static org.lwjgl.opengl.GL11.glColor4f; +import static org.lwjgl.opengl.GL11.glEnable; +import static org.lwjgl.opengl.GL11.glEnd; +import static org.lwjgl.opengl.GL11.glTexCoord2f; + +import java.awt.Color; +import java.awt.Graphics; +import java.awt.Graphics2D; +import java.awt.image.BufferedImage; +import java.io.IOException; +import java.util.List; +import java.util.logging.Level; +import java.util.logging.Logger; + +import javax.imageio.ImageIO; import lance5057.tDefense.util.Color16Util; import net.minecraft.client.Minecraft; +import net.minecraft.client.resources.IResourceManager; import net.minecraft.util.ResourceLocation; import slimeknights.tconstruct.library.client.MaterialRenderInfo; +import slimeknights.tconstruct.library.client.texture.TextureColoredTexture; -public class ArmorShader -{ - public static void colorize(ResourceLocation r1, int color) - { - Minecraft.getMinecraft().getTextureManager().bindTexture(r1); +public class ArmorShader { - String hex = Integer.toHexString(color); - int[] colors; - if(hex.length() == 8) - colors = Color16Util.hexToRGB(hex.substring(2)); - else - colors = Color16Util.hexToRGB(hex); - GL11.glColor3d((float) colors[0] / 255, (float) colors[1] / 255, (float) colors[2] / 255); + public static BufferedImage colorize(ResourceLocation r1, int color) { + IResourceManager manager = Minecraft.getMinecraft().getResourceManager(); + try { + BufferedImage buff = ImageIO.read(manager.getResource(r1).getInputStream()); + BufferedImage tint = new BufferedImage(buff.getWidth(), buff.getHeight(), BufferedImage.TYPE_INT_ARGB); + + Graphics2D graphics = tint.createGraphics(); + + graphics.setPaint(new Color(color)); + graphics.fillRect(0, 0, tint.getWidth(), tint.getHeight()); + graphics.dispose(); + + return multiply(buff, tint); + + } catch (IOException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + return null; } - public static void metalTexture(ResourceLocation r1, ResourceLocation r2, int color) - { - GL11.glEnable(GL11.GL_BLEND); - GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); + public static void metalTexture(ResourceLocation r1, ResourceLocation r2, int color) { + glEnable(GL_BLEND); + glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); Minecraft.getMinecraft().getTextureManager().bindTexture(r1); int[] colors = Color16Util.hexToRGB(Integer.toHexString(color)); -// GL11.glColor3d((float) colors[0] / 255, (float) colors[1] / 255, (float) colors[2] / 255); - + // glColor3d((float) colors[0] / 255, (float) colors[1] / 255, (float) + // colors[2] / 255); + Minecraft.getMinecraft().getTextureManager().bindTexture(r1); - GL11.glColor4f((float) colors[0] / 255, (float) colors[1] / 255, (float) colors[2] / 255, 1.0f); - GL11.glBegin(GL11.GL_QUADS); - GL11.glTexCoord2f(0.0f, 0.0f); - GL11.glTexCoord2f(1.0f, 0.0f); - GL11.glTexCoord2f(1.0f, 1.0f); - GL11.glTexCoord2f(0.0f, 1.0f); - GL11.glEnd(); - + glColor4f((float) colors[0] / 255, (float) colors[1] / 255, (float) colors[2] / 255, 1.0f); + glBegin(GL_QUADS); + glTexCoord2f(0.0f, 0.0f); + glTexCoord2f(1.0f, 0.0f); + glTexCoord2f(1.0f, 1.0f); + glTexCoord2f(0.0f, 1.0f); + glEnd(); + Minecraft.getMinecraft().getTextureManager().bindTexture(r2); - GL11.glColor4f((float) colors[0] / 255, (float) colors[1] / 255, (float) colors[2] / 255, 1.0f); - GL11.glBegin(GL11.GL_QUADS); - GL11.glTexCoord2f(0.0f, 0.0f); - GL11.glTexCoord2f(1.0f, 0.0f); - GL11.glTexCoord2f(1.0f, 1.0f); - GL11.glTexCoord2f(0.0f, 1.0f); - GL11.glEnd(); + glColor4f((float) colors[0] / 255, (float) colors[1] / 255, (float) colors[2] / 255, 1.0f); + glBegin(GL_QUADS); + glTexCoord2f(0.0f, 0.0f); + glTexCoord2f(1.0f, 0.0f); + glTexCoord2f(1.0f, 1.0f); + glTexCoord2f(0.0f, 1.0f); + glEnd(); + } + + public static BufferedImage blockTexture(TextureColoredTexture sprite) { + + List<ResourceLocation> l = (List<ResourceLocation>) sprite.getDependencies(); + String s = l.get(1).toString(); + + IResourceManager manager = Minecraft.getMinecraft().getResourceManager(); + if (s.contains("minecraft:")) { + s = s.substring(s.indexOf(":") + 1); + s = "textures/" + s + ".png"; + } else { + s = l.get(1).getResourceDomain() + ":textures/" + l.get(1).getResourcePath() + ".png"; + } + try { + BufferedImage buff = ImageIO.read(manager.getResource(l.get(0)).getInputStream()); + BufferedImage buff2 = ImageIO.read(manager.getResource(new ResourceLocation(s)).getInputStream()); + + return multiply(buff, buff2); + } catch (IOException e) { + Logger.getAnonymousLogger().log(Level.SEVERE, "Somethings Fucky - TinkersDefense:ArmorShader - Line 107"); + } + return null; + } - public static void selectRenderer(MaterialRenderInfo info, ResourceLocation r1) - { - if(info instanceof MaterialRenderInfo.MetalTextured) - metalTexture(r1,r1, ((MaterialRenderInfo.MetalTextured) info).color); - else if(info instanceof MaterialRenderInfo.Metal) - colorize(r1, ((MaterialRenderInfo.Metal) info).color); - else if(info instanceof MaterialRenderInfo.MultiColor) - colorize(r1, ((MaterialRenderInfo.MultiColor) info).getVertexColor()); - else if(info instanceof MaterialRenderInfo.InverseMultiColor) - colorize(r1, ((MaterialRenderInfo.InverseMultiColor) info).getVertexColor()); + public static void selectRenderer(BufferedImage b, MaterialRenderInfo info, ResourceLocation r1) { + + Graphics g = b.getGraphics(); + + if (info instanceof MaterialRenderInfo.MetalTextured) + metalTexture(r1, r1, ((MaterialRenderInfo.MetalTextured) info).color); + else if (info instanceof MaterialRenderInfo.Metal) + g.drawImage(colorize(r1, ((MaterialRenderInfo.Metal) info).color), 0, 0, null); + else if (info instanceof MaterialRenderInfo.MultiColor) + g.drawImage(colorize(r1, ((MaterialRenderInfo.MultiColor) info).getVertexColor()), 0, 0, null); + else if (info instanceof MaterialRenderInfo.InverseMultiColor) + g.drawImage(colorize(r1, ((MaterialRenderInfo.InverseMultiColor) info).getVertexColor()), 0, 0, null); + else if (info instanceof MaterialRenderInfo.BlockTexture) + g.drawImage( + blockTexture((TextureColoredTexture) ((MaterialRenderInfo.BlockTexture) info).getTexture(r1, "")), + 0, 0, null); else - colorize(r1, ((MaterialRenderInfo.Default) info).color); - + g.drawImage(colorize(r1, ((MaterialRenderInfo.Default) info).color), 0, 0, null); + + g.dispose(); + + } + + public static BufferedImage multiply(BufferedImage buff, BufferedImage buff2) { + BufferedImage buffImg = new BufferedImage(buff.getWidth(), buff.getHeight(), BufferedImage.TYPE_INT_ARGB); + + for (int i = 0; i < buff.getWidth(); i++) + for (int j = 0; j < buff.getHeight(); j++) { + Color c1 = new Color(buff.getRGB(i, j), true); + int x = i % buff2.getWidth(); + int y = j % buff2.getHeight(); + Color c2 = new Color(buff2.getRGB(x, y), true); + float r, g, b, a; + Color out; + + // multiply here + r = (((float) c1.getRed()) / 255) * (((float) c2.getRed()) / 255); + g = (((float) c1.getGreen()) / 255) * (((float) c2.getGreen()) / 255); + b = (((float) c1.getBlue()) / 255) * (((float) c2.getBlue()) / 255); + + // transparency always comes from the first buffer + int a2 = c1.getAlpha(); + a = ((float) c1.getAlpha()) / 255; + + out = new Color(r, g, b, a); + buffImg.setRGB(i, j, out.getRGB()); + } + + return buffImg; + } + + public static BufferedImage Invert(BufferedImage buff) { + BufferedImage buffImg = new BufferedImage(buff.getWidth(), buff.getHeight(), BufferedImage.TYPE_INT_ARGB); + + for (int i = 0; i < buff.getWidth(); i++) + for (int j = 0; j < buff.getHeight(); j++) { + Color c1 = new Color(buff.getRGB(i, j), true); + float r, g, b, a; + Color out; + + // invert here + r = Math.abs((((float) c1.getRed()) / 255) - 1.0f); + g = Math.abs((((float) c1.getGreen()) / 255) - 1.0f); + b = Math.abs((((float) c1.getBlue()) / 255) - 1.0f); + + // transparency always comes from the first buffer + int a2 = c1.getAlpha(); + a = ((float) c1.getAlpha()) / 255; + + out = new Color(r, g, b, a); + buffImg.setRGB(i, j, out.getRGB()); + } + + return buffImg; } } diff --git a/src/main/java/lance5057/tDefense/core/tools/armor/straps/ItemStraps.java b/src/main/java/lance5057/tDefense/core/tools/armor/straps/ItemStraps.java index d784530..e7e003f 100644 --- a/src/main/java/lance5057/tDefense/core/tools/armor/straps/ItemStraps.java +++ b/src/main/java/lance5057/tDefense/core/tools/armor/straps/ItemStraps.java @@ -3,7 +3,6 @@ package lance5057.tDefense.core.tools.armor.straps; import javax.annotation.Nonnull; import javax.annotation.Nullable; -import baubles.api.IBauble; import lance5057.tDefense.TinkersDefense; import lance5057.tDefense.core.tools.bases.ArmorCore; import net.minecraft.client.model.ModelBiped; @@ -25,6 +24,7 @@ import net.minecraftforge.common.ISpecialArmor; import net.minecraftforge.common.capabilities.Capability; import net.minecraftforge.common.capabilities.ICapabilityProvider; import net.minecraftforge.common.capabilities.ICapabilitySerializable; +import net.minecraftforge.common.util.EnumHelper; import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.SideOnly; import net.minecraftforge.items.CapabilityItemHandler; @@ -33,10 +33,18 @@ import net.minecraftforge.items.ItemStackHandler; public class ItemStraps extends ItemArmor implements ISpecialArmor { + public static ArmorMaterial ARMOR = EnumHelper.addArmorMaterial("NAME", "blank", 0, new int[] {0, 0, 0, 0}, 0, null, 0); + public EntityEquipmentSlot equipSlot; + + @SideOnly(Side.CLIENT) + private ModelBiped model; + + private ItemStack stack; + public ItemStraps(EntityEquipmentSlot slot) { - super(ArmorMaterial.LEATHER, 0, slot); + super(ARMOR, 0, slot); // ItemStacks that store an NBT Tag Compound are limited to stack size // of 1 setMaxStackSize(1); @@ -66,7 +74,12 @@ public class ItemStraps extends ItemArmor implements ISpecialArmor ItemStack in = itemStack.getCapability(CapabilityItemHandler.ITEM_HANDLER_CAPABILITY, null).getStackInSlot(0); if(in.getItem() instanceof ArmorCore) { - return ((ArmorCore)in.getItem()).getArmorModel(in); + if(model == null || stack == null || !stack.equals(in)) + { + model = ((ArmorCore)in.getItem()).getArmorModel(in); + stack = in; + } + return model; } return null; } @@ -78,39 +91,33 @@ public class ItemStraps extends ItemArmor implements ISpecialArmor return new InvProvider(); } - public static class InvProvider implements ICapabilitySerializable - { + private static class InvProvider implements ICapabilitySerializable<NBTBase> { private final IItemHandler inv = new ItemStackHandler(1); @Override - public boolean hasCapability(@Nonnull Capability<?> capability, @Nullable EnumFacing facing) - { + public boolean hasCapability(@Nonnull Capability<?> capability, @Nullable EnumFacing facing) { return capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY; } @Override - public <T> T getCapability(@Nonnull Capability<T> capability, @Nullable EnumFacing facing) - { - if (capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) + public <T> T getCapability(@Nonnull Capability<T> capability, @Nullable EnumFacing facing) { + if(capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) return CapabilityItemHandler.ITEM_HANDLER_CAPABILITY.cast(inv); - else - return null; + else return null; } @Override - public NBTBase serializeNBT() - { + public NBTBase serializeNBT() { return CapabilityItemHandler.ITEM_HANDLER_CAPABILITY.writeNBT(inv, null); } @Override - public void deserializeNBT(NBTBase nbt) - { + public void deserializeNBT(NBTBase nbt) { CapabilityItemHandler.ITEM_HANDLER_CAPABILITY.readNBT(inv, null, nbt); } } - + // Without this method, your inventory will NOT work!!! @Override public int getMaxItemUseDuration(ItemStack stack) @@ -146,7 +153,8 @@ public class ItemStraps extends ItemArmor implements ISpecialArmor ItemStack in = armor.getCapability(CapabilityItemHandler.ITEM_HANDLER_CAPABILITY, null).getStackInSlot(0); if(in.getItem() instanceof ArmorCore) { - return ((ArmorCore)in.getItem()).getArmorDisplay(); + int i = ((ArmorCore)in.getItem()).getArmorDisplay(in); + return i; } return 0; } diff --git a/src/main/java/lance5057/tDefense/core/tools/armor/straps/ItemStrapsInv.java b/src/main/java/lance5057/tDefense/core/tools/armor/straps/ItemStrapsInv.java index 3880e6f..8929e93 100644 --- a/src/main/java/lance5057/tDefense/core/tools/armor/straps/ItemStrapsInv.java +++ b/src/main/java/lance5057/tDefense/core/tools/armor/straps/ItemStrapsInv.java @@ -7,15 +7,15 @@ import net.minecraftforge.items.CapabilityItemHandler; import net.minecraftforge.items.IItemHandlerModifiable; import net.minecraftforge.items.ItemStackHandler; -public class ItemStrapsInv extends ItemStackHandler +public class ItemStrapsInv implements IItemHandlerModifiable { private ItemStack invItem = ItemStack.EMPTY; public static final int INVSIZE = 1; private final String name = "ArmorHolder"; - private final ItemStackHandler inventory; - + private final IItemHandlerModifiable inventory; + public ItemStrapsInv(ItemStack stack) { invItem = stack; diff --git a/src/main/java/lance5057/tDefense/core/tools/armor/straps/StrapsContainer.java b/src/main/java/lance5057/tDefense/core/tools/armor/straps/StrapsContainer.java index 9e672d0..dda3b5f 100644 --- a/src/main/java/lance5057/tDefense/core/tools/armor/straps/StrapsContainer.java +++ b/src/main/java/lance5057/tDefense/core/tools/armor/straps/StrapsContainer.java @@ -2,51 +2,27 @@ package lance5057.tDefense.core.tools.armor.straps; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.InventoryPlayer; -import net.minecraft.inventory.ClickType; import net.minecraft.inventory.Container; import net.minecraft.inventory.Slot; import net.minecraft.item.ItemStack; -import net.minecraft.util.EnumHand; import net.minecraftforge.items.SlotItemHandler; public class StrapsContainer extends Container { - /** The Item Inventory for this Container, only needed if you want to reference isUseableByPlayer */ public final ItemStrapsInv inventory; - /** Using these will make transferStackInSlot easier to understand and implement - * INV_START is the index of the first slot in the Player's Inventory, so our - * InventoryItem's number of slots (e.g. 5 slots is array indices 0-4, so start at 5) - * Notice how we don't have to remember how many slots we made? We can just use - * InventoryItem.INV_SIZE and if we ever change it, the Container updates automatically. */ private static final int INV_START = ItemStrapsInv.INVSIZE, INV_END = INV_START+26, HOTBAR_START = INV_END+1, HOTBAR_END = HOTBAR_START+8; - - // If you're planning to add armor slots, put those first like this: - // ARMOR_START = InventoryItem.INV_SIZE, ARMOR_END = ARMOR_START+3, - // INV_START = ARMOR_END+1, and then carry on like above. + public StrapsContainer(EntityPlayer par1Player, InventoryPlayer inventoryPlayer, ItemStrapsInv inventoryItem) { this.inventory = inventoryItem; int i; - - // ITEM INVENTORY - you'll need to adjust the slot locations to match your texture file - // I have them set vertically in columns of 4 to the right of the player model + this.addSlotToContainer(new SlotItemHandler(this.inventory, 0, 80, 8+23)); - // If you want, you can add ARMOR SLOTS here as well, but you need to - // make a public version of SlotArmor. I won't be doing that in this tutorial. - /* - for (i = 0; i < 4; ++i) - { - // These are the standard positions for survival inventory layout - this.addSlotToContainer(new SlotArmor(this.player, inventoryPlayer, inventoryPlayer.getSizeInventory() - 1 - i, 8, 8 + i * 18, i)); - } - */ - - // PLAYER INVENTORY - uses default locations for standard inventory texture file for (i = 0; i < 3; ++i) { for (int j = 0; j < 9; ++j) @@ -55,7 +31,6 @@ public class StrapsContainer extends Container } } - // PLAYER ACTION BAR - uses default locations for standard action bar texture file for (i = 0; i < 9; ++i) { this.addSlotToContainer(new Slot(inventoryPlayer, i, 8 + i * 18, 142)); @@ -68,9 +43,6 @@ public class StrapsContainer extends Container return true; } - /** - * Called when a player shift-clicks on a slot. You must override this or you will crash when someone does that. - */ public ItemStack transferStackInSlot(EntityPlayer par1EntityPlayer, int index) { ItemStack itemstack = ItemStack.EMPTY; @@ -81,10 +53,8 @@ public class StrapsContainer extends Container ItemStack itemstack1 = slot.getStack(); itemstack = itemstack1.copy(); - // If item is in our custom Inventory or armor slot if (index < INV_START) { - // try to place in player inventory / action bar if (!this.mergeItemStack(itemstack1, INV_START, HOTBAR_END+1, true)) { return ItemStack.EMPTY; @@ -92,72 +62,15 @@ public class StrapsContainer extends Container slot.onSlotChange(itemstack1, itemstack); } - // Item is in inventory / hotbar, try to place in custom inventory or armor slots else { - /* - If your inventory only stores certain instances of Items, - you can implement shift-clicking to your inventory like this: - - // Check that the item is the right type - if (itemstack1.getItem() instanceof ItemCustom) - { - // Try to merge into your custom inventory slots - // We use 'InventoryItem.INV_SIZE' instead of INV_START just in case - // you also add armor or other custom slots - if (!this.mergeItemStack(itemstack1, 0, InventoryItem.INV_SIZE, false)) - { - return null; - } - } - // If you added armor slots, check them here as well: - // Item being shift-clicked is armor - try to put in armor slot - if (itemstack1.getItem() instanceof ItemArmor) - { - int type = ((ItemArmor) itemstack1.getItem()).armorType; - if (!this.mergeItemStack(itemstack1, ARMOR_START + type, ARMOR_START + type + 1, false)) - { - return null; - } - } - Otherwise, you have basically 2 choices: - 1. shift-clicking between player inventory and custom inventory - 2. shift-clicking between action bar and inventory - - Be sure to choose only ONE of the following implementations!!! - */ - /** - * Implementation number 1: Shift-click into your custom inventory - */ if (index >= INV_START) { - // place in custom inventory if (!this.mergeItemStack(itemstack1, 0, INV_START, false)) { return ItemStack.EMPTY; } } - -// /** -// * Implementation number 2: Shift-click items between action bar and inventory -// */ -// // item is in player's inventory, but not in action bar -// if (index >= INV_START && index < HOTBAR_START) -// { -// // place in action bar -// if (!this.mergeItemStack(itemstack1, HOTBAR_START, HOTBAR_END+1, false)) -// { -// return ItemStack.EMPTY; -// } -// } -// // item in action bar - place in player inventory -// else if (index >= HOTBAR_START && index < HOTBAR_END+1) -// { -// if (!this.mergeItemStack(itemstack1, INV_START, INV_END+1, false)) -// { -// return ItemStack.EMPTY; -// } -// } } if (itemstack1.getItemDamage() == 0) diff --git a/src/main/java/lance5057/tDefense/core/tools/armor/straps/StrapsGui.java b/src/main/java/lance5057/tDefense/core/tools/armor/straps/StrapsGui.java index 292e037..97423dc 100644 --- a/src/main/java/lance5057/tDefense/core/tools/armor/straps/StrapsGui.java +++ b/src/main/java/lance5057/tDefense/core/tools/armor/straps/StrapsGui.java @@ -1,112 +1,54 @@ package lance5057.tDefense.core.tools.armor.straps; -import org.lwjgl.opengl.GL11; -import org.lwjgl.opengl.GL12; +import java.util.List; import lance5057.tDefense.Reference; import net.minecraft.client.gui.inventory.GuiContainer; -import net.minecraft.client.renderer.OpenGlHelper; +import net.minecraft.client.renderer.GlStateManager; import net.minecraft.client.renderer.RenderHelper; -import net.minecraft.client.renderer.entity.RenderManager; -import net.minecraft.entity.EntityLivingBase; +import net.minecraft.client.resources.I18n; +import net.minecraft.inventory.Slot; +import net.minecraft.item.ItemStack; import net.minecraft.util.ResourceLocation; -import net.minecraft.util.text.translation.I18n; +import net.minecraftforge.items.SlotItemHandler; -public class StrapsGui extends GuiContainer -{ - /** x and y size of the inventory window in pixels. Defined as float, passed as int - * These are used for drawing the player model. */ - private float xSize_lo; - private float ySize_lo; +public class StrapsGui extends GuiContainer { - /** ResourceLocation takes 2 parameters: ModId, path to texture at the location: - * "src/minecraft/assets/modid/" - * - * I have provided a sample texture file that works with this tutorial. Download it - * from Forge_Tutorials/textures/gui/ - */ - private static final ResourceLocation iconLocation = new ResourceLocation(Reference.MOD_ID, "textures/gui/straps_helm.png"); - - /** The inventory to render on screen */ - private final ItemStrapsInv inventory; + private static final ResourceLocation texture = new ResourceLocation(Reference.MOD_ID, + "textures/gui/straps_helm.png"); - public StrapsGui(StrapsContainer containerItem) - { + public StrapsGui(StrapsContainer containerItem) { super(containerItem); - this.inventory = containerItem.inventory; } /** * Draws the screen and all the components in it. */ - public void drawScreen(int par1, int par2, float par3) - { - super.drawScreen(par1, par2, par3); - this.xSize_lo = (float)par1; - this.ySize_lo = (float)par2; + public void drawScreen(int mouseX, int mouseY, float partialTicks) { + this.drawDefaultBackground(); + super.drawScreen(mouseX, mouseY, partialTicks); + this.renderHoveredToolTip(mouseX, mouseY); } - /** - * Draw the foreground layer for the GuiContainer (everything in front of the items) - */ - protected void drawGuiContainerForegroundLayer(int par1, int par2) - { -// String s = this.inventory.isInvNameLocalized() ? this.inventory.getName() : I18n.getString(this.inventory.getName()); -// this.fontRendererObj.drawString(s, this.xSize / 2 - this.fontRendererObj.getStringWidth(s) / 2, 0, 4210752); -// this.fontRendererObj.drawString(I18n.getString("container.inventory"), 26, this.ySize - 96 + 4, 4210752); + @Override + protected void drawGuiContainerForegroundLayer(int mouseX, int mouseY) { + String s = I18n.format("straps"); + fontRenderer.drawString(s, xSize / 2 - fontRenderer.getStringWidth(s) / 2, 6, 4210752); + fontRenderer.drawString(I18n.format("container.inventory"), 8, ySize - 96 + 2, 4210752); } - /** - * Draw the background layer for the GuiContainer (everything behind the items) - */ - protected void drawGuiContainerBackgroundLayer(float par1, int par2, int par3) - { - GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); - this.mc.getTextureManager().bindTexture(iconLocation); - int k = (this.width - this.xSize) / 2; - int l = (this.height - this.ySize) / 2; - this.drawTexturedModalRect(k, l, 0, 0, this.xSize, this.ySize); - int i1; - //drawPlayerModel(k + 51, l + 75, 30, (float)(k + 51) - this.xSize_lo, (float)(l + 75 - 50) - this.ySize_lo, this.mc.player); + @Override + protected void drawGuiContainerBackgroundLayer(float partialTicks, int mouseX, int mouseY) { + GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F); + mc.getTextureManager().bindTexture(texture); + int k = (width - xSize) / 2; + int l = (height - ySize) / 2; + drawTexturedModalRect(k, l, 0, 0, xSize, ySize); + + List<Slot> slotList = inventorySlots.inventorySlots; + for (Slot slot : slotList) + if (slot instanceof SlotItemHandler) { + SlotItemHandler slotf = (SlotItemHandler) slot; + } } - -// /** -// * This renders the player model in standard inventory position (in later versions of Minecraft / Forge, you can -// * simply call GuiInventory.drawEntityOnScreen directly instead of copying this code) -// */ -// public static void drawPlayerModel(int x, int y, int scale, float yaw, float pitch, EntityLivingBase entity) { -// GL11.glEnable(GL11.GL_COLOR_MATERIAL); -// GL11.glPushMatrix(); -// GL11.glTranslatef(x, y, 50.0F); -// GL11.glScalef(-scale, scale, scale); -// GL11.glRotatef(180.0F, 0.0F, 0.0F, 1.0F); -// float f2 = entity.renderYawOffset; -// float f3 = entity.rotationYaw; -// float f4 = entity.rotationPitch; -// float f5 = entity.prevRotationYawHead; -// float f6 = entity.rotationYawHead; -// GL11.glRotatef(135.0F, 0.0F, 1.0F, 0.0F); -// RenderHelper.enableStandardItemLighting(); -// GL11.glRotatef(-135.0F, 0.0F, 1.0F, 0.0F); -// GL11.glRotatef(-((float) Math.atan(pitch / 40.0F)) * 20.0F, 1.0F, 0.0F, 0.0F); -// entity.renderYawOffset = (float) Math.atan(yaw / 40.0F) * 20.0F; -// entity.rotationYaw = (float) Math.atan(yaw / 40.0F) * 40.0F; -// entity.rotationPitch = -((float) Math.atan(pitch / 40.0F)) * 20.0F; -// entity.rotationYawHead = entity.rotationYaw; -// entity.prevRotationYawHead = entity.rotationYaw; -// GL11.glTranslated(0.0F, entity.getYOffset(), 0.0F); -// RenderManager.instance.playerViewY = 180.0F; -// RenderManager.instance.renderEntityWithPosYaw(entity, 0.0D, 0.0D, 0.0D, 0.0F, 1.0F); -// entity.renderYawOffset = f2; -// entity.rotationYaw = f3; -// entity.rotationPitch = f4; -// entity.prevRotationYawHead = f5; -// entity.rotationYawHead = f6; -// GL11.glPopMatrix(); -// RenderHelper.disableStandardItemLighting(); -// GL11.glDisable(GL12.GL_RESCALE_NORMAL); -// OpenGlHelper.setActiveTexture(OpenGlHelper.lightmapTexUnit); -// GL11.glDisable(GL11.GL_TEXTURE_2D); -// OpenGlHelper.setActiveTexture(OpenGlHelper.defaultTexUnit); -// } }
\ No newline at end of file diff --git a/src/main/java/lance5057/tDefense/core/tools/bases/ArmorCore.java b/src/main/java/lance5057/tDefense/core/tools/bases/ArmorCore.java index 0c4ef87..e697e0c 100644 --- a/src/main/java/lance5057/tDefense/core/tools/bases/ArmorCore.java +++ b/src/main/java/lance5057/tDefense/core/tools/bases/ArmorCore.java @@ -4,93 +4,78 @@ import java.util.ArrayList; import java.util.List; import lance5057.tDefense.Reference; -import net.minecraft.client.Minecraft; +import lance5057.tDefense.core.materials.ArmorMaterialStats; +import lance5057.tDefense.util.ArmorNBT; import net.minecraft.client.model.ModelBiped; -import net.minecraft.client.renderer.ItemModelMesher; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.block.model.ItemCameraTransforms; import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.entity.Entity; import net.minecraft.entity.EntityLivingBase; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.util.EnumFacing; import net.minecraft.util.ResourceLocation; import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.SideOnly; -import slimeknights.tconstruct.library.client.model.MaterialModel; -import slimeknights.tconstruct.library.client.model.ModelHelper; -import slimeknights.tconstruct.library.client.model.ToolModel; +import slimeknights.tconstruct.library.materials.ExtraMaterialStats; +import slimeknights.tconstruct.library.materials.HandleMaterialStats; +import slimeknights.tconstruct.library.materials.Material; +import slimeknights.tconstruct.library.materials.MaterialTypes; import slimeknights.tconstruct.library.tinkering.PartMaterialType; import slimeknights.tconstruct.library.tools.ToolCore; -import slimeknights.tconstruct.library.tools.ToolNBT; +import slimeknights.tconstruct.library.utils.TagUtil; -public abstract class ArmorCore extends ToolCore -{ - public ArmorCore(PartMaterialType... requiredComponents) - { +public abstract class ArmorCore extends ToolCore { + public ArmorCore(PartMaterialType... requiredComponents) { super(requiredComponents); } - protected String getHarvestType() - { + protected String getHarvestType() { return null; } @Override - public float damagePotential() - { + public float damagePotential() { return 0.0f; } @Override - public double attackSpeed() - { + public double attackSpeed() { return 0; } @Override - public NBTTagCompound buildTag(List<slimeknights.tconstruct.library.materials.Material> materials) - { - ToolNBT data = buildDefaultTag(materials); - return data.get(); - } + public abstract NBTTagCompound buildTag(List<slimeknights.tconstruct.library.materials.Material> materials); - public int getArmorDisplay() - { - return 0; + public int getArmorDisplay(ItemStack stack) { + return TagUtil.getToolStats(stack).get().getInteger("ArmorRating"); } @SideOnly(Side.CLIENT) - public abstract String getArmorTexture(ItemStack stack,int layer); + public abstract String getArmorTexture(ItemStack stack, int layer); @SideOnly(Side.CLIENT) public abstract ModelBiped getArmorModel(ItemStack stack); - public List<TextureAtlasSprite> sprites; + public ArmorNBT buildDefaultArmorTag(List<Material> materials, String type) { + ArmorNBT data = new ArmorNBT(); - @SideOnly(Side.CLIENT) - public void initTextures(ItemStack stack, EntityLivingBase entity) - { - sprites = new ArrayList<TextureAtlasSprite>(); - - TextureAtlasSprite s = ((ToolCore)stack.getItem()).getMaterialForPartForGuiRendering(0).renderInfo.getTexture(new ResourceLocation(Reference.MOD_ID), "hood_cloth"); - -// ItemModelMesher mesher = Minecraft.getMinecraft().getRenderItem().getItemModelMesher(); -// List<BakedQuad> list = new ArrayList<BakedQuad>(); -// -// IBakedModel m = Minecraft.getMinecraft().getRenderItem().getItemModelWithOverrides(stack, entity.world, entity); - //Minecraft.getMinecraft().getRenderItem().renderItem(stack, ItemCameraTransforms.TransformType.NONE); - //= ModelHelper.getBakedModelForItem(stack, entity.world, entity); - -// list.addAll(m.getQuads(null, null, 0)); -// -// for (BakedQuad quad : list) -// { -// ResourceLocation loc1 = new ResourceLocation(quad.getSprite().getIconName()); -// -// sprites.add(Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(loc1.toString())); -// } + if (materials.size() >= 2) { + HandleMaterialStats handle = materials.get(0).getStatsOrUnknown(MaterialTypes.HANDLE); + ArmorMaterialStats head = materials.get(1).getStatsOrUnknown(type); + // start with head + data.head(head); + + // add in accessoires if present + if (materials.size() >= 3) { + ExtraMaterialStats binding = materials.get(2).getStatsOrUnknown(MaterialTypes.EXTRA); + data.extra(binding); + } + + // calculate handle impact + data.handle(handle); + } + + // 3 free modifiers + data.modifiers = 5; + + return data; } } diff --git a/src/main/java/lance5057/tDefense/core/tools/bases/BaubleTool.java b/src/main/java/lance5057/tDefense/core/tools/bases/BaubleTool.java index d421dea..a074bba 100644 --- a/src/main/java/lance5057/tDefense/core/tools/bases/BaubleTool.java +++ b/src/main/java/lance5057/tDefense/core/tools/bases/BaubleTool.java @@ -2,41 +2,17 @@ package lance5057.tDefense.core.tools.bases; import java.util.List; -import javax.annotation.Nullable; - -import baubles.api.BaubleType; import baubles.api.IBauble; import baubles.api.render.IRenderBauble; -import lance5057.tDefense.core.materials.ShieldMaterialStats; -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.client.entity.EntityPlayerSP; import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.IProjectile; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.entity.projectile.EntityArrow; -import net.minecraft.item.EnumAction; -import net.minecraft.item.IItemPropertyGetter; -import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.util.ActionResult; -import net.minecraft.util.DamageSource; -import net.minecraft.util.EnumActionResult; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.ResourceLocation; -import net.minecraft.util.math.BlockPos; import net.minecraft.world.World; -import net.minecraftforge.fml.common.Optional; import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.SideOnly; -import slimeknights.tconstruct.library.client.model.ToolModelLoader; import slimeknights.tconstruct.library.tinkering.PartMaterialType; import slimeknights.tconstruct.library.tools.ToolCore; import slimeknights.tconstruct.library.tools.ToolNBT; -import slimeknights.tconstruct.tools.TinkerTools; //@Optional.InterfaceList({@Optional.Interface(modid = "battlegear2", iface = "mods.battlegear2.api.ISheathed"), @Optional.Interface(modid = "battlegear2", iface = "mods.battlegear2.api.shield.IArrowCatcher"), @Optional.Interface(modid = "battlegear2", iface = "mods.battlegear2.api.shield.IArrowDisplay"), @Optional.Interface(modid = "battlegear2", iface = "mods.battlegear2.api.shield.IShield")}) public abstract class BaubleTool extends ToolCore implements IBauble, IRenderBauble diff --git a/src/main/java/lance5057/tDefense/core/tools/bases/Shield.java b/src/main/java/lance5057/tDefense/core/tools/bases/Shield.java index 5daae67..6d0a587 100644 --- a/src/main/java/lance5057/tDefense/core/tools/bases/Shield.java +++ b/src/main/java/lance5057/tDefense/core/tools/bases/Shield.java @@ -4,8 +4,6 @@ import java.util.List; import javax.annotation.Nullable; -import lance5057.tDefense.core.materials.ShieldMaterialStats; -import lance5057.tDefense.core.parts.TDParts; import net.minecraft.block.BlockDispenser; import net.minecraft.client.entity.EntityPlayerSP; import net.minecraft.entity.Entity; diff --git a/src/main/java/lance5057/tDefense/core/tools/basic/HeaterShield.java b/src/main/java/lance5057/tDefense/core/tools/basic/HeaterShield.java index 610b817..f70dca9 100644 --- a/src/main/java/lance5057/tDefense/core/tools/basic/HeaterShield.java +++ b/src/main/java/lance5057/tDefense/core/tools/basic/HeaterShield.java @@ -4,7 +4,6 @@ import lance5057.tDefense.core.materials.ShieldMaterialStats; import lance5057.tDefense.core.parts.TDParts; import lance5057.tDefense.core.tools.bases.Shield; import slimeknights.tconstruct.library.tinkering.PartMaterialType; -import slimeknights.tconstruct.library.tools.IToolPart; import slimeknights.tconstruct.tools.TinkerTools; public class HeaterShield extends Shield diff --git a/src/main/java/lance5057/tDefense/core/tools/basic/RoundShield.java b/src/main/java/lance5057/tDefense/core/tools/basic/RoundShield.java index f7103eb..ff4388a 100644 --- a/src/main/java/lance5057/tDefense/core/tools/basic/RoundShield.java +++ b/src/main/java/lance5057/tDefense/core/tools/basic/RoundShield.java @@ -1,13 +1,8 @@ package lance5057.tDefense.core.tools.basic; -import lance5057.tDefense.TinkersDefense; import lance5057.tDefense.core.materials.ShieldMaterialStats; import lance5057.tDefense.core.parts.TDParts; import lance5057.tDefense.core.tools.bases.Shield; -import net.minecraft.entity.Entity; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.world.World; import slimeknights.tconstruct.library.tinkering.PartMaterialType; import slimeknights.tconstruct.tools.TinkerTools; diff --git a/src/main/java/lance5057/tDefense/core/tools/basic/TowerShield.java b/src/main/java/lance5057/tDefense/core/tools/basic/TowerShield.java index 31f6c25..ebaf791 100644 --- a/src/main/java/lance5057/tDefense/core/tools/basic/TowerShield.java +++ b/src/main/java/lance5057/tDefense/core/tools/basic/TowerShield.java @@ -4,7 +4,6 @@ import lance5057.tDefense.core.materials.ShieldMaterialStats; import lance5057.tDefense.core.parts.TDParts; import lance5057.tDefense.core.tools.bases.Shield; import slimeknights.tconstruct.library.tinkering.PartMaterialType; -import slimeknights.tconstruct.library.tools.IToolPart; import slimeknights.tconstruct.tools.TinkerTools; public class TowerShield extends Shield diff --git a/src/main/java/lance5057/tDefense/core/tools/baubles/Amulet.java b/src/main/java/lance5057/tDefense/core/tools/baubles/Amulet.java index 77c90c4..22e1baf 100644 --- a/src/main/java/lance5057/tDefense/core/tools/baubles/Amulet.java +++ b/src/main/java/lance5057/tDefense/core/tools/baubles/Amulet.java @@ -6,7 +6,6 @@ import lance5057.tDefense.core.tools.bases.BaubleTool; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; import slimeknights.tconstruct.library.tinkering.PartMaterialType; -import slimeknights.tconstruct.tools.TinkerTools; public class Amulet extends BaubleTool { diff --git a/src/main/java/lance5057/tDefense/core/tools/baubles/Ring.java b/src/main/java/lance5057/tDefense/core/tools/baubles/Ring.java index 08ffa69..224cd09 100644 --- a/src/main/java/lance5057/tDefense/core/tools/baubles/Ring.java +++ b/src/main/java/lance5057/tDefense/core/tools/baubles/Ring.java @@ -6,7 +6,6 @@ import lance5057.tDefense.core.tools.bases.BaubleTool; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; import slimeknights.tconstruct.library.tinkering.PartMaterialType; -import slimeknights.tconstruct.tools.TinkerTools; public class Ring extends BaubleTool { diff --git a/src/main/java/lance5057/tDefense/holiday/HolidayBase.java b/src/main/java/lance5057/tDefense/holiday/HolidayBase.java index 909ee44..80cb4e0 100644 --- a/src/main/java/lance5057/tDefense/holiday/HolidayBase.java +++ b/src/main/java/lance5057/tDefense/holiday/HolidayBase.java @@ -2,27 +2,16 @@ package lance5057.tDefense.holiday; import java.util.Calendar; -import com.mojang.authlib.GameProfile; - import lance5057.tDefense.Reference; -import lance5057.tDefense.TinkersDefense; import lance5057.tDefense.util.ModuleBase; import net.minecraft.client.renderer.block.model.ModelResourceLocation; -import net.minecraft.init.Blocks; import net.minecraft.item.Item; -import net.minecraft.item.ItemBlock; import net.minecraft.item.ItemFood; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.nbt.NBTUtil; -import net.minecraft.world.storage.loot.LootEntry; import net.minecraft.world.storage.loot.LootEntryItem; import net.minecraft.world.storage.loot.LootTable; -import net.minecraft.world.storage.loot.RandomValueRange; import net.minecraft.world.storage.loot.conditions.LootCondition; import net.minecraft.world.storage.loot.conditions.RandomChance; import net.minecraft.world.storage.loot.functions.LootFunction; -import net.minecraft.world.storage.loot.functions.SetMetadata; -import net.minecraft.world.storage.loot.functions.SetNBT; import net.minecraftforge.client.event.ModelRegistryEvent; import net.minecraftforge.client.model.ModelLoader; import net.minecraftforge.common.MinecraftForge; diff --git a/src/main/java/lance5057/tDefense/holiday/HolidayClientProxy.java b/src/main/java/lance5057/tDefense/holiday/HolidayClientProxy.java index 0d785d5..aa23cab 100644 --- a/src/main/java/lance5057/tDefense/holiday/HolidayClientProxy.java +++ b/src/main/java/lance5057/tDefense/holiday/HolidayClientProxy.java @@ -1,10 +1,7 @@ package lance5057.tDefense.holiday; -import slimeknights.tconstruct.library.client.renderer.RenderTinkerSlime; -import slimeknights.tconstruct.world.entity.EntityBlueSlime; import lance5057.tDefense.holiday.xmas.gumdropslime.GumDropSlime; import lance5057.tDefense.holiday.xmas.gumdropslime.GumDropSlimeRenderer; -import net.minecraft.client.model.ModelSlime; import net.minecraftforge.fml.client.registry.RenderingRegistry; public class HolidayClientProxy { diff --git a/src/main/java/lance5057/tDefense/holiday/xmas/XmasBase.java b/src/main/java/lance5057/tDefense/holiday/xmas/XmasBase.java index c166f96..5ce4017 100644 --- a/src/main/java/lance5057/tDefense/holiday/xmas/XmasBase.java +++ b/src/main/java/lance5057/tDefense/holiday/xmas/XmasBase.java @@ -1,11 +1,9 @@ package lance5057.tDefense.holiday.xmas; -import slimeknights.tconstruct.world.entity.EntityBlueSlime; import lance5057.tDefense.TinkersDefense; import lance5057.tDefense.holiday.xmas.gumdropslime.GumDropSlime; import lance5057.tDefense.util.ItemsBase; import lance5057.tDefense.util.ModuleBase; -import net.minecraft.world.storage.loot.LootTableList; import net.minecraftforge.fml.common.event.FMLInitializationEvent; import net.minecraftforge.fml.common.event.FMLPostInitializationEvent; import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; diff --git a/src/main/java/lance5057/tDefense/holiday/xmas/XmasItems.java b/src/main/java/lance5057/tDefense/holiday/xmas/XmasItems.java index 0129df0..0df5a97 100644 --- a/src/main/java/lance5057/tDefense/holiday/xmas/XmasItems.java +++ b/src/main/java/lance5057/tDefense/holiday/xmas/XmasItems.java @@ -1,11 +1,8 @@ package lance5057.tDefense.holiday.xmas; -import lance5057.tDefense.util.Color16Util; import lance5057.tDefense.util.ItemsBase; import lance5057.tDefense.util.MetaItem; import net.minecraft.init.Items; -import net.minecraft.item.Item; -import net.minecraft.item.ItemFood; import net.minecraft.item.ItemStack; import net.minecraftforge.fml.common.event.FMLInitializationEvent; import net.minecraftforge.fml.common.event.FMLPostInitializationEvent; diff --git a/src/main/java/lance5057/tDefense/holiday/xmas/gumdropslime/GumDropSlime.java b/src/main/java/lance5057/tDefense/holiday/xmas/gumdropslime/GumDropSlime.java index 942b0ff..1f8bca9 100644 --- a/src/main/java/lance5057/tDefense/holiday/xmas/gumdropslime/GumDropSlime.java +++ b/src/main/java/lance5057/tDefense/holiday/xmas/gumdropslime/GumDropSlime.java @@ -1,9 +1,7 @@ package lance5057.tDefense.holiday.xmas.gumdropslime; -import slimeknights.tconstruct.library.Util; -import slimeknights.tconstruct.world.entity.EntityBlueSlime; -import net.minecraft.entity.monster.EntitySlime; import net.minecraft.world.World; +import slimeknights.tconstruct.world.entity.EntityBlueSlime; public class GumDropSlime extends EntityBlueSlime { diff --git a/src/main/java/lance5057/tDefense/proxy/ClientProxy.java b/src/main/java/lance5057/tDefense/proxy/ClientProxy.java index 5771f6e..acd77d6 100644 --- a/src/main/java/lance5057/tDefense/proxy/ClientProxy.java +++ b/src/main/java/lance5057/tDefense/proxy/ClientProxy.java @@ -15,7 +15,6 @@ import lance5057.tDefense.core.parts.TDParts; import lance5057.tDefense.core.renderers.BaubleRenderer; import lance5057.tDefense.core.renderers.SheatheModel; import lance5057.tDefense.core.tools.TDTools; -import lance5057.tDefense.core.tools.bases.ArmorCore; import lance5057.tDefense.renderers.deserializers.AlphaColorTextureDeserializer; import net.minecraft.block.Block; import net.minecraft.block.state.IBlockState; @@ -36,7 +35,6 @@ import net.minecraftforge.fluids.Fluid; import slimeknights.tconstruct.common.ModelRegisterUtil; import slimeknights.tconstruct.library.TinkerRegistry; import slimeknights.tconstruct.library.TinkerRegistryClient; -import slimeknights.tconstruct.library.client.CustomTextureCreator; import slimeknights.tconstruct.library.client.ToolBuildGuiInfo; import slimeknights.tconstruct.library.client.material.MaterialRenderInfoLoader; import slimeknights.tconstruct.library.materials.Material; diff --git a/src/main/java/lance5057/tDefense/renderers/info/TDMaterialRenderInfo.java b/src/main/java/lance5057/tDefense/renderers/info/TDMaterialRenderInfo.java index a22d514..1973839 100644 --- a/src/main/java/lance5057/tDefense/renderers/info/TDMaterialRenderInfo.java +++ b/src/main/java/lance5057/tDefense/renderers/info/TDMaterialRenderInfo.java @@ -4,9 +4,6 @@ import lance5057.tDefense.renderers.AlphaColorTexture; import net.minecraft.client.renderer.texture.TextureAtlasSprite; import net.minecraft.util.ResourceLocation; import slimeknights.tconstruct.library.client.MaterialRenderInfo; -import slimeknights.tconstruct.library.client.MaterialRenderInfo.AbstractMaterialRenderInfo; -import slimeknights.tconstruct.library.client.texture.SimpleColoredTexture; -import slimeknights.tconstruct.library.client.texture.TinkerTexture; public interface TDMaterialRenderInfo { diff --git a/src/main/java/lance5057/tDefense/util/ArmorNBT.java b/src/main/java/lance5057/tDefense/util/ArmorNBT.java new file mode 100644 index 0000000..28455ff --- /dev/null +++ b/src/main/java/lance5057/tDefense/util/ArmorNBT.java @@ -0,0 +1,144 @@ +package lance5057.tDefense.util; + +import lance5057.tDefense.core.materials.ArmorMaterialStats; +import net.minecraft.nbt.NBTTagCompound; +import slimeknights.tconstruct.library.materials.ExtraMaterialStats; +import slimeknights.tconstruct.library.materials.HandleMaterialStats; +import slimeknights.tconstruct.library.utils.Tags; + +public class ArmorNBT { + + public int durability; + public int armorRating; + public int armorToughness; + public int modifiers; // free modifiers + + private final NBTTagCompound parent; + + public ArmorNBT() { + durability = 0; + armorRating = 0; + armorToughness = 0; + modifiers = 5; + parent = new NBTTagCompound(); + } + + public ArmorNBT(NBTTagCompound tag) { + read(tag); + parent = tag; + } + + /** Initialize the stats with the heads. CALL THIS FIRST */ + public ArmorNBT head(ArmorMaterialStats... heads) { + durability = 0; + armorRating = 0; + armorToughness = 0; + + // average all stats + for(ArmorMaterialStats head : heads) { + if(head != null) { + durability += head.durability; + armorRating += head.rating; + armorToughness += head.toughness; + } + } + + durability = Math.max(1, durability / heads.length); + armorRating /= (float) heads.length; + armorToughness /= (float) heads.length; + + return this; + } + + /** Add stats from the accessoires. Call this second! */ + public ArmorNBT extra(ExtraMaterialStats... extras) { + int dur = 0; + for(ExtraMaterialStats extra : extras) { + if(extra != null) { + dur += extra.extraDurability; + } + } + this.durability += Math.round((float) dur / (float) extras.length); + + return this; + } + + /** Calculate in handles. call this last! */ + public ArmorNBT handle(HandleMaterialStats... handles) { + // (Average Head Durability + Average Extra Durability) * Average Handle Modifier + Average Handle Durability + + int dur = 0; + float modifier = 0f; + for(HandleMaterialStats handle : handles) { + if(handle != null) { + dur += handle.durability; + modifier += handle.modifier; + } + } + + modifier /= (float) handles.length; + this.durability = Math.round((float) this.durability * modifier); + + // add in handle durability change + this.durability += Math.round((float) dur / (float) handles.length); + + this.durability = Math.max(1, this.durability); + + return this; + } + + public void read(NBTTagCompound tag) { + durability = tag.getInteger(Tags.DURABILITY); + armorRating = tag.getInteger("ArmorRating"); + armorToughness = tag.getInteger("ArmorToughness"); + modifiers = tag.getInteger(Tags.FREE_MODIFIERS); + } + + public void write(NBTTagCompound tag) { + tag.setInteger(Tags.DURABILITY, durability); + tag.setInteger("ArmorRating", armorRating); + tag.setInteger("ArmorToughness", armorToughness); + tag.setInteger(Tags.FREE_MODIFIERS, modifiers); + } + + public NBTTagCompound get() { + NBTTagCompound tag = parent.copy(); + write(tag); + + return tag; + } + + // AUtogenerated equals and hashcode + @Override + public boolean equals(Object o) { + if(this == o) { + return true; + } + if(o == null || getClass() != o.getClass()) { + return false; + } + + ArmorNBT toolNBT = (ArmorNBT) o; + + if(durability != toolNBT.durability) { + return false; + } + if(Float.compare(toolNBT.armorRating, armorRating) != 0) { + return false; + } + if(Float.compare(toolNBT.armorToughness, armorToughness) != 0) { + return false; + } + return modifiers == toolNBT.modifiers; + + } + + @Override + public int hashCode() { + int result = durability; + result = 31 * result + (armorRating != +0.0f ? Float.floatToIntBits(armorRating) : 0); + result = 31 * result + (armorToughness != +0.0f ? Float.floatToIntBits(armorToughness) : 0); + result = 31 * result + modifiers; + return result; + } +}
\ No newline at end of file diff --git a/src/main/java/lance5057/tDefense/util/BlocksBase.java b/src/main/java/lance5057/tDefense/util/BlocksBase.java index d33f459..d6b576a 100644 --- a/src/main/java/lance5057/tDefense/util/BlocksBase.java +++ b/src/main/java/lance5057/tDefense/util/BlocksBase.java @@ -5,15 +5,12 @@ import java.util.ArrayList; import lance5057.tDefense.Reference; import net.minecraft.block.Block; import net.minecraft.block.material.Material; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.block.model.ModelResourceLocation; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.item.Item; import net.minecraft.item.ItemBlock; import net.minecraftforge.fml.common.event.FMLInitializationEvent; import net.minecraftforge.fml.common.event.FMLPostInitializationEvent; import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; -import net.minecraftforge.fml.common.registry.GameRegistry; public abstract class BlocksBase { protected static ArrayList<Block> blockList = new ArrayList<Block>(); diff --git a/src/main/java/lance5057/tDefense/util/ItemsBase.java b/src/main/java/lance5057/tDefense/util/ItemsBase.java index aa45463..3e1064b 100644 --- a/src/main/java/lance5057/tDefense/util/ItemsBase.java +++ b/src/main/java/lance5057/tDefense/util/ItemsBase.java @@ -3,7 +3,6 @@ package lance5057.tDefense.util; import java.util.ArrayList; import lance5057.tDefense.Reference; -import net.minecraft.block.Block; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.item.Item; import net.minecraftforge.event.RegistryEvent; @@ -11,7 +10,6 @@ import net.minecraftforge.fml.common.event.FMLInitializationEvent; import net.minecraftforge.fml.common.event.FMLPostInitializationEvent; import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; -import net.minecraftforge.fml.common.registry.GameRegistry; import net.minecraftforge.registries.IForgeRegistry; public abstract class ItemsBase { diff --git a/src/main/java/lance5057/tDefense/util/MetaItem.java b/src/main/java/lance5057/tDefense/util/MetaItem.java index 07b7c8e..1064da6 100644 --- a/src/main/java/lance5057/tDefense/util/MetaItem.java +++ b/src/main/java/lance5057/tDefense/util/MetaItem.java @@ -1,7 +1,5 @@ package lance5057.tDefense.util; -import java.util.List; - import net.minecraft.creativetab.CreativeTabs; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; diff --git a/src/main/java/lance5057/tDefense/util/ModuleBase.java b/src/main/java/lance5057/tDefense/util/ModuleBase.java index f03ef9c..b17d76a 100644 --- a/src/main/java/lance5057/tDefense/util/ModuleBase.java +++ b/src/main/java/lance5057/tDefense/util/ModuleBase.java @@ -1,7 +1,5 @@ package lance5057.tDefense.util; -import net.minecraft.init.Items; -import net.minecraft.item.ItemStack; import net.minecraftforge.fml.common.event.FMLInitializationEvent; import net.minecraftforge.fml.common.event.FMLPostInitializationEvent; import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; diff --git a/src/main/java/lance5057/tDefense/util/RegEvents.java b/src/main/java/lance5057/tDefense/util/RegEvents.java index 9d40e1c..35df69e 100644 --- a/src/main/java/lance5057/tDefense/util/RegEvents.java +++ b/src/main/java/lance5057/tDefense/util/RegEvents.java @@ -1,13 +1,5 @@ package lance5057.tDefense.util; -import lance5057.tDefense.Reference; -import lance5057.tDefense.TinkersDefense; -import net.minecraft.item.Item; -import net.minecraftforge.event.RegistryEvent; -import net.minecraftforge.fml.common.Mod; -import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; - - public class RegEvents { } diff --git a/src/main/java/lance5057/tDefense/util/TDMatHelper.java b/src/main/java/lance5057/tDefense/util/TDMatHelper.java index ca44320..2a42541 100644 --- a/src/main/java/lance5057/tDefense/util/TDMatHelper.java +++ b/src/main/java/lance5057/tDefense/util/TDMatHelper.java @@ -2,10 +2,10 @@ package lance5057.tDefense.util; import javax.annotation.Nullable; -import lance5057.tDefense.core.materials.BootsMaterialStats; -import lance5057.tDefense.core.materials.ChestMaterialStats; -import lance5057.tDefense.core.materials.HelmMaterialStats; -import lance5057.tDefense.core.materials.LegsMaterialStats; +import lance5057.tDefense.core.materials.ArmorMaterialStats.ChestMaterialStats; +import lance5057.tDefense.core.materials.ArmorMaterialStats.FeetMaterialStats; +import lance5057.tDefense.core.materials.ArmorMaterialStats.HelmMaterialStats; +import lance5057.tDefense.core.materials.ArmorMaterialStats.LegsMaterialStats; import lance5057.tDefense.core.materials.ShieldMaterialStats; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; @@ -37,7 +37,7 @@ public class TDMatHelper public HelmMaterialStats helm; public ChestMaterialStats chest; public LegsMaterialStats legs; - public BootsMaterialStats boots; + public FeetMaterialStats boots; public ItemStack gem; public ItemStack ingot; @@ -151,7 +151,7 @@ public class TDMatHelper return this; } - public TDMatHelper setBoots(BootsMaterialStats h) + public TDMatHelper setBoots(FeetMaterialStats h) { boots = h; return this; diff --git a/src/main/resources/assets/tinkersdefense/textures/blank.png b/src/main/resources/assets/tinkersdefense/textures/blank.png Binary files differnew file mode 100644 index 0000000..bdee823 --- /dev/null +++ b/src/main/resources/assets/tinkersdefense/textures/blank.png diff --git a/src/main/resources/mcmod.info b/src/main/resources/mcmod.info index f480667..e7f5483 100644 --- a/src/main/resources/mcmod.info +++ b/src/main/resources/mcmod.info @@ -1,16 +1,14 @@ [ { - "modid": "examplemod", - "name": "Example Mod", - "description": "Example placeholder mod.", - "version": "${version}", - "mcversion": "${mcversion}", - "url": "", - "updateUrl": "", - "authorList": ["ExampleDude"], - "credits": "The Forge and FML guys, for making this example", - "logoFile": "", - "screenshots": [], - "dependencies": [] + "modid": "tinkersdefense", + "name": "Tinkers' Defense", + "description": "A defense related expansion for TConstruct", + "version": "1.4.2.8a", + "mcversion": "1.12.2", + "url": "", + "authorList": ["Sir Lance"], + "requiredMods": [ "forge", "tconstruct","baubles"], + "dependencies": ["tconstruct","baubles"], + "useDependencyInformation": "true" } -] +]
\ No newline at end of file |
